]> Pileus Git - ~andy/gtk/blob - ChangeLog
d704d0b307bb9b26601174e66ef20290fc731d2d
[~andy/gtk] / ChangeLog
1 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
4         be the last big GtkTreeView API change.
5
6         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
7         replace with "activate" and "start_editing".  Also, added a
8         "can_activate" and "can_edit" property.
9
10         * gtk/gtktreeviewcolumn.c: modify to use above.
11
12 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
13
14         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
15
16 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
17
18         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
19         icon instead of one with ugly white background.
20
21 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
22
23         * demos/gtk-demo/stock_browser.c (id_to_macro): make
24         the uppercasing work. (#59550)
25
26 2001-09-14  Jakub Steiner <jimmac@ximian.com>
27
28         * gtk/stock-icons/dialog_error.png:
29         * gtk/stock-icons/dialog_question.png: more road signs
30
31 2001-09-13  Jakub Steiner <jimmac@ximian.com>
32
33         * gtk/stock-icons/dialog_question.png:
34         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
35           like a road sign.
36
37 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
38
39         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
40         signals to make them more clear.  Also, change ::range_changed to
41         ::row_changed.
42         * gtk/gtktreemodel.c: Adjust to interface change
43         * gtk/gtktreemodel.h: ditto
44         * gtk/gtktreemodelsort.c: ditto
45         * gtk/gtktreestore.c: ditto
46         * gtk/gtkliststore.c: ditto
47         * gtk/gtktreeview.c: ditto
48         * tests/testtreecolumns.c: ditto
49         * gtk/gtkmarshal.list: Actually remove a marshaller!
50
51 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
52
53         * gtk/gtktextview.c
54         Add support for Ctrl+Up/Down arrow to move cursor to beginning
55         of previous/next paragraph. If within a paragraph cursor moves to
56         beginning of that paragraph.
57
58 2001-09-12  Jakub Steiner <jimmac@ximian.com>
59
60         * gtk/stock-icons/dialog_question.png: replacing the shaky
61           question mark with a sans-serif one.
62         * gtk/stock-icons/stock_top.png, stock_bottom.png,
63      stock_first.png, stock_last.png: using the new style arrows
64         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
65      colors.
66         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
67      color.
68         * gtk/stock-icons/stock_zoom*: anti-aliased
69         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
70      '-' with a '_', removed the wrong files
71
72 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
73  
74         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
75  
76         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
77         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
78         than in gtk-2.0/major.minor.micro/<type>/. This
79         works better for a search path for modules.
80  
81         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
82         gtk_binary_version variable holding major.minor.(micro-binary_age).
83  
84         * modules/input/Makefile.am (moduledir): Fix installation
85         directory to match change in lookup location.
86  
87         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
88         suffixes. Needs to be handled in g_module_build_path().
89
90         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
91         appropriate.
92  
93 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
94
95         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
96         causing RC properties not to work.
97
98 2001-09-11  Jakub Steiner <jimmac@ximian.com>
99
100         * gtk/stock-icons/dialog-error.png: less drastic
101         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
102           "STOP" is international enough.
103         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
104         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
105
106 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
107
108         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
109         (add|remove)_selection_clipboard symmetric. (bug #59836)
110
111         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
112         Avoid SEGV for empty tree. (bug #60243)
113
114 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
115
116         * tests/testgtk.c (create_idle_test): slight fix for
117         g_object_set() not usable for nesting anymore.
118
119         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
120         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
121         properties, supply ::shadow_type properties instead as most
122         other widgets do.
123
124 2001-09-10  Alex Larsson  <alexl@redhat.com>
125
126         * demos/gtk-demo/stock_browser.c:
127         * gdk/gdkcolor.c:
128         * gdk/gdkfont.c:
129         * gdk/gdkcursor.c:
130         * gdk/gdkevents.c:
131         * gdk/gdkrectangle.c:
132         * gtk/gtktypeutils.c:
133         Update to use the new g_boxed_type_register_static API.
134
135 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
136
137         * gtk/gtktreestore.c:
138         Fix looping in gtk_tree_store_init() waiting for zero random int.
139
140 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
141
142         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
143         behaviour which havoc broke. they have to default to 1.0 for
144         expand behaviour.
145
146         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
147
148 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
149
150         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
151         Amend previous change to avoid runtime error in g_param_spec_ref()
152
153 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
154
155         * gtk/gtkrc.c (insert_rc_property): Fix blank line
156         in the wrong place.
157
158 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
159
160         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
161         do a lookup immediately after creating style->property_cache,
162         since bsearch crashes on zero length for Solaris.
163         (Found by Padraig O'Briain.)
164
165 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
166
167         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
168         Really return NULL if not set.
169         (gtk_widget_init): Remove unused varaible.
170         
171 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
172
173         * configure.in:
174         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
175         in cvs.
176
177 2001-09-08  Havoc Pennington  <hp@pobox.com>
178
179         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
180         people might want to use
181
182 2001-09-08  Havoc Pennington  <hp@pobox.com>
183
184         * gtk/gtkalignment.c (gtk_alignment_class_init): default
185         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
186
187         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
188
189         * gtk/gtktextiter.c: fix docs
190         (gtk_text_iter_spew): get rid of this
191
192         * gtk/gtklayout.c: docs
193
194         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
195         to center image and label together, instead of having image on
196         left and label centered, patch/suggestion from Jacob
197
198         * gtk/gtkdialog.c: docs
199
200 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
201
202         * gtk/gtkliststore.c: Write documentation
203         * gtk/gtktreestore.c: Write documentation
204
205 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
206
207         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
208         with GArray and bsearch(), to remove dependency on a still
209         evolving interface that we want to keep private to glib/gobject. 
210
211 2001-09-08  Havoc Pennington  <hp@pobox.com>
212
213         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
214         docs fixes
215
216         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
217
218         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
219
220         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
221
222         * gtk/gtkscrolledwindow.h: docs fixes
223
224         * gtk/gtkimage.c (gtk_image_new): docs fixes
225
226 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
227
228         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
229         false alarm  constness warning with a cast.
230
231         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
232         for the inside-gdk case.
233
234 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
235
236         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
237         remove g_print.
238
239         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
240         change models, #59899
241
242 2001-09-07  Havoc Pennington  <hp@pobox.com>
243
244         * gtk/gtkmain.c: move some docs inline
245
246 2001-09-07  Havoc Pennington  <hp@pobox.com>
247
248         * gtk/gtk.h: tsk tsk, jrb broke the build
249
250 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
251
252         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
253         Removed 'fill' attribute.  It was silly b/c that was a property of
254         the cell renderer, anyway.
255         (gtk_tree_view_column_render): Actually render the packed
256         renderers.
257         * doc/tree-column-sizing.txt: initial devel documentation.
258         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
259         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
260
261         * tests/testtreefocus.c: fix up to reflect above changes.
262         * tests/testtreeview.c: ditto
263         * demos/gtk-demo/stock_browser.c: ditto
264
265 2001-09-07  Alex Larsson  <alexl@redhat.com>
266
267         * gdk/linux-fb/gdkcolor-fb.c:
268         Removed unused function.
269         
270         * gdk/linux-fb/gdkdrawable-fb2.c
271         * gdk/linux-fb/gdkfont-fb.c:
272         Use PangoLanguage functions.
273
274         * gdk/linux-fb/gdkinput.c:
275         * gdk/linux-fb/gdkselection-fb.c:
276         Fix const warnings.
277         
278         * gdk/linux-fb/gdkwindow-fb.c:
279         Fix warning. Implement gdk_window_set_icon_list() and
280         gdk_window_get_frame_extents(). (No icon support yet though.)
281
282         * gtk/gtkwindow.c (gtk_window_get_position):
283         If window->frame is set get the extents of it instead.
284         
285 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
286
287         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
288         Make the default default colormap the GdkRGB colormap,
289         not the system colormap.
290
291         * gtk/gtkinvisible.c (gtk_invisible_init) 
292           gtk/gtkwindow.c (gtk_window_init): Set the current
293         colormap, as returned by _gtk_widget_peek_colormap()
294         on the widget.
295
296         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
297         to GTK+. Make it return %NULL instead of the default
298         colormap if no colormap has explicitely been pushed.
299
300         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
301         colormaps on ancestral widgets before defaulting the
302         the system default colormap.
303
304         * docs/Changes-2.0.txt: explain colormap changes.
305
306 2001-09-07  Havoc Pennington  <hp@redhat.com>
307
308         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
309         #57424
310
311 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
312
313         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
314         make gdk_set_use_xshm a noop. Remove --no-xshm command line
315         option. If we aren't autodetecting properly, we need
316         to fix the problem, or at least make it an environment
317         variable setting, to avoid problems with propagating
318         to embedded children, plugins, etc.
319
320         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
321
322         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
323         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
324         New function to render a pixmap and mask for a particular colormap.
325
326         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
327         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
328         of internal implementation of the same.
329
330 2001-09-07  Havoc Pennington  <hp@redhat.com>
331
332         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
333         debug code that seems to have caused a breakpoint in valid cases
334         
335         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
336         pointer on the first view when adding the second view, fixes
337         crash when closing gtk-demo text test with active selection
338
339         * gtk/gtktextbuffer.c
340         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
341         clipboards in the list of clipboards - probably fixes #59836
342
343 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
344
345       Make gdkx.h the only installed header from gdk/x11.
346       All structures in gdk/x11 are opaque.
347
348         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
349         Don't install gdk{drawable,pixmap,window}-x11.h.
350
351         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
352         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
353         GdkVisualClass into C files.
354
355         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
356
357         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
358         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
359         Add public functions to replace previously exported direct
360         structure access.
361         gdk_x11_colormap_get_{xdisplay,xcolormap} 
362         gdk_x11_cursor_get_{xdisplay,xcursor},
363         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
364         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
365         gdk_x11_gc_get_{xdisplay,ximage}
366         
367         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
368         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
369
370       Fix a number of variables and functions that were exported
371       "accidentally" from GDK.
372
373         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
374         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
375         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
376         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
377         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
378         gdk_event_queue_find_first, gdk_event_queue_remove_link,
379         gdk_event_queue_append, gdk_event_button_generate,
380         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
381
382         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
383            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
384         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
385         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
386         gdk_use_xshm, gdk_input_ignore_core.
387
388         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
389         #defines to namespace functions into the private _gdk_ 
390         namespace.
391
392         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
393         to replace gdk_parent_root exported variable. Adjust and
394         deprecate GDK_ROOT_PARENT().
395
396         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
397         GDK_ROOT_PARENT usage, remove includes of port-specific
398         headers.
399
400         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
401         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
402         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
403
404         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
405         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
406         gdk_wm_delete_window functions, gdk_wm_take_focus, 
407         use gdk_atom_intern() instead.
408
409         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
410           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
411           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
412           gtk/gtkselection.c 
413         Unexport gdk_selection_property, just use 
414         gdk_atom_intern ("GDK_SELECTION").
415
416         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
417         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
418         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
419         GdkVisualprivate, gdk_x11_gc_flush.
420
421       Make a number of public exports of variables into functions
422       to increase encapsulation.
423
424         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
425         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
426         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
427
428         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
429         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
430         gdk_error_warnings.
431
432         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
433           docs/Changes-2.0.txt: 
434         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
435         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
436         Add gdk_x11_get_default_xdisplay().
437
438         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
439         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
440         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
441         Don't export gdk_progclass, move --class command line
442         option and handling to common portion of GDK.
443
444       Miscellaneous fixes:
445
446         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
447         g_return_val_if_fail that should have been g_return_if_fail.
448
449         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
450         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
451
452         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
453         X11 dependency.
454
455         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
456         Remove unused gdk_key_repeat_disable/restore.
457
458         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
459         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
460         Remove unused gdk_null_window_warnings variable.
461
462         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
463         it can be retrieved from the repository; it is too far
464         from functional to be worth having people check out;
465         it would be easier to start from scratch, I suspect.
466
467         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
468
469         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
470         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
471         Fix some accidentally global variables and unused global variables.
472
473         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
474         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
475         Fix some accidentally global variables and unused global variables.
476
477       Add some space for future expansion to multihead.
478
479         * gdk/gdkdrawable.h: Add four reserved function pointers
480         for future expansion of GdkDrawableClass.
481
482         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
483         where we can put a GdkScreen * later.
484
485 2001-09-07  Havoc Pennington  <hp@redhat.com>
486
487         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
488         adjustments after validating destination yrange; fixes #53918
489         (This may cause other issues, but I hope it won't)
490         
491 2001-09-05  Havoc Pennington  <hp@redhat.com>
492
493         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
494         line into start line, update the character counts in parent nodes; 
495         caused a bug when end and start line had different parent nodes.
496
497 2001-08-30  Havoc Pennington  <hp@redhat.com>
498         
499         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
500         assertion that tag is in a table
501
502 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
503
504         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
505         g_strcasecmp on NULL strings. (#59058)
506
507 2001-09-06  Alex Larsson  <alexl@redhat.com>
508
509         * gtk/gtkbin.c:
510         * gtk/gtkfontsel.c:
511         * gtk/gtkspinbutton.c:
512         * gtk/gtktipsquery.c:
513         Use GtkType/GType instead of uint.
514
515 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
516
517         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
518         sort column.
519
520         * gtk/gtktreestore.c (gtk_list_store_init): ditto
521
522         * gtk/gtktreesortable.c: add docs.
523
524 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
525
526         * Version 1.3.7
527
528         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
529         docs for gtk-config
530
531         * modules/input/Makefile.am (install-data-local): Don't
532         run gtk-query-immodules if DESTDIR is set.
533
534         * NEWS: Various additions.
535
536 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
537
538         * NEWS: updates for 1.3.7 release.
539
540 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
541
542         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
543         handle default sort feature
544
545         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
546         new function to handle default sort.
547         (gtk_tree_sortable_has_default_sort_func): check if default sort
548         is set.
549
550         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
551         handle default sort feature
552
553 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
554
555         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
556         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
557         #59731
558
559 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
560
561         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
562         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
563         time, #59727
564
565         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
566         correctly.
567
568 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
569
570         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
571         so that we don't eternally update the keymap after we
572         get a change notification.
573
574         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
575         incorrect cast.
576
577 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
578
579         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
580         it working. It mostly works now, although there're still a few issues
581         to be worked out.
582
583         * tests/testtreesort.c (main): changes to have a better test
584         application for the GtkTreeModelSort.
585
586 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
587
588         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
589         fix for bug #59222.
590
591         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
592         gpointer search_data argument to function definition and
593         prototype, to match GtkTreeViewSearchEqualFunc typedef.
594
595 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
596
597         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
598         per jrb's request.
599
600 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
601
602         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
603
604         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
605
606 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
607
608         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
609         Instead of always mirroring the selection to a single PRIMARY
610         selection, allow it to be mirrored to any number of clipboards.
611
612         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
613         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
614
615         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
616         GtkClipboard argument, and for paste_clipboard, the
617         @override_location argument from @paste_primary.
618
619         * gtk/gtktextview.c: Adapt to above change.
620         
621 2001-08-30  Havoc Pennington  <hp@redhat.com>
622
623         * gtk/gtktextview.c (invalidated_handler): put validate idle at
624         resize - 2 just for flexibility
625
626 2001-08-30  Havoc Pennington  <hp@redhat.com>
627
628         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
629         object from the empty-child-anchor case by drawing a little box.
630         
631         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
632         if the child anchor has no anchored widgets - fixes #59328.
633
634         Also, remove bizarre deletion of preedit string that seems to have
635         gotten in here somehow.
636
637 2001-08-30  Havoc Pennington  <hp@redhat.com>
638
639         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
640         to #58420 from Hidetoshi Tajima and Matthias Clasen
641
642 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
643
644         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
645         change color when the GtkTreeView loses focus.
646
647         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
648         ditto.
649         
650         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
651
652 2001-08-28  Havoc Pennington  <hp@pobox.com>
653
654         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
655
656 2001-08-28  Havoc Pennington  <hp@pobox.com>
657
658         * demos/gtk-demo/main.c (setup_default_icon): add default icon
659
660         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
661         warning fix
662         (gtk_radio_button_new_with_label): warning fix
663
664         * gtk/gtkdnd.c: used some random GtkImage private structs, 
665         update to reflect GtkImage changes
666
667         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
668         whether the hint is supported, just always set the icon. A task
669         list might want to use it even if the WM doesn't, and the WM may
670         change over time. Also, XDeleteProperty() if list == NULL.
671
672         * gtk/gtkwindow.c (gtk_window_set_icon_list)
673         (gtk_window_get_icon_list)
674         (gtk_window_set_icon)
675         (gtk_window_get_icon)
676         (gtk_window_set_default_icon_list)
677         (gtk_window_get_default_icon_list):
678         new functions
679
680         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
681
682         * gtk/gtkimage.c: Implement property support, bug #59408
683
684         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
685         on reparent-without-removing-first a bit more helpful.
686         Let's just destroy this FAQ.
687
688 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
689
690         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
691         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
692
693 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
694
695         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
696         of use_text_format to the end of the function. (#56447)
697
698 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
699
700         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
701         only in response to an area_prepared signal.
702
703 2001-08-28  Alex Larsson  <alexl@redhat.com>
704
705         * gtk/gtkwidget.c (gtk_widget_class_init):
706         Make unrealize GTK_RUN_LAST.
707
708 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
709
710         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
711         with_label and with_mnemonic should create radio buttons, not
712         check buttons
713
714 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
715
716         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
717         * tests/treestoretest.c (make_window): ditto
718         * demos/gtk-demo/main.c (create_tree): ditto
719         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
720
721 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
722
723         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
724         GTK selection types rather than GtkTreeSelectionMode.
725
726         * docs/Changes-2.0: Add comment about selection change.
727
728 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
729
730         * gtk/gtkenums.h (GtkSelectionMode): deprecate
731         GTK_SELECTION_EXTENDED.
732
733         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
734         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
735
736         * gtk/gtkctree.c: ditto
737
738         * gtk/gtklist.c: ditto
739
740         * gtk/gtktree.c: ditto
741
742 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
743
744         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
745         of typos in compat macros. (#59624, Skip Montaro)
746
747 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
748
749         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
750         macro.
751
752          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
753  
754         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
755         interface to be a standard setter from gtk_menu_item_right_justify.
756         (gtk_menu_item_get_right_justified): a getter to go with the setter
757
758         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
759         gtk_menu_item_right_justify.
760
761         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
762         gtk_menu_item_set_right_justified.
763  
764 2001-08-27  Jens Finke <jens@gnome.org>
765
766         * gtk+.spec.in: Updated to match gpp requirements, reworked the
767         files section to make it work with 1.3.x releases.
768
769 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
770
771         * gtk/gtkbutton.[ch]:
772         Add properties for labels, mnemonics and stock items.
773         Added C accessor functions for the properties.
774         Removed deprecated button->child.
775
776         * gtk/gtkradiobutton.c:
777         * gtk/gtktogglebutton.c:
778         Update to use the functions in GtkButton.
779
780         * gtk/gtkcheckbutton.c:
781         Update to use the functions in GtkButton.
782         Changed size allocation of child. Now only gets as much
783         space as it requests.
784
785         * gtk/gtkclist.c:
786         Don't use GtkButton->child
787
788         * gtk/gtklabel.c:
789         Fixed typo in docs
790         
791 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
792
793         * tests/testgtk.c:
794         * tests/Makefile.am:
795         Ressurect the properties test.
796         I don't care if it is inferior, I just want to test my property code.
797
798 2001-08-25  Chema Celorio  <chema@celorio.com>
799
800         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
801         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
802         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
803
804 2001-08-24  Havoc Pennington  <hp@pobox.com>
805
806         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
807         these are already in gtkmenu.h, and the copies
808         here were broken.
809
810         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
811
812         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
813         special-case bitmaps to allow no colormap
814         (bitmap1): implement no-colormap bitmap-getting
815         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
816         alpha
817         (rgb8): indentation
818         (rgb1a, rgb1): change the way we read the data out of the image, 
819         old way didn't seem to work quite right.
820
821         I'm pretty sure a lot of the rgbconvert code is still broken.
822         
823         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
824         above position constraint (I really intended to do this before,
825         don't know what's up with that)
826         (gtk_XParseGeometry): shut up gcc
827
828         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
829         and "0" should have been. remove the attempted 4-bytes-at-once
830         optimization, it was totally broken.
831
832 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
833
834         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
835         on push to buttons (based on patch from Soeren Sandmann, #54720)
836
837           - Add child_displacement_x/y style properties to control how far the
838             child moves when the button is depressed.
839
840           - Add non-exported function _gtk_button_set_depressed to clean
841             up the handling of the in/out shadow and separate it frmo
842             widget->state.
843
844           - Lots of code cleanup and simplification of state handling
845             for GtkButton/GtkToggleButton.
846  
847         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
848         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
849
850 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
851
852         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
853         and make gtk_image_new() take no arguments. The compiler will
854         catch it, and it is vastly more useful than having
855         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
856
857         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
858         to add tearoff-title property (#51319, Lee Mallabone)
859
860 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
861
862         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
863         gtk_menu_item_configure(). (#58925)
864
865 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
866
867         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
868         "use_align" to give people the option to just make a cell visible.
869
870         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
871         we were scrolling past the end of the tree.
872
873         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
874         rename gtk_tree_view_column_pack_start_cell_renderer to
875         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
876
877 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
878
879         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
880         a stray g_object_ref() left over from gtk_object_ref/sink.
881         (Pointed out by Josh Pritikin.)
882
883 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
884
885         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
886         to gtk_container_get_children. Added deprecated compatibility
887         macro. (Suggested by Vitaly Tishkov, #59051)
888
889         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
890         calls.
891
892 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
893
894         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
895         gtk_menu_bar_append/prepend/insert, forgot to do this
896         when we deprecated gtk_menu_append/prepend/insert.
897
898         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
899         compat macros.
900
901         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
902         renamed by compat macro.
903
904         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
905         gtk_font_selection_dialog_get_font(). (Suggested by
906         Vitaly Tishkov, #59383)
907
908 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
909
910         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
911         Rename from gtk_text_tag_table_size(). (#59366)
912
913 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
914
915         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
916         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
917         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
918         (#59173).
919
920 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
921
922         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
923         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
924         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
925
926 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
927
928         [ Patch from Sebastian Wilhelmi, 52790 ]
929
930         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
931
932         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
933         Move compatibility macros from g[dt]kcompat.h to within 
934         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
935
936         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
937
938         * demos/Makefile.am demos/gtk-demo/Makefile.am 
939           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
940           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
941
942         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
943                  testpixbuf.c}: Fix usages of deprecated functions.
944
945 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
946
947         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
948         when changing models.
949
950 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
951
952         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
953         We check the current event for modifiers rather than try to trap
954         all presses.
955
956 2001-08-22  Anders Carlsson  <andersca@gnu.org>
957
958         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
959         It's LIST_STORE, not LISTSTORE.
960
961 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
962
963         * gtk/gtk.h: Remove commented out gtkpacker reference.
964
965 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
966
967         * configure.in (all_loaders): Add tga loader, 
968         patch by Nicola Girardi. (#56067)
969
970 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
971
972         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
973         a little.  More needs to be done tomorrow.
974
975 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
976
977         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
978
979 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
980
981         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
982         reported by Kristian Rietveld <kristian@planet.nl> to handle row
983         == NULL.
984         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
985         <kristian@planet.nl> to change destroy order.
986
987 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
988
989         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
990         correct marshaller.
991
992 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
993
994         * gtk/gtkliststore.c: Fix up warnings, #58928.
995
996         * gtk/gtktreeselection.h: Change signal prototype, #58647
997
998         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
999         #59221.
1000
1001         * gtk/gtkstyle.c: Actually prelight arrow, #50981
1002         
1003 2001-08-18  Hans Breuer  <hans@breuer.org>
1004
1005         * gdk/gdk.def : updated externals
1006
1007         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
1008         is required to get (at least) visible in entry fields. Some selections
1009         are really handled now - even on win32 - but copying via middle
1010         mouse button into a different app needs to wait ... 
1011
1012         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
1013         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
1014
1015         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
1016         handling. I'm not sure if it is better now, but at least not worse
1017
1018         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
1019         with SetWindowPos () which allows more fine-tuning backing-store wise
1020
1021         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
1022         Also changed move/resize to be more like the X version.
1023
1024         * gtk/gtk.def : updated externals
1025
1026 2001-08-19  Sven Neumann  <sven@gimp.org>
1027
1028         * gtk/gtktooltips.c
1029         * tests/testtreesort.c
1030         * tests/treestoretest.c: inserted some casts to get rid of compiler
1031         warnings.
1032
1033 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
1034
1035         * gtk/gtktreeviewcolumn.c
1036         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
1037
1038         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
1039         (_gtk_tree_view_find_node): If *node is NULL,
1040         *tree should be NULL too.
1041
1042         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
1043         column/renderers.
1044         * tests/testtreecolumns.c: ditto
1045         * tests/testtreefocus.c: ditto
1046         * tests/testtreesort.c: ditto
1047         * tests/testtreeview.c: ditto
1048         * tests/treestoretest.c: ditto
1049
1050 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
1051
1052         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
1053         signals; is_expander/is_expanded.
1054
1055         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
1056         pixbufs.
1057
1058         * gtk/gtktreeview.c: set above properties.
1059
1060 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
1061
1062         * gtk/gtkwidget.h: Really remove set_default_style().
1063
1064         * docs/Changes-2.0.txt: added a note about
1065         gtk_widget_push/pop/set_default_style.
1066
1067 2001-08-18  Havoc Pennington  <hp@pobox.com>
1068
1069         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
1070         hints_changed in addition to the other cases.
1071         (gtk_window_move_resize): include last position from configure
1072         notify in debug spew
1073
1074 2001-08-18  James Henstridge  <james@daa.com.au>
1075
1076         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
1077         second argument to the weak ref notify, cleaning up some uglyness.
1078         (gtk_accel_group_attach): remove and add the weak notifier when
1079         changing the accel groups slist.
1080         (gtk_accel_group_detach): same here.
1081
1082 2001-08-17  Darin Adler  <darin@bentspoon.com>
1083
1084         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
1085         missing parameters to utf8 functions to make it compile.
1086
1087 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreeprivate.h:
1090         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
1091         (gtk_tree_view_init), (gtk_tree_view_set_property),
1092         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
1093         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
1094         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
1095         (gtk_tree_view_set_destroy_count_func),
1096         (gtk_tree_view_set_enable_search),
1097         (gtk_tree_view_get_enable_search),
1098         (gtk_tree_view_get_search_column),
1099         (gtk_tree_view_set_search_column),
1100         (gtk_tree_view_get_search_equal_func),
1101         (gtk_tree_view_set_search_equal_func),
1102         (gtk_tree_view_search_dialog_destroy),
1103         (gtk_tree_view_search_position_func),
1104         (gtk_tree_view_interactive_search),
1105         (gtk_tree_view_search_delete_event),
1106         (gtk_tree_view_search_button_press_event),
1107         (gtk_tree_view_search_key_press_event),
1108         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
1109         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
1110         * gtk/gtktreeview.h:
1111         Add heavily modified patch from Kristian Rietveld to handle
1112         interactive searching.
1113
1114 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
1115
1116         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
1117         string parameter.
1118
1119         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
1120         GtkMenuShell::selection_done, now that we have it, instead of 
1121         ::deactivate so we're not tearing the menu apart and notify
1122         the user prematurely.
1123
1124 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
1125
1126         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
1127         window, clear window->need_default_position to avoid infinite loops.
1128         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
1129
1130 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
1131
1132         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
1133         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
1134         (gtk_tree_view_set_property): don't cast possible NULL objects.
1135         (gtk_tree_view_destroy): reset the model to NULL.
1136
1137         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
1138         parent_class handler.
1139
1140 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1141
1142         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
1143
1144 >>>>>>> 1.2276
1145 2001-08-17  Anders Carlsson  <andersca@gnu.org>
1146
1147         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
1148         point numbers so that the result will be floating point.
1149
1150 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1151
1152         * tests/testgtk.c (create_handle_box): 
1153         (create_toolbar): Replace gtk_window_set_policy calls by
1154         gtk_window_set_resizable.
1155
1156 2001-08-16  Jakub Steiner <jimmac@ximian.com>
1157
1158         * gtk/stock-icons/dialog_info.png: new style bulb
1159         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
1160         * gtk/stock-icons/dialog_warning.png: need a hand?
1161         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
1162           the aa border gets chopped off ok
1163         * gtk/stock-icons/stock_colorselector.png: using the new hand
1164         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
1165           this one is for, but the old icon was butt ugly.
1166         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
1167         * gtk/stock-icons/stock*_insert_object.png: "
1168         * gtk/stock-icons/stock_index.png: using new hand icon
1169         * gtk/stock-icons/stock*_new.png: the document template being used 
1170           elsewhere too
1171         * gtk/stock-icons/stock*_print*.png: new print and print preview 
1172           icons (panel/menu)  
1173         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
1174           icons based on Tuomas' floppy image.
1175         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
1176         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
1177         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
1178         * gtk/stock-icons/stock*_undelete.png: "
1179         * gtk/stock-icons/stock_preferences.png: I have a version with a 
1180           document base if the sliders are no good.
1181         * gtk/stock-icons/stock_properties.png: properties 
1182         
1183
1184         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
1185           (tigert@ximian.com) clipboard icons
1186         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
1187         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
1188         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
1189           little bigger IMHO
1190
1191 2001-08-16  Sven Neumann  <sven@gimp.org>
1192
1193         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
1194
1195 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
1196
1197         * gtk/gtkcellrenderertext.c:
1198         Avoid warning when specifying NULL for "attributes" property
1199
1200 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1201
1202         * docs/debugging.txt: Add a warning about --enable-debug=no,
1203         some editorial changes.
1204
1205 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1206
1207         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
1208         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
1209         debugging info, remove unused debug flags. (#58330)
1210
1211 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
1212
1213         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
1214         (gtk_tree_selection_select_all): Remove strict checking for rows.
1215
1216 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1217         
1218         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
1219         Don't remove the tooltip window when the tip text changes. (#15891)
1220
1221 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
1222
1223         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
1224         $(srcdir).
1225
1226 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
1227
1228         * Makefile.am (EXTRA_DIST): Fix problem with trying to
1229         dist files from intl/, which is no longer there.
1230
1231 2001-08-11  Hans Breuer  <hans@breuer.org>
1232
1233         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
1234           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
1235           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
1236           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
1237           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
1238           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
1239
1240         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
1241           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
1242         GDK_TYPE_EVENT signals
1243
1244         * gtk/gtkalignment.c : removed 'direct allocation bug',
1245         which Tim discovered while reading the patch
1246
1247 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
1248
1249         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
1250         compat macros for push/pop/set_visual that were supposed
1251         to be added a long time ago, but got dropped. 
1252
1253 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
1254
1255         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
1256         property notifies.
1257
1258 2001-08-07  Havoc Pennington  <hp@pobox.com>
1259
1260         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
1261
1262         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
1263         some fixage is needed here, but nothing simple. Owen understands
1264         it. ;-)
1265
1266         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
1267         sizing and positioning.  Also, fix bug in compute_geometry_hints
1268         (width/height confusion for setting min size). 
1269         (gtk_window_move): new function
1270         (gtk_window_resize): new function
1271         (gtk_window_get_size): new function
1272         (gtk_window_get_position): new function
1273         (gtk_window_parse_geometry): new function
1274         
1275         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
1276         (gtk_widget_get_size_request): new function
1277         (gtk_widget_get_usize): delete, that was a short-lived function
1278         ;-)
1279         (gtk_widget_set_usize): deprecate
1280         (gtk_widget_set_uposition): deprecate, make it a trivial 
1281         gtk_window_move() wrapper
1282         (gtk_widget_class_init): remove x/y/width/height properties,
1283         add width_request height_request
1284         
1285         * demos/*: update to avoid deprecated functions
1286         
1287         * gtk/gtklayout.c: add x/y child properties
1288
1289         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
1290         uses of "gint16"
1291
1292         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
1293         sizing test
1294
1295         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
1296         configure events on toplevel windows are always in root window
1297         coordinates, following ICCCM spec that all synthetic events 
1298         are in root window coords already, while real events are 
1299         in parent window coords. Previously the code assumed that 
1300         coords of 0,0 were parent window coords, which was 
1301         really broken.
1302   
1303         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
1304         warning
1305  
1306         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
1307         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
1308         hints in gtk_window_parse_geometry()
1309  
1310         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
1311         new USER_POS USER_SIZE hints    
1312
1313 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1314
1315         * tests/prop-editor.c (properties_from_type): Use 
1316         g_object_class_list_properties to get the param specs 
1317         for a given type. (#58609)
1318
1319 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1320
1321         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
1322         free the text_aa parts. (#57549)
1323
1324 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1325
1326         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
1327         not the foreground color. (#57621)
1328
1329 2001-08-09  Alexander Larsson <alexl@redhat.com>
1330
1331         * gdk/win32/gdkfont-win32.c:
1332         Update to the new pango win32 api.
1333
1334 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
1335
1336         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
1337         COMPOUND_TEXT instead of TEXT
1338         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
1339         interpret the return value of g_string_to_compound_text()
1340         (#55152)
1341
1342 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1343
1344         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
1345         fail if iter is NULL. (#58347)
1346
1347 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1348
1349         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
1350         some off-by-one issues, fixing selection of line-ends. (#50323)
1351
1352 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1353
1354         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
1355         functions in order to make mouse operation work again in the
1356         color wheel. (#58604)
1357
1358 2001-08-07  James Henstridge  <james@daa.com.au>
1359
1360         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
1361         the accelerator when the accel object is changed.  Fixes bug
1362         #58628.
1363
1364 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
1365
1366         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
1367         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
1368         (gnome bugzilla #58202)
1369
1370 2001-08-06  Havoc Pennington  <hp@pobox.com>
1371  
1372         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
1373         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
1374         it was expecting a GdkWindow, not a GdkWindowImplX11.
1375  
1376         Also, we were getting the window rect in screen coords 
1377         and the screen rect in window coords then intersecting 
1378         them; instead, get window rect in window coords.
1379  
1380         Finally, there were codepaths that resulted in a stuck server grab
1381         (when the window was fully onscreen, or on gdk_image_new()
1382         failure); make the server ungrab thing a bit more
1383         robust/consistent.
1384
1385 2001-08-06  Sven Neumann  <sven@gimp.org>
1386
1387         * gdk/gdkpango.c (gdk_pango_context_destroy): 
1388         check if info->colormap != NULL before unref'ing it. It might have
1389         been set to NULL using gdk_pango_context_set_colormap().
1390
1391 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
1392
1393         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
1394         Fix conversion from float to int so that we don't get
1395         skew in the int => float => int roundtrip. 
1396         (#58120, reported by Vitaly Tishkov). Also fix problem
1397         where if no alpha was set, the returned alpha
1398         from (say) set_current_alpha() was returned as 1, not 65535.
1399
1400 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
1401
1402         * gtk/gtklist.c (gtk_list_clear_items): Fix
1403         problem with selecting a new focus child.
1404
1405         * gtk/gtklist.c (gtk_list_clear_items): Clear 
1406         list->undo/list_focus_child after unparenting
1407         child, since unparenting the child can result
1408         in list->last_focus_child being set. (#58024)
1409
1410         * Makefile.am (SUBDIRS): Add target specific pc
1411         files to DISTCLEANFILES.
1412
1413         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
1414         (58327, Matthias Clasen)
1415
1416 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
1417
1418         * tests/testgtk.c: Patch from Hans (with various modifications),
1419         to add the ability to use testgtk as a rough-and-ready
1420         benchmark. Try, 'testgtk --bench all:5' (if you want decent
1421         numbers, run without a window manager)
1422
1423 2001-08-04 Alexander Larsson <alexl@redhat.com>
1424
1425         * gdk/win32/gdkinput.c:
1426         Add #ifdef HAVE_WINTAB around wintab.h include.
1427
1428         * gtk/gtk.def:
1429         Removed marshals that have been moved to glib.
1430         Commented out plug and socket. They didn't compile for me 
1431         on win32.
1432
1433 2001-08-04  Hans Breuer  <hans@breuer.org>
1434
1435         * gtk/stocks-icons/makefile.msc : new file
1436         * gtk/makefile.msc.in : use it
1437
1438         * gtk/gtkstyle.c : not all platforms do provide M_PI and
1439         friends, but luckily there is G_PI
1440
1441         * gtk/gtk.def : updated
1442
1443         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
1444         windows WS_POPUP, but only those without a parent. This fixes the 
1445         mis-alignment between the selectable (temp, input only) window and 
1446         the window text of GtkLabel.
1447
1448         (gdk_window_show) : respect private->state when actually showing
1449         the window.
1450
1451         (gdk_window_set_transient_for) : Implementation from Wolfgang 
1452         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
1453         error handling. Should fix #50586.
1454
1455         * gdk/win32/gdkevents-win32.c : beautify log output
1456
1457 2001-08-04  Michael Natterer  <mitch@gimp.org>
1458
1459         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
1460         Need to show the image after adding it to the GtkImageMenuItem.
1461         This used to work without in testgtk because of the
1462         gtk_widget_show_all() at the end of the function.
1463         (Closes #54978).
1464
1465 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
1466
1467         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
1468         (gtk_notebook_set_child_property): fix finding of child's page,
1469         since we have to validly deal with labels and menus here as well.
1470         (gtk_notebook_get_child_property): fix warning.
1471         (gtk_notebook_class_init): property tab_pack is of type
1472         GTK_TYPE_PACK_TYPE (enum) not boolean.
1473         (gtk_notebook_find_child): don't always warn, we might be looking
1474         for a label or menu child.
1475         (gtk_notebook_map): fix mapping of panel.
1476
1477         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
1478         widget's mapped state, regardless of the value being set equals
1479         old settings, since things like REALIZED(parent) or MAPPED(parent)
1480         may have changed since the old value was set. make it an error to
1481         invoke this function on a toplevel widget.
1482
1483 2001-07-31  Darin Adler  <darin@bentspoon.com>
1484
1485         * gdk/gdkprivate.h:
1486         * gdk/x11/gdkx.h:
1487         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
1488
1489         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
1490         GTK_OBJECT.
1491
1492 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
1493
1494         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
1495         scoping error pointed out by matthiasc@poet.de.
1496
1497 2001-07-31  Sven Neumann  <sven@gimp.org>
1498
1499         * demos/gtk-demo/appwindow.c
1500         * demos/gtk-demo/item_factory.c
1501         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
1502
1503 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
1504
1505         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
1506         argument order for g_signal_has_handler_pending.
1507
1508 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
1509
1510         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
1511         instead of long deprecated g_scanner_stat_mode().
1512
1513 2001-07-29  Hans Breuer  <hans@breuer.org>
1514
1515         * gdk/makefile.msc : build in the backend dir after
1516         auto-generating files
1517
1518         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1519         with code from win32-production-branch.
1520
1521         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1522         before calling DestroyWindow, which indirectly calls 
1523         gdk_window_destroy_notify ()
1524
1525         (performance patch merged from win32-production-branch)
1526         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1527         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1528         R2_COPYPEN rop). It is claimed to be much faster.
1529
1530 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1531
1532         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1533         add an "attributes" property to the text renderer for ATK.
1534
1535 2001-07-26  Alex Larsson  <alexl@redhat.com>
1536
1537         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1538         Initialize image->bits_per_pixel from the drawable, not from
1539         the root window.
1540
1541         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1542         Fix cast. argument is an IMPL already.
1543
1544 2001-07-15  James Henstridge  <james@daa.com.au>
1545
1546         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1547         (gtk_window_remove_accel_group): same here.
1548         (gtk_window_key_press_event): same here.
1549
1550         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1551         (gtk_widget_remove_accelerator): same here.
1552         (gtk_widget_remove_accelerators): same here.
1553
1554         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1555
1556         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
1557         instead of GtkObject.
1558
1559         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
1560         now takes GObjects.
1561
1562         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
1563         pass a GObject to gtk_accel_group_entries_from_object.
1564         (gtk_item_factory_create_item): s/accel_widget/accel_object/
1565
1566         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
1567
1568         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
1569
1570         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
1571         GObjects can have accelerators set now.  Add compatibility
1572         defines.
1573
1574         * gtk/gtkmarshal.list: add missing marshallers.
1575
1576         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
1577         accelerators on plain GObjects.  gtk_accel_group_object_destroy
1578         has been converted into a weak reference, and
1579         gtk_accel_group_delete_entries is now a destroy notify for that
1580         piece of data.
1581
1582 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1583
1584         * gdk/gdkdraw.c: Added a check on the colormap depth to
1585         gdk_drawable_set_colormap()
1586         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
1587         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
1588         for pixmaps without visuals (more specifically, bitmaps)
1589         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
1590         doesn't set a colormap with the wrong depth
1591
1592
1593 2001-07-22  Anders Carlsson  <andersca@gnome.org>
1594
1595         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
1596         expander_height and expander_width properties with a single
1597         property, expander_size.
1598         (gtk_tree_view_init): Set the tab_offset to expander_size
1599         plus some padding.
1600         (gtk_tree_view_unrealize): Remove the expand/collapse
1601         timeout if it exists.
1602         (coords_are_over_arrow): Fix a small bug.
1603         (gtk_tree_view_motion_draw_column_motion_arrow): Use
1604         expander_size.
1605         (gtk_tree_view_draw_focus): Use "treeview" instead of
1606         "add-mode" as detail when drawing the focus.
1607         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
1608         instead of "add-mode" as detail when drawing the focus.
1609         (gtk_tree_view_deleted): If we have a node currently being
1610         expanded or collapsed, remove the timeout and set the node 
1611         to NULL.
1612         (gtk_tree_view_queue_draw_arrow): New function that just
1613         redraws the arrow of a node.
1614         (gtk_tree_view_draw_arrow): Use expander_size instead of
1615         expander_width/expander_height, also pass a different
1616         expander_style to gtk_paint_expander depending on the 
1617         state of the node being drawn.
1618         (expand_collapse_timeout): New function for expanding 
1619         or collapsing a node depending on the previous state.
1620         (gtk_tree_view_real_expand_row): Add timeout and set 
1621         correct state for node being expanded.
1622         (gtk_tree_view_real_collapse_row): Add timeout and set
1623         correct state for node being collapsed.
1624
1625         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
1626         information about the node currently being expanded or
1627         collapsed, and also a timeout id.
1628
1629         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
1630         with expander_style for draw_expander.
1631
1632         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
1633         expander_style.
1634         (create_expander_affine): New function for creating an 
1635         expander affine.
1636         (apply_affine_on_point): New function for applying an 
1637         affine to a point.
1638         (gtk_default_draw_expander): Modified to take expander_style
1639         instead of is_open, and to draw the rectangle rotated differently
1640         depending on the expander style.
1641         (gtk_paint_expander): Replace is_open with expander_style.
1642
1643         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
1644
1645         * gtk/gtkenums.h: Add expander style enum.
1646
1647 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
1648
1649         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
1650         value from gtk_tree_model_get_iter, the model might be empty.
1651
1652 2001-07-20  Hans Breuer  <hans@breuer.org>
1653
1654         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
1655         gdk/gdkinput.c like the other backends
1656
1657         * gdk/win32/gdkinput-win32.h :
1658         * gdk/win32/gdkinput.c :
1659         * gdk/win32/gdkvisual-win32.c :
1660         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
1661         GdkVisual GObjectification. UNTESTED for pen-devices because
1662         I simply have none.
1663
1664         * gdk/gdk.def :
1665         * gtk/gtk.def : updated externals
1666
1667         * gtk/gtkiconfactory.c :
1668         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
1669         before passing &error to functions to avoid strange crashes
1670         
1671         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
1672
1673         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
1674
1675         * gtk/makefile.msc.in : updated
1676
1677 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
1678
1679         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
1680         Add property support. (#51858)
1681
1682 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
1683
1684         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
1685         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
1686         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
1687
1688 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
1689
1690         * gtk/gtkcolorsel.c: Add propery support (roughly
1691         based on patch from Lee Mallabone, #51014)
1692
1693         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
1694         deprecated, since we already g_warning() on it.
1695
1696 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
1697
1698         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
1699         typo that sometimes caused selection not to work properly.
1700
1701         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
1702         entry when tabbing in. (#57743)
1703         
1704         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
1705         user drags up above or down below the entry, move
1706         to the end or the beginning of the entry. (Suggestion
1707         from Jay Cox, #50940)
1708
1709         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
1710         a current selection, then when moving by chars or
1711         words, move to the end of the selection rather than
1712         from entry->current_pos. (Suggestion from Jay Cox,
1713         #50942)
1714         
1715 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
1716
1717         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
1718         set window->decorated. (Patch from Hidetoshi Tajima,
1719         #55846)
1720
1721 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
1722
1723         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
1724         the widget/child realization/mapping invariants.
1725
1726         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
1727         gtk_widget_[get/set]_child_visible() to control
1728         whether visible children of a mapped window are
1729         mapped.
1730
1731         * docs/widget_system.txt: Updated for changes in
1732         container contract, and addition of GTK_CHILD_VISIBLE.
1733
1734         * gtk/gtkcontainer.c: Add generic map()/unmap()
1735         functions that work for almost all containers.
1736
1737         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
1738         gtk_widget_set_child_visible() where necessary.
1739
1740         * gtk/*.c: Remove excess map(), unmap(), and 
1741         realization/mapping invariant enforcing code
1742         from many containers.
1743
1744 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
1745
1746         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
1747         Get the foreground color from 'text', nor 'fg'. (#57568)
1748
1749 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
1750
1751         * gtk/*.c: Patch from Matthias Clasen to remove remove
1752         all instances of g_return_if_fail (foo != NULL); that are
1753         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
1754         since the second check catches the NULL anyways.
1755
1756 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1757
1758         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
1759         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
1760         GDK_THREADS_ENTER()/LEAVE() pairs.
1761
1762         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
1763         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
1764         pairs. (Problem found by M. Meeks)
1765
1766 2001-07-18  Darin Adler  <darin@bentspoon.com>
1767
1768         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1769         that we don't get a g_warning message every time we register a new
1770         icon size.
1771
1772         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1773         using pixel variable of the correct type.
1774         
1775 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1776
1777         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1778         so that using X functions on a GdkWindow is possible, if
1779         a little hairy.
1780
1781         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1782         and ts_origin of a GC, so that external parties can offset/restore
1783         a GC, when using gdk_window_get_internal_paint_info().
1784
1785 2001-07-17  Darin Adler  <darin@bentspoon.com>
1786
1787         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1788         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1789         instead of the deprecated gtk_window_set_policy.
1790         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1791         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1792         function to get rid of warning and some code too.
1793         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1794         missing const.
1795         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1796         unused local.
1797         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1798         const.
1799         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1800         (gdk_utf8_to_compound_text): Add missing const.
1801         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1802         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1803         cast and get rid of an unnecessary one.
1804         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1805         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1806         local.
1807         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1808         Remove unused local.
1809         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1810         missing const.
1811         * tests/testsocket.c: (add_child): Add cast so the printf format
1812         doesn't make us implicitly depend on what integer type
1813         gtk_socket_get_id returns.
1814         * tests/testtextbuffer.c: Add missing const.
1815         * tests/testtreefocus.c: (main): Remove unused local.
1816         * tests/treestoretest.c: (iter_remove): Remove unused local.
1817         (uppercase_value): Remove unused function.
1818         (make_window): Add statement to quiet the compiler's uninitialized
1819         variable warning.
1820
1821 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1822
1823         * gtk/gtkrange.c:
1824         (second_timeout): 
1825         (initial_timeout): 
1826         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1827         (gtk_range_calc_layout): compute the new layout based on an
1828         adjustment->value being passed in as argument.
1829         (gtk_range_button_press): for button2 slider warps, first recalc
1830         the layout, then adjust the value. also, use update_slider_position()
1831         for adjusting the value, so we keep pixel quantisation at which we
1832         usually operate (upon motion or button releases). the reason for this
1833         is that, we can't change the adjustment upon button2 presses to a non
1834         quantised value and upon button2 release re-quantise the value since
1835         that'd alter the value even if we didn't get any motion events (causing
1836         unexpected scroll area warps upon release and/or slider pixel-jitter).
1837         (gtk_range_motion_notify): update the slider position from queried
1838         coordinates, not event coordinates.
1839
1840 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1841
1842         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1843         the default gc values are: width=0, CapBut, JoinMiter.
1844
1845 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1846
1847         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1848         into account the xpad and ypad when calculating the width and the
1849         height of the pixbuf cel.
1850
1851 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1852
1853         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1854         Rename to gtk_radio_menu_item_get_group(), add deprecated
1855         alias. (#57044)
1856
1857         * gtk/gtkfilesel.c: Indentation fix.
1858
1859 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1860
1861         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1862         Hasselmann to fix warnings in compat macros. 
1863         (#56773)
1864
1865         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1866         stupid wrong cast added in last patch.
1867
1868 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1869
1870         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1871         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1872
1873 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1874
1875         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1876         missing cast.
1877
1878         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1879         NULL/FALSE return value confusion.
1880
1881         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1882         problem when scrollbar completely fills range. (Patch
1883         from  Matthias Clasen, #57047)
1884
1885 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1886
1887         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1888         clean up when handling events for move-resize emulation.
1889         (Problem traced down by Matthias Clasen, #57271)
1890
1891 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1892
1893         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1894           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1895           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1896           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1897           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1898           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1899           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1900         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1901
1902 2001-07-09  Peter Williams  <peterw@ximian.com>
1903
1904         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1905         for when srcdir != builddir
1906
1907 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1908
1909         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1910         gtk_tree_model_get_iter_root.
1911
1912         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1913         (gtk_list_store_iter_n_children): Fix up.
1914
1915         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1916
1917 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1918
1919         * gtk/gtkwidget.c (gtk_widget_class_init):
1920         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1921         restore some workingness.
1922
1923         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1924         handle of window type for input-only windows.
1925
1926 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1927
1928         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1929         Patch from Gregory Merchan to add 
1930         gtk_button_box_set_secondary(), which separates
1931         the child into a separate group from the normal
1932         buttons. (#56331)
1933
1934         * gtk/gtkdialog.c: Make help buttons secondary by
1935         default.
1936
1937         * gtk/gtkbbox.c: Added a child property "secondary".
1938
1939         * gtk/testgtk.c: Turn on the help button for the 
1940         color selector to check that it properly appears
1941         as secondary.
1942
1943 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1944  
1945         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1946         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1947         Add gdk_set_pointer_hooks() to allow pointer-querying to
1948         be hooked by an event record/playback system like GERD.
1949         (#56914)
1950         
1951 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1952
1953         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1954         in the right value of initial_emission to
1955         gtk_widget_set_style_internal (#57091)
1956
1957 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1958
1959         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1960         Make compile.
1961
1962         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1963         with calling gtk_widget_set_style_internal() with
1964         the old style, not the new style. (#56989)
1965
1966 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1967
1968         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1969           gtk/gtkwidget.c:
1970         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1971         not GTK_WIDGET_GET_ANCESTOR ... see 
1972         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1973         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1974
1975         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1976         so GtkPlug can give the correct signals when transforming
1977         from a child to a toplevel.
1978         
1979         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1980         reparentation correctly.
1981
1982         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1983         Propagate the previous_toplevel argument down properly.
1984
1985         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1986         of wrong atr list.
1987
1988         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1989
1990         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1991         signals.
1992
1993         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1994         functions gtk_plug_get_id(), gtk_socket_get_id(),
1995         to avoid the user having to worry about realization,
1996         and gdkx.h.
1997
1998         * tests/testsocket.c: Extend to try out the new signals
1999         and gtk_plug/socket_get_id().
2000
2001         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
2002         setting of underline attributes.
2003
2004         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
2005         DestroyNotify events from SubstructureNotifyMask
2006
2007         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
2008         Switch GDK_WINDOW_TYPE (window) as needed.
2009
2010         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
2011         allow creation of toplevel windows as children of
2012         foreign windows.
2013
2014         * gtk/gtkplug.c: Remove hacks involving changing private
2015         fields of GdkWindow.
2016
2017         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
2018         exactly the same signals and notification
2019         be emitted for local embedding as for inter-process
2020         embedding.
2021
2022 2001-07-04  James Henstridge  <james@daa.com.au>
2023
2024         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
2025
2026 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
2027
2028         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
2029         XEMBED embedding add a _XEMBED_INFO property to the
2030         client with version number and a "mapped" flags.
2031         Use the mapped flag instead of the racy MapRequestEvent
2032
2033         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
2034         code to reliably set things (when the child is a passive
2035         embedder participating in the XEMBED protocol) intead
2036         of just being a hack for embedding non-participating
2037         programs. Fix various bugs and race conditions.
2038         
2039         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
2040         work by simply making the GtkSocket the gtk parent
2041         of the GtkPlug. Set a flag in this case and make
2042         the GtkPlug work like a normal container by overriding
2043         methods such as check_resize and "chaining past" GtkWindow
2044         to GtkBin.
2045
2046         * gtk/gtkentry.c (gtk_entry_real_activate)
2047           gtk/gtkmain.c (gtk_propagate_event): 
2048         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
2049         
2050         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
2051         gtk_widget_get_ancestor):
2052         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
2053         might not give the expected result and recommend
2054         an alternative.
2055
2056         * tests/testsocket.c tests/testsocket_child.c
2057         tests/testsocket_common.c tests/Makefile.am: Extended
2058         to test different type of adding plugs to sockets
2059         (local,active,passive), and to test mapping/unmapping
2060         the plug.
2061
2062         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
2063         mark the window as destroyed until after we
2064         called _gdk_windowing_window_destroy().
2065         (_gdk_windowing_window_destroy() may use GDK functions
2066         on the window.)
2067
2068         * gdk/x11/gdkinput.c: Remove the check for finalization - 
2069         devices can be finalized under some circumnstances.
2070  
2071         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
2072         small problem with GDK_TYPE_DEVICE.
2073  
2074 2001-07-02  Havoc Pennington  <hp@pobox.com>
2075
2076         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
2077         use constants not atoms.
2078
2079 2001-07-02  James Henstridge  <james@daa.com.au>
2080
2081         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
2082         PANGO_TYPE_TAB_ARRAY.
2083
2084         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
2085         for PANGO_TYPE_TAB_ARRAY.
2086
2087         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
2088         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
2089
2090         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
2091         the file.  Remove Pango types from defs -- they are now defined in
2092         libpango.
2093
2094 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
2095
2096         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
2097
2098         * gtk/gtkobject.c (gtk_object_destroy): invoke
2099         g_object_run_dispose().
2100
2101         * gtk/gtkwindow.c: 
2102         * gtk/gtkwidget.c: 
2103         * gtk/gtkobject.c:
2104         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
2105         method.
2106
2107 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
2108
2109         * gtk/gtktypeutils.c (gtk_type_class): Remove
2110         change check for GTK_TYPE_OBJECT derivation to
2111         G_TYPE_OBJECTS - it's Tim-approved to use this 
2112         for arbitary objects.
2113
2114         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
2115         prefix gtk_container_dequeue_resize_handler().
2116
2117         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
2118         to the hierarachy_changed signal, since you otherwise
2119         have to always keep that around.
2120
2121         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
2122         for extra argument to hierarchy_changed.
2123
2124 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
2125
2126         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
2127         for style to mean "revert to default style"
2128
2129         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
2130           gtk_widget_restore_default_style): Make this functions
2131         deprecated aliases for gtk_widget_set_style (widget, NULL).
2132
2133         * gtk/gtkwidget.[ch]: Remove:
2134            gtk_widget_set_default_style ()
2135            gtk_widget_push_style ()
2136            gtk_widget_pop_style ()
2137         These functions interact are overriden by RC files, and
2138         thus virtually useless, and complicated.
2139
2140 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
2141
2142         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
2143         most of the previous global variables in gtkrc.c. This is
2144         in preparation for multi-head, since each screen can
2145         have different GtkSettings and RC information.
2146
2147         * gtk/gtkrc.[ch]: 
2148
2149         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
2150         GtkSettings parameter to GtkRcStyle::parse.
2151
2152         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
2153         Add two new settings gtk-theme-name, gtk-key-theme-name,
2154         for RC files that are loaded by name after reading
2155         the default RC files.
2156         
2157         * gtk/gtkrc.c: Allow priorities for styles, as wll as
2158         bindings.
2159
2160         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
2161         and use it by default for RC files loaded via 
2162         gtk-theme-name, gtk-key-theme-name.
2163
2164         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
2165         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
2166         tests/testgtkrc: Require pathnames to be absolute.
2167
2168         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
2169         the source when parsing, since the operation of looking up a
2170         pixmap from an RC file depends on the parsing context.
2171
2172         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
2173         reset RC styles on all widgets when files are reparsed.
2174
2175         * tests/testgtk.c (create_rc_file) 
2176           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
2177         Simplify, now that gtk_rc_reparse_all() resets styles on
2178         all widgets itself.
2179
2180         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
2181         return value.
2182
2183         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
2184         GtkSettings argument.
2185
2186         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
2187         gtk_settings_get_global().
2188
2189         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
2190         to get the appropriate GtkSettings for a widget. (For now,
2191         just gets the default GtkSetttings.) 
2192
2193         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
2194           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
2195         changes.
2196
2197         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
2198         getting a style for a path without actually having a widget.
2199         (Allows using a style for a subpart of a widget, for
2200         example.)
2201
2202         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
2203         the RC files to be reloaded for just one GtkSettings
2204         (not sure how useful this really is.)
2205
2206         * gtk/gtkrc.h: Deprecate
2207         gtk_rc_add_widget_name/widget_class/class_style
2208
2209 2001-06-30  Alex Larsson  <alexl@redhat.com>
2210
2211         * gdk/linux-fb/gdkinput-none.c:
2212         * gdk/linux-fb/gdkinput.c:
2213         * gdk/linux-fb/gdkinputprivate.h:
2214         Convert GdkDevice to a GObject.
2215
2216         * linux-fb/gdkprivate-fb.h:
2217         * linux-fb/gdkvisual-fb.c:
2218         Convert GdkVisual to a GObject.
2219
2220 2001-06-29  Alex Larsson  <alexl@redhat.com>
2221
2222         * gdk/gdkvisual.h:
2223         * gdk/gdkcolor.c:
2224         * gdk/x11/gdkx.h:
2225         * gdk/x11/gdkvisual-x11.c:
2226         Convert GdkVisual to a GObject.
2227
2228         * gdk/gdkinput.h:
2229         * gdk/gdkevents.c:
2230         * gdk/x11/gdkinputprivate.h:
2231         * gdk/x11/gdkinput-gxi.c:
2232         * gdk/x11/gdkinput-none.c:
2233         * gdk/x11/gdkinput-x11.c:
2234         * gdk/x11/gdkinput-xfree.c:
2235         * gdk/x11/gdkinput.c:
2236         Convert GdkDevice to a GObject.
2237
2238 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
2239
2240         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
2241         to just plain new, fixing the number of columns, and column types
2242         at creation time.
2243
2244         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
2245
2246         * gtk/gtkcellrenderertext.c
2247         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
2248         height to a specific font.
2249
2250         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
2251
2252         * tests/*c: change to work with new store models.
2253
2254 2001-06-29  Havoc Pennington  <hp@redhat.com>
2255
2256        * Throughout: fixes to compile with G_DISABLE_COMPAT
2257         (s/g_signal_connectc/g_signal_connect/,
2258         s/g_signal_newc/g_signal_new/,
2259         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
2260
2261 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
2262
2263         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2264         add path argument to selection callbacks.
2265
2266 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
2267
2268         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
2269         walk through a model in a depth first manner, with the option to
2270         break out.
2271
2272 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
2273
2274         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
2275         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
2276         column and follow it when draged, rather than a location in the
2277         view. "expander_column" property and drawing functions changed
2278         accordingly.  Fixes bug #55942.
2279
2280         (gtk_tree_view_{set,get}_expander_column): Now works with a
2281         GtkTreeViewColumn* instead of int.
2282
2283 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
2284
2285         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
2286
2287 2001-06-28  Havoc Pennington  <hp@pobox.com>
2288
2289         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
2290         image data to the screen, using a server grab to avoid race
2291         conditions.
2292
2293         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
2294         check for NULL return from gtk_image_new_from_stock(), it never
2295         returns NULL.
2296         (gtk_item_factory_create_item): fix bug where we parsed the stock
2297         ID as an inline pixbuf
2298
2299         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
2300
2301         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
2302         support (should be using binding set here)
2303
2304         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
2305         support (should be using binding set here)
2306
2307         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
2308         support
2309
2310         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
2311
2312         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
2313
2314         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
2315
2316         * gtk/gtkimcontextsimple.c
2317         (gtk_im_context_simple_filter_keypress): keypad
2318
2319         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
2320
2321         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
2322
2323         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
2324
2325         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
2326         should be binding-setted)
2327
2328         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
2329
2330         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
2331
2332         * gtk/gtkcalendar.c: numeric keypad fixes
2333
2334         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
2335         support
2336
2337         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
2338         screwup
2339
2340         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
2341         clip the render area to the drawable's clip region in advance,
2342         so we don't get data from the server that we don't need.
2343
2344         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2345         check return value of gdk_pixbuf_get_from_drawable(), fall back 
2346         to bilevel alpha if we can't get the pixbuf to composite against.
2347
2348         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
2349
2350         * gdk/gdkimage.c (gdk_image_get_colormap): add
2351         gdk_image_set_colormap, gdk_image_get_colormap
2352
2353         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
2354         take a region of the image, instead of converting the entire
2355         image.
2356
2357         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
2358         keybinding signal. Add default bindings for it. Add default
2359         handler for show_help that shows the tooltip for the widget.
2360
2361         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
2362         "close" keybinding signal, remove key press handler.
2363
2364         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
2365         it's not our usual practice to leave a deprecated function around
2366         with a runtime warning, plus we don't want it to appear in docs,
2367         plus if we make them yellow no one will want to change them
2368         anyhow.
2369
2370 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2371
2372         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
2373         GTK_WIDGET_REALIZE() for resize queueing.
2374
2375         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
2376         GTK_WIDGET_REALIZE() for post event delivery destruction upon
2377         GDK_DESTROY.
2378         
2379         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
2380         sompensate for former (pre-2.0) connect_after() facility.
2381         (gtk_widget_send_expose): 
2382         (gtk_widget_event): assert the widget is realized, since event delivery
2383         to non-realized widgets is essentially a bug. event handlers should
2384         be able to unconditionally rely on widget->window (unless they
2385         emit events on their own which can trigger widget destruction).
2386         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
2387         logic. event delivery happens as follows:
2388         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
2389         b) if !was_handled in (a) and the widget is still realized, emit event-
2390            specific signal (RUN_LAST handler). returns was_handled.
2391         c) emission of GtkWidget::event-after for notification if the widget is
2392            still realized (regardless of was_handled from previous stages, no
2393            class handler). no return value.
2394         d) was_handled gets passed on to caller, to determine further
2395            propagation. if the widget got unrealized meanwhile, was_handled
2396            is returned as TRUE.
2397
2398         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
2399         gdk_event_get_coords().
2400
2401 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2402
2403         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
2404         age 0, binary age 0. depend on glib 1.3.7.
2405
2406         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
2407
2408         * gtk/gtkmenubar.c: same here.
2409         
2410         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
2411
2412         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
2413
2414         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
2415         
2416         * gtk/gtkmenubar.c (add_to_window): likewise.
2417         
2418         * gtk/gtktextbtree.c: and here...
2419         
2420         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
2421         
2422         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
2423         
2424         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
2425         
2426         * gtk/gtktreeviewcolumn.c:
2427         (_gtk_tree_view_column_set_tree_view): yet again.
2428
2429         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
2430         signal connections without g_signal_connect_data().
2431         
2432         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
2433         demo of the matter.
2434         
2435         * demos/testpixbuf.c (main): running out of equality phrases for the
2436         ChangeLog, but had to adapt connections here as well.
2437         
2438         * demos/testanimation.c (progressive_timeout): and for the fun of it,
2439         tackled this the same way.
2440         
2441         * tests/testtext.c (create_view): ok, it's becoming a pain at this
2442         point, but had enough enery for one more fix.
2443
2444         * tests/testtreecolumns.c (main): stand up man, do your work!
2445
2446         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
2447         fix, either that's been all of it or CVS gtk is broken yet again.
2448         
2449 2001-06-29  James Henstridge  <james@daa.com.au>
2450
2451         The following changes correspond to bug #56812
2452
2453         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
2454         code for GdkDevice.
2455
2456         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
2457         GdkCursor.
2458
2459 2001-06-19  Havoc Pennington  <hp@pobox.com>
2460
2461         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
2462         for mapping a window without fooling with stacking order, but
2463         updating the "withdrawn" flag
2464
2465         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
2466         filtering as soon as possible, moving move resize and wmspec_check
2467         handling after the event filter.  Make default filter apply to all
2468         events, not just those with no GdkWindow wrapped around the X
2469         window. Fix a FIXME about how the window could be a pixmap using 
2470         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
2471
2472         Also, be robust against events not on a known GdkWindow.
2473
2474         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
2475         gdk_x11_ungrab_server): export reference-counted server grabs, so
2476         other people can grab server over a GDK function that also does
2477         so.
2478
2479 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2480
2481         * gtk/gtktreeviewcolumn.c
2482         (gtk_tree_view_column_pack_start_cell_renderer): New function to
2483         reflect that you can (hypothetically) pack cell renderers into a
2484         column.
2485         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
2486         (gtk_tree_view_column_cell_is_visible): Move more functionality to
2487         the column.
2488         (gtk_tree_view_column_cell_can_focus): Move more functionality to
2489         the column.
2490
2491         * gtk/gtktreeview.c: Move to use new column-packing code.
2492         (gtk_tree_view_real_expand_row): remove totally braindead code.
2493         (gtk_tree_view_real_collapse_row): ditto.
2494
2495 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
2496
2497         * gtk/gtktreeviewcolumn.c: Fix a typo.
2498         
2499 2001-06-26  Joel Becker  <jlbec@evilplan.org>
2500
2501         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
2502           at the end of the file
2503
2504 2001-06-26  Havoc Pennington  <hp@redhat.com>
2505
2506         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2507
2508 2001-06-26  Havoc Pennington  <hp@redhat.com>
2509
2510         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
2511         property
2512
2513 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
2514
2515         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2516         stupid missing statement
2517
2518         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2519         private function for ATK.  It notifies you of how many _visible_
2520         children are deleted when a node is deleted.  Should be used by
2521         atk only.
2522
2523 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2524
2525         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2526         Use new pango_context_get_metrics() to fix problems
2527         with font lists in descriptions. (#56184, reported by
2528         Jonas Borgström)
2529
2530 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2531
2532         * gtk/gtkiconfactory.c:
2533         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2534         item factory so inlined pixbufs actually work.
2535
2536 2001-06-25  Havoc Pennington  <hp@redhat.com>
2537
2538         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2539         s/RESIZEABLE/RESIZABLE/
2540
2541         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2542
2543 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2544
2545         * configure.in:
2546         Added --enable-fbmanager. This is some experimental code
2547         that lets several GtkFB apps coordinate their access to the
2548         framebuffer.
2549         
2550         * acconfig.h:
2551         Added ENABLE_FB_MANAGER.
2552
2553         * gdk/linux-fb/Makefile.am:
2554         Added gdkfbmanager and gdkfbswitch.
2555
2556         * gdk/linux-fb/gdkkeyboard-fb.c:
2557         * gdk/linux-fb/gdkmouse-fb.c:
2558         * gdk/linux-fb/gdkprivate-fb.h:
2559         Split device init and open so that
2560         they can be opened and closed while switched
2561         away.
2562
2563         * gdk/linux-fb/gdkmain-fb.c:
2564         Add the basic manager communication.
2565
2566         * gdk/linux-fb/gdkrender-fb.c:
2567         Don't update to the shadow fb if we're
2568         blocked by the fb manager.
2569
2570 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2571
2572         * docs/Changes-2.0.txt: Add note about child property
2573         changes.
2574
2575 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2576
2577         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
2578         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
2579
2580         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
2581         with un'reffing wrong list reported by Jeff Franks.
2582
2583         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
2584
2585         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
2586         for the default icon. Remove inline XPM.
2587
2588         * gtk/gtkstock.h gtk/gtkiconfactory.c:
2589         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
2590         is used for GTK_STOCK_DND, but it is a bit too small.)
2591
2592         * gtk/stock-icons/stock_dnd_multiple.png
2593         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
2594
2595         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
2596         TRUE when starting a drag. In other cases, we are
2597         just observing. (#52995)
2598
2599         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
2600         function to set the icon for a drag from a GdkPixbuf
2601         or stock ID.
2602
2603         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
2604         Likewise, for drag sources.
2605
2606         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
2607         (Now should be done using the stock system.)
2608
2609 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
2610
2611         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
2612         Removed - didn't work and not particularly useful anyways
2613         if it did. 
2614
2615 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
2616
2617         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
2618         introduced last night that was making things decidedly not work.
2619
2620         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
2621         so that we have getter/setter pairing everywhere it makes
2622         sense. (#55767)
2623
2624         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
2625         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
2626         deprecated compat macro. (#55516)
2627
2628         * gtk/gtklabel.[ch]: Add functions
2629         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
2630         gtk_label_set_label(), which mirror the property API for GtkLabel.
2631         Make gtk_label_get_attributes() only reflect the attributes
2632         set by gtk_label_set_attributes.
2633
2634         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
2635         from gtk_notebook_set_page().
2636
2637 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
2638
2639         * configure.in: Fix tests for XShm.h.
2640
2641         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
2642         gdk_image_new() by use of goto, properly use g_object_unref().
2643
2644 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
2645
2646         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
2647         calls, as GdkImage is an object. these should be g_obejct_unref()
2648         instead but that won't work because of the g_error() statement
2649         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
2650         to spot these places.
2651
2652 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
2653
2654         * modules/input/gtkimcontextxim.c: Fixup some problems with 
2655         text length handling in error cases.
2656
2657         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
2658         a bit to make test actually warn on attempt to allocation
2659         a negative size. (#56101, Matthias Clasen)
2660
2661 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
2662
2663         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2664         noticed by Brian Cameron.
2665         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
2666         Cameron.
2667
2668 2001-06-22  Hans Breuer  <hans@breuer.org>
2669
2670         * gdk/gdk.def : updated externals
2671
2672         * gdk/win32/gdkdrawable-win32.c : corrected some casts
2673         in GDK_NOTEs
2674
2675         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
2676         to translate coordinates to the internal > 16 bit system
2677         Try to handle WM_WINDOWPOSCHANGED to get better performance for
2678         when moving/resizing
2679
2680         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
2681         and gdk_keymap_get_direction (). The latter is untested for
2682         the RTL case
2683
2684         * gtk/gtk.def : updated externals
2685
2686         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
2687         from pango_language_from_string (), not an already freed pointer
2688
2689         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
2690         binary (-kb) to be useable on windoze
2691  
2692 2001-06-21  Alexander Larsson  <alexl@redhat.com>
2693
2694         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
2695         Update to new PangoLanguage changes.
2696         
2697         * gtk/gtkwindow-decorate.c:
2698         * gtk/gtkwindow.[ch]:
2699         Added setting argument to gtk_window_set_has_frame ()
2700         
2701 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
2702
2703         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
2704         the case without XKB properly.
2705
2706         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
2707         unused gtk_rc_auto_parse variable.
2708
2709         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
2710         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
2711         longer needed with GdkPixbuf.
2712
2713         * gtk/gtkrc.c (_gtk_rc_init): Make private.
2714
2715 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
2716
2717         * gtk/gtkentry.h: Mark deprecated functions with
2718         GTK_DISABLE_DEPRECATED.
2719
2720 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2721
2722         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
2723
2724         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
2725
2726         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
2727           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
2728           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
2729           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
2730           to recent changes in Pango.
2731
2732         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
2733           to test whether the basic engine honors them.
2734
2735 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
2736
2737         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
2738         gtk_container_child_get_property().
2739
2740 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
2741
2742         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
2743         (gtk_tree_view_move_cursor_page_up_down): implement.
2744
2745 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
2746
2747         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
2748         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
2749         don't use automatic fixed size buffer for printf-ing floats, doubles
2750         can expand to really _huge_ strings, use g_strdup_printf() instead.
2751
2752 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
2753
2754         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
2755         construct property in 1.2 and still needs to be.
2756
2757         * gtk/gtkwidget.c: "composite_child" is not a settable property.
2758
2759 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
2760
2761         * gtk/gtkliststore.c (gtk_list_store_clear): 
2762         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
2763         clear a model.
2764
2765 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
2766
2767         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2768
2769         * gtk/Makefile.am:
2770         * gtk/gtk.h: disabled GtkPacker compilation.
2771
2772         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2773
2774         * gtk/gtknotebook.c:
2775         * gtk/gtktable.c:
2776         * gtk/gtkbox.c: ported this over to child properties.
2777
2778         * gtk/gtksettings.c: fetch class properties via
2779         g_object_class_list_properties().
2780
2781         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2782         child arg interface. use gobjectnotifyqueue.c for child property
2783         notification.
2784
2785         * gtk/gtkwidget.[hc]: provide necessary means for container child
2786         properties, i.e. ::child_notify signal,
2787         gtk_widget_freeze_child_notify(),
2788         gtk_widget_child_notify(),
2789         gtk_widget_thaw_child_notify().
2790
2791         * tests/testgtk.c: removed inferior property handling code, for
2792         property editing, a generic module should be used, and GLE
2793         coincidentally fullfills that purpose.
2794
2795         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2796         needs to be adapted to g_object_class_list_properties() before this
2797         builds again.
2798
2799 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2800
2801         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2802         test if a node is expanded.
2803
2804 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2805
2806         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2807         where collapsing a selected row would result in the cursor/anchor
2808         getting screwed up.
2809
2810 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2811
2812         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2813         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2814         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2815         Now I can really reorder/sort all Store widgets.  treesorttest
2816         seems to just work now.
2817         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2818         testtreesort worked through a big coincidence all this time.
2819         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2820         code.
2821         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2822         people know that this code should never ever ever be copied.
2823
2824 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2825
2826         * gtk/gtkwindow.h: Fixed a small typo, it should be
2827         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2828         on line 134.
2829
2830 2001-06-14  Havoc Pennington  <hp@redhat.com>
2831
2832         Docs fixups, and:
2833         
2834         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2835         GTK_DISABLE_DEPRECATED
2836
2837 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2838
2839         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2840         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2841         finish it off tonight, though it basically works now when it's a
2842         list.  Also, I have a sinking feeling neither GtkTreeStore or
2843         GtkListStore actually resort when adding a new item.  I'll look
2844         into it.
2845
2846 2001-06-14  Havoc Pennington  <hp@redhat.com>
2847
2848         * demos/gtk-demo/main.c (load_file): fix bug identified by
2849         warnings I just added to gtktextbuffer
2850
2851 2001-06-14  Havoc Pennington  <hp@redhat.com>
2852
2853         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2854
2855         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2856
2857         * gtk/gtktextbtree.c: don't leak node data all over the place.
2858
2859         * demos/gtk-demo/main.c (main): create fontify tags for the right
2860         buffer
2861
2862         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2863         to mention tags in the same table can't have the same name,
2864         suggested by Skip Montanaro
2865
2866 2001-06-11  Havoc Pennington  <hp@redhat.com>
2867
2868         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2869         for trying to add two tags with same name to the tag table
2870
2871         * demos/gtk-demo/main.c (main): fix colors ;-)
2872
2873 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2874
2875         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2876         that allows grouping together multiple windows so that grabs
2877         within that set of windows only affect those windows.
2878
2879         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2880         signal for notification when a widget becomes shadowed
2881         by a grab or is no longer shadowed by a grab.
2882
2883         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2884           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2885         insenstive widgets to maintain a grab.
2886
2887 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2888
2889         * docs/README.linux-fb:
2890         Add some example config files that can be used with the URW fonts.
2891         
2892         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2893         Set up the color ramps for DirectColor mode.
2894
2895 2001-06-11  Havoc Pennington  <hp@redhat.com>
2896
2897         * Release 1.3.6
2898          
2899 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2900
2901         * gdk/linux-fb/gdkwindow-fb.c:
2902         Unify shaped window code and make it repaint the area that used
2903         to be part of the shape, but isn't anymore.
2904
2905 2001-06-11  Havoc Pennington  <hp@redhat.com>
2906
2907         * NEWS: Updates
2908
2909         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2910
2911         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2912         
2913 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2914
2915         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2916         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2917         passes zero instead, so do we.
2918         
2919 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2920
2921         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2922         Deep copy dash_list too.
2923         (_gdk_fb_gc_new): Set default cap_style before
2924         setting values.
2925
2926 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2927
2928         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2929         gdk_keymap_get_direction): New functions.
2930
2931 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2932
2933         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2934         gtk_tree_model_get_flags by adding a second flag for atk.
2935
2936         * gtk/gtktreemodel.c: make cursor behavior interact better with
2937         mouse presses.
2938
2939 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2940
2941         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2942         expand_row/collapse_row to be 2 signals each -- test_expand_row
2943         and row_expanded as well as test_collapse_row and row_collapsed.
2944
2945 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2946
2947         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2948         signal name to be changed instead of selection_changed.
2949
2950 2001-06-08  Havoc Pennington  <hp@redhat.com>
2951
2952         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2953         "scroll_offset" property for notification when the layout offsets
2954         may have changed
2955         (gtk_entry_adjust_scroll): add notify for scroll_offset
2956         (gtk_entry_layout_index_to_text_index): function to compensate for
2957         preedit string when doing coordinate stuff on the entry's layout
2958         (gtk_entry_text_index_to_layout_index): inverse function
2959         (gtk_entry_get_layout_offsets): hook to get current position of
2960         the layout      
2961         (gtk_entry_get_layout): hook to get the layout itself.
2962
2963         * gtk/gtklabel.c (gtk_label_get_layout): new function
2964
2965 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2966
2967         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2968         keybinding.
2969         (gtk_tree_view_focus): Fix merge conflict.
2970
2971 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2972
2973         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2974         clean up cursor handling.
2975
2976 2001-06-08  Havoc Pennington  <hp@redhat.com>
2977
2978         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2979         function
2980
2981         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2982         this function
2983
2984 2001-06-08  Alex Larsson  <alexl@redhat.com>
2985
2986         * gtk/gtkcompat.h.in:
2987         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2988         Fixes bug #52892
2989
2990 2001-06-08  Havoc Pennington  <hp@redhat.com>
2991         
2992         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2993         parent still
2994
2995 2001-06-08  Havoc Pennington  <hp@redhat.com>
2996
2997         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2998         don't call g_list funcs on GSList
2999
3000         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
3001         gtk_container_focus(), since some widgets have focusable locations
3002         which are not other widgets. These widgets should not have to be 
3003         containers just to manage the focus. For example, GtkHSV is
3004         currently a container for no good reason. Also, this cleans
3005         up the "if (is_container && is_sensitive && is_drawable)
3006         container_focus ()" mess in widget implementations.
3007
3008         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
3009         function, and have it just call gtk_widget_child_focus().
3010
3011         * gtk/gtkhsv.c: derive from widget not container
3012         
3013         Throughout: fix to reflect GtkContainer::focus change
3014         
3015 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
3016
3017         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
3018         range.  Fix bug #55921
3019
3020         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
3021         (#55920).
3022
3023 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
3024
3025         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
3026         and gdk_keymap_get_current_direction().
3027
3028         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
3029           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
3030         the current locked group, use it to set the keymap
3031         direction.
3032
3033         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
3034         to determine whether we draw a split cursor or use
3035         a jumping cursor based on the current direction.
3036
3037         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
3038         Obey the split cursor setting. 
3039
3040 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
3041
3042         * gtk/gtkimmulticontext.c (activate_cb): Only activate
3043         when toggling on, not when toggling off... (#55906)
3044
3045 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
3046
3047         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
3048         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
3049         in docs. (#55812, Vitaly Tishkov)
3050
3051 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
3052
3053         * demos/gtk-demo/main.c (create_tree): Changed signal name from
3054         selection_changed to changed in signal connection to GtkTreeSelection,
3055         also used g_signal_connectc since GtkTreeSelection is now a GObject.
3056
3057 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
3058
3059         * gtk/gtktreeselection.c: Now it's a GObject instead of a
3060         GtkObject.  The GtkTreeSelection::selection_changed signal is now
3061         the GtkTreeSelection::changed signal.
3062
3063         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
3064         object.
3065
3066         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
3067         object.
3068
3069 2001-06-07  Havoc Pennington  <hp@redhat.com>
3070
3071         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
3072
3073 2001-06-07  Havoc Pennington  <hp@redhat.com>
3074         
3075         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
3076         (not tested yet because with absolute path to srcdir I can't build
3077         atk, but it was broken anyway so this may help) 
3078
3079 2001-06-07  Havoc Pennington  <hp@redhat.com>
3080
3081         * configure.in: output m4macros/Makefile
3082         
3083 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
3084
3085         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
3086         buttons.  Fixes #55460 reported by matthiasc@poet.de.
3087
3088 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
3089
3090         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
3091         expansion/collapsing so it only happens in one place.
3092         (gtk_tree_view_real_expand_row): ditto.
3093
3094 2001-06-07  Havoc Pennington  <hp@redhat.com>
3095
3096         * tests/Makefile.am: add missing -I flag
3097
3098         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
3099
3100         * configure.in: use pkg-config to see if GModule is
3101         supported; fix to properly turn on included loaders 
3102         when GModule isn't supported; don't use AC_CHECK_LIB 
3103         when libs are not installed yet
3104
3105         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
3106
3107         * Makefile.am (SUBDIRS): add m4macros subdir
3108
3109         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
3110         dependencies also.
3111
3112 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
3113
3114         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
3115         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
3116
3117 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
3118
3119         * gtk/gtktreeview.c
3120         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
3121         bindings to expand and collapse rows.
3122         (gtk_tree_view_real_select_cursor_parent): New key binding.
3123         (gtk_tree_view_real_toggle_cursor_row): New key binding.
3124
3125         * gtk/gtkmarshal.list: new
3126         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
3127
3128 2001-06-06  Havoc Pennington  <hp@redhat.com>
3129
3130         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
3131
3132         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
3133         Down to move visually rather than logically, since it confuses 
3134         people. Add -/+ and Ctrl--/+ bindings for logical movement.
3135
3136 2001-06-06  Alex Larsson  <alexl@redhat.com>
3137
3138         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3139         Fix up error messages.
3140
3141 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
3142
3143         * gtk/gtktooltips.h: Include gtkwidget.h 
3144         (#55798, Karl Nelson)
3145
3146         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
3147         a valid latin-1 character. (Marc Lehmann, #35467)
3148
3149         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
3150         (Marc Lehmann, #35467)
3151         
3152 2001-06-05  Alex Larsson  <alexl@redhat.com>
3153
3154         * demos/gtk-demo/appwindow.c (do_appwindow):
3155         Don't swap the order of the args to gtk_widget_destroyed.
3156
3157         * tests/testgtk.c (destroy_properties):
3158         Don't crash when the properties window is destroyed.
3159
3160         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
3161         Use with_mnemonics to handle the case of stock items with
3162         underscores in them.
3163
3164 2001-06-05  Havoc Pennington  <hp@redhat.com>
3165
3166         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
3167         gtk_text_iter_reorder
3168
3169 2001-06-05  Havoc Pennington  <hp@redhat.com>
3170
3171         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
3172
3173 2001-06-05  Havoc Pennington  <hp@redhat.com>
3174
3175         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
3176         to the range that was set
3177
3178         * gtk/gtkrange.c: add value_changed signal, primarily 
3179         intended for use with GtkScale
3180         (gtk_range_set_increments): new function
3181         (gtk_range_set_range): new function with weird name
3182         (gtk_range_set_value): new function
3183         (gtk_range_get_value): new function
3184
3185         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
3186         from gtk_spin_button_get_value_as_float(). Compat #define
3187         added for get_value_as_float.
3188
3189         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
3190
3191         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
3192
3193 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
3194
3195         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
3196
3197 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
3198
3199         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
3200
3201         * tests/testgtk.c (create_tooltips): Remove usage of
3202         gtk_widget_set().
3203
3204 2001-06-05  Havoc Pennington  <hp@redhat.com>
3205
3206         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
3207
3208         Applying patch from Jeff Franks, with function docs added.
3209         
3210         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
3211         remove call to set_mnemonic_widget, change docs a bit.  
3212
3213         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
3214         new function
3215
3216         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
3217         new function
3218
3219         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
3220
3221         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
3222         function
3223         (gtk_radio_button_new_with_mnemonic_from_widget): new function
3224
3225         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
3226         new function
3227
3228         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
3229         function        
3230
3231         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
3232         auto-selection of mnemonic widget.
3233
3234 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
3235
3236         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
3237         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
3238         (gtk_tree_view_column_set_min_width): ditto.
3239
3240 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
3241
3242         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
3243         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
3244
3245 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
3246
3247         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
3248         gtk_clist_thaw().
3249
3250 2001-06-04  Havoc Pennington  <hp@pobox.com>
3251
3252         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
3253         releases for buttons 6, 7
3254
3255 2001-06-04  Havoc Pennington  <hp@redhat.com>
3256
3257         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
3258         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
3259         #55562
3260
3261 2001-06-04  Havoc Pennington  <hp@redhat.com>
3262
3263         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
3264         where text_view->layout == NULL by assuming its size is 0, 
3265         i.e. same as if we haven't done any reflow. Reported by 
3266         Hidetoshi Tajima #55448 
3267
3268 2001-06-04  Havoc Pennington  <hp@redhat.com>
3269
3270         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
3271         and 7 for scroll left/right, from Thomas Broyer
3272
3273 2001-05-10  Havoc Pennington  <hp@redhat.com>
3274
3275         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
3276         we need to parse the xsetting as if it were an RC file string.
3277
3278         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
3279         value of palette from settings, not from static variable
3280
3281         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
3282         xsettings translation table
3283
3284         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
3285         hardcoding the toolbar style conflicts with new customizable 
3286         toolbar style philosophy
3287         (gtk_toolbar_class_init): add settings for default toolbar style;
3288         these are used unless the app specifically forces a toolbar style
3289
3290         * gtk/gtksettings.c (settings_install_property_parser): only
3291         return at the start if we warn and parser == NULL
3292
3293         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
3294         palette changed handler so we don't notify dead color selections
3295
3296         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
3297         xthickness/ythickness of 0 or 1 properly 
3298         (gtk_default_draw_resize_grip): clear the background behind the
3299         resize grips, and align to bottom right if we square the 
3300         area to be drawn.
3301
3302         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
3303         statusbar label to 1, so it doesn't make toplevels resize oddly
3304         (gtk_statusbar_size_request): add grip size to request
3305         (gtk_statusbar_size_allocate): hack so the hbox still works with 
3306         the grip size in the request
3307
3308         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
3309         bug where showing all on a toplevel makes the toolbar 
3310         button text appear despite the toolbar mode
3311
3312         * gtk/gtkmenubar.c: add internal padding style property
3313
3314         * gtk/gtktoolbar.c: Add internal padding style property; add
3315         shadow type style property
3316
3317         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
3318         state; and put Container::border_width outside the frame
3319
3320         * gtk/gtktextview.c: don't draw focus rectangle if we're in
3321         interior focus mode, we just use blinking cursor
3322
3323 2001-06-04  Havoc Pennington  <hp@redhat.com>
3324
3325         * configure.in: Make gdk-pixbuf have same version number as GTK
3326
3327 2001-06-04  Havoc Pennington  <hp@redhat.com>
3328
3329         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
3330         digits greater than 6. If there actually are limits (which there
3331         likely aren't), should clamp to them not warn.
3332         (gtk_spin_button_new_with_range): don't take log of 0
3333         (gtk_spin_button_size_request): use digits to compute size
3334         request, rather than step increment.
3335
3336         * tests/testgtk.c (create_spins): test larger values of digits
3337         
3338         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
3339         font on map not expose, so we don't get weirdness during scrolling
3340
3341 2001-06-04  Havoc Pennington  <hp@redhat.com>
3342
3343         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
3344         Sam Solon, bug #54577, update value even if not drawable.
3345
3346 2001-06-04  Havoc Pennington  <hp@redhat.com>
3347
3348         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
3349         SCROLL_LEFT, reported by Thomas Broyer.
3350
3351 2001-06-04  Havoc Pennington  <hp@redhat.com>
3352
3353         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
3354         Process updates immediately, to prevent funny lag effect
3355         when scrolling, at some mild potential efficiency cost.
3356
3357 2001-06-04  Havoc Pennington  <hp@redhat.com>
3358
3359         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
3360         slider on the click.
3361
3362 2001-06-03  Havoc Pennington  <hp@pobox.com>
3363
3364         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
3365         hscale/vscale details, so we can use it for scrollbar as well.
3366
3367         * tests/testgtk.c (reformat_value): honor digits from GtkScale
3368
3369         * gtk/gtkenums.h (GtkTroughType): Remove this enum
3370         (GtkScrollType): add START and END from GtkTroughType
3371
3372         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
3373         its x/y arguments
3374
3375         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
3376         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
3377         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
3378         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
3379         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
3380
3381         Notable changes in the process:
3382          
3383         - stepper_size style property is the height for vertical 
3384           ranges, width for horizontal; the other dimension matches
3385           the trough size
3386         - add ability to do NeXT-style steppers (and several other styles
3387           that don't make any sense)
3388         - added min_slider_length, fixed_slider_length properties to
3389           GtkScrollbar
3390         - cleaned some private (or at least useless) functions out of
3391           gtkscale.h    
3392         - moved bindings to GtkScale from subclasses, even arrow keys,
3393           since blind users don't know scale orientation.
3394         - change move_slider action signal to use new GtkScrollType,
3395           remove GtkTroughType argument
3396         - digits rounds the values a range will input to the given 
3397           number of decimals, but will not try to force adjustment 
3398           values set by other controllers. That is, we no longer
3399           modify adjustment->value inside a value_changed handler.
3400         - added getters for GtkScale setters
3401         - middle-click begins a slider drag
3402         
3403 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
3404
3405         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
3406         getting the focus code to work.
3407         (gtk_tree_view_class_init): Add a bunch of keybindings.
3408
3409         * gtk/gtktreeviewcolumn.c
3410         (gtk_tree_view_column_set_cell_data_func):
3411         s/GtkCellDataFunc/GtkTreeCellDataFunc.
3412         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
3413         of "properties_changed" to help justify the death of the latter
3414         signal. (-:
3415
3416         * tests/testtreefocus.c (main): Let some columns be focussable to
3417         test focus better.
3418
3419 2001-06-01  Havoc Pennington  <hp@redhat.com>
3420
3421         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
3422         
3423         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
3424         overwrite in overwrite mode if we already deleted the selection
3425         and replaced it with new text.  
3426
3427         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
3428         selection to an empty range, clear the clipboard if we owned it.
3429         (gtk_label_set_selectable): give up selection if we become
3430         unselectable.
3431         (gtk_label_state_changed): override state changed to unselect text
3432         when insensitive
3433         (get_text_callback): add paranoia check that indexes aren't
3434         outside of label->text
3435         (gtk_label_select_region): make -1 for start_offset mean "end of
3436         label," for consistency with GtkEditable
3437
3438         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
3439         GTK_DIALOG_NO_SEPARATOR flag
3440
3441 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
3442
3443         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
3444         notifications on non-existant "enable_arrow_keys".
3445         (#53753, Skip Montanaro)
3446
3447 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
3448
3449         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
3450         GDK_TYPE_RECTANGLE.
3451
3452         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
3453         of allocation argument be GDK_TYPE_RECTANGLE.
3454
3455 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
3456
3457         * gtk/gtkoptionmenu.c: Account for the fact that the border
3458         width is _outside_ the window. (Fixes #54585, bug found
3459         by Bastien Nocera.)
3460
3461 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
3462
3463         * gtk/gtksettings.c (gtk_settings_get_property): Validate
3464         value from GDK settings against parameter spec.
3465
3466         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
3467         to temporary values and use g_value_transform(), since
3468         thinking that GValue was going to be easy or efficient
3469         to use was, of course, a mistake.
3470
3471         * gtk/gtksettings.c: Add cursor blink setting.
3472         
3473         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
3474
3475         * gtk/gtkentry.c: Add cursor blinking.
3476
3477         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
3478         cursor blink global settings.
3479
3480         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
3481         for :text_position in places where it is missing.
3482
3483 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
3484
3485         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
3486
3487 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
3488
3489         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
3490         not pkg-config. (#51032)
3491
3492         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
3493         (fixes #51952, James Henstridge)
3494         
3495 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
3496
3497         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
3498         Rename to the more correct gtk-go-up.
3499
3500         * gtk/stock-icons/stock_menu_sort_ascending.png:
3501         Added new file.
3502         
3503         * gtk/stock-icons/stock_menu_sort_descending.png:
3504         Changed to show descending instead of ascending.
3505
3506         * gtk/gtkiconfactory.c:
3507         Added menu size icon to sort ascending.
3508
3509         * gtk/stock-icons/Makefile.am:
3510         Added stock_menu_sort_ascending.png.
3511         
3512         * gtk/gtkseparatormenuitem.c:
3513         Use correct typenames.
3514
3515 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3516
3517         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3518         gulong as in GSignal.
3519
3520 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3521
3522         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3523         instances of GtkCellRenderer in code (all but dnd icon code).
3524         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3525         there, and I can do multiple Cells per column.
3526
3527         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3528
3529         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3530         when model was unreffed prior to removing the row reference.
3531
3532 2001-05-25  Havoc Pennington  <hp@redhat.com>
3533
3534         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3535         you call gtk_stock_list_ids()
3536
3537         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3538         in list
3539
3540 2001-05-25  Havoc Pennington  <hp@redhat.com>
3541
3542         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3543         set can render without falling back to missing image icon
3544
3545         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3546         size of text, instead of random values
3547
3548         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3549         size of tree view, instead of random values
3550
3551         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3552         image in an appropriate size
3553
3554         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3555         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
3556
3557         Throughout: fix GTK_STOCK_BUTTON_ instances
3558         
3559         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3560         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
3561         Add a bunch of new stock items/icons
3562
3563         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
3564         new function, convenience for inserting columns with a data func
3565
3566         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
3567         (_gtk_icon_factory_list_ids): use list of all factories to
3568         generate a list of all known IDs
3569
3570         * gtk/gtkstock.c (gtk_stock_list_ids): replace
3571         gtk_stock_list_items() with a function that returns all IDs known
3572         including those for GtkIconFactory.
3573
3574 2001-05-25  Hans Breuer  <hans@breuer.org>
3575
3576         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
3577         work -> check boxes and radio buttons are drawn now, even on win9x.
3578         Improved line settings a bit, still no clue how to get really dotted
3579         lines on win9x, on NT it's PS_ALTERNATE.
3580
3581         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
3582         GDK_HINT_MIN_SIZE as well
3583
3584         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
3585
3586         * gtk/gtk.def : updated
3587
3588         * gtk/gtktreeprivate.h : change column_drop_func to be a function
3589         pointer not a function pointer pointer
3590
3591         * tests/testdnd.c : include <stdlib.h> for putenv prototype
3592
3593         * tests/testsocket.c : made it compile on win32 again
3594
3595         * tests/makefile.msc : one more test-app uses prop-editor.obj
3596
3597 2001-05-22  Havoc Pennington  <hp@pobox.com>
3598
3599         * gtk/gtkbin.c (gtk_bin_get_child): New function
3600
3601 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
3602
3603         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
3604         to ignore when doing compose processing.
3605
3606 2001-05-22  Joe Shaw  <joe@ximian.com>
3607
3608         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
3609         Simplify as suggested by Havoc. Just get the last iter and work
3610         backward to the tag instead of getting a line and working back from
3611         there. Fixes passing in an invalid offset to
3612         iter_init_from_byte_offset().
3613
3614 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
3615
3616         * gtk/gtktreeview*.h: 
3617         * gtk/gtkcell*.h:
3618         * gtk/gtk*store.h:
3619         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
3620         macros to all objects.
3621
3622 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
3623
3624         * gtk/gtkcellrenderertext.c
3625         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
3626         with very large (TM) amounts of text.  May be moved to
3627         GtkCellRenderer in the future, though I'm not sure it wants to be
3628         this accessible.
3629
3630         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
3631         More sanity brought to this class.  I like it.
3632
3633         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
3634         case.  Kids, don't try this at home.
3635
3636         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
3637         convenience function.
3638
3639         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
3640
3641 2001-05-21  Alexander Larsson  <alexl@redhat.com>
3642
3643         * gtk/gtkfontsel.c:
3644         Added properties. Based on patch by Lee Mallabone.
3645
3646         * gtk/gtkruler.c:
3647         * gtk/gtkhruler.c:
3648         * gtk/gtkvruler.c:
3649         * gtk/gtktext.c:
3650         * gtk/gtktextview.c:
3651         Converted GtkArg to GParam. Based on patches by John Margaglione.
3652
3653         * tests/Makefile.am:
3654         * tests/testtext.c:
3655         Add a property editor to testtext.
3656         
3657 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
3658
3659         * gtk/gtk{h,v,}paned.c: Only show the separator if 
3660
3661         * configure.in: Fixed reversed conditional causing all image
3662         libraries to be linked in.
3663
3664 2001-05-21  Joe Shaw  <joe@ximian.com>
3665
3666         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
3667         that top_y needs to be >= 0.
3668
3669 2001-05-11  Havoc Pennington  <hp@pobox.com>
3670         
3671         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
3672         losing connection to the X server.
3673
3674 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
3675
3676         * configure.in: Start checks for X from pangox/pangoxft
3677         CFLAGS to avoid duplicate libraries.
3678
3679         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
3680
3681         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
3682         to include gobject.
3683         
3684 2001-05-18  Alexander Larsson  <alexl@redhat.com>
3685
3686         * gtk/gtkspinbutton.c:
3687         Convert GtkArgs to GParams. Based on patch by John Margaglione.
3688         Also do size request reasonable for MAXDOUBLE. Previously it printed
3689         the limits to a buffer and overran it. Instead do it using log10() and
3690         limit the width to 10 digits.
3691         
3692         * gtk/gtkwidget.c (gtk_widget_get_property):
3693         Correctly handle setting the parent property to NULL.
3694
3695 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
3696
3697         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
3698         style attributes even if the widget isn't realized.
3699
3700         * demos/gtk-demo/main.c: Use a slightly smaller font.
3701
3702 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
3703
3704         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
3705         This is something that only a widget writer would ever want
3706         to change.
3707
3708         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
3709         gtk_signal_emit_by_name().
3710
3711         * gtk/gtkviewport.c: Fix some warnings.
3712
3713         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
3714         allowing the requisitions of multiple widgets to be grouped
3715         together.
3716
3717         * tests/testgtk.c: Add GtkSizeGroup test
3718
3719         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
3720
3721         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
3722         warnings.
3723
3724         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
3725
3726 2001-04-28  Martin Baulig  <baulig@suse.de>
3727
3728         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
3729         to gtk_image_menu_item_set_icon() and made it work if there's already
3730         an image.
3731         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
3732         (gtk_image_menu_item_new_with_label): New function.
3733
3734 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
3735
3736         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
3737         highlighting code!!!!  The result is okay so long as you don't try
3738         to stress it.  It also highlights a bug in the TextView so it's in
3739         an unproportional font right now until it's fixed.
3740
3741         *demos/gtk-demo/*.c: Clean up code a bit to make it
3742         ugly-parser(TM) friendly. (-:
3743
3744 2001-05-17  Joe Shaw  <joe@ximian.com>
3745
3746         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
3747         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
3748         if it is only partially onscreen.
3749
3750 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
3751
3752         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
3753         not by characters.
3754
3755         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
3756         are not zero or one; that is, when graphemes of multiple characters
3757         are involved.
3758
3759         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
3760         FIXME.
3761
3762 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
3763         
3764         * gtk/gtkbbox.c:
3765         Add properties, based on patch by Lee Mallabone.
3766
3767         * gtk/gtknotebook.c:
3768         * gtk/gtktoolbar.c:
3769         Convert from GtkArg to GParam, based on patch by John Margaglione.
3770         
3771         * gtk/gtkhscale.c:
3772         * gtk/gtkvscale.c:
3773         * gtk/gtkhscrollbar.c:
3774         * gtk/gtkvscrollbar.c:
3775         * gtk/gtkrange.c:
3776         Move adjustment property to GtkRange.
3777
3778         * gtk/gtklabel.c:
3779         Setup mnemonics on property changes
3780
3781         * gtk/gtkwidget.c (gtk_widget_get_property):
3782         GdkExtensionMode is an enum, not a flag. Set it with
3783         g_value_set_enum ().
3784
3785         * tests/prop-editor.c:
3786         Better propery editor.
3787
3788         * tests/testgtk.c:
3789         Add new property test. Pass zero to the property editor to
3790         get properties from all derived types.
3791         
3792 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3793
3794         * autogen.sh (have_automake): Require libtool-1.4,
3795         automake-1.4p1.
3796
3797         * acinclude.m4: Remove libtool macros.
3798
3799         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3800         modules.
3801
3802         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3803         for libgdk.
3804
3805         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3806         libgdk.la for libgtk.
3807
3808         * modules/input/Makefile.am: Make modules have full
3809         dependencies.
3810
3811 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3812
3813         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3814         #54699 where paths weren't being checked for correctness.
3815
3816 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3817
3818         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3819         in any order you wan, whether or not the column is added to the
3820         tree, or the tree is realized.  Yay!
3821
3822         * gtk/gtktreeviewcolumn.c
3823         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3824         sorting columns a lot saner
3825
3826         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3827         new function to actually set wether or not a column is
3828         reorderable.
3829
3830         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3831         if we have 'em.
3832
3833         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3834         Fix nasty bug where we were showing the button just before
3835         realizing it.  As a result, the parent window was
3836         tree_view->window instead of tree_view->priv->header_window.
3837
3838         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3839         to let you easily reorder a list or tree.
3840
3841 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3842
3843         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3844         from args to properties.
3845
3846 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3847
3848         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3849         from args to properties. (#51957)
3850
3851         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3852         calls to after ->set_property call.
3853
3854 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3855
3856         * tests/prop-editor.c: Block against redundant changes.
3857
3858         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3859         properties.
3860
3861 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3862
3863         * gdk/gdkpixmap.h: Remove creative formatting.
3864
3865 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3866
3867         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3868         property API. (#51669)
3869
3870         * gtk/gtkscale.c: Patch from John Margaglione converting to
3871         property API. (#51891)
3872
3873         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3874         to property API. (#50985)
3875
3876 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3877
3878         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3879         buffering state across expose event, so we still call end_paint().
3880
3881 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3882
3883         * gtk/gtkhsv.c (paint_triangle):
3884         Expose the ring in the triangle at the correct place when
3885         exposing just a part of the triangle.
3886
3887         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3888         Return FALSE, or window focusing will not work.
3889
3890 2001-05-11  Havoc Pennington  <hp@pobox.com>
3891
3892         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3893         #54144
3894
3895         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3896         bug #54330
3897
3898 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3899
3900         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3901         propagate exposes to NULL child.
3902
3903         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3904         against not having one of the scrollbars.
3905
3906         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3907         we don't keep a mnemonic window if we have no mnemonic installed.
3908
3909 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3910
3911         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3912         it has the _important_ side effect of initializing a class.
3913
3914 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3915
3916         * gdk/linux-fb/gdkprivate-fb.h:
3917         Make sure you can compile out the implementation/wrapper assert
3918         macros.
3919
3920         * gdk/linux-fb/gdkdrawable-fb2.c:
3921         Check implementation/wrappers, initialize type for pixmap dummys.
3922
3923         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3924         Hide the cursor if reading from the screen.
3925
3926         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3927         Fix sign bug in tiling code.
3928
3929         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3930         Handle background pixmaps.
3931
3932 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3933
3934         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3935         function to let user control where columns are dragged.
3936
3937         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3938         Escape is pressed.
3939
3940 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3941
3942         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3943         "columns_changed" signal.
3944         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3945         motion code to draw arrows to the side if indicator is outside the
3946         widget.
3947         (gtk_tree_view_map_expanded_rows): Implement.
3948
3949 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3950
3951         * demos/testpixbuf-save.c: 
3952         * demos/testpixbuf-drawable.c:
3953         Include gdkfb.h on linux-fb.
3954
3955 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3956
3957         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3958         New function for getting toplevel window at position.
3959         (gdk_drag_find_window): Use get_toplevel_window () instead
3960         of gdk_window_get_pointer(). (gdk_drag_status): Use
3961         correct context for getting window.
3962
3963         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3964         g_strdup the atom name.
3965
3966         * gdk/linux-fb/gdkwindow-fb.c:
3967         Costmetic fix.
3968
3969         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3970         Add code for changing cursor on linux-fb backend (same as
3971         win32).
3972
3973 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3974
3975         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3976         present before doing anything with it.  Patch from Håvard Kvålen
3977         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3978         report was not for the development branch of GTK+, but it applies
3979         anyways).
3980
3981 2001-05-04  Havoc Pennington  <hp@redhat.com>
3982
3983         * configure.in: fix some shell typos
3984
3985         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3986
3987         * gtk/gtkimage.c: handle animations
3988
3989         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3990         border_width * 2, not just border_width
3991
3992         * gtk/gtkscale.c: add "format_value" signal to allow people
3993         to override the way values are drawn.
3994         (gtk_scale_get_value_size): fix width/height mistake,
3995         and compute size from actual displayed text, not 
3996         from made-up text.
3997
3998         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3999         signal registration
4000
4001         * tests/testtext.c: Add "Remove all tags" menu item for testing
4002
4003         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
4004
4005         * demos/gtk-demo/main.c (main): add hack so we can find modules
4006         without installing gtk
4007
4008         * demos/gtk-demo/textview.c (insert_text): demo font scaling
4009
4010         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
4011         factor)
4012         (gtk_cell_renderer_text_set_property): remove some bogus
4013         g_object_notify
4014
4015         * gtk/gtktexttag.c: add "scale" property which is a font scaling
4016         factor
4017
4018         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
4019         to layout
4020
4021         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
4022         gtk_text_iter_is_first
4023
4024 2001-01-06  Hans Breuer  <hans@breuer.org>
4025
4026         * gdk/gdk.def : updated exports
4027
4028         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
4029         gdk won't compile anymore
4030  
4031         * gdk/win32/gdkevents-win32.c : initialize ret_val when
4032         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
4033         Improved gdk_flush () to not only do pending drawing operations
4034         but also process all currently pending events. This should make
4035         the behaviour more similar to the X11 version.  
4036
4037         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
4038         option needs to be set even if there is no GDK_GC_BACKGROUND.
4039         (gdk_win32_hdc_get) : use predraw_set_background () independent
4040         of value_mask. This allows to draw dashed lines leaving the original
4041         background intact.
4042
4043         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
4044         after processing, because we can't reuse it as the X11 version does.
4045
4046         * gtk/gtk.def : updated exports
4047
4048         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
4049         would like to get rid of this file again, and use straight
4050         makefile.msc again, as the other Gtk+ subdirs do)
4051
4052         * test/makefile.msc (new file) : build the test apps here
4053
4054 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
4055
4056         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
4057         strike-through setting
4058         (gdk_draw_layout_line_with_colors): Render strike-through
4059
4060 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
4061
4062         * Release 1.3.5
4063
4064         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
4065
4066         * NEWS: Updated
4067
4068         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
4069         Makefile breakage.
4070
4071 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
4072
4073         * demos/gtk-demo/images.c (progressive_timeout): Fix
4074         typo in filename.
4075
4076         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
4077         out FIXME warning; just too annoying.
4078
4079 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
4080
4081         * gdk/linux-fb/gdkcolor-fb.c:
4082         Better error messages.
4083
4084         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
4085         Initialize abs_x and abs_y.
4086         
4087         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4088         Correct handling of stipple offset.
4089
4090         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
4091         Treat directcolor framebuffers as truecolor.
4092         
4093 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
4094
4095         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
4096         dependency on Atk for accessibility support.
4097
4098         * configure.in **/Makefile.am: Major reworking of substituted
4099         variables for CFLAGS/LIBS to make a lot more sane and 
4100         keep the the compile/link lines a bit shorter.
4101
4102         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
4103
4104 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
4105
4106         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
4107         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
4108         use _gtk_boolean_handled_accumulator.
4109
4110 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
4111
4112         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
4113         to fix things so clicking inside selection leaves cursor
4114         at point where clicked. (#50324)
4115
4116         * gtk/gtksettings.c (gtk_settings_class_init): Restore
4117         sane value for default double click time.
4118
4119         * tests/testtext.c (test_init): Really path to input modules.
4120
4121 2001-05-03  Sven Neumann  <sven@convergence.de>
4122
4123         * demos/testpixbuf-save.c: include target-specific headers as
4124         done in testpixbuf-drawable.c
4125
4126 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
4127
4128         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
4129         new_text_length appropriately when we run into the 
4130         size limit for the entry. (#53445, reported by Jeff Franks)
4131
4132         * tests/testgtk.c (create_entry): Remove most of the
4133         property toggle buttons. Replace with a "Props" button
4134         that brings up a property editor.
4135
4136         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
4137         Split the property editor code out for reuse, improve.
4138
4139 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
4140
4141         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
4142         trap errors around calls to XSetInputFocus since we have
4143         no way of knowing reliably whether we are viewable or
4144         not. (#53947)
4145
4146 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
4147
4148         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4149         fix bug in dropping columns.  Moving columns now basically works
4150         modula some fine tuning.
4151
4152 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
4153
4154         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
4155         autoscroll support.  It mostly works, but could use some fine
4156         tuning.
4157         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4158         Actually move the column.
4159
4160 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
4161
4162         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
4163           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
4164           New default theme! A slighly improved version of the 2.0 Raleigh
4165           theme, with Windows-esque focus/drawing default. 
4166           (GtkWidget::interior_focus defaults to TRUE.)
4167
4168         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
4169
4170 2001-04-30  Havoc Pennington  <hp@pobox.com>
4171
4172         * tests/testtext.c (line_numbers_expose): fix to work with
4173         gtk_paint_layout change
4174
4175 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4176
4177         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
4178           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
4179           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
4180           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
4181
4182         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
4183           with GtkWidget::interior_focus = TRUE better.
4184
4185         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
4186         ::default_outside_border for more flexibility.
4187
4188         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
4189         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
4190         change that had to be made with g_object_get.
4191
4192 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
4193
4194         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
4195         (gtk_tree_view_move_column_after): Clean up interface. 
4196
4197 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
4198
4199         * gtk/gtkpacker.h:
4200         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
4201          to gtkenum.h.
4202
4203         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
4204         handled in switch).
4205
4206         * gtk/Makefile.am:
4207         (gtk.defs): generate enum portions with  glib-mkenums.
4208         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
4209         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
4210         
4211         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
4212         addition.
4213
4214         * docs/Changes-2.0.txt: keep a note on signal handlers now
4215         not getting emitted during the emission they were connected within.
4216
4217 2001-04-28  Havoc Pennington  <hp@pobox.com>
4218
4219         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
4220
4221 2001-04-24  Havoc Pennington  <hp@redhat.com>
4222
4223         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
4224         (gtk_text_layout_move_iter_to_next_line): fix these two for
4225         invisible text, lots of other stuff still hosed.
4226
4227         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4228         new function, replaces the get/set palette stuff. This function 
4229         is intended for use by libgnomeui which should set the hook to a
4230         thing which sets the palette in GConf, and we need the
4231         GConf-to-xsettings proxy which will result in the change being
4232         propagated back to the GTK app.
4233
4234         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
4235         about unusable signals that it may be because the signal has 
4236         parameters.
4237
4238         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
4239         style, otherwise gtkrc.c won't know to create a new GtkStyle for
4240         it.
4241         (gtk_widget_modify_color_component): call
4242         gtk_widget_modify_style() so the rc style will get copied.
4243         (gtk_widget_modify_font): ditto
4244
4245         * gtk/gtkrc.c: make a couple variables static
4246
4247         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
4248         help button by default, since it does nothing
4249
4250         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
4251         around with UI
4252
4253         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
4254         so we can have tooltips
4255
4256         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
4257         can have tooltips
4258
4259         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
4260         GDK_ENABLE_BROKEN, because its memory behavior is completely
4261         hosed.
4262
4263         * gtk/gtknotebook.c: remove key press handler, replace with
4264         binding set, add numeric keypad support
4265
4266         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
4267
4268         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
4269
4270         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
4271         addition to plain Delete
4272
4273         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
4274         GDK_KP_Enter in addition to GDK_Return
4275
4276         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
4277         activate on entry instead of key press
4278         (gtk_font_selection_on_clist_key_press): get
4279         rid of this signal handler, not needed with new font sel.
4280
4281         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
4282         no-longer-needed emit_stop_by_name(), just return TRUE
4283
4284         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
4285         cruft, this widget is no longer focusable.
4286
4287         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
4288         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
4289         move_slider action signal, add binding set for vscale/hscale, in
4290         the process support numeric keypad
4291
4292         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
4293         make GDK_Return and GDK_KP_Enter activate the entry via 
4294         binding set, instead of hardcoded.
4295
4296 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
4297
4298         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
4299         code.  Some documentation added.
4300
4301 2001-04-27  Havoc Pennington  <hp@redhat.com>
4302
4303         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
4304
4305         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
4306
4307         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
4308         line/para separators
4309         (gtk_entry_create_layout): set single paragraph mode on the layout
4310
4311         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
4312         spacing between the image and label; instead, inside a button box 
4313         the button will get extra space that will go there, but if people 
4314         configure button box for 0 chubbiness, then there's no spacing.
4315
4316         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
4317         and min/max size style properties, so people can tune their
4318         chubbiness.
4319
4320         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
4321         functions
4322
4323         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
4324         space_style, and button_relief into style properties, remove
4325         functions for setting them
4326         
4327         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
4328         it back down
4329
4330         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
4331         types from gtk_widget_style_get
4332
4333         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
4334         with a style property.
4335
4336         * gdk/x11/gdkevents-x11.c: namespace the settings
4337
4338         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
4339
4340         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
4341         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
4342         be used. Also, translate doc strings for settings. Also, namespace
4343         the double-click-time property. Also, remove bell properties crap.
4344
4345 2001-04-27  Sven Neumann  <sven@gimp.org>
4346
4347         * Makefile.am: before creating links, check if pkg-config files
4348         exist for the default target. Otherwise link to the pkg-config files
4349         that got installed with this build.
4350
4351 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
4352
4353         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
4354         dragging code.  Revealed some (potential) GdkWindow bugs.
4355
4356         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
4357         _gdk_window_init_position to the end of reparent to fix the case
4358         of reparenting when new_x != old_x and new_y != old_y.
4359
4360 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
4361
4362         * gtk/gtkentry.c (strstr_len): Fix optimization that
4363         was correct for the use here, but completely incorrect
4364         in general.
4365
4366 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
4367
4368         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
4369         until patch adding gtk_window_set_size() is recommitted. 
4370
4371         * **Makefile.am configure.in gdk/x11/gdkim-11.c
4372           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
4373           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
4374           (#10784)
4375
4376 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
4377
4378         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4379         window == NULL in a number of cases.
4380
4381         * tests/testdnd.c: Set module path for gdk-pixbuf.
4382
4383 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
4384
4385         * gtk/Makefile.am xembed.h: File containing #defines
4386         for XEMBED protocol.
4387
4388         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
4389
4390         - Change protocol from old plug/socket specific protocol
4391           to XEMBED draft
4392         - Various fixes to work with GTK+-2.0
4393
4394         Still quite a bit of work to do here to handle initiation
4395         from the socket side (as specified by XEMBED), to handle
4396         the more advanced features of XEMBED, and to figure out
4397         a good way to handle same-app embedding with less overhead
4398         than using full XEMBED.
4399
4400 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
4401
4402         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
4403         track of whether the toplevel has the focus; only send
4404         focus-in events to the focus widget when the window
4405         actually has the focus.
4406
4407 2001-04-25  Havoc Pennington  <hp@pobox.com>
4408
4409         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
4410         were still in the header
4411
4412 2001-04-24  Alexander Larsson  <alexl@redhat.com>
4413
4414         * gtk/gtkclist.[ch]:
4415         * gtk/gtkctree.c:
4416         When there is a row highlighted for D'n'D it must alse
4417         be painted hightlighted on exposes. Otherwise exposes from
4418         the icon being dragged will mess up the hightlight.
4419
4420         * gtk/gtkfontsel.c:
4421         Don't recenter selected font when exposing the font family
4422         clist. This means you can now actually scroll the font family
4423         list.
4424
4425         * gtk/gtknotebook.c:
4426         Fix focus movement on scrolling tabs that are placed on the left
4427         and right.
4428
4429 2001-04-21  Havoc Pennington  <hp@pobox.com>
4430
4431         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
4432         empty/invisible lines.
4433
4434         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
4435         (gtk_text_iter_set_visible_line_index): new functions to set
4436         indexes excluding invisible text
4437
4438         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
4439         index
4440
4441         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
4442         (gtk_text_iter_get_visible_line_offset): new functions to 
4443         get indexes excluding invisible text
4444
4445         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
4446         bunch of extra padding that served no purpose
4447
4448         * gtk/gtkdialog.c: Make all the spacings configurable via style
4449         properties, for chubbiness configuration in themes
4450
4451         * tests/testtext.c: fix path to the immodules.
4452         
4453 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
4454
4455         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
4456         got munched by #endif.
4457
4458         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
4459
4460         * gtk/gtktreeview.c: Refactored code to clean up a number of
4461         events.
4462
4463         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
4464         values to make consistent with other functions.  Spotted by Jeff
4465         Franks <jcf@tpg.com.au>.
4466
4467         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
4468         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
4469
4470 2001-04-23  Sven Neumann  <sven@gimp.org>
4471
4472         * gtk/Makefile.am
4473         * gtk/gtkplug.c
4474         * gtk/gtksocket.c: on request of Owen, reverted my last change 
4475         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
4476
4477 2001-04-23  Sven Neumann  <sven@gimp.org>
4478
4479         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
4480         compile for non-X11 targets again
4481
4482 2001-04-20  Alexander Larsson  <alexl@redhat.com>
4483
4484         * gtk/gtkcolorsel.[ch]:
4485         API Change. Take GdkColor arguments instead of gdouble *.
4486         Leave the old gtk_color_selection_set_color for compatibility,
4487         but marked deprecated.
4488         Do correct rounding when converting RGB <-> HSV.
4489         
4490         * gtk/gtkcolorseldialog.c:
4491         * tests/testgtk.c:
4492         Use new GtkColorSelection API.
4493
4494         * gtk/gtkhsv.c:
4495         Fix problem selecting colors in triangle when Hue is 330.
4496         Fix some black dots around the HSB triangle.
4497         
4498         * gtk/gtkfilesel.c:
4499         return FALSE from the focus_in_event handler to fix focus problems.
4500
4501 2001-04-18  Havoc Pennington  <hp@redhat.com>
4502
4503         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
4504         set, so keybindings are configurable    
4505         (gtk_window_activate_default): Change to activate the focus widget
4506         instead if there's a focus widget, to be consistent with the
4507         behavior that previously existed in key_press_event
4508
4509 2001-04-18  Havoc Pennington  <hp@redhat.com>
4510
4511         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
4512
4513 2001-04-18  Havoc Pennington  <hp@redhat.com>
4514
4515         Close bug #50615:
4516         
4517         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4518         the layout
4519
4520         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4521
4522         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4523
4524         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4525         
4526         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4527         to blue for base, in addition to bg
4528         
4529 2001-04-18  Havoc Pennington  <hp@redhat.com>
4530
4531         * tests/testgtk.c (create_image): allow shrinking the image window
4532         to test that we clip to allocation.
4533
4534         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4535         #9845
4536
4537         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4538
4539 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4540
4541         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4542         mode on shm segments to 0600. We'll see who complains.
4543
4544         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4545         _gdk_windowing_window_destroy() AFTER recursing through
4546         children.
4547
4548         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4549         testsocket_child on X.
4550
4551         * tests/testsocket[_child].c: Fix uses of
4552         gtk_window_get_default_accel_group().
4553
4554         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4555
4556         * gdk/gdkimage.c: (gdk_image_get):
4557         Deal with the possibility that XGetImage() might return NULL.
4558         Allocate the GdkImagePrivate structure only after XGetImage()
4559         succeeds in order not to dereference a NULL ximage pointer.  This
4560         prevents a core dump when XGetImage() fails - which is unlikely,
4561         but can happen due to race conditions accessing the geometries of
4562         drawables.  An x error will still be triggered, but the gdk image
4563         wrapper at least wont seg fault.
4564         
4565 2001-04-18  Havoc Pennington  <hp@redhat.com>
4566
4567         * gtk/gtkimage.c: fix to properly queue resizes when the image is
4568         set
4569
4570         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
4571         if the insertion point isn't editable
4572
4573         * demos/gtk-demo/images.c: Added a GtkImage demo
4574
4575         * demos/gtk-demo/drawingarea.c: drawing area demo
4576         
4577         * demos/gtk-demo/menus.c (create_menu): cleanups
4578
4579 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
4580
4581         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
4582           gdk/x11/gdkevents-x11.c: Introduce an extra child
4583         of toplevel windows that serves to hold the focus to
4584         avoid events being delivered to embedded windows.
4585
4586         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
4587         some extra variables to clean up code and reduce the
4588         number of casts.
4589
4590         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
4591         guint for 1 bit bit fields, not gboolean.
4592
4593 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
4594
4595         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4596         not TRUE. (Fixes #52925)
4597
4598 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
4599
4600         * Released 1.3.4
4601
4602         * NEWS: Updated
4603
4604         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
4605         use GTK_TYPE_ENUM.
4606
4607 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
4608
4609         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4610
4611         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
4612         names to compatibility #defines so docs work.
4613
4614         * gtk/gtkenums.h: Remove GtkMenuFactoryType
4615
4616         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
4617
4618         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4619
4620         * tests/testgtkrc: No magenta cursors, please.
4621
4622         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
4623
4624         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
4625         
4626 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
4627
4628         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
4629         grabs, since they are no longer necessary.
4630
4631         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
4632         by signal_connect() and call gtk_button_pressed() rather
4633         than signal_connect_after().
4634
4635         * tests/testgtk.c: Restore radio menu items to combos 
4636         since they'll look OK with Raleigh, and it is easier
4637         than finishing the process of removing them that was
4638         started earlier.
4639
4640 2001-04-16  Hans Breuer  <hans@breuer.org>
4641
4642         * gdk/gdk.def :
4643         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
4644
4645         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
4646         we are interested in the functions return value not the function address
4647         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
4648
4649         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
4650
4651 2001-04-14  Hans Breuer  <hans@breuer.org>
4652
4653         * gdk/gdk.def :
4654         * gdk/makefile.msc : updated
4655
4656         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
4657         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
4658         (the testgtk::text backgound pixmap is drawn again)
4659         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
4660         Win32 Pango change
4661         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
4662
4663         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
4664         Not sure if the returned settings have the right unit, because I couldn't
4665         find any docs for the X version ...
4666
4667         * gtk/gtk.def :
4668         * gtk/makefile.msc.in : updated
4669
4670 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
4671
4672         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
4673         wording problems. (Compared to version from Johannes Stezenbach to
4674         check correctness.)
4675
4676 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
4677
4678         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
4679         this to compile.
4680
4681 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
4682
4683         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
4684         not pixbufpos.
4685
4686         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
4687
4688         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
4689         are unsigned insts, therefore use g_value_set_uint.
4690         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
4691
4692 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
4693
4694         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
4695
4696         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
4697         GTK_TYPE_STRING.
4698
4699         * gtk/gtktreeview.c: New functions to allow initial column
4700         dragging work.
4701
4702         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
4703
4704         * tests/testtreefocus.c: give dave some love.
4705
4706         * tests/testtreesort.c: Modify test to check really long samples.
4707
4708 2001-04-11  Alexander Larsson  <alexl@redhat.com>
4709
4710         * gtk-2.0.m4: Pass pkg-config options
4711         before the other args so it works even if
4712         POSIXLY_CORRECT is set.
4713
4714 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
4715
4716         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
4717         0, interface 0).
4718
4719 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
4720
4721         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4722         check for action_func != NULL
4723
4724 2001-04-04  Sven Neumann  <sven@gimp.org>
4725
4726         * tests/testgtk.c (test_init): corrected path to gtk.immodules
4727
4728 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
4729
4730         * Released Gtk+-1.3.3.
4731
4732 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
4733
4734         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
4735
4736 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
4737
4738         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
4739         files to/from source dir. (if we don't stay in builddir, we
4740         can't reach make-inline-pixbuf.
4741
4742         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
4743         deps.
4744
4745         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
4746         ages 0).
4747
4748 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
4749
4750         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
4751         moved to the GtkTreeSortable interface.
4752
4753         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4754         Make more efficient (fixes #50262).
4755
4756 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
4757
4758         * NEWS: Updated.
4759
4760         * configure.in: Remove support for uninstalled glib.
4761
4762         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
4763         so as not to stop emission.
4764
4765         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
4766         is no longer supported.
4767
4768         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4769         into tests, change build order to build modules before
4770         gtk/.
4771
4772         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4773         to here.
4774
4775 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4776
4777         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4778         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4779         GPatternSpec. this is actually unlikely to cause breakage in
4780         third-party apps since except for gle, pretty much ever caller
4781         passes NULL here.
4782
4783         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4784
4785         * *.c: use g_pattern_*() API.
4786
4787         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4788
4789         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4790         directions aren't passed in.
4791
4792         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4793         functionality to be usable from gtkstyle.c as well, give precedence
4794         for conversion to user-supplied parsers.
4795         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4796
4797         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4798         _gtk_settings_parse_convert() for rcporperty value conversion.
4799
4800 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4801
4802         * gdk/linux-fb/gdkevents-fb.c:
4803         Add empty gdk_setting_get().
4804
4805 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4806
4807         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4808         variable names.
4809         
4810         * gtk/makeenums.pl: touch this so enum files get remade.
4811
4812 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4813
4814         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4815         work again when not sorted.
4816
4817         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4818         and "expand_row" signal, closing bug 52578.
4819
4820         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4821         support.
4822
4823         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4824         support.
4825
4826 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4827
4828         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4829         of changes to system settings, gdk_setting_get() to retrieve
4830         a single system setting.
4831
4832         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4833         to the draft XSETTINGS mechanism.
4834
4835         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4836         XSETTINGS.
4837
4838         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4839         of GDK settings changes to the GtkSettings object.
4840
4841         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4842         double-click-timeout property to GDK.
4843
4844         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4845         Define GDK boxed types here.
4846
4847         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4848         gdk/gdkenumtypes.[ch] for enum definitions.
4849
4850         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4851         * gtk/gtk-boxed.defs: Comment out GDK types
4852         * gtk/gtktypeutils.h: Remove GDK types
4853         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4854
4855 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4856
4857         * Applied patch from Ron Steinke to add signal accumulators
4858         so that signals with the convention 'TRUE return means
4859         handled' stop emission on a TRUE return.
4860
4861         * gtk/gtkmain.[ch]: Add private accumulator 
4862         _gtk_boolean_handled_accumulator, used throughout GTK+.
4863         
4864         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4865
4866         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4867         
4868         * gtk/gtkwidget.c: Add accumulators for event signals,
4869         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4870         for ::mnemonic-activate.
4871
4872         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4873
4874 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4875
4876         * gtk/gtkwidget.c: Add missing include.
4877
4878 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4879
4880         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4881         marshaller.
4882
4883         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4884         "changed" signal to "range_changed".
4885
4886         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4887         removing a tree from one model would remove all trees from that
4888         model.
4889         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4890         changed signal instead.
4891
4892 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4893
4894         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4895         chaining up to parent impl, since we have a INPUT_ONLY
4896         window.
4897
4898         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4899         foreground color for the cursor.
4900
4901 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4902
4903         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4904         param spec when caching property values, since we unref it
4905         later when we free the style.
4906
4907         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4908         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4909
4910 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4911
4912         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4913         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4914         stupidity.
4915
4916 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4917
4918         [ First pass at adding style properties. Still needs some definite
4919         fine-tuning. ]
4920
4921         * gtk/gtkbutton.c: Add ::default_spacing style property.
4922          
4923         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4924         ::indicator_spacing style properties.
4925
4926         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4927         style properties.
4928
4929         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4930         rather than a normal property.
4931
4932         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4933         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4934
4935         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4936         Honor ::interior_focus.
4937         
4938         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4939         TRUE.
4940
4941         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4942         Add ::slider_width, ::trough_border, ::stepper_size,
4943         ::stepper_spacing style properties.
4944
4945         * gtk/gtkscale.[ch] Add ::slider-length style property.
4946
4947 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4948
4949         * gdk/linux-fb/gdkwindow-fb.c:
4950         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4951         warnings that were spewed on startup.
4952
4953         * gtk/gtkwindow-decorate.c:
4954         gtk_window_reposition -> _gtk_window_reposition
4955
4956 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4957
4958         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4959         Add boxed type for GtkRequistion. Use it for ::size-request.
4960
4961         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4962         Add a new GtkBorder structure useful for geometry properties
4963         for widgets. Add corresponding GTK_TYPE_BORDER.
4964         
4965         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4966         Support automatic parser selection like
4967         gtk_settings_install_property_parser().
4968
4969         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4970         functionality for use by gtk_widget_class_install_style_property.
4971         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4972
4973 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4974
4975         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4976         g_param_spec_unichar(). 
4977
4978 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4979
4980         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4981         _NET window managers.
4982
4983         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4984
4985 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4986
4987         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4988         bad needs to be nuked, not just deprecated.
4989
4990         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4991         gtk_widget_popup().
4992
4993         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4994         
4995         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4996         widget.
4997         
4998         * docs/Changes-2.0.txt: updates.
4999         
5000 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
5001
5002         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
5003         for (i = 0; i < 100; i ++)
5004           g_print ("I will confirm it compile before committing\n");
5005
5006 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
5007
5008         * gtk/gtktreestore.c: Initial work on implementing the
5009         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
5010
5011 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
5012
5013         * gtk/gtkwidget.c: fixed a bunch of notifications, added
5014         reference counts around emissions where the widget is used afterwards.
5015         added freeze/thaws around multiple properties being notified.
5016         (_gtk_widget_get_aux_info): cleanups.
5017         
5018         * gtk/gtksettings.c (gtk_settings_install_property): provide
5019         default parsing functions for gdkcolor, enums and flags.
5020
5021         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
5022         applied by owen.
5023         backed out gtk_window_get_location(), gtk_window_set_location(),
5024         gtk_window_get_size() and gtk_window_set_size(), these
5025         have to be sorted out wrg x/y/width/height/default_with/default_height
5026         properties.
5027         kept a flag in GtkWindowGeometryInfo to handle user
5028         resetting default sizes.
5029         cleaned up ZVT comments.
5030         bunch of assorted bug fixes, notification fixes.
5031         (_gtk_window_reposition): make this a really internal function.
5032         
5033         * gtk/testgtk.c: fixups.
5034         
5035 2001-03-31  Hans Breuer  <hans@breuer.org>
5036
5037         * config.h.win32.in : disable USE_MMX for msvc build cause
5038         the assembler doesn't fit and is out of my scope. Disable
5039         USE_GMODULE for msvc build as wel. The right way to share
5040         binaries on win32 would be to use libtiff.dll etc. To reduce
5041         installation hassles IMO it's better to include all fileformats
5042         builtin to gdk-pixbuf
5043
5044         * gdk-pixbuf/makefile.msc : new file
5045
5046         * gdk/gdk.def : updated
5047
5048         * gdk/win32/gdkevents-win32.c : don't erase the background if
5049         .no_bg is set. It improves the scrolling (e.g. of testgtk main
5050         buttons
5051         * gdk/win32/gdkgeometry-win32.c : added comment about the above
5052
5053         * gdk/win32/gdkwindow-win32.c : added three new functions like
5054         the X version. Only one is implemented, because the other two
5055         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
5056         be default behaviour on win32 anyway ...
5057
5058         * gtk/gtk.def : updated
5059
5060         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
5061         from where it was built and add an additional rule to automagically
5062         build gtkmarshal.[hc]
5063
5064         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
5065         before array access for the current entry isn't finished
5066
5067         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
5068         use g_return_val_if_fail
5069
5070         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
5071         for the static array, but let the compiler calculate it. It
5072         makes me wonder if gcc isn't capable to catch bugs like this ...
5073
5074 2001-03-31  James Henstridge  <james@daa.com.au>
5075
5076         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
5077         constant "-1" in the aux info structure.
5078
5079 2001-03-30  Alexander Larsson  <alexl@redhat.com>
5080
5081         * gtk/gtkbutton.c (gtk_button_get_property):
5082         * gtk/gtklabel.c:
5083         Remove leaks.
5084         
5085         * gtk/gtkcontainer.c:
5086         * gtk/gtkhscale.c:
5087         * gtk/gtkhscrollbar.c:
5088         * gtk/gtklayout.c:
5089         * gtk/gtkmisc.c:
5090         * gtk/gtkprogress.c:
5091         * gtk/gtkprogressbar.c:
5092         * gtk/gtkrange.c:
5093         * gtk/gtktable.c:
5094         * gtk/gtkviewport.c:
5095         * gtk/gtkvscale.c:
5096         * gtk/gtkvscrollbar.c:
5097         * gtk/gtkwidget.c:
5098         Property patches, based on patches from John Margaglione and Lee Mallabone.
5099
5100 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
5101
5102         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
5103         adjustment. Cleaned redundant preconditions (spin != NULL). Added
5104         inline API function docs.
5105         (gtk_spin_button_new_with_range): New convenience constructor.
5106         (gtk_spin_button_set_increments): New adjustment helper.
5107         (gtk_spin_button_set_range): New adjustment helper.
5108
5109         * gtk/testgtk.c : added test of the new convenince constructor and
5110         value_changed signals.
5111
5112 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
5113
5114         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
5115         listen to the reorder signal.
5116
5117 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
5118
5119         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
5120         to get the aux info structure fo the widget.
5121
5122         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
5123         above function.
5124
5125         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
5126
5127         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
5128         to get the size of the window manager frame, basically the same
5129         code that gdk_window_get_root_origin() had
5130         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
5131
5132         * gtk/gtkwindow.c (gtk_window_set_default_size): use
5133         gdk_window_resize() if the window is realized and resizeable
5134
5135         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
5136         typo so that setting gravity works
5137
5138         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
5139         allocation if auto_shrink is on, even if the default size
5140         has not changed.
5141
5142         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
5143         g_return_if_fail
5144
5145 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
5146
5147         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
5148         reordering/sorting work.  Now pretty much works.
5149
5150         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
5151         reorder mostly work.  Still need to get the parity correct.
5152
5153         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
5154         signal, so I can listen for the sort_column_changed signal so I
5155         can change my "sort_indicator" property.  Cool.
5156
5157 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
5158
5159         [ Patch from Havoc Pennington, hp@redhat.com ]
5160
5161         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
5162         Add functions gdk_window_begin_resize_drag/begin_move_drag
5163         to start resizing or moving a toplevel window. This
5164         is done either using the _NET_WM_MOVERESIZE protocol,
5165         or, if that isn't present, by emulation.
5166
5167         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
5168         to export the above to GTK+-land.
5169
5170         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
5171         
5172         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
5173         Move this function into gdkwindow, since we need it
5174         when implementing fallback resizing.
5175
5176         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
5177         Fix typo when setting gravity.
5178
5179         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
5180         Add an optional (but on by default) resize grip for resizing 
5181         the parent window.
5182
5183 01-03-29  Alexander Larsson  <alexl@redhat.com>
5184
5185         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
5186         Don't return TRUE from the event handler, that blocks all
5187         event signals on the tooltip widget. Now you can press buttons
5188         in toolbars again.
5189
5190 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
5191
5192         * gtk/testtext.c (create_buffer): Add missing NULL on
5193         valist.
5194
5195         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
5196         c-n-p problem with INCONSISTENT property.
5197
5198         [ Patch from Havoc Pennington  <hp@redhat.com> ]
5199
5200         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
5201         hook.
5202
5203         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
5204         signal as a hook for extending the default popup menu
5205
5206         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5207         use radio menu items for the input method menuitems
5208
5209         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
5210         inserted unicode from Ctrl-Shift-hex input method
5211
5212         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
5213         validatation here, already done at GtkTextBuffer level.
5214
5215         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
5216         popup_menu run action signal and Shift+F10 and Menu keybindings.
5217
5218         * gtk/gtkentry.c: implement a default handler for popup_menu
5219
5220         * gtk/gtktextview.c: implement a default handler for popup_menu
5221
5222         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
5223         from a key event
5224         
5225         * gtk/gtklabel.c: remove "trailer" cruft
5226
5227 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
5228
5229         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
5230         handle reordering of trees.  Seems to mostly work w/ the exception
5231         of the parity flag.
5232
5233         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
5234         signal.
5235
5236 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
5237
5238         * gtk/gtkwidget.h: c++ fixes.
5239
5240 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
5241
5242         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
5243         memory.
5244
5245 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
5246
5247         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
5248         Nils Barth fixing event return values. (#51041)
5249
5250         * gtk/gtkwidget.c: Fix some return values for default
5251         functions.
5252
5253         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
5254         return values for trough_keys functions.
5255
5256         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
5257         value for add_accelerator (shoudl have been a void
5258         return.)
5259
5260         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
5261         Fix return type of EVENT.
5262
5263         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
5264         signal return a boolean.
5265
5266 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
5267
5268         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
5269         reordered signal.
5270
5271         * tests/testtreesort.c (main): fix spelling.
5272
5273 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
5274
5275         * gtk/gtkliststore.c: More work on implementing sortable
5276         interface.
5277
5278 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
5279
5280         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
5281         reference the widgets in the resulting list. (#11821)
5282         This makes this consistent with gtk_container_children.
5283
5284         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
5285         uses of gtk_window_list_toplevels.
5286
5287 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
5288
5289         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
5290         a virtual function to set whether the IM context should use 
5291         the preedit string. (#51922)
5292         
5293 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
5294
5295         * gdk/gdkpango.h: Remove stale FIXME comment.
5296
5297 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
5298
5299         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
5300         Fixed bug that returned NULL if a filename was selected.
5301
5302 2001-03-24  Havoc Pennington  <hp@pobox.com>
5303
5304         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
5305         to contain the word "theme"
5306
5307 2001-03-24  Havoc Pennington  <hp@pobox.com>
5308
5309         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
5310         slower but finer-grained
5311         (gtk_hsv_focus): get initial focus on the ring or triangle 
5312         according to tab direction
5313
5314         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
5315
5316 2001-03-23  Havoc Pennington  <hp@pobox.com>
5317
5318         * gtk/gtkhsv.c: make this somewhat key-navigable
5319
5320         * gtk/gtkfontsel.c: mnemonics
5321
5322         * gtk/gtkgamma.c: mnemonics
5323
5324         * gtk/gtkcolorsel.c: add mnemonics to labels
5325
5326 2001-03-22  Havoc Pennington  <hp@pobox.com>
5327
5328         Applied big patch from Seth Lytle to fix event handler return
5329         values, slightly modified.
5330
5331         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
5332         handled.
5333         (gtk_calendar_key_press): return TRUE for GDK_space triggers
5334         select_day
5335
5336         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
5337         (gtk_clist_button_release): return TRUE if handled
5338
5339         * gtk/gtkcolorsel.c (mouse_release):
5340         (palette_activate): 
5341         (palette_press): 
5342         (palette_new): 
5343         (mouse_press): 
5344         (get_screen_color): 
5345         fixed return type (void to gboolean), return TRUE,
5346         added GTK_SIGNAL_FUNC cast
5347
5348         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
5349         (void to gboolean), and return TRUE
5350         (gtk_combo_button_release): changed return value to TRUE after
5351         gtk_grab_add on combo->popwin
5352
5353         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
5354         collapse or expand
5355
5356         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
5357         button/motion
5358
5359         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
5360         press/release and motion that trigger act
5361
5362         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
5363
5364         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
5365         for GDK_Return
5366         
5367         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
5368         (gtk_list_button_release): return TRUE if selection
5369
5370         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
5371         press
5372
5373         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
5374         (gtk_menu_shell_button_release): chain parent_menu_shell retval
5375
5376         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
5377         nothing triggered
5378         (gtk_notebook_button_release): return TRUE if we do anything
5379
5380         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
5381         (gtk_spin_button_button_release): return TRUE or chained retval
5382
5383         * gtk/gtktext.c (gtk_text_button_press): 
5384         (gtk_text_button_release): return TRUE
5385         (gtk_text_key_press): remove redundant retval code
5386         
5387         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
5388         and sensitive
5389         (gtk_tree_item_subtree_button_click): changed type to gint, and return
5390         TRUE if sensitive
5391
5392         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
5393         return TRUE
5394
5395 2001-03-23  Havoc Pennington  <hp@redhat.com>
5396
5397         * gtk/testgtk.c: fix warnings
5398
5399         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
5400
5401         * gtk/gtktextview.c: fix warnings
5402
5403         * gtk/gtktext.c (find_cursor_at_line): fix warning
5404
5405         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
5406
5407         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
5408         of this function
5409
5410         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5411         fix warning
5412
5413         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
5414
5415         * gtk/gtkfontsel.c: fix warning
5416
5417         * gtk/gtkcolorsel.c: fix warnings
5418
5419 2001-03-23  Havoc Pennington  <hp@redhat.com>
5420
5421         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
5422
5423         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
5424
5425         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
5426         and deprecated gtk_check_menu_item_set_show_toggle().
5427         
5428         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
5429
5430         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
5431
5432         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
5433
5434 2001-03-23  Havoc Pennington  <hp@redhat.com>
5435
5436         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
5437         some docs
5438
5439 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
5440
5441         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
5442         this.
5443
5444         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
5445         set_cell to set_value
5446
5447         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
5448         set_cell to set_value
5449
5450 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
5451
5452         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5453         fix braino.
5454         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
5455         support.
5456
5457         * gtk/gtktreeview.c: Addition of initial sortable support.
5458
5459         * gtk/gtktreestore.c: Addition of initial sortable support.
5460
5461         * gtk/gtkliststore.c: Addition of initial sortable support.
5462
5463         * gtk/gtkmarshal.list: yet another marshaller.
5464
5465         * gtk/gtktreedatallist.[ch]: shared code between the store models
5466         for handling sorting headers.
5467
5468 2001-03-22  Havoc Pennington  <hp@redhat.com>
5469
5470         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
5471         (gtk_container_unset_focus_chain): Add ability to override the 
5472         focus chain for a container explicitly
5473
5474 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
5475
5476         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
5477         added PROP_MNEMONIC_WIDGET.
5478
5479         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
5480         (gtk_window_remove_mnemonic): 
5481         (gtk_window_add_mnemonic): fixed assertions.
5482         (gtk_window_activate_mnemonic): constrain modifier checks to those
5483         permitted by gtk_accelerator_get_default_mod_mask().
5484         got rid of gtk_window_get_default_accel_group().
5485
5486         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
5487         activatable widgets either by focussing or a warning.
5488         added a signal accumulator to ::activate_mnemonic which stops the
5489         emission once a handler returned TRUE.
5490
5491 2001-03-22  Havoc Pennington  <hp@pobox.com>
5492
5493         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
5494         the stock item label
5495
5496         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
5497
5498         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
5499
5500         * demos/gtk-demo/*.c: Add mnemonics all over the place
5501
5502         * gtk/gtklabel.h: mark parse_uline deprecated
5503
5504 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5505
5506         * gtk/gtkitemfactory.[ch]:
5507         Add support for stock and normal imagemenuitems.
5508         
5509         * gtk/testgtk.c:
5510         Add some tests for mnemonics, stock toolbars, stock
5511         and image menuitems in itemfactory and gdk_window_scroll.
5512
5513 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5514
5515         * gtk/gtkbutton.[ch]:
5516         * gtk/gtkdialog.c:
5517         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5518         removed accel_group argument. Renamed gtk_button_new_accel() to
5519         gtk_button_new_with_mnemonic() and removed accel_group argument.
5520
5521         * gtk/gtkcheckbutton.[ch]:
5522         New function gtk_check_button_new_with_mnemonic().
5523
5524         * gtk/gtkentry.c:
5525         Override activate_mnemonic and just grab focus.
5526
5527         * gtk/gtkitemfactory.c:
5528         Don't add menu uline accel group, instead use mnemonics support.
5529
5530         * gtk/gtklabel.[ch]:
5531         New support for mnemonics.
5532
5533         * gtk/gtkmarshal.list:
5534         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5535
5536         * gtk/gtkmenu.[c]:
5537         * gtkmenushell.c:
5538         Use mnemonics instead of accel groups for uline
5539         support in menu items.
5540         Removed gtk_menu_get_uline_accel_group() and
5541         gtk_menu_ensure_uline_accel_group().
5542
5543         * gtk/gtkmenuitem.c:
5544         Override activate_mnemonic to handle switching between
5545         menu items if there are collisions.
5546         
5547         * gtk/gtknotebook.c:
5548         Connect to activate_mnemonic on the tab_label, so that
5549         activating it switches to that notebook page.
5550
5551         * gtk/gtkwidget.[ch]:
5552         Add activate_mnemonic signal. New function
5553         gtk_widget_activate_mnemonic() to emit it.
5554         Default implementation does activate/grab_focus.
5555
5556         * gtk/gtkwindow.[ch]:
5557         Add support for mnemonics in windows.
5558         New functions:
5559         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
5560         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
5561
5562         * gtk/testgtk.c:
5563         Update to function name changes.
5564         
5565 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5566
5567         * gtk/gtkimagemenuitem.[c]:
5568         Add gtk_image_menu_item_new_from_stock()
5569
5570 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
5571
5572         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5573         Fix buglet in meeting.
5574
5575 2001-03-19  Havoc Pennington  <hp@redhat.com>
5576
5577         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
5578         add a bunch of accessor functions. This is because we have
5579         reasonable expectations of extending what fields it contains in
5580         the future.
5581
5582         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
5583         changes
5584
5585         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
5586         GtkIconSource   
5587
5588 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
5589
5590         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
5591         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
5592
5593         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
5594           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
5595           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
5596           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
5597         Change float to double everywhere with the exception of 0<->1.0 alignment
5598         and GtkCurve.
5599
5600 2001-03-19  Tor Lillqvist  <tml@iki.fi>
5601
5602         * gdk/win32/gdkdrawable-win32.c
5603         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
5604         output.
5605
5606         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
5607         gdkwin32.h.
5608
5609 2001-03-18  Tor Lillqvist  <tml@iki.fi>
5610
5611         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
5612         print_event_state, print_event): Use preprocessor macro to make
5613         code more compact. Print also GDK_WINDOW_STATE events.
5614         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
5615         
5616         * gtk/gtk.def
5617         * gtk/makefile.mingw.in: Update.
5618
5619         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
5620         to catch also Cygwin.
5621
5622 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
5623
5624         * gtk/gtkspinbutton.[hc]: added rc-style argument
5625         GtkSpinButton::shadow_type.
5626         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
5627         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
5628         rc-style settings.
5629
5630         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
5631
5632         * gtk/gtkwidget.c: quark cleanups.
5633
5634         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
5635         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
5636         to create_rc_style() (we don't do cloning in standard OO sense).
5637         added per rc style properties.
5638         
5639         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
5640         property values and for caching those. some cleanups.
5641         
5642         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
5643         
5644         * gtk/gtksettings.[hc]: new file for global rc-file properties
5645         (at least currently, should get extended to support X properties
5646         and other communication mechanisms).
5647         
5648         * gtk/gtkwidget.[hc]: added style property support:
5649         (gtk_widget_class_install_style_property_parser): install style
5650         property pspec with parser function for rc-file values other
5651         than LONG, DOUBLE or STRING.
5652         (gtk_widget_class_install_style_property): same as above without
5653         parser (parsers are going to be needed quite infrequently).
5654         (gtk_widget_style_get_property): retrive style property value.
5655         (gtk_widget_style_get_valist): same as above with varargs support,
5656         has NOCOPY semantics.
5657         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
5658
5659 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
5660
5661         * demos/gtk-demo/main.c (row_activated_cb): modified to use
5662         "row_activated" signal.
5663
5664         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
5665         stupidity.  Lets actually pass in the row with this signal...
5666
5667 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
5668
5669         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
5670
5671         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
5672
5673         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
5674         everything into the ::destroy function, and freed a lot more.
5675
5676 2001-03-16  Havoc Pennington  <hp@redhat.com>
5677
5678         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
5679         instead of gint16, to avoid overflow issues, since sizes > 16-bit
5680         are now allowed.
5681
5682 2001-03-16  Havoc Pennington  <hp@redhat.com>
5683
5684         * Applied patch from Nils Barth (bug # 51041) to 
5685         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
5686         in various places.
5687
5688 2001-03-15  Havoc Pennington  <hp@redhat.com>
5689         
5690         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
5691         for properties to set on the tag.
5692
5693         * gtk/testtext.c: fixups to reflect create_tag change
5694         
5695         * gtk/gtktexttag.c (gtk_text_tag_set_property):
5696         background/foreground stipple are objects, not boxed.
5697
5698         * demos/gtk-demo/textview.c: intellihancing
5699
5700 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
5701
5702         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
5703         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
5704
5705 2001-03-16  Alexander Larsson  <alexl@redhat.com>
5706
5707         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
5708         Fix sign error with queued region translations.
5709
5710 2001-03-15  HideToshi Tajima  <tajima@happy>
5711
5712         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
5713         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
5714         * gtk/gtkentry.c (update_im_cursor_location): 
5715         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
5716         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
5717         set_cursor_pos to set_cursor_location in GtkInputContext class
5718
5719 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
5720
5721         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
5722         the location of the cell relative to its area.
5723         * gtk/gtkcell*: modified for above change
5724         * gtk/gtktreeview.c: modified for above change.
5725
5726 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
5727
5728         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
5729          (gtk_tree_view_finalize): actually unref the model.  Thanks to
5730         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
5731
5732 2001-03-14  Havoc Pennington  <hp@redhat.com>
5733
5734         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
5735         
5736         * gtk/gtk.h: remove gtkdata.h
5737
5738         * gtk/Makefile.am: remove gtkdata
5739         
5740         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
5741         not "disconnect" on the adjustments.
5742         
5743         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
5744         GtkData
5745
5746         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
5747         not GtkData
5748
5749         * configure.in: handle case where X render exists, but Pango lacks
5750         Xft support.
5751
5752 2001-03-15 Alexander Larsson  <alexl@redhat.com>
5753
5754         * gtk/gtktoolbar.[ch]:
5755         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
5756         to add stock items to toolbars.
5757
5758         * gtk/Makefile.am:
5759         Remove ../gdk/gdkim.h from gdk_headers.
5760
5761 2001-03-15  Sven Neumann  <sven@gimp.org>
5762
5763         * gdk/gdkim.h: removed
5764         
5765         * gdk/gdkprivate.h
5766         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
5767
5768 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5769
5770         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5771         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5772         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5773         set_cursor_pos() virtual method
5774
5775         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5776         (gtk_im_context_xim_set_cursor_pos): add implementation for
5777         set_cursor_pos() method
5778
5779         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5780         position to input methods
5781
5782 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5783
5784         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5785         code a lot.
5786
5787         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5788         g_mem_chunk.
5789         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5790         (_gtk_tree_data_list_node_to_value): Fix to switch on
5791         G_TYPE_FUNDAMENTAL.
5792         (_gtk_tree_data_list_value_to_node): Fix to switch on
5793         G_TYPE_FUNDAMENTAL.
5794         (_gtk_tree_data_list_node_copy): Fix to switch on
5795         G_TYPE_FUNDAMENTAL.
5796
5797 2001-03-12  Havoc Pennington  <hp@redhat.com>
5798
5799         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5800         to convert to new property API. Also, change default_width and
5801         default_height get_property to return 0 as the flag value for
5802         "unset"; -1 is not a valid value for these fields.
5803
5804 2001-03-12  Havoc Pennington  <hp@redhat.com>
5805
5806         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5807         enum with registration for icon sizes, instead of strings.
5808
5809         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5810         gtkwidget.c: Fix to reflect GtkIconSize
5811         
5812 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5813
5814         Make GtkFB compile and link.
5815         
5816         * gdk/linux-fb/gdkdrawable-fb2.c:
5817         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5818         
5819         * gdk/linux-fb/gdkwindow-fb.c:
5820         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5821         Added gdk_window_shape_combine_region.
5822         Added assorted placeholders for unimplemented new GdkWindow API calls.
5823
5824 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5825
5826         * gtk/gtkfilesel.c:
5827         Add more test when converting filenames from/to utf-8.
5828         Don't allow entering text in the filename entry which isn't allowed in
5829         a filename. Just beep instead.
5830
5831 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5832
5833         * gtk/gtkclist.c:
5834         Scroll using gdk_window_scroll(). Don't wait for exposes.
5835         Move the column headers in an order that makes them flash less.
5836
5837 2001-03-10  Hans Breuer  <hans@breuer.org>
5838
5839         * gdk/gdk.def : updated
5840
5841         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5842         to offseting the clip_mask at the right place
5843
5844         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5845         for all the gdkClasses, especially not for the input_only case.
5846         Otherwise flickering wont be avoidable, because we don't get
5847         WM_ERASEBKGND message for these windows.
5848
5849         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5850         and fixed massive redraw problems apparently triggered by Alexanders 
5851         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5852         but it seems to work quite well :-)
5853
5854         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5855         prototype
5856
5857 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5858
5859         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5860         (gtk_list_store_set_cell): Fix a stupid typo.
5861
5862 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5863
5864         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5865         select_all not work if you're in SINGLE mode (it doesn't make that
5866         much sense, anyway.)
5867
5868         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5869         handle types more sanely.
5870         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5871         (_gtk_tree_data_list_node_copy): handle types more sanely.
5872
5873         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5874         GValue better. Converts the type as well.
5875
5876         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5877         GValue better. Converts the type as well.
5878
5879 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5880
5881         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5882         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5883         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5884         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5885
5886         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5887         gdk_im/gdk_ic.
5888
5889 2001-03-09  Hans Breuer  <hans@breuer.org>
5890
5891         * gdk/gdk.def : updated
5892
5893         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5894         for their palette
5895
5896         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5897         removing
5898
5899         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5900         removing and implemented Havoc's GdkWindow state functions; 
5901         stick/unstick only as no-op, cause I don't know how to emulate 
5902         on win32 ...
5903
5904         * gtk/gtk.def : updated
5905
5906         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5907
5908         * gtk/gtktypeutils.c : #include <string.h>
5909
5910         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5911
5912 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5913
5914         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5915         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5916         not a boxed.
5917
5918 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5919
5920         * docs/Changes-2.0.txt:
5921         Document expose event->region change and that gtk_widget_event
5922         doesn't allow passing expose events.
5923
5924         * gdk/gdkevents.h:
5925         Add region to expose event.
5926         
5927         * gdk/gdkevents.c:
5928         Handle event->region in gdk_event_copy() and gdk_event_free().
5929
5930         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5931         Generate expose_event->region when creating expose events.
5932
5933         * gdk/x11/gdkevents-x11.c:
5934         Generate expose events with regions when translating X events.
5935
5936         * gtk/gtkcontainer.[ch]:
5937         Default expose handler that propagates expose events to NO_WINDOW
5938         children. New function gtk_container_propagate_expose()
5939
5940         * gtk/gtkwidget.[ch]:
5941         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5942         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5943         expose events. New function gtk_widget_send_expose() to send expose
5944         events. New function gtk_widget_region_intersect() to calculate
5945         window/region intersections.
5946         
5947         * gtk/gtkmain.c (gtk_main_do_event):
5948         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5949         Use gtk_widget_send_expose() to send expose events.
5950         
5951         * gtk/gtkbin.c:
5952         * gtk/gtkbox.c:
5953         * gtk/gtkfixed.c:
5954         * gtk/gtkimagemenuitem.c:
5955         * gtk/gtklist.c:
5956         * gtk/gtkpacker.c:
5957         * gtk/gtktable.c:
5958         * gtk/gtktree.c:
5959         Remove expose handler, using the default container implementation
5960         instead.
5961         
5962         * gtk/gtkbutton.c:
5963         * gtk/gtkcheckbutton.c:
5964         * gtk/gtkeventbox.c:
5965         * gtk/gtkfixed.c:
5966         * gtk/gtkhandlebox.c:
5967         * gtk/gtklayout.c:
5968         * gtk/gtklistitem.c:
5969         * gtk/gtkmenu.c:
5970         * gtk/gtkmenubar.c:
5971         * gtk/gtkmenuitem.c:
5972         * gtk/gtknotebook.c:
5973         * gtk/gtkoptionmenu.c:
5974         * gtk/gtkpaned.c:
5975         * gtk/gtkscrolledwindow.c:
5976         * gtk/gtktogglebutton.c:
5977         * gtk/gtktoolbar.c:
5978         * gtk/gtktreeitem.c:
5979         * gtk/gtkviewport.c:
5980         Chain expose handler to parent class handler. Use
5981         gtk_container_propagate_expose() to propagate exposes.
5982
5983         * gtk/gtkclist.c (check_exposures):
5984         * gtk/gtktext.c (process_exposes):
5985         Use gtk_widget_send_expose instead of gtk_widget_event.
5986
5987 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5988
5989         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5990
5991 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5992
5993         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5994         unref the nodes.   Fixes bug #50058.
5995
5996         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5997         "::ref_iter" to "::ref_node".
5998         (gtk_tree_model_unref_node): change "::unref_iter" to
5999         "::unref_node". Fixes bug #50064.
6000
6001 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
6002
6003         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
6004         support for invisible cells.
6005          (gtk_tree_view_bin_expose): ditto
6006
6007 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
6008
6009         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
6010         on gobjects.
6011
6012         * tests/testtreefocus.c (main): New test file.
6013
6014         * tests/testtreeview.c: update to latest glib changes.
6015
6016         * tests/testtreecolumns.c: update to latest glib changes.
6017
6018 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
6019
6020         * gtk/testgtk.c: re-enabled event watcher emission hooks.
6021
6022 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
6023
6024         * *.c: added accumulator data argument to g_signal_newc()
6025         functions.
6026
6027         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
6028         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
6029         * gtk/treestoretest.c (make_window):
6030         s/g_signal_connect/g_signal_connectc/.
6031
6032         * gtk/gtktextbuffer.c: completed signal arg fixups,
6033         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
6034
6035 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
6036
6037         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
6038         G_CONST_RETURN.
6039
6040         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
6041         ::hierarchy-changed signal when a widget changes
6042         from anchored to unanchored or vice versa.
6043         (anchored means 
6044          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
6045         Use a private flag to keep track of this efficiently.
6046
6047 2001-03-07  Havoc Pennington  <hp@redhat.com>
6048
6049         * gtk/testgtk.c (create_spins): uglify so that size request gets
6050         tested.
6051
6052         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
6053         request on values for upper/lower, completes #6152
6054
6055 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
6056
6057         * Makefile.am: Remove gtk-config-2.0 again.
6058         (Grrrr, pkg-config. And stops make loops.)
6059
6060 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
6061
6062         * gtk/gtksignal.[hc]: removed old emission hook API.
6063         
6064         * docs/Changes-2.0.txt: fixed sections.
6065         
6066         * gtk/gtktextbuffer.c: signal arg fixups.
6067
6068 2001-03-07  Havoc Pennington  <hp@redhat.com>
6069
6070         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
6071
6072         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
6073         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
6074         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
6075         validation and the redraw which is higher priority than the
6076         validation.
6077
6078 2001-03-07  Havoc Pennington  <hp@redhat.com>
6079
6080         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
6081         (gtk_entry_set_property): remove trailer
6082
6083         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
6084         (gtk_entry_get_width_chars): new functions, to set size request to 
6085         a given number of characters
6086
6087         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
6088
6089         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
6090         (gtk_dialog_get_has_separator): new function
6091         (run_delete_handler): fix to not emit "response" signal
6092         because we already did in the delete event handler installed
6093         at dialog creation time.
6094         
6095         * gtk/gtkdialog.h: add a has_separator property,
6096         add GTK_DIALOG_NO_SEPARATOR flag
6097
6098 2001-03-07  Havoc Pennington  <hp@redhat.com>
6099
6100         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
6101         off decorations for a window.
6102
6103         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
6104         changes
6105
6106         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
6107         to get location of PangoLayout inside the label, closes #51198
6108
6109         * gtk/testgtk.c (create_bbox): fix up button box usage
6110
6111         * gtk/testcalendar.c (create_calendar): fix up button box usage
6112
6113         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
6114
6115         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
6116
6117         * gtk/gtkhbbox.h: deprecations
6118
6119         * gtk/gtkvbbox.h: deprecations
6120
6121         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
6122         emulate deprecated gtk_button_box_get_spacing
6123
6124         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
6125         the "set global default" functions
6126         (struct _GtkButtonBox): remove "spacing" field, use the one from 
6127         GtkBox base class
6128
6129         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
6130
6131         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
6132         render the icon, return the missing image icon.
6133
6134         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
6135         image icon if the load fails.   
6136
6137         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
6138         when no image is found; should be the Netscape "missing image"
6139         icon eventually but for now is a random image
6140
6141         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
6142         role for the session manager
6143
6144         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
6145
6146         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
6147         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
6148
6149         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
6150
6151 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
6152
6153         * gtk/*.c: marshaller fixes.
6154         
6155         * gtk/gtkmarshal.list: extreme cleanup.
6156
6157         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
6158         param spec for now.
6159
6160         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
6161         where appliable.
6162
6163         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
6164         special cased autogenerated boxed types from gtktypebuiltins_ids.c
6165         which are not reference counted:
6166         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
6167         PangoFontDescription, GtkTreeIter and GtkTreePath.
6168
6169 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
6170
6171         * gtk/gtktreeselection.h: 
6172         * gtk/gtktreemodel.c:
6173         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
6174         file should be included directly, and gobject/gmarshal.h
6175         as well as gtk/gtkmarshal.h even can't be included directly.
6176
6177         * Makefile.am: grr, install gtk-config-2.0.
6178
6179         * gtk/testgtk.c:
6180         * gtk/simple.c:
6181         * gtk/gtkmenu.c:
6182         * gtk/gtkitemfactory.c: use g_object_connect() instead of
6183         passing "*signal*::*" args to gtk_widget_set().
6184         
6185         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
6186         
6187         * gtk/*.c: removed trailer arg from property setters and getters.
6188         macro fixups.
6189
6190 2001-03-07  Alexander Larsson  <alexl@redhat.com>
6191
6192         * gtk/gtklabel.c (set_markup): Removed warning
6193
6194 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
6195
6196         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
6197         field to allow you to hide cell renderers.
6198
6199         * gtk/gtkcellrenderer.c: Add support for invisible cells.
6200
6201         * gtk/gtktreeview.c: Add support for invisible cells.
6202
6203 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
6204
6205         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
6206         Add "clicked" signal back to columns.
6207
6208         * ChangeLog: remove conflict markers.
6209
6210 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
6211
6212         * gtk/gtkbutton.c: Add animation of activation by, on 
6213         activate, pressing the button, and adding a timeout that 
6214         releases the button after 250ms or on key release and
6215         emits ::clicked. (#51501)
6216
6217         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
6218         action area, we connect to ::clicked instead of ::activate
6219         so the dialog stays up through the animation.
6220
6221 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
6222
6223         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
6224         check the ignore_enter flag for the menu shell that
6225         the item is actually a child of, not for attached
6226         submenus. (#51536)
6227
6228 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6229
6230         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6231         special key-press grab handling for widgets within
6232         GtkWindows. Otherwise, fall through to normal case.
6233
6234         This prevents key events being sent twice to GtkInvisible
6235         widgets, which can cause all sorts of mischief.
6236
6237 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6238
6239         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6240         widget is in effect, give the grab widget a first
6241         crack at KEY_PRESS/RELEASE events. (#424)
6242
6243 2001-03-06  James Henstridge  <james@daa.com.au>
6244
6245         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
6246         offset for the window_state_event to point at window_state_event
6247         rather than no_expose_event.
6248
6249 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
6250
6251         * gtk/gtkimmodule.h: fix busted /* comment */
6252
6253 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
6254
6255         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
6256         object properties.
6257
6258 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
6259
6260         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
6261         add object properties.
6262
6263         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
6264         to add object properties.
6265
6266         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
6267         object properties.
6268
6269         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
6270         add object properties.
6271
6272         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
6273         object properties.
6274
6275 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
6276
6277         * gtk/gtktreemodel.c: renamed "child_toggled" to
6278         "has_child_toggled".
6279
6280         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
6281         handle new signal name.
6282
6283         * gtk/gtktreestore.c: Updated to handle new signal name.
6284         * gtk/gtklisttore.c: Updated to handle new signal name.
6285         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
6286
6287 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6288
6289         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
6290         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
6291
6292 2001-03-05  Michael Natterer  <mitch@gimp.org>
6293
6294         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
6295         pixbuf-engine coincidentially also failed to make one of it's
6296         parent_class pointers static, causing overwriting of GtkLabel's
6297         parent_class pointer in pixbuf_style_class_init().
6298         (Will commit the fix to the pixbuf-engine too).
6299
6300 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6301
6302         * gdk/gdkwindow.h:
6303         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
6304         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
6305         gdk_window_set_icon_list for net wmspec functionality.
6306
6307         * gdk/x11/gdkwindow-x11.c:
6308         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
6309         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
6310         gdk_window_set_icon_list.
6311         Added gdk_wmspec_change_state helper function and used it in the code.
6312         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
6313
6314         * gtk/gtkdialog.c (gtk_dialog_init):
6315         Set GDK_WINDOW_TYPE_HINT_DIALOG.
6316
6317         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
6318         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
6319
6320         * gtk/gtkwindow.c:
6321         new function gtk_window_set_type_hint.
6322         On realize, set type hint and modal hint.
6323
6324         * gtk/gtkwindow.h:
6325         Added type_hint field and gtk_window_set_type_hint.
6326
6327 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6328
6329         * gtk/gtklabel.[ch]:
6330         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
6331         New function gtk_label_get_accel_keyval () to get the underline accelerator
6332         of the label. Setting the label pattern overrides other attributes.
6333
6334 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
6335
6336         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
6337         Added missing initializers to gtk_rc_style_init().
6338
6339 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
6340
6341         * gtk/gtktextview.c: fixed bug #51097 about setting 
6342         gtk_text_view_set_border_window_size() if the widget is 
6343         already realized.
6344
6345 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
6346
6347         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
6348
6349         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
6350         comment. Won't do to have duplicated doc comments between
6351         the platform subdirs.
6352
6353 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
6354
6355         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
6356           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
6357
6358         Detectable auto-repeat - make a repeating key generate
6359         press/press/press/release instead of press/release pairs.
6360
6361         If we have Xkb and XkbSetDectableAutoRepeat supports
6362         that, we do it that way. Otherwise, when we get
6363         a release event, we check ahead with XPending to see
6364         if the next key is a KeyPress with the same keycode
6365         and timestamp. (Not 100% reliable, but pretty close.)
6366           
6367 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6368         
6369         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6370         special key-press grab handling for widgets within
6371         GtkWindows. Otherwise, fall through to normal case.
6372  
6373         This prevents key events being sent twice to GtkInvisible
6374         widgets, which can cause all sorts of mischief.
6375  
6376 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6377  
6378         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6379         widget is in effect, give the grab widget a first
6380         crack at KEY_PRESS/RELEASE events. (#424)
6381  
6382 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
6383
6384         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
6385         to extend the selection. (Roughly based on patch
6386         from Jay Cox, #50939)
6387
6388         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
6389         to properly handle previous GDK_BUTTON_PRESS. 
6390         (Patch from Jay Cox, #50938)
6391
6392         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
6393         '\0' back along with the deleted text. (#51148)
6394
6395 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
6396
6397         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
6398         the group when extracting it from the X keyboard event.
6399
6400         * modules/input/Makefile.am modules/input/imipa.c: 
6401         Simple module for entering IPA. (Do we need a 
6402         gtk-stupid-input-tricks CVS module?)
6403
6404 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
6405
6406         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
6407         const.
6408
6409         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
6410
6411         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
6412         is no focus widget for the dialog currently, grab the focus as well
6413         as the default.
6414
6415         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
6416         the action area's children to iterate through, not the
6417         dialog's children.
6418
6419 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
6420
6421         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
6422         Add plug-socket tests. (Won't work worth a darn until I commit
6423         the rest of the plug-socket changes, but no reason these
6424         can't go into CVS now.)
6425
6426 2001-03-02  Havoc Pennington  <hp@redhat.com>
6427
6428         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
6429         _gdk_region_get_xrectangles()
6430
6431         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
6432
6433         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
6434
6435         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
6436         function, contributed by Ron Steinke    
6437
6438         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
6439         gdk_net_wm_supports
6440
6441         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
6442         New function, contributed by Ron Steinke
6443
6444         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
6445         used to line up the text in the entry when using the entry for
6446         editable sheet cell hacks
6447
6448         * gtk/testgtk.c (create_entry): test the activate_default setting
6449         on GtkEntry
6450
6451         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
6452         cause the entry to activate the default button for a dialog when 
6453         activated
6454         (gtk_entry_get_activates_default): new function
6455
6456 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
6457
6458         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
6459         Hwang to move call to sync_selection() up a few lines
6460         to before the row list is modified, to fix crash when
6461         removing rows in the undo_selection list.
6462
6463         (Test case provided by Daniel Elstner:
6464
6465         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
6466
6467 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
6468
6469         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
6470         of tree->root_tree in parent_set rather than _map(), 
6471         fixing #50892 in a bit better manner.
6472
6473 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
6474
6475         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
6476
6477 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
6478
6479         * gtk/gtkstyle.c : Remove duplicate fwd decl for
6480         gtk_default_draw_shadow.
6481
6482 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6483
6484         * gdk/gdkimage.c (gdk_image_new): Remove excess 
6485         warning, make warnings more verbose, treat a error
6486         in shmat as permanent, and don't try again.
6487         (#51163, Ed Randall.)
6488
6489 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
6490
6491         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
6492         delay for the first click before starting to scroll.
6493         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
6494
6495         * gtk/gtktext.c: GtkText should have I-beam cursor. 
6496         (based on gtk-enf-990513-1.patch, Eric Fisher.)
6497
6498 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
6499
6500         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
6501         cleanup to remove some references to unused
6502         ->xoffset, ->yoffset.
6503
6504 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
6505
6506         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
6507         mask. (#51039, fix from Martin Maierhofer)
6508
6509 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
6510
6511         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
6512         for unshifted + and shifted = for non-us keyboards.
6513         Make <Control>+ and <Control>- work as well as 
6514         <Control>KP_Plus, <Control>KP_Minus for recursive
6515         open/close.  (#2682, René Seindal)
6516
6517 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6518
6519         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6520         the active menu item before deactivating the menu,
6521         so gtk_menu_popdown doesn't change the history. (#50964)
6522         
6523 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6524
6525         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6526         draw lines with text_gc rather than black_gc.
6527         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6528
6529 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6530
6531         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6532         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6533         less interrelated then it was, but it still requires the
6534         GtkTreeView to map it.
6535
6536         * test/testtreecolumn.c: Now I can add a column to one view,
6537         remove it, add it to the another view, remove it, then re-add it
6538         to the first.  Nifty.
6539
6540 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6541
6542         * docs/tutorial/gtk-tut.sgml: Minor corrections
6543
6544 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6545
6546         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6547         GtkRowReference.
6548
6549 2001-02-28  Havoc Pennington  <hp@redhat.com>
6550
6551         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6552         draw_default
6553         (gtk_widget_draw_focus): remove this function; we could instead
6554         make it just gtk_widget_draw(), but in most cases I think the
6555         result would be broken user code, so think it's better to have
6556         that code not compile and get fixed
6557         (gtk_widget_draw_default): ditto
6558
6559         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
6560         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
6561         
6562         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
6563         widgets lose/get the default, instead of calling draw_default
6564         
6565         * docs/Changes-2.0.txt: note about all this
6566
6567         Then fixed every widget in GTK, I won't list all the filenames.
6568
6569 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
6570
6571         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
6572         _gtk_tree_row_reference_deleted.
6573         (inserted_callback): Proxy out to
6574         _gtk_tree_row_reference_inserted.
6575         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
6576         get around signal emission ordering problem.
6577
6578         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6579         fix to work with SINGLE 
6580         (_gtk_tree_selection_internal_select_node): Major sanitization on
6581         selections.  SINGLE now seems to work.
6582
6583         * tests/Makefile.am: add testtreecolumn.c:
6584
6585         * tests/testtreecolumn.c: New test.  Mostly points out selection
6586         bugs currently, but will test columns later.
6587
6588         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
6589         selection bug.  I hate touching this code -- it's scary.
6590
6591 2001-02-26  Havoc Pennington  <hp@redhat.com>
6592
6593         * gtk/testgtk.c: test the window state stuff
6594
6595         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
6596         window come to the user's attention as if it were just created
6597         (gtk_window_iconify): new function
6598         (gtk_window_deiconify): new function
6599         (gtk_window_stick): new function
6600         (gtk_window_unstick): new function
6601         (gtk_window_maximize): new function
6602         (gtk_window_unmaximize): new function
6603
6604         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
6605
6606         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
6607
6608         * gdk/x11/gdkevents-x11.c: create window state events when
6609         appropriate
6610         (gdk_wmspec_supported): new function
6611
6612         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
6613         iconification before showing the window
6614         (gdk_window_deiconify): new function
6615         (gdk_window_stick): new function
6616         (gdk_window_unstick): new function
6617         (gdk_window_maximize): new function
6618         (gdk_window_unmaximize): new function
6619
6620         * gdk/gdkwindow.c: store the window state in the window; 
6621         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
6622         window->mapped.
6623         (gdk_window_get_state): return the current window state
6624
6625         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
6626         (gdk_event_get_state): handle GDK_WINDOW_STATE
6627         (gdk_synthesize_window_state): function to create the window state
6628         events
6629
6630         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
6631         event, for changes to "window state" such as maximized, sticky, 
6632         etc.
6633         
6634         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
6635         focuses a window
6636
6637         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
6638         finds out if we support a given WM spec hint
6639
6640 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
6641
6642         * docs/faq/gtk-faq.sgml: New question re memory leaks.
6643
6644 2001-02-25  Hans Breuer  <hans@breuer.org>
6645
6646         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
6647         cause we want to loose those prototypes only in the latter case
6648
6649         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
6650         GdkPixmapImplWin32 because it itsn't derived from it. Use the
6651         impl member variable instead
6652
6653         * gtk/gtk.def : updated
6654
6655         * gtk/gtklist.c : 
6656         * gtk/gtkmenus.c : include <string.h> for memset ()
6657
6658         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
6659         for everthing built here, but for gtk-x.x.dll only. This solves
6660         problem of indifferent gtk type definitions
6661
6662 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
6663
6664         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
6665
6666 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
6667
6668         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
6669         column that is exposed.
6670
6671         (_gtk_tree_view_update_size): Changed name from set_size, and
6672         changed function to do more work, and not force people calling it
6673         to figure out the size.  Simplifies a lot of code elsewhere.
6674
6675 2001-02-23  Alexander Larsson  <alexl@redhat.com>
6676
6677         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
6678         return solid masks for xpms that have no transparent color.
6679         This makes the ..._create_from_xpm... API backwards
6680         compatible.
6681
6682 2001-02-23  Tor Lillqvist  <tml@iki.fi>
6683
6684         * README.win32: Update. Mention the gtk-1-3-win32-production
6685         branch.
6686
6687         * gdk/win32/bdfcursor.c: New file. A program that generates
6688         xcursors.h. Thanks to Stefan Ondrejicka.
6689
6690         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
6691         compact format.
6692
6693         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
6694
6695         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
6696         function, uses xcursors.h.
6697         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
6698         cursor from inline data instead of using LoadCursor() to generate
6699         it from a resource.
6700
6701         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
6702         event, must check the Windows message for mouse button state, as
6703         the GDK event state might not have been built if it is
6704         undelivered. Remove one goto.
6705
6706         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
6707         SetCursor() if the current cursor as returned by GetCursor() is
6708         the window's previous cursor. The ChildWindowFromPoint() test
6709         apparently didn't work correctly.
6710
6711         * gdk/win32/rc/*.cur: Remove.
6712
6713         * gdk/win32/rc/gdk.rc.in: Remove cursors.
6714
6715         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
6716
6717         * gtk/makefile.{mingw,msc}.in: Updates.
6718
6719 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
6720
6721         * gtk/gtktreemodel.h: add functions for signal emission.
6722
6723         * gtk/gtktreestore.c: move to use above functions instead of
6724         g_signal_emit.
6725
6726         * gtk/gtkliststore.c: ditto
6727
6728 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
6729
6730         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
6731         GObject instead of GtkObject.
6732
6733         * gtk/gtkliststore.c: ditto.
6734
6735         * gtk/gtktreemodelsort.c: ditto.
6736
6737         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
6738         GtkTreeModelIface, instead of in each model.
6739
6740 2001-02-21  Havoc Pennington  <hp@redhat.com>
6741
6742         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
6743         unbreak this function
6744
6745         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
6746         properties
6747
6748         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
6749         properties
6750
6751         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
6752         properties
6753
6754         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
6755         mean unset the max length
6756
6757 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
6758
6759         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
6760         Changed name to be set_cell_data_func to make it clear what
6761         the functino does.  Close bug #51069.
6762
6763 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
6764
6765         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
6766         have memory actually freed.  Keeps box running longer.
6767
6768 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6769         
6770         * gtk/gtkseparatormenuitem.[ch]:
6771         Added new menu separator item. The drawing and size handling
6772         is still done in GtkMenuItem, but the API is a bit more sane.
6773         
6774         * gtk/Makefile.am:
6775         Add gtkseparatormenuitem.[ch].
6776
6777         * gtk/gtk.h:
6778         Add gtkseparatormenuitem.h.
6779         
6780         * gtk/gtkentry.c:
6781         * gtk/gtkmenufactory.c:
6782         * gtk/gtktextview.c:
6783         Use the new API for menu separators.
6784         
6785         * demos/gtk-demo/menus.c (create_menu):
6786         Add some GtkSeparatorMenuItem demo code.
6787
6788 2001-02-20  Havoc Pennington  <hp@redhat.com>
6789
6790         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6791         Lee Mallabone
6792
6793         * gtk/gtkarrow.c: Convert to new property API, patch from 
6794         Lee Mallabone
6795
6796 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6797
6798         * tests/testtreeview.c (toggled_callback): fix to reflect change
6799         in GtkTreeModelStore.
6800
6801 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6802
6803         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6804         function to create an icon set from a pixbuf.
6805
6806 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6807
6808         * gtk/gtkcellrenderertext.[ch]:
6809         Add a "markup" property.
6810
6811         * gtk/treestoretest.c:
6812         Use the markup property, remove some leftover stuff from
6813         GtkTreeModelMapping.
6814
6815 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6816
6817         * gtk/gtklabel.c (gtk_label_set_selectable):
6818         Queue a redraw if the selectable setting was changed.
6819
6820 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6821
6822         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6823         Actually copy the whole gc, not just the public parts.
6824         
6825         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6826         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6827         labels.
6828
6829 2001-02-19  Havoc Pennington  <hp@pobox.com>
6830
6831         * gdk/gdkwindow.c: docs
6832
6833         * gdk/gdkrgb.c: docs
6834
6835         * gdk/gdkregion-generic.c: docs
6836
6837         * gdk/gdkgc.c (gdk_gc_set_values): docs
6838
6839         * gdk/gdkdraw.c: docs
6840
6841         * gdk/gdkdrawable.h: deprecate drawable get/set data
6842
6843 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6844
6845         * demos/gtk-demo/dialog.c: Add simple new demo.
6846
6847 2001-02-19  Havoc Pennington  <hp@redhat.com>
6848
6849         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6850         insert_child_anchor signal, bug #50245
6851
6852         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6853         from create_child_anchor, so the anchor is passed in
6854
6855         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6856         (_gtk_widget_segment_new): have the child anchor object passed in, 
6857         instead of creating it.
6858
6859         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6860         to gtk_text_buffer_get_modified
6861
6862 2001-02-19  Havoc Pennington  <hp@redhat.com>
6863
6864         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6865         changed GLib without fixing GTK
6866
6867         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6868         functions to have an underscore in front. Most of them should 
6869         probably just go away, but for starters don't export them.
6870         Bug #50482
6871
6872 2001-02-19  Havoc Pennington  <hp@redhat.com>
6873
6874         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6875         excluded by default
6876
6877         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6878         clean up the old code a bit
6879
6880         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6881         inconsistent state
6882
6883         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6884         draw inconsistent state
6885
6886         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6887         (create_menu): add inconsistent test
6888
6889         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6890         new function
6891         (gtk_check_menu_item_get_inconsistent): new function
6892         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6893         state (using etched in for now)
6894
6895         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6896         draw inconsistent state
6897
6898         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6899         function, used when the user has selected a range of stuff in
6900         different states
6901         (gtk_toggle_button_get_inconsistent): accessor for that
6902         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6903         don't know what else to do)
6904
6905 2001-02-19  Hans Breuer <hans@breuer.org>
6906
6907         * gtk/gtk.def : updated exported symbols
6908
6909         * gtk/makefile.msc.in : updated
6910
6911         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6912         a colormap, when invoked from testgtk::entry. I'm not sure where
6913         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6914         avoids immediate crashing ...
6915
6916         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6917         any objections ?
6918
6919         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6920         0 parameter. At least msvc doesn't like macros with var args. 
6921         I simply removed the extra 0, was it a feature or a typo ?
6922
6923         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6924         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6925         because the value assignment to the internal struct wasn't working.
6926         I'm not absolutely sure. The problem could have been resolved by
6927         changing the "func" declartion in the struct, but was the pointer
6928         to the function pointer intended ?
6929
6930         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6931
6932         * gdk/gdk.def : updated exported symbols
6933
6934         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6935         only use SetDIBitsToDevice if there is a palette at the drawable
6936         and the image is GDK_VISUAL_PSEUDO_COLOR
6937
6938         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6939
6940         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6941
6942         * gdk/*/makefile.msc : updated
6943
6944 2001-02-19  Havoc Pennington  <hp@redhat.com>
6945
6946         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6947         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6948
6949         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6950         (gdk_key_repeat_restore): nuke
6951
6952         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6953         (gdk_init_check): no atexit func
6954
6955         * gdk/gdkrgb.h: mark some stuff deprecated
6956
6957         * gdk/gdkcolor.h: mark some stuff deprecated
6958         
6959         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6960
6961         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6962
6963 2001-02-16  Havoc Pennington  <hp@redhat.com>
6964
6965         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6966         scroll steps.
6967
6968         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6969         steps, and add Ctrl-arrow shortcuts for paging visually as with
6970         HScale, since Page Up and Page Down move logically.
6971
6972         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6973         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6974         
6975         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6976         steps
6977         (gtk_range_scroll): handle the visual steps
6978
6979         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6980         scroll steps
6981
6982         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6983         steps, not the logical ones.
6984
6985         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6986         (scroll_vertical): handle up/down steps
6987
6988 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6989
6990         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6991         Copy data and free data with free().
6992
6993         * gdk-pixbuf/gdk-pixbuf.c:
6994         * gdk-pixbuf/io-jpeg.c:
6995         * gdk-pixbuf/io-png.c:
6996         Use g_try_malloc/g_free instead malloc/free.
6997         
6998         * gdk-pixbuf/test-gdk-pixbuf.c:
6999         Must... initialize... gobject...
7000         
7001         * gdk-pixbuf/pixops/timescale.c:
7002         * gtk/gtkcalendar.c:
7003         Use g_malloc instead of malloc.
7004         
7005 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
7006
7007         * gtk/testgtkrc:
7008         Comment out property assignments, these don't work yet.
7009
7010 2001-02-17  Havoc Pennington  <hp@pobox.com>
7011
7012         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
7013         bit.
7014
7015 2001-02-17  Havoc Pennington  <hp@pobox.com>
7016
7017         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
7018         shadowed variables that had broken size request in some cases,
7019         leading to bogus tooltips (#50996)
7020
7021 2001-02-06  Jon K Hellan  <hellan@acm.org>
7022
7023         Implement fast browsing of tooltips, bug #50619
7024         
7025         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
7026         and last_popdown
7027         
7028         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
7029         use_sticky_delay and last_popdown.
7030         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
7031         time of popdown.
7032         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
7033         is NULL.
7034         (gtk_tooltips_recently_shown): New static function.  Return true
7035         if < sticky_delay has elapsed since last popdown.
7036         (gtk_tooltips_event_handler): Display window after sticky_delay
7037         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
7038         since last popdown.
7039         
7040 2001-02-17  Havoc Pennington  <hp@pobox.com>
7041
7042         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
7043         instead of (). #6394
7044
7045         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
7046         G_CONST_RETURN, make it return by reference, #50473
7047         
7048 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
7049
7050         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
7051         generated ENTER_NOTIFY event with 0, otherwise not explicitely
7052         setup fields contain garbage (e.g. subwindow, breaking
7053         gdk_drawable_ref() upon event copy).
7054         (gtk_menu_stop_navigating_submenu_cb): same here.
7055
7056         * gtk/gtklist.c (gtk_list_vertical_timeout): 
7057         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
7058         * gtk/gtkclist.c (vertical_timeout): 
7059         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
7060         default-zero-intialization for unions to memset(,0,), as unions are
7061         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
7062         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
7063
7064         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
7065         g_closure_sink() warning.
7066
7067         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
7068         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
7069         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
7070         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
7071         
7072 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
7073
7074         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
7075         gtk_*_store_get, and moved to GtkTreeModel.
7076
7077         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
7078
7079         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
7080
7081         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
7082
7083         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
7084         set the func.
7085
7086         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7087         freeze/thaw notify between setting all the properties for a cell.
7088
7089         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
7090
7091 2001-02-15  Havoc Pennington  <hp@redhat.com>
7092
7093         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
7094         the X coordinates so they're with respect to the line, rather than 
7095         with respect to the layout.
7096
7097         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
7098         Mallabone
7099
7100         * gtk/testgtk.c (create_range_controls): add vscale tests, 
7101         and inverted test
7102
7103         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
7104         #50806
7105
7106         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
7107
7108         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
7109         gtk_text_iter_is_end
7110
7111         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
7112         rename gtk_text_buffer_get_end_iter
7113
7114         * gtk/testgtk.c (create_labels): Add test for selectable
7115
7116         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
7117         the selection stuff. This code is kind of broken since it doesn't 
7118         use the theme engine.
7119
7120         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
7121         fix infinite loop and y offset problem
7122         (gdk_draw_layout_line_with_colors): fix foreground color handling
7123
7124         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
7125         that makes the label selectable.
7126         
7127         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
7128         layout when the style is set, since fonts etc. could have changed.      
7129
7130 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
7131
7132         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
7133
7134         * gtk/gtktreemodelsimple.[ch]: removed.
7135
7136 2001-02-16  Alexander Larsson  <alexl@redhat.com>
7137
7138         * gtk/gtktreemodelmapping.[ch]:
7139         New files. Implement GtkTreeModelMapping.
7140         
7141         * gtk/Makefile.am:
7142         Add gtktreemodelmapping.[ch].
7143         
7144         * gtk/gtk.h:
7145         Add gtktreemodelmapping.h
7146
7147         * gtk/treestoretest.c:
7148         Test the GtkTreeModelMapping
7149
7150 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
7151
7152         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
7153         have a demo, we might as well pass in real values.  Thanks to
7154         clahey for pointing this out.
7155
7156 2001-02-14  Havoc Pennington  <hp@pobox.com>
7157
7158         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
7159         "static" to a private function
7160         (gtk_image_menu_item_class_init): remove destroy handler,
7161         add "image" object property
7162
7163 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
7164
7165         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
7166         Add a shortcut if the window and the current clip_region doesn't
7167         overlap. This is needed when there are a lot of windows in a
7168         window. The layout test in testgtk is a good test.
7169
7170         * gdk/linux-fb/gdkwindow-fb.c:
7171         Whitespace fix.
7172
7173 2001-02-13  Sven Neumann  <sven@convergence.de>
7174
7175         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
7176
7177 2001-02-13  Alexander Larsson  <alexl@redhat.com>
7178
7179         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
7180         Don't reference last_cursor if it is null. Fixes crash when rotating
7181         the screen before having moved the mouse.
7182
7183         * gdk/linux-fb/gdkcc-fb.c: Zapp!
7184
7185         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
7186
7187         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
7188         when using 90 or 270 degrees rotation.
7189
7190 2001-02-12  Havoc Pennington  <hp@pobox.com>
7191
7192         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
7193         it always set the foreground, even if we were only using
7194         a stipple.
7195         (gdk_draw_layout_line_with_colors): new function, allow
7196         override colors
7197         (gdk_draw_layout_with_colors): new function, allow override
7198         colors
7199         (gdk_pango_layout_line_get_clip_region): function to get the clip
7200         region for a logical text range
7201         (gdk_pango_layout_get_clip_region): get the clip region for a
7202         logical text range
7203
7204         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
7205         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
7206         the right number of arguments.
7207
7208         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
7209         enhance the function to check that node data corresponds to a 
7210         view still belonging to the tree.
7211
7212         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
7213         GtkTreePath
7214         (gtk_tree_view_inserted): ditto
7215         (gtk_tree_view_child_toggled): ditto
7216
7217         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
7218         simplify this code.
7219
7220         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
7221         a PangoAttrList
7222
7223         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
7224
7225         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
7226
7227         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
7228         size in the size request 
7229         (gtk_menu_bar_size_allocate): consider toggle size here
7230
7231         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
7232         that displays a widget in the toggle slot
7233
7234         * gtk/testgtk.c: test GtkImageMenuItem
7235
7236         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
7237         
7238         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
7239         request and allocation
7240
7241         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
7242
7243         * gtk/gtkcheckmenuitem.c
7244         (gtk_check_menu_item_toggle_size_request): ditto
7245         
7246 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
7247
7248         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
7249         reference.
7250
7251         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
7252         and refuse to initialize GTK+ if they fail.
7253
7254 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
7255
7256         * configure.in: Add check for gtk-doc version.
7257
7258 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
7259
7260         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
7261         where the xpad/ypad was only being used on one side!
7262
7263 2001-02-11  Tor Lillqvist  <tml@iki.fi>
7264
7265         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
7266         function, copied from X11 version.
7267
7268         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
7269         DestroyCursor failures. The reason for the problem (despite the
7270         inconsistent messages from GetLastError()) was that
7271         DestroyCursor() cannot be called while a cursor is set in a
7272         window. Set the new cursor first and then destroy the old one.
7273         Thanks to jpe@archaeopteryx.com.
7274
7275         * gdk/win32/gdkcc-win32.c: Remove.
7276
7277         * gdk/win32/Makefile.am: Remove from here, too.
7278         
7279         * gdk/gdk.def
7280         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
7281
7282         * gtk/gtk.def
7283         * gtk/makefile.mingw.in: Updates.
7284
7285 2001-02-08  Havoc Pennington  <hp@redhat.com>
7286
7287         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
7288         add a widget to a bin that already has a child.
7289
7290         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
7291
7292         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
7293         
7294         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
7295
7296         * gdk/gdk.h: remove gdkcc.h
7297
7298         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
7299
7300         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
7301         GdkPixbuf, since the previous implementation was GdkColorContext
7302         dependent.
7303
7304         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
7305         
7306 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
7307
7308         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
7309         a sane value!
7310
7311 2001-02-08  Havoc Pennington  <hp@redhat.com>
7312
7313         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
7314         lighten them.
7315
7316 2001-02-08  Havoc Pennington  <hp@redhat.com>
7317
7318         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
7319         validation idle
7320
7321         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
7322         cell renderer
7323
7324         * demos/pixbuf-demo.c (timeout): remove deprecated
7325         gtk_widget_draw
7326
7327         * demos/testpixbuf-save.c (main): remove deprecated
7328         gtk_drawing_area_size
7329
7330         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
7331         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
7332         at the start of the allocation.
7333         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
7334         unsetup or NULL model.
7335
7336         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
7337         even/odd/sorted cells in the tree view.
7338
7339         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7340         bugfixes
7341
7342         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
7343         backgrounds with draw_flat_box using different detail for even/odd
7344         rows.
7345
7346         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
7347         row, so we can draw the alternating colors thing
7348
7349         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
7350         property from a synonym property, notify for the synonym.
7351         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
7352         (gtk_text_tag_get_property): Always return the font, even if
7353         all its fields aren't set
7354
7355         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
7356         store the attr list; it leaves us with no way to change attributes
7357         in _render according to the render flags, and no way to implement
7358         get_property. Instead store all the specific text attributes. 
7359         Separate whether an attribute is enabled from its value. Sync all
7360         properties with GtkTextTag, make them all consistent, etc.
7361
7362         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
7363         renderers can highlight the sort row/column     
7364
7365         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
7366         accessor functions to get values; this has the side effect of
7367         showing up which accessor functions were missing. Added those.
7368
7369         * gtk/gtktreeviewcolumn.h: Replace set_justification with
7370         set_alignment, to be consistent with GtkLabel, GtkMisc
7371
7372         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
7373         arrow.
7374
7375         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
7376
7377         * gtk/gtktreesortable.h: updates in here
7378
7379 2001-02-07  Sven Neumann  <sven@convergence.de>
7380
7381         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
7382         pango dimensions after painting the background. We used to draw
7383         gigantic flat boxes here.
7384
7385 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
7386
7387         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
7388         error introduced with earlier commit) (pointed out by
7389         Ollie Lho)
7390
7391 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
7392
7393         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
7394         which are no longer necessary.
7395
7396 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
7397
7398         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
7399
7400 2001-02-04  Tor Lillqvist  <tml@iki.fi>
7401
7402         * gdk/gdk.def
7403         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
7404         Provide dummy implementations.
7405
7406 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
7407
7408         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
7409
7410         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
7411         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
7412         deprecated this function.
7413
7414         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
7415         argument.
7416
7417 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
7418
7419         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
7420
7421 2001-02-03  Havoc Pennington  <hp@pobox.com>
7422
7423         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
7424         Mikael Hermansson with patch from Mikael (if there was a toggle
7425         start one after the first character in the range, this function
7426         was broken). Bug #50380
7427
7428 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
7429
7430         * configure.in: Remove confusing comment about X11.
7431
7432 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
7433
7434         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
7435         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
7436         
7437 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
7438
7439         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
7440         it breaks things on BSD. If you want to compile GTK+ with
7441         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
7442         when configuring, since GTK+ simply can't be "pure ANSI" 
7443         in the header files it uses. (#8170, Greg Hudson)
7444
7445 2001-02-02  Havoc Pennington  <hp@redhat.com>
7446
7447         * gtk/gtkwindow.c: docs
7448
7449         * gtk/gtkwidget.c: docs
7450         (gtk_widget_set_colormap): add a reference to the colormap
7451         (gtk_widget_get_default_colormap): add a reference to the colormap
7452
7453         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
7454
7455         * gtk/gtktextiter.c: docs
7456
7457         * gtk/gtkmain.c (gtk_propagate_event): docs
7458
7459         * gtk/gtkpaned.c (gtk_paned_get_position): docs
7460         (gtk_paned_set_position): docs
7461
7462         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
7463         sort interface, no implementation yet.
7464
7465         * demos/testpixbuf.c (new_testrgb_window): replace
7466         gtk_drawing_area_size() with gtk_widget_set_usize()
7467
7468         * demos/testpixbuf-drawable.c (main): ditto
7469         
7470         * gtk/testgtk.c: remove use of GtkStatusbarMsg
7471
7472         * gtk/gtktextbuffer.c: docs
7473
7474         * gtk/gtkstock.c: docs
7475
7476         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
7477
7478         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
7479
7480         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
7481         
7482         * gtk/gtkimage.c: add some docs in here
7483         (gtk_image_size_request): change name of
7484         gtk_widget_render_stock_icon
7485         (gtk_image_get_icon_set): don't dup returned string
7486         (gtk_image_get_icon_set): don't dup returned string
7487
7488         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
7489         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
7490         and gtkiconfactory.h functions
7491
7492         * gtk/gtkiconfactory.c: add some docs in here
7493
7494         * gtk/gtkmain.c (gtk_get_default_language): document
7495         (gtk_get_current_event): document
7496         (gtk_get_current_event_state): document
7497         (gtk_get_event_widget): document
7498
7499         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
7500
7501         * gtk/gtkcontainer.c: Add some documentation
7502         (gtk_container_add): give a more explanatory warning on adding an
7503         already-parented widget, this is kind of a FAQ and also a common
7504         typo that's easier to debug with a nice warning 
7505
7506         * gtk/gtkcellrenderertoggle.c
7507         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
7508         adding this, it's useless
7509         (gtk_cell_renderer_toggle_set_active): remove
7510         (gtk_cell_renderer_toggle_get_radio): add
7511
7512         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
7513         the NULL cell renderer, that doesn't make any sense to me. 
7514
7515         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7516         demo code should never use deprecated features.
7517
7518         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7519         code should never use deprecated features.
7520
7521         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7522         gtk_widget_queue_clear_area deprecated
7523
7524         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7525         deprecated
7526
7527         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7528
7529         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7530         a GdkImage deprecated, replaced by new consistently-named
7531         functions       
7532
7533         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7534
7535         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7536
7537         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7538         deprecated
7539
7540         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7541         so it won't appear in docs and confuse people.
7542
7543         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7544
7545         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7546         macros deprecated. (can't mark the type itself deprecated, since
7547         GtkProgressBar is not deprecated and we need the type decl to use
7548         GtkProgressBar)
7549
7550         * gtk/gtkpixmap.h: Mark deprecated
7551
7552         * gtk/gtkoldeditable.h: Mark deprecated
7553
7554         * gtk/gtklist.h: Mark deprecated
7555
7556         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
7557         for anything anymore.
7558
7559         * gtk/gtkctree.h: Mark deprecated
7560
7561         * gtk/gtkclist.h: Mark deprecated
7562
7563         * gtk/gtkpreview.h: Mark deprecated
7564
7565         * gtk/gtkpacker.h: Mark deprecated
7566
7567         * gtk/gtktipsquery.h: Mark deprecated
7568
7569         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
7570
7571         * gtk/gtkvruler.h: Add comment that it will move out of GTK
7572
7573         * gtk/gtkhruler.h: Add comment that it will move out of GTK
7574
7575         * gtk/gtkruler.h: Add comment that it will move out of GTK
7576
7577         * gtk/gtkgamma.h: Add comment that it will move out of GTK
7578
7579         * gtk/gtkcurve.h: Add comment that it will move out of GTK
7580
7581 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
7582
7583         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
7584         gdk_colormap_sync private since it was never exported
7585         in a header file.
7586
7587         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
7588         colormap->colors[] for StaticGray, StaticColor colormaps.
7589
7590         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
7591         was being used as if it was image->bits_per_pixel.
7592
7593         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
7594         for the image in the GdkImage structure since it isn't
7595         reconstructable, and we need it to handle packed types
7596
7597         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
7598         the assumption that on Win32 image->bits_per_pixel == image->depth,
7599         always.
7600
7601         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
7602
7603         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
7604         warning message if no converter can be found. 
7605
7606 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
7607
7608         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
7609         chars to isupper() / tolower(). (#567)
7610
7611         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
7612         to clear up 64-bit warnings. (#567)
7613
7614 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
7615
7616         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
7617         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
7618
7619         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
7620         since some people set $(libdir) separately. (#1290, David Kaelbling)
7621
7622 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
7623
7624         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
7625         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
7626         MAXPATHLEN, but the code here depends on a fixed value.)
7627         (#4524)
7628
7629 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
7630
7631         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
7632         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
7633
7634 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
7635
7636         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
7637         viewable there is no way that moving the node will cause the 
7638         focus row to become not viewable, so omit check on the visibility
7639         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
7640
7641 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
7642
7643         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
7644         selection before inserting new text.
7645
7646 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
7647
7648         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
7649         Make the sensitivity of the reparented child track that of
7650         the original parent menu item. (#34218, David Hodson)
7651
7652         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
7653         the case where the current item is destroyed properly.
7654
7655         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
7656         some edge cases with child-less menuitems.
7657         
7658 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
7659
7660         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
7661         key pop down window. (#12074, Jon K Hellan)
7662
7663 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
7664
7665         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
7666         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
7667         The solution here isn't perfect - you get an extraneous
7668         emission of "toggle", which could conceivably confuse an app,
7669         but better than the current situation. LXR search seems to
7670         indicate that no apps in GNOME CVS connect to "toggle".
7671
7672 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
7673
7674         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
7675         gtk_public_h_sources to directly here to avoid warning when
7676         building srcdir != builddir. (#9656)
7677
7678 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
7679
7680         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
7681         handlers in gtkrange.c return the proper values (TRUE == handled)
7682         (#10316).
7683
7684         This is just the tip of the iceberg, but gtkrange.c is the
7685         most common place where the propagation is problematical,
7686         and also a place where it is almost certainly safe to change
7687         this in the stable branch.
7688
7689         (You don't want right click popups on a range control or anything...)
7690
7691 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
7692
7693         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
7694         area on focus out, even if a background pixmap isn't set.
7695         (#13941)
7696         
7697 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
7698
7699         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
7700         to deal with setting the shape properly when scrolling arrows are
7701         turned on, but not visible because there is sufficient space.
7702         (#13432)
7703
7704 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
7705
7706         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
7707         items with submenus, destroy the item along with the submenu.
7708         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
7709         properly.
7710
7711         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
7712         later.
7713
7714 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
7715
7716         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
7717         the focus widget sometimes wasn't drawn with the default if there
7718         was no default widget.
7719
7720         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
7721         unreference pixmaps. 
7722
7723         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
7724         for some extra safety.
7725
7726 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
7727
7728         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
7729         the text of a cell to the old pointer value better, by
7730         copying the new text before freeing the old text. Some code
7731         cleanup. (#8079, Karl Nelson)
7732
7733 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
7734
7735         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
7736         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
7737
7738 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
7739
7740         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
7741         item from a menu, check to see if it matches 
7742         menu->old_active_menu_item, and if so, unref and clear
7743         old_active_menu_item (Patch from Pavel Cisler)
7744
7745         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
7746         menu_shell->active_menu_item, if it is the child being
7747         removed. (Patch based on that of Gene Ragan, #50337)
7748
7749 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
7750
7751         * gdk/linux-fb/gdkselection-fb.c: 
7752         * gdk/linux-fb/gdkcolor-fb.c: 
7753         * gdk/linux-fb/gdkdrawable-fb2.c: 
7754         * gdk/linux-fb/gdkfont-fb.c: 
7755         * gdk/linux-fb/gdkim-fb.c: 
7756         * gdk/linux-fb/gdkinput.c: 
7757         * gdk/linux-fb/gdkkeyboard-fb.c: 
7758         * gdk/linux-fb/gdkmain-fb.c: 
7759         * gdk/linux-fb/gdkrender-fb.c: 
7760         A bunch of whitespace cleanup.
7761         
7762 2001-01-30  Havoc Pennington  <hp@pobox.com>
7763
7764         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
7765         #ifdef GTK_ENABLE_BROKEN.
7766
7767         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7768         GTK_ENABLE_BROKEN just before including the broken headers.
7769         
7770         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7771         deprecated types registered.
7772
7773         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7774         we have to test the broken stuff.
7775
7776         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7777         
7778 2001-01-30  Havoc Pennington  <hp@redhat.com>
7779
7780         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7781         here where prev pointer was set to the wrong thing
7782
7783         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7784         (gtk_tree_path_is_descendant): new function
7785
7786         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7787         cached length
7788         (gtk_list_store_get_iter): don't modify iter if we can't get the
7789         path.
7790
7791         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7792         
7793         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7794         GtkTreeDragDest
7795
7796         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7797         was causing segfault
7798
7799         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7800         pointer to NULL
7801
7802         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7803
7804         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7805         on returning FALSE
7806         (gtk_list_store_iter_children): ditto
7807         (gtk_list_store_iter_nth_child): ditto
7808         (gtk_list_store_iter_nth_child): ditto
7809         (gtk_list_store_iter_parent): ditto
7810
7811         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7812         on iter->user_data != NULL instead of silently accepting it.
7813         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7814         we are returning TRUE.
7815         (gtk_tree_store_iter_children): ditto
7816         (gtk_tree_store_iter_nth_child): ditto
7817         (gtk_tree_store_iter_parent): ditto
7818         (gtk_tree_store_insert): remove handling of parent->user_data ==
7819         NULL, replace with parent == NULL       
7820
7821         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7822         and a comment explaining things
7823
7824         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7825         interface support to GtkTreeStore.
7826
7827         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7828         FALSE if no prev, fix
7829
7830         * gtk/gtktreeview.c (set_source_row): use a row reference
7831         (set_dest_row): use a row reference
7832
7833 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7834
7835         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7836         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7837         (gtk_tree_selection_select_iter): The same as above.
7838
7839 2001-01-26  Havoc Pennington  <hp@redhat.com>
7840
7841         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7842         which holds a handle to a specific row (particular set of values
7843         in the model, i.e. pointer-identity row).
7844
7845         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7846         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7847         Still need to use it for the src/dest row saved on the drag context.
7848
7849 2001-01-26  Havoc Pennington  <hp@redhat.com>
7850
7851         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7852
7853         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7854         not offset by TREE_VIEW_HEADER_HEIGHT
7855         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7856         TREE_VIEW_HEADER_HEIGHT
7857
7858         * configure.in (included_loaders): for me, --with-included-loaders
7859         generates the error "the specified loader yes does not exist",
7860         i.e. the arg defaults to "yes", so change test for value ""
7861         to test for value "yes", and include all loaders in that case.
7862
7863         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7864
7865         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7866         handle TREE_VIEW_VERTICAL_SEPARATOR
7867         (gtk_tree_view_bin_expose): fix to consider the row offset as
7868         pointing halfway into vertical separator.       
7869         (gtk_tree_view_draw_node_focus_rect): ditto
7870
7871         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7872         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7873         (TRUE) to be called.
7874
7875         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7876         debug mode where the invalid region is colored in on invalidate,
7877         so you can see the flicker and know whether your redraw code is 
7878         doing a good job.
7879
7880         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7881         tree window coordinates (clip rect is in tree window coords)
7882
7883         * gtk/Makefile.am: add gtktreednd.[hc]
7884
7885         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7886
7887         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7888         drag-and-drop data operations on a model (so we can set up tree
7889         drag-and-drop automatically)
7890
7891         * gtk/testgtk.c: Add a window to change sensitivity in the
7892         GtkLabel test; add a way to change the entry frame in GtkEntry
7893         test
7894
7895         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7896         (gtk_entry_get_has_frame): new functions to remove the frame
7897         around an entry
7898         (gtk_entry_size_request): shrink requisition if no frame
7899         (gtk_entry_draw_focus): don't draw frame if no frame
7900
7901         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7902         checks inside a cell renderer
7903         (gtk_default_draw_option): ditto for options
7904
7905         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7906         children from the alignment, not the button
7907         (gtk_tree_view_column_init): ref/sink the column, to emulate
7908         GObject refcounting.
7909
7910         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7911         
7912         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7913         Use theme functions to draw the toggles 
7914
7915         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7916
7917         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7918         GdkPangoAttrEmbossed to use in rendering insensitive text
7919
7920         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7921
7922         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7923         using new GDK features
7924         
7925 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7926
7927         * gtk/gtkimage.c:
7928         Splitted gtk_image_clear into gtk_image_clear() and
7929         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7930         to avoid leaks.
7931
7932         * gtk/gtklabel.c (set_markup):
7933         Don't leak text.
7934
7935         * gtk/gtktextlayout.c:
7936         Always free display->shaped_objects.
7937
7938         * gtk/testgtk.c (create_clist):
7939         Don't leak custom style.
7940
7941 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7942
7943         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7944         Don't leak image. Simplify using gdk_colormap_query_color().
7945         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7946
7947         * linux-fb/gdkcolor-fb.c:
7948         Implemented gdk_colormap_query_color.
7949
7950 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7951
7952         * linux-fb/gdkcursor-fb.c:
7953         Don't leak built-in cursors.
7954
7955         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7956         Don't leak tmp_points.
7957
7958         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7959         Don't modify desc. Don't leak font if the PangoFont
7960         isn't found.
7961         
7962         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7963         Free dash_list.
7964
7965         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7966         Don't leak string.
7967         
7968 2001-01-20  Havoc Pennington  <hp@pobox.com>
7969
7970         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7971         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7972         me, matches Pango
7973
7974 2001-01-22  Havoc Pennington  <hp@redhat.com>
7975
7976         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7977
7978         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7979
7980         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7981         Remove, move back to gdk-pixbuf
7982
7983         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7984         to all the word functions
7985
7986         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7987         before doing anything on NULL layout or if we don't have the focus
7988
7989         * gtk/testtext.c (fill_example_buffer): "justification"
7990
7991         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7992         to be called "justification" not "justify"
7993
7994         * demos/gtk-demo/textview.c (create_tags): "justification"
7995         
7996         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7997
7998 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7999
8000         * gdk/gdkwindow.c (gdk_window_invalidate_region):
8001         Don't leak visible_region. Use visible_region instead of region.
8002         
8003         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
8004         Don't do extra gdk_drawable_ref(). This is not X.
8005         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
8006         gdk_fb_focused_window is ref:ed.
8007         (gdk_fb_window_send_crossing_events): Watch out for destroyed
8008         windows.
8009
8010 2001-01-22  Alexander Larsson  <alexl@redhat.com>
8011
8012         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
8013         Don't leak the PangoFontDescriptor.
8014
8015 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
8016
8017         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
8018         when not realized.
8019         (gtk_tree_view_scroll_to_cell): Make work when not realized.
8020         (gtk_tree_view_realize): add scroll_to support
8021         (gtk_tree_view_finalize): add a finalize method.  Populate.
8022         (gtk_tree_view_insert_column): ref and sink the column.
8023         (gtk_tree_view_append_column): ref and sink the column.
8024         (gtk_tree_view_queue_draw_node): New function to handle redrawing
8025         individual nodes.  Should make the code much more efficient, if
8026         actually used.
8027
8028 2001-01-19  Havoc Pennington  <hp@redhat.com>
8029
8030         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8031         byte_offset variable was being used to mean both "offset into
8032         layout" and "offset into buffer line" which was no longer true
8033         with addition of preedit string; fix
8034
8035 2001-01-19  Havoc Pennington  <hp@redhat.com>
8036
8037         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
8038
8039         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
8040         function
8041
8042         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
8043         implement
8044
8045         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
8046         scroll_to_cell, matches TextView scroll functions better
8047         (gtk_tree_view_tree_to_widget_coords): new function
8048         (gtk_tree_view_widget_to_tree_coords): new function
8049         (gtk_tree_view_get_visible_rect): new function
8050         (gtk_tree_view_get_path_at_pos): accept negative coordinates
8051         (gtk_tree_view_draw_node_focus_rect): new function moved from
8052         draw_focus, also, use width of bin_window as width of the focus
8053         rect
8054         (gtk_tree_view_expand_row): fix bug where it didn't recognize
8055         already-expanded rows
8056         (gtk_tree_view_get_cell_rect): new function
8057         (gtk_tree_view_get_path_at_pos): return the click position
8058         relative to the passed-in cell
8059         (gtk_tree_view_set_expander_column): new function
8060
8061         * configure.in: remove gtk-config-2.0 chmod
8062
8063         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
8064         and properly handle drags with targets we don't understand
8065         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
8066         scrolling anyway
8067         (gtk_text_view_drag_drop): stop scrolling here though, and set the
8068         mark invisible
8069
8070         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
8071         function
8072         (gtk_drag_dest_get_target_list): new function
8073         (gtk_drag_dest_set_target_list): new function
8074         
8075         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
8076
8077         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
8078         related to drag-and-drop
8079
8080 2001-01-19  Alexander Larsson  <alexl@redhat.com>
8081
8082         * gdk/linux-fb/gdkprivate-fb.h:
8083         Define EMULATE_GDKFONT.
8084         Add extra pango_font stuff to GfkFontPrivate.
8085         
8086         * gdk/linux-fb/gdkdrawable-fb2.c:
8087         * gdk/linux-fb/gdkfont-fb.c:
8088         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
8089         emulation using PangoFont.
8090
8091 2001-01-17  Havoc Pennington  <hp@pobox.com>
8092
8093         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
8094         all the non-deprecated set_foo functions. Added missing object
8095         properties, and added g_object_notify() to setters. 
8096         Wrote docs.
8097         
8098 2001-01-18  Tor Lillqvist  <tml@iki.fi>
8099
8100         * gtk/gtkmain.c
8101         * gtk/gtkrc.c: (Win32) Use the new
8102         g_win32_get_package_installation_(sub)directory() functions.
8103
8104         * config.h.win32.in: New file.
8105         
8106         * config.h.win32: Removed.
8107
8108         * configure.in: Output config.h.win32.
8109
8110         * Makefile.am: Add it to EXTRA_DIST.
8111
8112         * gtk/gtk.def: Update.
8113
8114 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
8115
8116         * gtk/gtklabel.c (gtk_label_size_request): Set the
8117         attributes onto the PangoLayout even if they are newly
8118         created from label->pattern.
8119
8120 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
8121
8122         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
8123
8124         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
8125         structures in functions. Fixes bug where gtk_dataset_*
8126         was accidentally still being used in one place, causing
8127         every dest side event to be treated independently.
8128
8129         * gtk/gtkdnd.c: Remove last vestages of handling
8130         ::draw (fixes warning)
8131         
8132         * gtk/gtkentry.[ch]: Add drag and drop support.
8133
8134         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
8135         new function gtk_check_drag_threshhold() for checking
8136         to check if (dx,dy) has exceeded the threshhold for starting
8137         a drag and use it everywhere.
8138
8139 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
8140
8141         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
8142         add -I{includedir}/gtk-2.0.
8143
8144         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
8145         gdk/gdk-pixbuf.h: Doc fixups.
8146         
8147         * gtk/gtkobject.h: Remove trailing , from enum
8148
8149 2001-01-17 Alexander Larsson <alexl@redhat.com> 
8150
8151         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
8152         Doh! Mixed up x and y.
8153
8154         * gdk/linux-fb/gdkglobals-fb.c:
8155         Removed gdk_fb_pointer_grab_window_events,
8156         added _gdk_fb_pointer_grab_owner_events and
8157         _gdk_fb_keyboard_grab_owner_events.
8158
8159         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
8160         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
8161         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
8162         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
8163         Send crossing events after ungrab finished.
8164         (gdk_keyboard_grab): Set ..._owner_events
8165         (type_masks): Move out of function.
8166         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
8167         gdk_fb_keyboard_event_window): New functions, return the
8168         window an event should be targeted at. Handles grabs and
8169         event propagation. Can return NULL.
8170         (gdk_event_make): Remove event_mask checking. Now always
8171         returns an event.
8172                 
8173         * gdk/linux-fb/gdkkeyboard-fb.c:
8174         * gdk/linux-fb/gdkproperty-fb.c:
8175         * gdk/linux-fb/gdkselection-fb.c:
8176         Use new event_window/gdk_event_make() behaviour.
8177         
8178         * gdk/linux-fb/gdkmouse-fb.c:
8179         Use new event_window/gdk_event_make() behaviour.
8180         Only send motion events if in the same window.
8181         If grabbed, use cursor from window if sibling of grabbed
8182         window, and cursor from grabbed window otherwise.
8183
8184         * gdk/linux-fb/gdkprivate-fb.h:
8185         Update gdk_fb_window_send_crossing_events, gdk_event_make
8186         and grab varaible declarations. Add gdk_fb_*_event_window().
8187
8188         * gdk/linux-fb/gdkwindow-fb.c:
8189         Use new event_window/gdk_event_make() behaviour.
8190         Keep correct track of focus window.
8191         (gdk_window_set_events): Set all specific button motion masks
8192         if GDK_BUTTON_MOTION_MASK set.
8193
8194         * gtk/gtkdnd.c (gtk_drag_update):
8195         Free info->last_event if gdk_drag_motion returned FALSE.
8196
8197 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8198
8199         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
8200         Eliminate redraws when input-only windows are shown or
8201         hidden. Thanks to jpe@archaeopteryx.com.
8202
8203 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
8204
8205         * docs/faq/gtk-faq.sgml: FAQ update:
8206           - Update to bugzilla
8207           - Add GTK+ and security/SUID/SGID
8208           - Add DnD question
8209
8210 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
8211
8212         * gdk/linux-fb/gdkdnd-fb.c:
8213         Some cleanups.
8214         
8215 2001-01-15  Havoc Pennington  <hp@pobox.com>
8216
8217         * tests/testtreeview.c: add test stuff for CellRendererToggle
8218
8219         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
8220         accessor
8221
8222         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
8223         only toggle on button press (would do release like GtkButton, but
8224         we'd need implicit grab code for treeview cells)
8225
8226 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8227
8228         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
8229
8230         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
8231         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
8232
8233         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
8234         to g_{locale,filename}_{to,from}_utf8 to match current API.
8235
8236         * gtk/makefile.msc.in (gtk_OBJECTS)
8237         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
8238
8239         * gtk/gtk.def: Update.
8240
8241 2001-01-15  Tor Lillqvist  <tml@iki.fi>
8242
8243         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
8244         implementaion that more closely mimics the events that an X server
8245         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
8246         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
8247         with nested preview widgets, for instance, more responsive when
8248         you move the mouse quickly into them.
8249         (find_window_for_pointer_event): Make it actually compile.
8250         (gdk_event_translate): Set send_event to the value of
8251         InSendMessage (). This doesn't really mean the same as X11's
8252         send_event flag, but is close enough, says jpe@archaeopteryx.com
8253
8254 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8255
8256         * gdk/linux-fb/gdkdnd-fb.c:
8257         Implemented drag and drop.
8258         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
8259         when it tries to free and then copy the same event (info->last_event).
8260         I am not sure about why this happens, but will continue looking.
8261
8262 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8263
8264         * gdk/linux-fb/gdkwindow-fb.c:
8265         Use gdk_window_invalidate_rect instead of
8266         gdk_window_invalidate_rect_clear to minimise flashing.
8267         When hiding windows you need to clear the root window though.
8268
8269 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8270
8271         * gdk/linux-fb/gdkdrawable-fb2.c:
8272         For optization, add an full_shapes argument to gdk_fb_clip_region.
8273         If this is false, only the cliprects of the shapes are used.
8274
8275         * gdk/linux-fb/gdkprivate-fb.h:
8276         Export gdk_fb_window_peek_shape.
8277         Add full_shapes to gdk_fb_clip_region.
8278
8279         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8280         When moving a window, don't clear everything under the it, just the
8281         root window. Makes stuff faster and flash less.
8282         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
8283         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
8284         offset of the shape.
8285         
8286
8287 2001-01-12  Havoc Pennington  <hp@redhat.com>
8288
8289         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
8290         current invalid region, fixes redraw bug while scrolling the 
8291         text widget
8292
8293         * gtk/gtktextview.c, gtk/gtktextview.h:
8294         Rearrange the scrolling/validation/etc. code in a major way, 
8295         so it seems to make sense to me. Probably isn't genuinely that
8296         much better, but...
8297
8298         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
8299         notifies
8300
8301         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
8302
8303 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
8304
8305         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
8306         Hide mouse pointer while rotation. Show it afterwards.
8307
8308 2001-01-12  Alexander Larsson  <alexl@redhat.com>
8309
8310         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
8311         windows in consideration when generating clip region.
8312
8313         * gdk/linux-fb/gdkfb.h:
8314         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
8315
8316         * gdk/linux-fb/gdkprivate-fb.h:
8317         Add shape to GdkWindowFBDatat.
8318         exported gdk_fb_window_get_abs_shape().
8319         removed gdk_fb_draw_lines declaration.
8320
8321         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
8322         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
8323         send focus changes when there is a grabbed window.
8324         (gdk_window_get_pointer): Handle shaped windows.
8325         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
8326         (gdk_fb_window_peek_shape): Returns the shape for a window,
8327         handles GDK_FB_USE_CHILD_SHAPE.
8328         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
8329         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
8330         (gdk_window_shape_combine_mask): Implement.
8331
8332         * gtk/gtkwindow-decorate.c:
8333         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
8334         setting the shape of a window makes the window transparent.
8335
8336 2001-01-11  Havoc Pennington  <hp@redhat.com>
8337
8338         * gtk/gtktreemodelsimple.h: Oops, broke some macros
8339
8340 2001-01-10  Havoc Pennington  <hp@redhat.com>
8341
8342         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
8343         add this function, bug 40251
8344
8345         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
8346         of type macro   
8347
8348 2001-01-11  Alexander Larsson  <alexl@redhat.com>
8349
8350         * acconfig.h:
8351         Added ENABLE_SHADOW_FB
8352
8353         * configure.in:
8354         Added --disable-shadowfb
8355
8356         * gdk/linux-fb/gdkcursor-fb.c:
8357         Update shadowfb when updating cursor
8358
8359         * gdk/linux-fb/gdkdrawable-fb2.c:
8360         Added wrappers for shadowfb that calls  the normal drawable
8361         methods, but calls gdk_shadow_fb_update(bounding box) when
8362         GdkWindows are drawed to.
8363         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
8364         which also returns the bounding box.
8365
8366         * gdk/linux-fb/gdkfb.h:
8367         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
8368
8369         * gdk/linux-fb/gdkgeometry-fb.c:
8370         Update shadowfb when scrolling window.
8371
8372         * gdk/linux-fb/gdkglobals-fb.c:
8373         Add _gdk_fb_screen_angle.
8374         
8375         * gdk/linux-fb/gdkkeyboard-fb.c:
8376         Test code for screen rotation. Shift-F2 in the xlate driver
8377         rotates the screen.
8378
8379         * gdk/linux-fb/gdkmain-fb.c:
8380         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
8381
8382         * gdk/linux-fb/gdkmouse-fb.c:
8383         Use fb_width/height instead of modeinfo.xres/yres.
8384
8385         * gdk/linux-fb/gdkprivate-fb.h:
8386         Added fb_men, fb_width, fb_height & fb_stride. When using
8387         shadow fb these can differ from the framebuffer stuff.
8388         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
8389         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
8390         _gdk_fb_screen_angle. Removed CM, RP.
8391
8392         * gdk/linux-fb/gdkrender-fb.c:
8393         Added code for shadowfb handling and screen rotation using
8394         shadowfb.
8395
8396         * gdk/linux-fb/gdkwindow-fb.c:
8397         Use fb_mem, fb_stride, fb_width, fb_height.
8398         Added recompute_rowstride to reset the rowstride of all windows.
8399         Added gdk_fb_recompute_all() which recomputes rootwindow size,
8400         window abs positions and window rowstrides. Usefull when the
8401         rotation has changed.
8402
8403 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
8404
8405         * docs/faq/gtk-faq.sgml: update to make web site updating easier
8406
8407 2001-01-10  Havoc Pennington  <hp@redhat.com>
8408
8409         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
8410         where sibling == iter
8411         (gtk_tree_store_insert_after): handle sibling == iter
8412         (gtk_tree_store_prepend): remove stamp checks
8413         (gtk_tree_store_insert_before): ditto
8414         (gtk_tree_store_append): ditto
8415         (gtk_tree_store_get_path): ditto
8416         (gtk_tree_store_get_value): ditto
8417         (gtk_tree_store_iter_has_child): ditto
8418         (gtk_tree_store_iter_n_children): ditto
8419         (gtk_tree_store_iter_nth_child): ditto
8420         (gtk_tree_store_insert_after): ditto
8421         (gtk_tree_store_is_ancestor): ditto
8422         (gtk_tree_store_iter_depth): ditto
8423         (gtk_tree_store_insert_before): assert that sibling's parent is
8424         the same as the passed-in parent
8425         (gtk_tree_store_insert_after): assert that sibling's parent is
8426         the same as the passed-in parent
8427
8428         
8429         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
8430         function to get the first iterator in a model
8431         
8432         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
8433         conventionally the "root" in this sense is just NULL afaict.
8434
8435         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
8436         where sibling == iter
8437         (gtk_list_store_insert_after): handle case where sibling == iter
8438
8439         * tests/testtreeview.c (run_automated_tests): fairly lame basic
8440         automated tests for ListStore, TreeStore
8441
8442         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
8443         (gtk_list_store_insert): update tail pointer, and fix it to work
8444         (gtk_list_store_insert_before): update tail pointer, and fix it to work
8445         (gtk_list_store_append): use tail to be faster
8446         (gtk_list_store_prepend): fix it, update tail pointer
8447         (gtk_list_store_insert_after): fix it, update tail pointer
8448
8449         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
8450         the list
8451
8452 2001-01-09  Havoc Pennington  <hp@redhat.com>
8453
8454         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
8455         is NULL due to a pending resize
8456
8457         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
8458         column width to values less than 1
8459
8460         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
8461         width to be between min/max width, and still set the width 
8462         even if autosize is turned on, so the tree view can use this 
8463         function in order to autosize.
8464         (gtk_tree_view_column_init): set initial width to 1 not 0
8465
8466         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
8467         setter function to modify column width, so we get notification
8468         (gtk_tree_view_insert_iter_height): ditto
8469         (gtk_tree_view_calc_size): ditto
8470         (gtk_tree_view_check_dirty): ditto
8471
8472         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
8473         properties to change all the interesting attributes of the tree
8474         view column.
8475         (gtk_tree_view_column_set_header_clickable): rename set_clickable
8476         (gtk_tree_view_column_get_clickable): add
8477         (gtk_tree_view_column_set_cell_renderer): don't unset the current
8478         attributes; assume a cell renderer with equivalent object
8479         properties has been swapped in. Do g_object_notify().
8480         (gtk_tree_view_column_set_visible): g_object_notify
8481         (gtk_tree_view_column_get_sizing): rename from get_col_type
8482         (gtk_tree_view_column_set_sizing): g_object_notify
8483         (gtk_tree_view_column_set_width): add g_object_notify
8484         (gtk_tree_view_column_set_min_width): ditto
8485         (gtk_tree_view_column_set_max_width): ditto
8486         (gtk_tree_view_column_set_title): ditto
8487         (gtk_tree_view_column_set_clickable): ditto
8488         (gtk_tree_view_column_set_widget): ditto
8489         (gtk_tree_view_column_set_justification): ditto
8490
8491 2001-01-09  Havoc Pennington  <hp@redhat.com>
8492
8493         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
8494         there are no rows in the model
8495
8496         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
8497         NULL, then return the start of the list
8498
8499         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
8500         if we can't get any rows from an empty model 
8501
8502         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
8503         extraneous * after function pointer typedef usage
8504
8505         * Makefile.am: don't specify full path to cp and rm
8506
8507         * gtk/gtkcellrenderertextpixbuf.c
8508         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
8509         NULL before dereferencing, fixes a segfault that happened from
8510         time to time
8511
8512         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8513         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
8514         and reindent the function
8515         (gtk_cell_renderer_pixbuf_get_size): indentation
8516
8517         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8518         we quit it
8519         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8520         (gtk_dialog_set_default_response): New function, to set default
8521         button
8522         (gtk_dialog_set_response_sensitive): New function, to set 
8523         sensitivity of buttons
8524
8525         * gtk/gtkcellrendererpixbuf.c
8526         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8527         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8528
8529         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8530         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8531         also boxed types.
8532         (_gtk_tree_data_list_value_to_node): ditto
8533
8534         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8535         --gtk-debug=tree
8536
8537         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8538
8539         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8540
8541 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8542
8543         * gdk/win32/gdkevents-win32.c: Implement better mouse
8544         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8545         (find_window_for_pointer_event): New function.
8546         (gdk_event_translate): Use it when handling mouse events.
8547
8548 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8549
8550         * configure.in:
8551         Added --with-included-loaders option
8552
8553         * gdk-pixbuf/Makefile.am:
8554         * gdk-pixbuf/gdk-pixbuf-io.c:
8555         Add support for including selected gdk-pixbuf loaders only.
8556
8557         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
8558         gtk_window_set_has_frame):
8559         Added inline documentation.
8560
8561         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
8562         * docs/reference/gdk/tmpl/windows.sgml:
8563         Added inline documentation.
8564
8565 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
8566
8567         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
8568         realizing buttons that have already been realized.
8569
8570 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
8571
8572         * tests/testtreeview.c (main): Show menu items before adding to
8573         option menu.
8574
8575         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
8576         around if we kill them.
8577
8578         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8579         Return if we pass in a NULL model.
8580
8581 2001-01-08  Havoc Pennington  <hp@redhat.com>
8582
8583         * tests/testtreeview.c: hack on this some
8584
8585         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
8586         gtk_tree_store_set_valist, v is for arrays, valist for varargs
8587         list
8588         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
8589
8590         * gtk/gtkliststore.h: Add varargs set() and get() convenience
8591         functions
8592
8593 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8594
8595         * gtk/gtkwindow-decorate.[hc]:
8596         * gtk/Makefile.am:
8597         New files. Contains an implementation of a minimal WM for
8598         linux-fb.
8599
8600         * gtk/gtkwindow.h:
8601         Add the possibility for GtkWindows to specify a frame. This
8602         is used for the window decoration code, but could concievably
8603         be used for X programs too (xmms style windows).
8604         GtkWindow->frame is the toplevel window if the window is framed.
8605         The signal frame_event gets all events that are targeted to
8606         GtkWindow->frame.
8607         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
8608         
8609         * gtk/gtkwindow.c:
8610         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
8611         Call out to gtkwindow-decorate.c for WM support in linx-fb.
8612
8613 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8614
8615         * docs/README.linux-fb:
8616         Correct filename ~/.pangoft2_aliases
8617
8618         * gdk/gdkwindow.h:
8619         Added new function gdk_window_get_decorations.
8620
8621         * gdk/linux-fb/gdkfb.h:
8622         Removed _gdk_window_get_decorations declaration.
8623         Renamed _gdk_window_set_child_handler to
8624         gdk_fb_window_set_child_handler.
8625
8626         * gdk/linux-fb/gdkwindow-fb.c:
8627         Renamed _gdk_window_set_child_handler to
8628         gdk_fb_window_set_child_handler.
8629
8630         * gdk/x11/gdkwindow-x11.c:
8631         New function gdk_window_get_mwm_hints().
8632         Implemented gdk_window_get_decorations.
8633
8634         * docs/reference/gdk/tmpl/windows.sgml:
8635         * docs/reference/gdk/gdk-sections.txt:
8636         Added gdk_window_get_decorations docs.
8637         
8638 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
8639
8640         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
8641         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
8642         gdk_fb_window_send_crossing_events):
8643         Possibly send focus events when the mouse moves from one
8644         window to another.
8645
8646 2001-01-07  Tor Lillqvist  <tml@iki.fi>
8647
8648         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
8649         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
8650         to match current API.
8651
8652         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
8653         environment variable is set, don't call g_error when on a
8654         palettized (PseudoColor) display. Some people want to use GTK+ 
8655         in 256-colour mode even though works only partially.
8656
8657         * gdk/gdk.def
8658         * gtk/gtk.def
8659         * gtk/makefile.mingw.in: Update.
8660
8661 2001-01-05  Havoc Pennington  <hp@redhat.com>
8662
8663         * tests/testtreeview.c: hack on this a bit
8664
8665         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
8666         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
8667
8668         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
8669         was spelled incorrectly
8670         (GTK_IS_TREE_MODEL_SIMPLE): ditto
8671
8672         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
8673         from gtk_tree_view_set_headers_active   
8674
8675         * gtk/gtktexttag.c:
8676         (gtk_text_tag_get_property): handle PROP_DIRECTION
8677         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
8678         properties, bug 40235
8679
8680         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
8681         forward_to_line_end
8682
8683 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
8684
8685         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
8686         modules/input/gtkimcontextxim.c: Adapt to new prototypes
8687         for unicode,locale,filename conversion functions.
8688
8689 2001-01-05  Havoc Pennington  <hp@redhat.com>
8690
8691         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
8692         broken if called on the first position in the buffer.
8693
8694         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
8695         forward_to_delimiters to be called only if we aren't already at
8696         the delimiters.
8697
8698 2001-01-05  Havoc Pennington  <hp@redhat.com>
8699
8700         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
8701
8702 2001-01-05  Alexander Larsson  <alexl@redhat.com>
8703
8704         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
8705         colormap in here. Sync from X port.
8706         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
8707         Sync from X port.
8708         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
8709         This happens now and then, and i don't think it is a bug.
8710         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
8711         != endpoint.
8712         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
8713         GDK_LINE_SOLID.
8714
8715         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
8716         some of the fields filled in at least.
8717
8718         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
8719         miLineArcD is no more, remove it from the function definition.
8720
8721 2001-01-04  Havoc Pennington  <hp@redhat.com>
8722
8723         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
8724         this
8725
8726         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
8727         user_data instead of tree_node
8728
8729         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
8730         TREE_VIEW_COLUMN_SIZE
8731
8732         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
8733         "size" field to "width" finishes bug 40061
8734
8735         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
8736         for bitfields, bug 40268
8737
8738 2001-01-04  Havoc Pennington  <hp@redhat.com>
8739
8740         Rename some stuff:
8741         
8742         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
8743
8744         s/GtkModelSimple/GtkTreeModelSimple/g;
8745         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
8746         s/gtk_model_simple/gtk_tree_model_simple/g;
8747         s/gtkmodelsimple/gtktreemodelsimple/g;
8748
8749         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
8750
8751         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
8752         s/column_set_col_type/column_set_sizing/g;
8753
8754         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
8755         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
8756
8757         s/GtkCellRendererType/GtkCellRendererState/g;
8758         
8759         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
8760         (gtk_cell_renderer_toggle_class_init): change "state" property to
8761         "active", to match GtkToggleButton
8762         (gtk_cell_renderer_toggle_get_active): new function, bug
8763         40269
8764         (gtk_cell_renderer_toggle_set_active): new function
8765         (gtk_cell_renderer_toggle_set_property): route changes to toggle
8766         state through gtk_cell_renderer_set_active
8767
8768 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8769
8770         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8771         temporarily until they work again.  Brought up to date with
8772         changes in the model.
8773         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8774         model.
8775
8776 2001-01-04  Havoc Pennington  <hp@redhat.com>
8777
8778         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8779         equal to the line length, then position iterator before paragraph 
8780         separators. Fixes crash reported by Mikael Hermansson when
8781         pressing left arrow from the start of a line.   
8782
8783         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8784         about byte indexes off the end
8785         (iter_set_from_char_offset): add g_error about char offsets
8786         off the end
8787
8788 2001-01-03  Havoc Pennington  <hp@redhat.com>
8789
8790         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8791
8792         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8793         of private functions; remove inclusion of private headers.
8794
8795         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8796         function, so we don't need private functions in gtktextdisplay.c
8797
8798         * gtk/gtktextiterprivate.h: underscore-ification
8799
8800         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8801         to instead say "only useful to implement widgets"
8802
8803         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8804         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8805         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8806
8807         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8808         This function was completely broken
8809
8810         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8811
8812         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8813
8814         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8815
8816         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8817
8818         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8819
8820         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8821
8822         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8823         gtk_paint_layout
8824
8825         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8826         gtk_paint_layout
8827
8828         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8829         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8830         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8831         which were not implemented.     
8832
8833         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8834         insert_pixbuf signal. Rename delete_text to delete_range since it
8835         also deletes pixbufs and child anchors. This almost closes bug
8836         40245 (still need to deal with child anchors)
8837
8838         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8839         insert_pixbuf, change signal names as appropriate, change types of
8840         signals taking marks/tags to have the specific type, not just
8841         G_TYPE_OBJECT
8842         
8843         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8844         closes bug 40051
8845
8846         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8847         unnecessary remove_contents() call
8848         (gtk_option_menu_class_init): add a "changed" signal, closes
8849         bug 40039
8850         (gtk_option_menu_update_contents): emit "changed" if the 
8851         active menu item changes
8852
8853         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8854         cast to GtkObject, reported by Jonas Borgstrom
8855         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8856         we can't do stuff with side effects in finalize. Instead, spew a
8857         warning if the loader isn't closed.
8858
8859         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8860         colormap in here, non-X ports probably need to sync to this change
8861
8862         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8863         assertion that colormap != NULL, you can set the colormap to NULL
8864         if you like.
8865         
8866         * Makefile.am: remove gtk-config-2.0
8867
8868         * configure.in: Use pkg-config to locate GLib. Remove
8869         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8870         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8871         Use pkg-config to locate Pango. Output correct Pango libs to
8872         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8873
8874         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8875         files
8876         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8877         X11 pc files
8878
8879         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8880         unref from here
8881
8882 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8883
8884         * configure.in:
8885         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8886
8887 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8888
8889         * gtk/gtktextlayout.c
8890         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8891         variable when moving back onto a single line.
8892
8893 2001-01-01  Havoc Pennington  <hp@redhat.com>
8894
8895         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8896
8897         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8898
8899         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8900         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8901
8902 2001-01-01  Havoc Pennington  <hp@redhat.com>
8903
8904         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8905
8906         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8907         GtkTextAttributes
8908
8909         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8910         #40246
8911         (gtk_text_attributes_copy_values): rename from 
8912         gtk_text_attributes_copy
8913         (gtk_text_attributes_copy): a more standard GTK copy function, 
8914         which returns a new object
8915
8916 2001-01-01  Havoc Pennington  <hp@redhat.com>
8917
8918         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8919         
8920         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8921         don't fill in tree_view->priv->selection, kind of an unexpected
8922         side effect
8923
8924         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8925         gtkintl.h
8926         
8927         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8928         gtkintl.h
8929         (gtk_cell_renderer_get_property): remove calls to g_value_init
8930
8931         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8932         gtkintl.h
8933
8934         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8935         and include gtkintl.h
8936         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8937         property names
8938
8939         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8940         GtkTreeSelection
8941         (_gtk_tree_selection_new_from_with_view): rename, return
8942         GtkTreeSelection
8943         (_gtk_tree_selection_set_tree_view): rename with uscore
8944         (gtk_tree_selection_get_selected): fill in the "model" out param
8945         first, so it gets filled in even if we return at the top of the 
8946         function
8947         (gtk_tree_selection_real_select_all): add a comment and an else{}
8948         to clarify this a bit
8949         (gtk_tree_selection_real_unselect_all): add the same else{}
8950
8951         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8952         set_tree_view to have underscore prefixes, move them to the
8953         private header, fix return type of new_with_tree_view
8954         (struct _GtkTreeSelection): mark struct
8955         fields private  
8956
8957         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8958         GtkTreeModelFlags, not a guint
8959         (gtk_tree_path_prev): return gboolean not gint
8960         (gtk_tree_path_up): return gboolean not gint
8961
8962         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8963         return GtkTreeModelFlags, not a guint
8964
8965         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8966         that child model is non-null before unrefing it
8967         (g_value_int_compare_func): make this a qsort compare func, not 
8968         a boolean predicate
8969
8970         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8971         (add -umn to the end), and mark it unimplemented
8972         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8973         I don't see what it's for - doesn't the model always sort itself?
8974         (gtk_tree_model_sort_set_compare): this had the wrong signature
8975
8976         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8977         Fix the docs to say that it destructively replaces existing
8978         attributes (previously said that it added attributes).
8979         (gtk_tree_view_column_set_visible): canonicalize bool before
8980         equality testing. Also, check for realization before
8981         hiding/showing the tree_column->window; if this window could exist
8982         before realization, then it's busted and needs fixing, we can't 
8983         create GDK resources pre-realization. Also, remove
8984         superfluous queue_resize(), since set_size() does that for us.
8985         (gtk_tree_view_column_set_col_type): check realization before 
8986         using tree_column->window
8987
8988         * gtk/gtktreedatalist.c: fix filename in copyright notice
8989
8990 2000-12-31  Havoc Pennington  <hp@pobox.com>
8991
8992         * gtk/gtktextview.c: Rearrange all the
8993         scroll-while-dragging-or-selecting code to be different, not
8994         necessarily better. ;-)
8995         (gtk_text_view_scroll_to_mark): Change this
8996         function to take within_margin as a fraction instead of a pixel
8997         value, and to take alignment arguments (indicating where to align 
8998         the mark inside the visible area)
8999         
9000         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
9001         to GtkObject
9002
9003         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
9004         behavior so that offsets past the end of the line are not 
9005         allowed, and an offset equal to the line length moves the iterator
9006         to the next line
9007         (gtk_text_iter_set_line_index): make parallel change
9008         (gtk_text_iter_get_bytes_in_line): add this function
9009         
9010         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
9011         of byte indexes off the end of the line; byte index at the end of
9012         the line now returns FALSE and doesn't fill in the requested
9013         values, byte index past the end of the line is an error.  Also,
9014         don't allow -1 offset anymore, since its meaning is unclear.
9015
9016         This change exposes some bug in visual cursor motion, where we
9017         end up with a huge invalid byte index; needs fixing. Symptom of 
9018         bug is a crash when you hit up arrow.
9019         
9020         (_gtk_text_line_char_locate): match the change to byte_locate
9021
9022         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
9023         from start of line properly. fixes bug reported by Mikael
9024         Hermansson where backspace would delete all text before the
9025         cursor.
9026
9027 2000-12-30  Tor Lillqvist  <tml@iki.fi>
9028
9029         * gdk/win32/gdkwindow-win32.c
9030         (gdk_window_impl_win32_get_visible_region): New function, as in
9031         the X11 backend.
9032         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
9033         instead of duplicating the same code here.
9034
9035         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
9036         GDK_COLORMAP macro.
9037
9038         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
9039         destroy function.
9040         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
9041         access that.
9042
9043         * gtk/gtk.def: Update.
9044
9045         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
9046
9047 2000-12-30  Havoc Pennington  <hp@pobox.com>
9048
9049         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
9050         colormap on input only windows, to avoid special cases all over
9051         the code for these windows.
9052
9053 2000-12-26  Tor Lillqvist  <tml@iki.fi>
9054
9055         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
9056         we are on a palettized display ("PseudoColor" in X11), as the code
9057         for that doesn't work anyway, and never has.
9058
9059 2000-12-22  Alexander Larsson  <alexl@redhat.com>
9060
9061         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
9062         Don't use isprint() for chars > 255.
9063
9064 2000-12-21  Havoc Pennington  <hp@redhat.com>
9065
9066         * tests/testtreeview.c: more work
9067
9068 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9069
9070         * docs/README.linux-fb:
9071         Update the docs to the new pangoft2 way.
9072
9073 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9074
9075         * configure.in:
9076         For linux-fb get the pangoft2 cflags and libs. This needs a recent
9077         pango version.
9078         Remove modules/linux-fb/Makefile.
9079
9080         * gdk/linux-fb/gdkdrawable-fb2.c:
9081         Render glyphs using freetype.
9082
9083         * gdk/linux-fb/gdkfb.h:
9084         Add new fb-specific functions needed for managing windows.
9085
9086         * gdk/linux-fb/gdkmain-fb.c:
9087         Remove gdk_font_init/fini() calls.
9088
9089         * gdk/linux-fb/gdkpango-fb.c:
9090         Remove old implementation. Use pangoft2 instead.
9091
9092         * gdk/linux-fb/gdkprivate-fb.h:
9093         Remove PangoFBFont and related stuff.
9094
9095         * gdk/linux-fb/gdkwindow-fb.c:
9096         Implement drawable->get_visible_region.
9097         Implement support for _gdk_window_set_child_handler () and
9098         _gdk_window_get_decorations().
9099
9100         * modules/Makefile.am:
9101         Remove linux-fb subdir.
9102
9103         * modules/linux-fb/*:
9104         Removed all.
9105         
9106 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
9107
9108         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
9109         calls, as they are no longer needed.
9110
9111         * gtk/gtktreemodelsort.c: Fix up the comparison code.
9112         
9113         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
9114         figure out how to emit a signal on an interface.
9115
9116 2000-12-20  Havoc Pennington  <hp@redhat.com>
9117
9118         * tests: new directory to contain tests, gtk/test* should move
9119         here sometime (with appropriate on-cvs-server hackery)
9120
9121         * tests/testtreeview.c, tests/Makefile.am: a test
9122         
9123         * configure.in (AC_OUTPUT): add tests/Makefile
9124
9125         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
9126         and "invisible_set" which were missing
9127
9128         * gtk/gtkrbtree.h: some cheesy indentation fix
9129         
9130 2000-12-20  Alexander Larsson  <alexl@redhat.com>
9131
9132         * gtk/gtkinvisible.c (gtk_invisible_realize):
9133         Attach the style to the window so that the style it is not
9134         leaked when unrealizing the window.
9135
9136 2000-12-18  Havoc Pennington  <hp@redhat.com>
9137
9138         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
9139         begin/end user action where appropriate
9140         (gtk_text_view_commit_handler): add begin/end user action
9141
9142         * gtk/gtktextbuffer.c: add begin/end user action signals, and
9143         bracket interactive operations with begin/end user action pair.
9144         
9145         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
9146         "interactive" arg from insert_text and delete_text signals.
9147         Add begin_user_action, end_user_action signals
9148         (gtk_text_buffer_begin_user_action): 
9149         (gtk_text_buffer_end_user_action): New functions to delimit 
9150         a user-visible action
9151
9152         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
9153         signals.
9154         
9155 2000-12-18  Havoc Pennington  <hp@redhat.com>
9156
9157         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
9158         was pretty non-working.
9159
9160         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
9161         by passing the length to g_utf8_validate().
9162
9163 2000-12-16  Havoc Pennington  <hp@pobox.com>
9164
9165         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
9166         Port to GObject, can go back in gdk-pixbuf after setting up 
9167         a gdk-pixbuf-marshal.h header over there.
9168
9169         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
9170         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
9171         args
9172         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
9173         set
9174         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
9175         here, do it when we create the buttons later
9176         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
9177         (gtk_tree_view_map): paranoia checks that column->button is shown 
9178         and unmapped
9179         (gtk_tree_view_size_request): only request visible children.
9180         Move header size calculation in here, for cleanliness, and 
9181         to maintain invariants for child widgets if we eventually 
9182         let users set different children inside the buttons
9183         (gtk_tree_view_map_buttons): factor out code to map buttons,
9184         since it was being called several times
9185         (gtk_tree_view_size_allocate_buttons): move_resize the drag
9186         windows instead of just moving them; their height may change 
9187         if we allow random widgets in there, or the theme changes.
9188         (gtk_tree_view_size_allocate): move button size allocation 
9189         above emitting the scroll signals, to ensure a sane state when we
9190         hit user code
9191         (gtk_tree_view_button_release): remove queue_resize after
9192         tree_view_set_size(), set_size() will handle any resize queuing
9193         that's needed
9194         (gtk_tree_view_focus_in): just queue a draw, don't fool with
9195         draw_focus goo
9196         (gtk_tree_view_focus): use gtk_get_current_event() and
9197         gdk_event_get_state()
9198         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
9199         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
9200         semicolon
9201         (gtk_tree_view_create_button): show the button here
9202         (gtk_tree_view_button_clicked): actually emit the clicked signal
9203         on the column
9204         (_gtk_tree_view_set_size): return right away if the size is
9205         unchanged, as a cheesy optimization
9206         (gtk_tree_view_setup_model): rename set_model_realized to 
9207         setup_model to match the flag that indicates whether we've 
9208         called it
9209         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
9210         exist, because set_scroll_adjustment does that and it shouldn't
9211         matter what order you call these in
9212         (gtk_tree_view_get_vadjustment): ditto
9213         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
9214         for paranoia
9215         (gtk_tree_view_set_headers_visible): call
9216         gtk_tree_view_map_buttons() instead of using cut-and-paste code
9217         (gtk_tree_view_append_column): clarify whether the return value
9218         is the count of columns before or after, and do the increment 
9219         separately from the return statement so you can tell from the code.
9220         (gtk_tree_view_remove_column): ditto
9221         (gtk_tree_view_insert_column): ditto
9222         (gtk_tree_view_get_column): remove g_return_if_fail for columns
9223         outside the existing range, the docs say that outside-range
9224         columns are allowed, so we handle them as documented. (Presumably
9225         this allows a nice loop with column != NULL as test.)
9226         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
9227         mean (left/right/center etc.).
9228         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
9229         (gtk_tree_view_expand_row): add docs
9230         (gtk_tree_view_collapse_row): add docs
9231
9232         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
9233         function to emit the clicked signal on a column
9234         
9235         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
9236         state of an event
9237         (gdk_event_get_time): don't treat GDK_SCROLL 
9238         as a button event, remove default case from switch so gcc 
9239         will whine if we don't explicitly handle all event types
9240
9241         * gtk/gtktreeselection.h: added some FIXME 
9242         
9243         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
9244         "columns" to "n_columns" and "column" to "columns" for clarity
9245
9246 2000-12-16  Havoc Pennington  <hp@pobox.com>
9247         
9248         * gtk/gtktextiter.c: General cleanup of the log attr iteration
9249         stuff. This should make e.g. the delete key work again in the
9250         text widget...
9251         (gtk_text_iter_forward_cursor_positions): handle negative count
9252         (gtk_text_iter_backward_cursor_positions): handle negative count
9253         (gtk_text_iter_forward_word_ends): handle negative count
9254         (gtk_text_iter_backward_word_starts): handle negative count
9255
9256         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
9257         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
9258         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
9259         GObject. No doubt will cause breakage.
9260
9261         * demos/gtk-demo/textview.c: remove hacks around
9262         non-GObject-ification of the text objects
9263
9264         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
9265         the text tag
9266         
9267 2000-12-14  Havoc Pennington  <hp@pobox.com>
9268
9269         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
9270         that we have Xrender
9271
9272 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
9273
9274         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
9275         Add two virtualized functions gdk_drawable_get_clip_region - to
9276         get the clip region when drawing.
9277         
9278         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
9279         use invalidate_region.
9280
9281         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
9282         region.
9283
9284         * acconfig.h configure.in: Check for Xft. For now, assume
9285         that if Xft is found, Pango was compiled with Xft support
9286         as well.
9287
9288         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
9289         gdk_colormap_query_color().
9290         
9291         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
9292         with Xft if appropriate.
9293
9294         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
9295         a pangoxft context if we have XFT and the environment
9296         variable GD_USE_XFT is set.
9297         
9298         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
9299         and also possibly an XftDraw structure.
9300
9301         * gtk/gtkfontsel.c: Handle the case where the font from the
9302         style doesn't match any of the fonts a bit better.
9303         
9304         * gtk/testgtk.c: Add tabs between directional segments for
9305         hebrew/arabic test. (Not really necessary, just a little
9306         prettier.)
9307
9308 2000-12-14  Havoc Pennington  <hp@redhat.com>
9309
9310         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
9311         reading a file
9312
9313 2000-12-14  Havoc Pennington  <hp@redhat.com>
9314
9315         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
9316         unused call to get_last_line()
9317
9318         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
9319         here until boxed is working (and maybe after that - we should
9320         really not gratuitously break old code)
9321
9322         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
9323         specific types for font_desc and tabs args, move them to
9324         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
9325         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
9326
9327         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
9328         use GTK_TYPE_POINTER for signal signatures as a hack-around
9329
9330         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
9331         PangoTabArray
9332
9333         * gtk/gtktextlayout.c (line_display_iter_to_index): 
9334         make static
9335         (line_display_index_to_iter): make static
9336
9337         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9338         to marshal a string not a boxed
9339
9340         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
9341
9342         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
9343         since the UTF-8 isn't validated yet
9344
9345         * gtk/gtktextsegment.c (char_segment_check_func): don't require
9346         lines to end in '\n'
9347         
9348         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
9349         forward_to_delimiters, and grapheme boundaries
9350         (gtk_text_view_delete_from_cursor): properly handle non-newline
9351         delimiters, and grapheme boundaries
9352
9353         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
9354         to gtk_text_iter_forward_to_delimiters, and make it work properly
9355         if empty lines end with a character other than '\n'
9356
9357         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
9358         position
9359
9360 2000-12-15  Tor Lillqvist  <tml@iki.fi>
9361
9362         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
9363
9364         * gtk/gtk.def
9365         * gdk/gdk.def: Update.
9366
9367         * gdk/win32/gdkmain-win32.c
9368         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
9369         gdkmain-win32.c here.
9370
9371         * gdk/win32/makefile.mingw.in (all): No need to make
9372         gdk-win32res.o here, the makefile one step up will call us to make
9373         it.
9374
9375         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
9376         gdkkeys-win32.
9377
9378         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
9379
9380         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
9381         call to g_source_add().
9382
9383         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
9384         leak. Thanks to Andreas Kemnade.
9385
9386 2000-12-13  Havoc Pennington  <hp@pobox.com>
9387
9388         * gtk/gtktextbtree.h: Remove double _ in front of some functions
9389
9390         * gtk/gtktext*.[hc]: update accordingly
9391         
9392 2000-12-13  Havoc Pennington  <hp@pobox.com>
9393
9394         * gtk/gtktextbtree.h: Put _ in front of every function in this 
9395         header file
9396
9397         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
9398
9399 2000-12-13  Alex Larsson  <alexl@redhat.com>
9400
9401         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
9402         Add support for ps2 intellimouse.
9403
9404         * gdkkeyboard-fb.c:
9405         Move shift-F1 repaint handling to xlate handler only.
9406         
9407         * docs/README.linux-fb:
9408         Add imps2 to docs.
9409         Document the new refresh keys.
9410         
9411 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
9412
9413         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
9414
9415         * gtk/gtkbox.c: change property types from (u)long to (u)int for
9416         ::position and ::padding.
9417
9418         * gtk/gtkcontainer.c: make ::border_width an INT property.
9419
9420         * gtk/gtkpacker.c: make ::position an INT property.
9421
9422         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
9423         guard against NULL h/v scrollbars, since this is used at construction
9424         time.
9425
9426         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
9427         internal gtk_clist_constructor().
9428
9429         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
9430         gtk_ctree_constructor().
9431
9432         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
9433         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
9434
9435         * docs/reference/Makefile.am: fun stuff, disabled docs generation
9436         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
9437
9438         * gtk/gtkwidget.[hc]:
9439         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
9440         and gtk_widget_get().
9441         (gtk_widget_new): use g_object_new_valist().
9442         (gtk_widget_set): use g_object_set_valist().
9443
9444         * gtk/gtkobject.[hc]:
9445         removed gtk_object_arg_get_info(), gtk_object_getv(),
9446         gtk_object_query_args(), gtk_object_newv(),
9447         gtk_object_class_add_signals(),
9448         gtk_object_class_user_signal_new(),
9449         gtk_object_class_user_signal_newv(),
9450         gtk_object_arg_set(), gtk_object_arg_get(),
9451         gtk_object_args_collect(),
9452         gtk_object_default_construct(),
9453         gtk_object_constructed(),
9454         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
9455         removed nsignals, signals and n_args members from GtkObjectClass.
9456         (gtk_object_new): use g_object_new_valist().
9457         (gtk_object_set): use g_object_set_valist().
9458         (gtk_object_get): use g_object_get_valist().
9459         
9460         * gtk/gtkcompat.h: define gtk_object_default_construct().
9461         
9462         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
9463         g_object_new().
9464
9465         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
9466         fucntions, cleaned up method assignments (make sure your structures
9467         are setup properly before calling out). removed all GTK_CONSTRUCTED
9468         hacks ;)
9469
9470 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
9471
9472         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
9473         off-by-one error in checks. (Dave Lambert)
9474
9475 2000-12-12  Alexander Larsson  <alexl@redhat.com>
9476
9477         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
9478         Don't free gdk_fb_keyboard twice.
9479
9480 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
9481
9482         * gtk/testgtk.c:
9483         (create_tooltips): 
9484         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
9485         use GObject swapped_signal:: properties instead.
9486
9487         * gtk/gtkcellrenderertoggle.c: 
9488         * gtk/gtkcellrenderertextpixbuf.c: 
9489         * gtk/gtkcellrenderertext.c: 
9490         * gtk/gtkcellrendererpixbuf.c: 
9491         * gtk/gtkcellrenderer.c:
9492         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
9493         missing warnings for invalid property ids, install properties
9494         with g_object_class_install_property() now.
9495         
9496         * gtk/gtksignal.c:
9497         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
9498         
9499 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
9500         
9501         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
9502         to determine if a window is the focus widget within
9503         its toplevel.
9504
9505         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
9506         to be boolean.
9507
9508         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
9509         of the case where the container CAN_FOCUS to here instead
9510         of having it in each individual move-the-focus place.
9511
9512         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
9513         focusing to be geometric in a much more obvious sense. Arrowing
9514         around is still non-intuitive because it isn't perfect and
9515         because entries, etc, grab the arrow keys, but it at least
9516         usually will do what you expect now.
9517         
9518         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9519         file.
9520
9521         * gtk/gtknotebook.c: Change tabs to be a single item in
9522         the focus chain. Make movement of focus on tabs with arrow
9523         keys wrap around.
9524         
9525         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9526         CHECK_FIND_CHILD macro to give informative error messages
9527         instead of silent returns.
9528
9529         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9530         flag since we handle GdkReturn on the tabs.
9531
9532         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9533         windows rather than sending expose events directly.
9534
9535         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9536         definition for GtkNotebookPage into .c file, since it is private.
9537
9538         * gtk/testgtk.c (create_notebook): Add option for 
9539         testing borderless notebook.
9540
9541         * gtk/testgtk.c (page_switch): Removed egregious poking
9542         around in GTK+ internals.
9543
9544         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9545
9546         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9547         properly through gtk_clist_focus. Make the title headers a
9548         single item in the tab-focus chain, and make left-right wrap
9549         around.
9550
9551         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9552         focus method so that wrapping around works properly.
9553
9554         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9555         that is handled for the widget now. 
9556
9557 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
9558
9559         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
9560         widgets as TOPLEVEL.
9561
9562         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
9563         TOPLEVEL widgets are containers.
9564
9565         * gtk/gtkinvisible.h: Remove useless include.
9566
9567 2000-12-11  Havoc Pennington  <hp@redhat.com>
9568
9569         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
9570         Handle chopping off \r\n and 0x2029 in addition to \n before
9571         passing to PangoLayout
9572
9573         * gtk/gtkimcontextsimple.c
9574         (gtk_im_context_simple_get_preedit_string): 
9575         return an empty string if no match is pending
9576
9577         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
9578         assertion that the returned preedit string was sane
9579
9580         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
9581         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
9582         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
9583
9584 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
9585
9586         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
9587         Fix up finalizer to chain to its parent.
9588
9589 2000-12-11  Alexander Larsson  <alexl@redhat.com>
9590
9591         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
9592         Clearified the difference between the keyboard types. Wrote a note
9593         about the magic sysrq key to get out of raw mode.
9594
9595 2000-12-09  James Henstridge  <james@daa.com.au>
9596
9597         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
9598         member to hold masks for detecting the start of a protocol packet.
9599         (mouse_devs): add packet start masks for ps2 and ms device types.
9600         Left the mask for fidmour blank, as I have no idea what it should
9601         be.
9602         (handle_mouse_io): skip bytes until we get to the start of a
9603         packet.  My Logitech mouse seems to be passing an extra NULL pad
9604         byte, and GPM does a similar thing here.
9605         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
9606         this is the ms mouse driver.
9607         (gdk_fb_mouse_ms_packet): fix up button handling, which was
9608         completely broken except for button1.  It was checking the wrong
9609         bit in the packet for the status of the right mouse button, and
9610         wrongly assuming right == button2 rather than 3.  I fixed that and
9611         also added support for middle button (button2).
9612
9613 2000-12-08  Havoc Pennington  <hp@redhat.com>
9614
9615         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
9616         that cause a segfault on text insertion
9617
9618         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
9619         warning
9620
9621         * gtk/gtktextiter.c (test_log_attrs): use
9622         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
9623
9624         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
9625         Get log attrs for a line, using a cache stored on the buffer
9626         
9627         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
9628         reported by Jeff Franks
9629
9630 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9631
9632         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
9633         /dev/ttyS0 -> /dev/mouse
9634
9635 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9636
9637         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
9638         Added dummy gdk_fontset_load.
9639
9640 2000-12-08  Alexander Larsson  <alexl@redhat.com>
9641
9642         * docs/README.linux-fb:
9643         * docs/Makefile.am:
9644         Initial GtkFB docs.
9645         
9646         * gdk/linux-fb/Makefile.am:
9647         Define GDK_DATA_PREFIX.
9648
9649         * gdk/linux-fb/gdkmain-fb.c:
9650         Fix typo.
9651         Change default display to /dev/fb0.
9652
9653         * gdk/linux-fb/gdkpango-fb.c:
9654         Add $(prefix)/share/fonts/ to font path.
9655         
9656 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9657
9658         * gdk/linux-fb/gdkkeyboard-fb.c:
9659         New file containing the abstracted keyboard driver. Most code
9660         taken from gdkinput-ps2.c
9661
9662         * gdk/linux-fb/gdkinput-ps2.c:
9663         Removed file.
9664         
9665         * gdk/linux-fb/Makefile.am:
9666         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
9667
9668         * gdk/linux-fb/gdkcolor-fb.c:
9669         display->fb was renamed to display->fb_fd.
9670
9671         * gdk/linux-fb/gdkcursor-fb.c:
9672         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9673
9674         * gdk/linux-fb/gdkinput.c:
9675         Moved gdk_input_init here from gdkinput-ps2.c
9676
9677         * gdk/linux-fb/gdkmain-fb.c:
9678         display->fb was renamed to display->fb_fd.
9679         Now the tty and the console is opened here instead
9680         of in the keyboard driver. Also check GDK_VT to see what
9681         tty to open.
9682         Move gdk_beep () here from gdkinput-ps2.c
9683         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9684
9685         * gdk/linux-fb/gdkmouse-fb.c:
9686         Add header.
9687         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9688         Return correct keyboard modifiers.
9689         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
9690
9691         * gdk/linux-fb/gdkprivate-fb.h:
9692         Add tty and vt info to display.
9693         Add orignal modeinfo storage to display
9694         Update global functions
9695
9696         * gdk/linux-fb/gdkwindow-fb.c:
9697         Added gdk_fb_window_find_focus().
9698         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9699
9700 2000-12-07  Havoc Pennington  <hp@pobox.com>
9701
9702         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
9703         function, noticed by Alex
9704
9705 2000-12-06  Elliot Lee  <sopwith@redhat.com>
9706
9707         * configure.in: Detect freetype properly
9708
9709         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
9710         above.
9711
9712 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9713
9714         * gdk/linux-fb/Makefile.am:
9715         Add gdkmouse-fb.c
9716         
9717         * gdk/linux-fb/gdkmouse-fb.c:
9718         New file. Abstracted the mouse drivers a bit.
9719
9720         * gdk/linux-fb/gdkcursor-fb.c:
9721         The cursor hide/show functions was moved here from gdkinput-ps2.c.
9722
9723         * gdk/linux-fb/gdkinput-ps2.c:
9724         Removed old mouse handling code. Moved cursor handling code
9725         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
9726         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
9727         gdk_mouse_get_info.
9728
9729         * gdk/linux-fb/gdkmain-fb.c:
9730         Pass NULL pointers for x,y in gdk_mouse_get_info call.
9731
9732         * gdk/linux-fb/gdkprivate-fb.h:
9733         Removed public gdk_fb_find_common_ancestor, added and renamed
9734         functions for the new mouse handling code.
9735
9736         * gdk/linux-fb/gdkwindow-fb.c:
9737         Moved gdk_fb_window_send_crossing_events here. added global
9738         variable gdk_fb_window_containing_pointer. made
9739         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
9740         renamed to gdk_mouse_get_info.
9741
9742 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9743
9744         * gdk/linux-fb/gdkevents-fb.c:
9745         Update to match latest gmain/gsource changes.
9746
9747         * gdk/linux-fb/gdkinput-ps2.c:
9748         Bogus gdk_keymap_get_entries_for_keycode implementation so that
9749         it links. Will be implemented later.
9750
9751 2000-12-03  Havoc Pennington  <hp@pobox.com>
9752
9753         * gdk/Makefile.am: add gdkkeys.[hc]
9754
9755         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
9756         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
9757
9758         * acconfig.h, configure.in: add checks and command line options
9759         for XKB
9760
9761         * gdk/x11/gdkkeys-x11.c: Implement the above functions
9762         
9763         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
9764         and group in the key event
9765
9766         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
9767         field with the low-level hardware key code, and a group
9768         field with the keyboard group
9769
9770         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9771         and declare a couple globals used for keymap handling
9772         
9773         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9774         hold down Shift-Control and type a hex number to get a Unicode 
9775         character corresponding to the hex number
9776         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9777         (return bytes not chars)
9778
9779 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9780
9781         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9782         to avoid waste on 64-bit platforms.
9783
9784 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9785
9786         * INSTALL: Fix link to PNG home, remove reference
9787         to fribidi.
9788
9789         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9790         
9791         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9792         tested.)
9793
9794         * gtk/gtkcheckmenuitem.c: Permanently turn on
9795         always_show_toggle.
9796
9797         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9798         be NULL. (Vladimir Klebanov, #26545)
9799
9800         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9801         some signed/unsigned comparison problems. (#6510,
9802         David Kaelbling)
9803
9804         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9805         return type to boolean (Oskar Liljeblad, #18648)
9806
9807 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9808
9809         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9810         Remove bogus colormap setting.
9811
9812 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9813
9814         * gdk/linux-fb/gdkcolor-fb.c:
9815         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9816
9817         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9818         Must set colormap.
9819         
9820 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9821
9822         * docs/tutorial/gtk-tut.sgml: DND updates
9823
9824 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9825
9826         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9827         Remove old debug g_warning().
9828         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9829         or an implementation, just pass the implementation to draw_drawable_2.
9830         
9831         * gdk/linux-fb/gdkprivate-fb.h:
9832         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9833
9834         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9835         clear and invalidate area when window is destroyed.
9836         (send_map_events): Remove old commented out code.
9837
9838 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9839
9840         * gdk/linux-fb/gdkpango-fb.c:
9841         Use italic instead of oblique in font aliases.
9842         
9843         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9844         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9845         other unsupported functions.
9846
9847 2000-12-04  Havoc Pennington  <hp@redhat.com>
9848
9849         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9850
9851         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9852
9853         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9854
9855         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9856         hack to avoid infinite loops (synthetic expose event) - 
9857         Owen has more appropriate fixes in a branch he'll check in later.
9858
9859         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9860         separator, CR, and CRLF as line ends
9861
9862         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9863         into lines using pango_find_paragraph_boundary(); other bits of
9864         the widget are still going to be broken if the boundary isn't '\n'
9865         though
9866
9867 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9868
9869         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9870         multiply.
9871
9872         * gdk/linux-fb/gdkpango-fb.c:
9873         Copied some 26.6 scaling macros from pango to clean up the rounding.
9874         (pango_fb_font_get_glyph_info): Correct sign on x value.
9875
9876         * gdk/linux-fb/gdkprivate-fb.h:
9877         Removed unreferenced external functions.
9878
9879         * modules/linux-fb/Makefile.am: Use ` instead of '.
9880
9881         * modules/linux-fb/basic.c:
9882         Remove dead code. In particular the dummy lang engine which broke all
9883         pango layouts in GtkFB. Don't include tables-big.i anymore.
9884
9885         * modules/linux-fb/tables-big.i:
9886         Upgrade to latest version from pango. Left for reference, basic_ranges
9887         moved to basic.c.
9888         
9889 2000-12-04  Havoc Pennington  <hp@redhat.com>
9890
9891         Fix bugs Alex found:
9892         
9893         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9894         to "draw"
9895
9896         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9897
9898         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9899
9900         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9901         implementation in here, apparently the expose() implementation was
9902         dead code.
9903
9904 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9905
9906         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9907         Return positive descent.
9908
9909 2000-12-02  Havoc Pennington  <hp@pobox.com>
9910
9911         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9912         method and signal
9913         
9914         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9915         calls gdk_window_process_updates() to push the exposes through
9916         (gtk_widget_class_init): No more draw signal, no
9917         gtk_widget_real_draw()  
9918         
9919         * gtk/gtkbin.c (gtk_bin_draw): remove
9920
9921         * gtk/gtkbox.c (gtk_box_draw): remove
9922
9923         * gtk/gtkbutton.c (gtk_button_draw): remove
9924
9925         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9926
9927         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9928
9929         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9930
9931         * gtk/gtkclist.c (gtk_clist_draw): remove
9932
9933         * gtk/gtkentry.c (gtk_entry_draw): remove
9934
9935         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9936
9937         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9938
9939         * gtk/gtkframe.c (gtk_frame_draw): remove
9940
9941         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9942
9943         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9944
9945         * gtk/gtklayout.c (gtk_layout_draw): remove
9946
9947         * gtk/gtklist.c (gtk_list_draw): remove
9948
9949         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9950
9951         * gtk/gtkmenu.c (gtk_menu_draw): remove
9952
9953         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9954
9955         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9956
9957         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9958
9959         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9960
9961         * gtk/gtkpacker.c (gtk_packer_draw): remove
9962
9963         * gtk/gtkrange.c (gtk_range_draw): remove
9964
9965         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9966
9967         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9968
9969         * gtk/gtktable.c (gtk_table_draw): remove
9970
9971         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9972
9973         * gtk/gtktext.c (gtk_text_draw): remove
9974
9975         * gtk/gtktextview.c (gtk_text_view_draw): remove
9976
9977         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9978
9979         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9980
9981         * gtk/gtktree.c (gtk_tree_draw): remove
9982
9983         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9984
9985         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9986
9987         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9988
9989         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9990
9991         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9992
9993         * gtk/gtkwindow.c (gtk_window_draw): remove
9994
9995 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9996
9997         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9998         a GtkToggleButton is both insensitive and active, it was being
9999         drawn by the GtkButton draw handler which doesn't check the
10000         state. Now it's calling gtk_toggle_button_paint instead.
10001         
10002 2000-12-01  Havoc Pennington  <hp@redhat.com>
10003
10004         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
10005         dangling pointers to the appearance attributes from the 
10006         line display
10007
10008         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
10009         width/height to mean "full width/height of drawable"
10010
10011         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
10012         click to select word/line
10013         
10014         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
10015         when getting log attrs. Get a slice, so that pixmaps and stuff
10016         are properly handled.
10017
10018         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
10019         paste into the selection (replaces selection now, previously
10020         crashed or added to selection). Reveals longstanding btree bug -
10021         select multiple lines, middle-click on the selection, boom. This
10022         isn't related to my changes though.
10023
10024         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
10025         PangoLogAttrs changes
10026         (gtk_entry_move_backward_word): ditto
10027
10028         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
10029         functions return bool whether the iter moved onto a
10030         dereferenceable position.
10031  
10032         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
10033         functions for motion in terms of display lines.
10034
10035         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
10036         get the buffer a mark is inside
10037         
10038 2000-12-01  Alexander Larsson  <alexl@redhat.com>
10039
10040         * gdk/linux-fb/Makefile.am:
10041         * modules/linux-fb/Makefile.am:
10042         Freetype 2 final uses freetype-config
10043
10044         * gdk/linux-fb/gdkpango-fb.c:
10045         Upgrade to use Freetype 2 final.
10046         More flexible support for font aliases, this also fixes a bug with
10047         GtkFontSelector, as the aliases must be visible in the font/family list,
10048         or GtkFontSelector reads uninitialized memory.
10049
10050 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
10051
10052         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
10053         XGetIMValues to properly terminate variable argument list, and do
10054         NULL return check for ic_values and xim_styles.
10055
10056         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
10057         Restore preedit state after XmbResetIC().
10058         
10059         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
10060         XvaCreateNestedList() should take XvaNestedList, but not
10061         XvaNestedList*.
10062
10063         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
10064         preedit_draw_callback, preedit_caret_callback): Match
10065         "preedit-changed" signal name to "preedit_changed" to be
10066         consistent to the spec.
10067
10068         * gtk/gtkimcontextsimple.c (check_table):
10069         Match "preedit-changed" to "preedit_changed" to be consistent
10070         to the spec.
10071
10072 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
10073
10074         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
10075         gc->clip_region == NULL>
10076
10077 2000-11-30  Tor Lillqvist  <tml@iki.fi>
10078
10079         Changes by Hans Breuer:
10080         
10081         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
10082         Dont't use negative width and height as max_hints. This fixes
10083         Owen's recent testgtk changes for win32.
10084
10085         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
10086         gdk_win32_hdc_release): These are exported and may be called with
10087         other drawable types than our GdkDrawableImplWin32 (?).
10088
10089         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
10090         so always #define USE_BACKING_STORE.
10091
10092         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
10093         of printf for debugging output.
10094
10095         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
10096         
10097         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
10098
10099         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
10100         declaration.
10101
10102         * gtk/gtktexttypes.h: Ditto.
10103
10104         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
10105         (GDK_VoidSymbol) also if in case of arg check failure.
10106
10107         * gtk/gtkimcontextsimple.c
10108         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
10109         position to the pointer, but to the variable it points to.
10110
10111         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
10112
10113         * gtk/gtk.def: Updates.
10114
10115 2000-11-29  Elliot Lee  <sopwith@redhat.com>
10116
10117         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
10118         GTK_TYPE_TREE_MODEL.
10119
10120 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10121
10122         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
10123         Set the size of the font from the description.
10124         (gdk_text_width): Gross hack that calculates the width
10125         of text by text_length * size/2. This is necessary because
10126         GtkLabel does some ugly gtk_string_width call to calculate
10127         an good size.
10128         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
10129
10130 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
10131
10132         * docs/tutorial/gtk-tut.sgml: DND updates
10133
10134 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10135
10136         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
10137         If you pass width or height == 0 to gdk_window_clear_area they
10138         should be calculated from the window size.
10139
10140 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10141
10142         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
10143         a grab, but no grab-cursor, use the cursor from the grabbed
10144         window. (gdk_fb_window_send_crossing_events): Send normal
10145         enter/leave notifications if grab and owner_events == TRUE.
10146
10147 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10148
10149         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10150         Do implicit button grabs, even if the window doesn't
10151         want the event.
10152         (gdk_fb_window_send_crossing_events): If there is a
10153         grab, only the grabbed window gets normal enter/leave
10154         notifications. On ungrab go from grabbed window to current.
10155         Don't send any notification to b when propagating from c -> b.
10156         If setting a grab on window, don't set prev_window.
10157         (handle_mouse_input): Send enter/leave events to the window the
10158         mouse is over, not the grabbed one.
10159         
10160 2000-11-28  Elliot Lee  <sopwith@redhat.com>
10161
10162         * gdk/gdkregion-generic.c: Zap warning.
10163         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
10164         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
10165
10166 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
10167
10168         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10169         The cursor should be hidden if it is part of either the
10170         source or destination region. Not only if it is in both.
10171         (gdk_window_set_transient_for): Silence warnings.
10172
10173 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10174
10175         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
10176         The default mode in X is Pie Arcs, therefore that is
10177         what Gtk+ uses.
10178
10179 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10180
10181         * gdk/linux-fb/gdkinput-ps2.c:
10182         Implement correct EnterNotify/LeaveNotify:
10183         (gdk_fb_window_send_crossing_events): New function that sends
10184         all GdkCrossingEvents from the last mouse-window to the specified
10185         destination.
10186         (gdk_fb_window_visibility_crossing): Removed function.
10187         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
10188         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
10189         instead of gdk_window_get_pointer() for better readability.
10190
10191         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
10192         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
10193
10194         * gdk/linux-fb/gdkprivate-fb.h:
10195         removed gdk_fb_window_visibility_crossing, added
10196         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
10197
10198         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
10199         New function that finds the least common ancestor of two windows.
10200         (gdk_window_show, gdk_window_hide):
10201         Use gdk_fb_window_send_crossing_events.
10202         (gdk_fb_window_move_resize): Send configure events to toplevel
10203         windows. Use gdk_fb_window_send_crossing_events.
10204
10205 2000-11-27  Havoc Pennington  <hp@redhat.com>
10206
10207         * gtk/gtkprivate.h (enum): Remove a trailing comma
10208
10209 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
10210
10211         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
10212         the "changed" callback of the adjustment.  We need to redraw the
10213         spin button's arrows when the adjustment's range changes.
10214         (adjustment_changed_cb): Draw the arrows.
10215         (gtk_spin_button_value_changed): Draw the arrows.
10216
10217 2000-11-23  Alexander Larsson  <alexl@redhat.com>
10218
10219         * gdk/linux-fb/gdkselection-fb.c:
10220         Initial selection implementation.
10221
10222         * gtk/gtkselection.c:
10223         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
10224         requestor in gtk_selection_request.
10225         
10226         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
10227         Added gdk_selection_property atom.
10228
10229         * gdk/linux-fb/gdkprivate-fb.h:
10230         Export _gdk_selection_window_destroyed.
10231         Removed mask_off_x/y from GdkCursorPrivateFB.
10232         Removed hbearing, added top, left to PangoFBGlyphInfo.
10233
10234         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10235         Call _gdk_selection_window_destroyed
10236         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
10237         the root window has been created.
10238         (static_dx_hack, static_dy_hack, compare_draw_rects,
10239         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
10240         in region. They are already sorted. Instead just traverse them in
10241         reverse if draw_direction < 0.
10242         
10243         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10244         Double-clicks must be sent after the normal button_press.
10245         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
10246         
10247         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
10248         Pass _gdk_fb_screen_gc instead of NULL.
10249
10250         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
10251         Initialize gdk_selection_property.
10252         (gdk_event_make): Remove unused code.
10253
10254         * gdk/linux-fb/gdkcursor-fb.c:
10255         Make the pixmap for the cursor the same size as the mask. Also remove
10256         the mask_off_x/y fields in GdkCursorPrivateFB and combine
10257         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
10258         Now the whole cursor is visible.
10259
10260         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10261         Fix bug where xdest+height instead of ydest+height was used
10262         to calculate if the source and dest overlapped. This fixes the
10263         redraw bug when the main window in testgtk was scrolled when
10264         partially covered by a tall window.
10265         Copy rectangles in region in order depending on draw_direction.
10266         Also moved the draw_direction flipping of start_y and end_y into
10267         the gc functions, as this might not be what all of them want.
10268         (gdk_fb_draw_lines): Support dashed lines.
10269         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
10270         so that the text is positioned correctly (was 1 pixel high).
10271
10272         gdk/linux-fb/gdkgc-fb.c:
10273         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
10274         all lines were drawn a pixel to short. Also checked the default of
10275         the rest of the values, and they're the same as X now.
10276
10277         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
10278         Clean up pixel positioning of the glyphs. Just use bgy->top and
10279         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
10280         to all divisions to get correct rounding behaviour.
10281
10282         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
10283         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
10284         Moved start_y/end_y flip into draw_drawable implementations.
10285         Flip also x rendering when draw_direction < 0.
10286         Remove unneccesary multiply with draw_direction.
10287
10288 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
10289
10290         * docs/tutorial/gtk-tut.sgml:
10291           - get rid of gtk_toggle_button_toggled FUD
10292           - start DND section - needs work - based on:
10293                 http://wolfpack.twu.net/docs/gtkdnd/
10294
10295 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10296
10297         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10298         Correct calculation of font metrics. Now GtkEntrys have sane
10299         size.
10300
10301 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10302
10303         * gdk/gdktypes.h:
10304         Add new type GdkSpan
10305         
10306         * docs/reference/gdk/gdk-sections.txt,
10307         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
10308         gdk/gdkregion.h:
10309         Implement and document gdk_region_spans_intersect_foreach.
10310
10311         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
10312         Add new file gdkrender-fb.c which contains all core
10313         rendering code.
10314         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
10315         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
10316         (optimized rectangle fillers).
10317
10318         * gdk/linux-fb/gdkdrawable-fb2.c:
10319         Move all rendering code to gdkrender-fb.c.
10320         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
10321         Use the new span intersection functions in gdk_fb_fill_spans.
10322         gdk_fb_draw_rectangle() clips filled rectangles and calls
10323         gc->fill_rectangle with the result.
10324         gdk_fb_fill_spans() gets extra argument "sorted".
10325
10326         * gdk/linux-fb/gdkevents-fb.c:
10327         Remove unused includes and defines.
10328         New function gdk_fb_get_time() to get correct time for events.
10329
10330         * gdk/linux-fb/gdkinput-ps2.c:
10331         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
10332         Make sure to set the time of all events.
10333
10334         * gdk/linux-fb/gdkmain-fb.c:
10335         Use gdk_fb_get_time ().
10336
10337         * gdk/linux-fb/gdkprivate-fb.h:
10338         New virtual GC calls: fill_span & fill_rectangle.
10339         Export gdk_fb_get_time().
10340         gdk_fb_fill_spans() gets extra argument "sorted".
10341
10342         * gdk/linux-fb/mi*.c:
10343         Use GdkSpan instead of GdkRectangle.
10344         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
10345         from XFree 4 source)
10346         
10347 2000-11-22    <jrb@redhat.com>
10348
10349         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
10350         reversing the order in an if statement will do.  Doing so managed
10351         to make the treemodelsort half work.  Other half will follow after
10352         I get the insert function fully fixed.
10353
10354 2000-11-21  Elliot Lee  <sopwith@redhat.com>
10355         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
10356         more than 2 bits. Besides, I need to implement an evil hack. :)
10357
10358 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
10359
10360         * docs/tutorial/gtk-tut.sgml: minor corrections
10361
10362 2000-11-20  Jonathan Blandford <jrb@redhat.com>
10363         * gtk/gtktreemodelsort.h: Add convertion functions to let you
10364           convert to and from relative path's and iters.
10365
10366         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
10367           testing sorting functions a bit better.  Currently broken -- will
10368           fix in morning.
10369
10370 2000-11-20  Havoc Pennington  <hp@redhat.com>
10371
10372         * gtk/gtkwidget.c: Documented a bunch of functions in here
10373         (gtk_widget_realize): Warn if you try to realize
10374         a widget with no parent that isn't a toplevel
10375         (gtk_widget_intersect): return a gboolean
10376
10377 2000-11-20  Havoc Pennington  <hp@redhat.com>
10378
10379         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
10380         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
10381         scrolling to be implemented in GDK to finish. Also, right now
10382         we just size_allocate all children on every layout change,
10383         which is pretty lame. Test commented out of testtext.c, 
10384         until it works better.
10385
10386 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
10387
10388         * gdk/linux-fb/gdkdrawable-fb2.c:
10389         Removed unused arguments from gdk_fb_drawable_get_pixel().
10390
10391         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
10392         Renamed fidur specific mouse packet data in MouseDevice to
10393         generic. Used it in ps2 mouse handling code to avoid blocking
10394         reads.
10395
10396 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
10397
10398         * demos/gtk-demo/main.c: Changed to have the list become
10399         non-italic when the demo window is destroyed through an external
10400         event (like a close button).  Doing so found three bugs in the
10401         widget.
10402
10403         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
10404
10405         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
10406         we actually set the cell.
10407
10408         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
10409
10410         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
10411         free a leaked path.  Thanks memprof.
10412
10413 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
10414
10415         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
10416         off-by-one error when destroying allocated segments
10417         on failure. (Elliot)
10418
10419 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
10420
10421         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
10422         memleaks found by Evan Martin.
10423
10424 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
10425
10426         * Released 1.3.2
10427         
10428         * NEWS: Updates for 1.3.2
10429
10430 2000-11-17  Tor Lillqvist  <tml@iki.fi>
10431
10432         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
10433         but in general for window system specific events.
10434
10435         * gtk/gtk.def
10436         * gtk/makefile.mingw.in
10437         * gtk/makefile.msc.in: Update.
10438         
10439         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
10440
10441 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
10442
10443         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
10444         distribute gtk.immodules.
10445
10446         * gtk/Makefile.am (install-data-local): Don't install the
10447         gtk.immodules file created for the uninstalled modules;
10448         instead run gtk-query-immodules after install
10449
10450 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10451
10452         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
10453         -rpath to the right install location.
10454
10455         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
10456         -export-dynamic.
10457
10458         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10459         properly.
10460
10461 2000-11-15  Havoc Pennington  <hp@pobox.com>
10462
10463         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
10464         patch from Mikael Hermansson to temporarily stop blinking while
10465         the user is using the keyboard to type or navigate. 
10466
10467         Also, when blinking, stay on for longer than we stay off. Also,
10468         return from start_cursor_blink if !cursor_visible, to save
10469         checking that flag all over the place before we call
10470         start_cursor_blink.
10471
10472 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
10473
10474         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
10475         only contain a "fontset" line, which is now ignored.
10476
10477         * gtk/gtkentry.c (gtk_entry_button_release): Make 
10478         double-click-to-select-word work.
10479         
10480 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
10481
10482         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
10483         Don't move back one char when we are actually at the end of the 
10484         paragraph.
10485
10486 2000-11-15  Robert Brady  <robert@suse.co.uk>
10487
10488         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
10489         'o' < 'p'.
10490         
10491         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
10492         bind_textdomain_codeset.
10493
10494         (gtk_init_check): Make the warning about translating default:LTR
10495         sterner.
10496         
10497 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
10498
10499         * **/Makefile.am : remove unecessary rules for win32-specific
10500         config-substituted targets. If you want these rules, use
10501         --enable-maintainer-mode (called automatically by autogen.sh).
10502         Stops a lot of unneccessary make-time warnings.
10503
10504         * gtk/gtktext{layout,display}.c: Factor in total width as
10505         well as screen when figuring alignment for word-wrap as well as
10506         no wrap; this is necessary to handle lines that cannot be wrapped
10507         at all.
10508
10509 2000-11-15  Havoc Pennington  <hp@redhat.com>
10510
10511         * gtk/testtext.c: Implement essential color cycling feature
10512
10513 2000-11-15  Havoc Pennington  <hp@redhat.com>
10514
10515         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10516         when we invalidate the main window.
10517
10518         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10519         GtkTextView will now invalidate the side windows for us when text
10520         changes.
10521
10522 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10523
10524         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10525         unconditionally, since we may need to update the horizontal
10526         scrollbars even if the height didn't change.
10527
10528         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10529         the extra attrs, since some of them affect size.
10530
10531         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10532         x_offset correctly.
10533
10534 2000-11-15  Havoc Pennington  <hp@redhat.com>
10535
10536         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10537         don't move the first line out into the margin, instead move the
10538         whole paragraph in order to make space for the first line within 
10539         the margin
10540
10541 2000-11-15  Havoc Pennington  <hp@redhat.com>
10542
10543         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10544         xoffset in addition to yoffset, so horizontal scrolling doesn't
10545         break redraws
10546
10547 2000-11-15  Havoc Pennington  <hp@redhat.com>
10548
10549         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10550         from the cursor
10551         (render_layout_line): fix reversed test that caused weird
10552         underlines to get drawn
10553
10554 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10555
10556         * gdk/linux-fb/gdkprivate-fb.h:
10557         Fix debug macros.
10558         
10559 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10560
10561         * gdk/linux-fb/gdkprivate-fb.h:
10562         Added virtual functions set_pixel, get_color,
10563         fill_span and draw_drawable to the GC.
10564         Added global _gdk_fb_screen_gc to use instead of
10565         NULL when drawing to the screen.
10566         Added _gdk_fb_gc_calc_state() prototype.
10567
10568         * gdk/linux-fb/gdkgc-fb.c:
10569         Call _gdk_fb_gc_calc_state() on any gc state change.
10570
10571         * gdk/linux-fb/gdkglobals-fb.c:
10572         Add _gdk_fb_screen_gc
10573                 
10574         * gdk/linux-fb/gdkdrawable-fb2.c:
10575         _gdk_fb_gc_calc_state() calculates best functions
10576         for the GC state and depth.
10577         Moved bpp specialized code to separate functions.
10578         Added optimized 24 bpp AA draw_drawable.
10579
10580         * gdk/linux-fb/gdkevents-fb.c:
10581         Silence gcc warning.
10582
10583         * gdk/linux-fb/gdkimage-fb.c:
10584         Use _gdk_fb_screen_gc
10585
10586         * gdk/linux-fb/gdkwindow-fb.c:
10587         Init and use _gdk_fb_screen_gc
10588
10589         * gdk/linux-fb/mitypes.h:
10590         Remove unused types.
10591
10592 2000-11-14  Havoc Pennington  <hp@pobox.com>
10593
10594         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
10595         to pixels
10596
10597 2000-11-14  Havoc Pennington  <hp@pobox.com>
10598
10599         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
10600
10601         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
10602         unknown char, no real reason we were using a variable. 
10603         Remove gtk_text_unknown_char variable. Fix all the text widget
10604         files accordingly.
10605
10606         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
10607         since the Unicode spec seems to prefer that character for our
10608         purposes.
10609
10610 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
10611
10612         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
10613         value of g_getenv() isn't freeable, so g_strdup it.
10614
10615         * modules/input/inuktitut.c: Inuktitut input method.
10616
10617         * modules/input/Makefile.am: Build this.
10618         
10619 2000-11-14  Elliot Lee  <sopwith@redhat.com>
10620
10621         * gtk/Makefile.am: Install gtk.immodules, needed for operation
10622         of gtk programs.
10623
10624 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
10625
10626         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
10627         reversed > that was causing Home to go to end of previous line.
10628
10629         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
10630         modified-keypresses (leave for bindings.)
10631
10632         * modules/input/Makefile.am: Remove useless -export-dynamic
10633         from module LDFLAGS.
10634
10635 2000-11-14  Havoc Pennington  <hp@redhat.com>
10636
10637         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
10638         higher.
10639
10640         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
10641         account. Also, render rise, underline, background, etc. for
10642         pixbufs as well as text. Also, draw underlines one pixel higher.
10643
10644         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
10645         PangoAttribute for the rise, so it gets drawn properly. Also,
10646         add the GtkTextAppearance attribute for pixbuf/widget segments
10647         as well; we should go ahead and have rise, underline, background,
10648         stipple work for those
10649
10650         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
10651         Pango
10652
10653 2000-11-15  Tor Lillqvist  <tml@iki.fi>
10654
10655         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
10656
10657         * gtk/gtk.def: Update.
10658
10659         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
10660         included.
10661         (gtk_rc_get_im_module_file): Use run-time installation directory
10662         on Win32.
10663
10664         * gdk/win32/rc/gdk.rc: Remove.
10665         * gdk/win32/rc/gdk.rc.in: New file.
10666         * gdk/win32/rc/Makefile.am: New file
10667         * gdk/win32/Makefile.am: Corresponding changes.
10668
10669         * gtk/gtk.rc: Remove.
10670         * gtk/gtk-win32.rc.in: New file.
10671         * gtk/Makefile.am: Corresponding changes.
10672
10673         * configure.in: Corresponding changes.
10674
10675         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
10676         has a built gtkcompat.h. Developers using CVS code on Win32 can
10677         hand-edit it from gtkcompat.h.in.
10678
10679         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
10680         gtkcompat.h from gtkcompat.h.win32.
10681
10682 2000-11-14  Havoc Pennington  <hp@redhat.com>
10683
10684         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
10685         to default to GDK_ACTION_MOVE if the drag is within a single
10686         widget. Defaults to GDK_ACTION_COPY between widgets.
10687
10688 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
10689
10690         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
10691
10692         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
10693
10694         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
10695         srcdir != builddir
10696
10697         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
10698
10699         * configure.in (GTK_VERSION): Up to 1.3.2
10700
10701         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
10702         gtkimcontextxim.h
10703
10704         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
10705         missing doc comment.
10706
10707 2000-11-14  Alexander Larsson  <alexl@redhat.com>
10708
10709         * modules/linux-fb/basic.c:
10710         Use the glib iconv wrappers.
10711
10712 2000-11-13  Havoc Pennington  <hp@pobox.com>
10713
10714         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
10715         still more bugs.
10716
10717         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
10718         scroll the GdkWindows before realization.
10719
10720 2000-11-13  Havoc Pennington  <hp@redhat.com>
10721
10722         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
10723         where GC didn't always get updated properly
10724
10725         * demos/gtk-demo/textview.c (create_tags): Use subattributes
10726         of fonts instead of setting the entire font
10727
10728         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
10729         setting entire font
10730
10731         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
10732
10733         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
10734         a bunch of individually-settable font attributes. You can still 
10735         use the "font" and "font_desc" args, they just set all the font
10736         attributes at once.
10737
10738 2000-11-13 Elliot Lee <sopwith@redhat.com>
10739
10740         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
10741
10742 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
10743
10744         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
10745         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
10746
10747         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
10748         work better.
10749
10750 2000-11-13  Havoc Pennington  <hp@redhat.com>
10751
10752         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
10753         the module file.
10754
10755         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
10756         dest->language
10757
10758         * gtk/testtext.c: Test pixels above/below/inside paragraphs
10759         settings
10760
10761         * gtk/gtktextview.c: Implement object args and setters/getters for
10762         all the aspects of the GtkTextAttributes that are not set from
10763         GtkWidget attributes. This is spacing, justification, margins,
10764         etc.
10765
10766         (gtk_text_view_set_arg)
10767         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10768         args
10769         (gtk_text_view_class_init): Add args for justify, left_margin,
10770         right_margin, indent, and tabs
10771         
10772
10773         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10774         attribute properly
10775
10776         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10777         replace with indent attribute
10778
10779         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10780         PANGO_SCALE
10781
10782         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10783         rearranging code to do that
10784         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10785         i.e. don't subtract the top_margin first, just to keep
10786         all margin-futzing in one place.
10787
10788         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10789
10790         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10791         special case of last line, Pango now handles this itself.
10792         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10793         Y coordinate
10794         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10795         (find_display_line_above): wasn't moving the byte index as it
10796         iterated over lines, so always returned byte 0. Also, port to use
10797         PangoLayoutIter.
10798         (find_display_line_below): same problem as
10799         find_display_line_above. Also, port to use PangoLayoutIter.
10800
10801 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10802
10803         * gdk/linux-fb/*.[ch]:
10804         Massive reindent to gtk+ standard. My hands hurt.
10805
10806         * gdk/linux-fb/gdkcolor-fb.c:
10807         Move GdkColorPrivateFB from inherited to windowing_data
10808
10809         * gdk/linux-fb/gdkcursor-fb.c:
10810         _gdk_cursor_new_from_pixmap made static
10811
10812         * gdk/linux-fb/gdkdnd-fb.c:
10813         GdkDragContextPrivate moved to windowing_data
10814
10815         * gdk/linux-fb/gdkdrawable-fb2.c:
10816         Removed endian.h, use glib endianness macros instead
10817         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10818         and GDK_DRAWABLE_IMPL_FBDATA
10819
10820         * gdk/linux-fb/gdkfont-fb.c:
10821         Add empty gdk_font_load(). Needed for linking of Gtk+.
10822
10823         * gdk/linux-fb/gdkimage-fb.c:
10824         Removed endian.h, use glib endianness macros instead
10825         Moved GdkImagePrivateFB to windowing_data
10826         gdk_image_new_bitmap didn't always allocate enough
10827         memory.
10828
10829         * gdk/linux-fb/gdkinput-ps2.c:
10830         Added semi-working support for MS serial mice.
10831
10832         * gdk/linux-fb/gdkprivate-fb.h:
10833         s/GdkWindowPrivate/GdkWindowObject/
10834         Removed GdkWindowPrivate typedef
10835         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10836         Removed GDK_DRAWABLE_P
10837         Move GdkColorPrivateFB from inherited to windowing_data
10838         Moved GdkImagePrivateFB to windowing_data
10839
10840         * gdk/linux-fb/gdkvisual-fb.c:
10841         Removed some unused debug code.
10842
10843         * gdk/linux-fb/gdkwindow-fb.c:
10844         Use stock cursors instead of including X headers.
10845         s/GdkWindowPrivate/GdkWindowObject/
10846
10847         * gdk/linux-fb/mitypes.h:
10848         Removed unused types.
10849
10850         * modules/linux-fb/basic.c:
10851         Use the pango fribidi wrappers.
10852
10853 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10854
10855         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10856         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10857         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10858         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10859         GEqualFunc where applicable.
10860         
10861         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10862         pango_font_description_equal as changed in pango.
10863         
10864         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10865
10866         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10867
10868         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10869
10870         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10871
10872         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10873
10874         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10875
10876         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10877         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10878
10879         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10880         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10881
10882 2000-11-12  Havoc Pennington  <hp@pobox.com>
10883
10884         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10885         dir to datadir/gtk+-2.0/demo
10886
10887         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10888         sorts of text widget and Pango font bugs. Urgh.
10889
10890         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10891
10892         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10893         tree that you should double click to see the demo. Fix 
10894         types of variables to reflect changed return values from 
10895         GtkTreeStore and GtkTreeViewColumn constructors.
10896
10897         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10898         newly-created buffer to prepare for GObject semantics
10899
10900         * gtk/testtext.c: don't leak the buffer with GObject semantics
10901
10902         * gtk/testtextbuffer.c: ditto
10903         
10904 2000-11-12  Havoc Pennington  <hp@pobox.com>
10905
10906         Rename this testgtk to gtk-demo to avoid confusion, and 
10907         install it so people can use it as a supplement to 
10908         the documentation.
10909         
10910         * demos/gtk-demo: Moved from demos/testgtk
10911
10912         * demos/testgtk: Removed
10913
10914         * configure.in: make Makefile in gtk-demo
10915         
10916         * demos/gtk-demo/Makefile.am: Install sample source to 
10917         datadir/gtk-demo (maybe there's a better place?), and 
10918         rename the binary to gtk-demo
10919         
10920         * demos/gtk-demo/main.c (load_file): Load installed sample
10921         source if source isn't found in pwd.
10922
10923 2000-11-09  Havoc Pennington  <hp@pobox.com>
10924
10925         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10926         argument to set the char displayed when visibility == FALSE
10927         (gtk_entry_create_layout): If !entry->visible, replace 
10928         all chars with the "invisible char"
10929
10930         * gtk/testgtk.c: Test the invisible_char deal
10931         
10932 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10933
10934         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10935         can't get a native font in the right encoding.
10936
10937 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10938
10939         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10940         respectively.
10941
10942 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10943
10944         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10945         Fix warning when moving between paragraphs.
10946
10947         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10948         delete => delete_from_cursor, insert => insert_at_cursor
10949
10950 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10951
10952         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10953
10954         * modules/input/imthai-broken.c: A Thai input method for use if
10955         Thai keys are really generating Latin1 keysyms.
10956
10957         * modules/input/Makefile.am: Build these.
10958
10959 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10960
10961         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10962         g_filename_{to,from}_utf8 now takes an extra parameter.
10963
10964         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10965         strftime into UTF-8.
10966
10967         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10968         calendars.
10969
10970         (gtk_calendar_paint_day_names): Draw day names in the right 
10971         place.
10972         
10973 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10974
10975         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10976         problem with using result of g_get_charset() backwards -
10977         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10978
10979         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10980         negative min_width/height and max_width/height to
10981         mean "requisition"; this allows setting a window
10982         to be user-resizable in only one direction easily.
10983
10984         * gtk/testgtk.c (create_main_window): Remove hard-coded
10985         usize - set a default size in the vertical direction.
10986
10987 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10988
10989         * gtk/gtkrange.c: Add some missing casts. Support 
10990         2 and 3 button clicks on the arrows to mean 
10991         "move by pages" and "jump to end". (Like gtkspinbutton)
10992
10993 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10994
10995         * gdk/win32/makefile.msc : reflect build module changes
10996
10997         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10998         from GdkPixmap*, cast implementation member instead.
10999
11000         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
11001         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
11002         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
11003         more Gdi functions return value checking. 
11004         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
11005         GdkImagePrivateWin32 *.
11006
11007         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
11008         menus useable again. Add #pragma message to keep reminded on this issue.
11009         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
11010         windows. This allows to enable backing store on Win32!
11011
11012         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
11013         in drawable is of impl type. Correct specific type checks appropriate.
11014  
11015         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
11016         GDK_WINDOW_DESTROYED before allocating new resources.
11017
11018         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
11019
11020         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
11021         (gdk_window_foreign_new) initialize parent handle.
11022         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
11023
11024         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
11025         Let the GDI invalidate the window on MoveWindow call to fix scrolling
11026         problems (e.g. main buttons in testgtk). 
11027
11028 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
11029
11030         * gtk/gtkentry.c (gtk_entry_key_press): Call 
11031         gtk_widget_activate for GDK_Return.
11032
11033         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
11034         of preedit cursor position.
11035
11036 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
11037
11038         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
11039         static.
11040
11041 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
11042
11043         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
11044         out support for multiple locales; that simple doesn't
11045         work reliably with current Xlib
11046
11047         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
11048         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
11049         Add support for positioning the cursor within the preedit string.
11050
11051 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
11052
11053         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
11054         at XIM input method module.
11055
11056         * gtk/gtktextview.c: Check for bindings after passing
11057         events to im context filter.
11058
11059 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
11060
11061         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
11062         empty attribute lists properly.
11063
11064 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
11065
11066         * gtk/queryimmodules.c (main): Return non-zero exit
11067         status if errors were encountered querying any
11068         modules.
11069
11070         * modules/input/Makefile.am (moduledir): remove
11071         leftover bin program target.
11072
11073         * docs/make-todo: Fix typo in error message.
11074
11075 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
11076
11077         * configure.in: Add modules/input/Makefile
11078
11079 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
11080
11081         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
11082         don't include gtkthemes.h.
11083
11084         * gtk/testgtk.c gtk/testtext.c: Set environment variables
11085         to point
11086
11087         * gtk/Makefile.am: Add new .c and .h files, build 
11088         gtk-query-immodules and use it to create a gtk.immodules
11089         file for use of test programs.
11090
11091         * gtk/gtkpreview.c: remove extra blank line.
11092
11093 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
11094
11095         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
11096         Add the ability to add extra tables beyond the default
11097         one, and also the ability to have compose sequences 
11098         that are prefixes of other compose sequences. 
11099
11100         * gtk/gtkimcontextsimple.c: Export a preedit string which
11101         consists of possible candidates for keystrokes that have
11102         been entered but not yet committed.
11103
11104         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
11105         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
11106
11107         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
11108         Add a function to add input-method switching menu items
11109         to a menu.
11110
11111         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
11112         when switching input methods.
11113
11114         * gtk/gtkimcontextsimple.[ch]: Change the format of
11115         the compose table to allow compose tables of different
11116         lengths / sequence.
11117
11118 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
11119
11120         * gtk/gtkimmodule.[ch]: Support routines for loading
11121         GtkIMContext implementations dynamically at runtime.
11122
11123         * modules/input/imcyrillic-translit.c: A sample input
11124         method (based on GtkIMContextSimple with an extra table),
11125         which demonstrates preedit strings and the module
11126         system for input modules
11127
11128         * gtk/queryimmodules.c: Program to query the available
11129         input modules and write the results into a file.
11130          
11131         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
11132         extra config options "im_module_file" (cache file for
11133         input method modules), and "im_module_path" - path
11134         to look for modules when generating cache file.
11135
11136         This doesn't scale.
11137
11138 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
11139
11140         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
11141         generic code from gtkthemes into a new abstraction
11142         GtkModule which has the logic for implementing
11143         a loadable module which implements a number of 
11144         GObject types.
11145
11146 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
11147
11148         * gtk/gtkeditable.[ch]: Convert GtkEditable from
11149         a class into an interface  
11150         
11151         * gtk/gtkoldeditable.[ch]: Move the old editable
11152         implementation into here, so legacy widgets can
11153         still rely on the implemenation. GtkOldEditable
11154         exports GtkEditable. Make selection handling
11155         code use new text conversion functions (and
11156         handle UTF-8 as a side-effect). Use GtkClipboard
11157         for CLIPBOARD.
11158
11159         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
11160         Adopt to match above changes.
11161
11162         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
11163         avoid GtkOldEditable implementation. Restructure
11164         to reduce number of places that modify state directly.
11165         Move to GtkBindingSet. Display the preedit string.
11166         Queue recomputation of PangoLayout and scroll position
11167         to improve effiency of doing complex changes naively.
11168         Add a menu with cut/copy/paste and input method selection.
11169
11170 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
11171
11172         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
11173         to set preedit string and attributes; display preedit string by
11174         inserting string and attributes at cursor when creating the
11175         GtkTextLineDisplay.
11176
11177         * gtk/gtktextlayout.c: Move all conversions between byte
11178         positions in PangoLayout and GtkTextIter into new functions
11179         line_display_iter_to_index/index_to_iter that properly
11180         handle the preedit string.
11181
11182         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
11183         it to return const char * (eventually will end up
11184         as GCONST char *, most likely.)
11185
11186         * gtk/gtktextview.[ch]: Handle the preedit string, call
11187         gtk_im_context_reset() as necessary, add a menu to switch
11188         input methods.
11189         
11190         * gtk/gtktextlayout.[ch]: Remove useless
11191         gtk_text_layout_get_log_attrs() function.
11192
11193 2000-11-11  Tor Lillqvist  <tml@iki.fi>
11194
11195         * gdk/gdk.def
11196         * gtk/gtk.def: Update.
11197
11198         * gdk/win32/*.c: Add last argument to g_type_register_static()
11199         calls.
11200
11201         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
11202
11203         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
11204         generated by older wheel mouse drivers. Get the correct y
11205         coordinate from WM_MOUSEWHEEL messages.
11206
11207         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
11208         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
11209         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
11210         Debugging functions.
11211
11212         * gdk/win32/gdkprivate-win32.h: Declare them.
11213
11214         * gdk/win32/gdkinput-win32.h: Add declaration for
11215         gdk_input_window_destroy().
11216
11217         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
11218
11219 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
11220
11221         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
11222         function to help handle keeping things in sync.
11223
11224 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
11225
11226         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
11227         BOXED marshallers.
11228
11229         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
11230         (gtk_list_store_class_init): use the new BOXED marshallers.
11231
11232         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
11233         new_with_values to new_with_types.
11234         (gtk_tree_store_get_column_type): add this.
11235         (gtk_tree_store_class_init): use the new BOXED marshallers.
11236
11237         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
11238         mirror some POINTER marshallers.
11239
11240 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
11241
11242         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
11243         allow more interesting iterators.  Also, made the lifecycle of
11244         iterators more explicit.
11245
11246         * gtk/gtktreemodelsort.[ch]: New model for sorting.
11247
11248         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
11249         types.
11250
11251 2000-11-09  Alexander Larsson  <alexl@redhat.com>
11252
11253         * demos/testgtk/menus.c:
11254         Changes to make the new testgtk compile after
11255         gtk_menu_append was removed.
11256
11257         * gdk/linux-fb/gdkdrawable-fb2.c
11258         (gdk_fb_get_depth, gdk_fb_get_visual,
11259         gdk_drawable_impl_fb_class_init): Implement
11260         these drawable functions. Now GtkImages work again.
11261
11262         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
11263
11264         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
11265         
11266         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
11267         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
11268         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
11269         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
11270
11271 2000-11-08  Havoc Pennington  <hp@pobox.com>
11272
11273         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
11274         visible_set args, don't know where these had gone, I thought they
11275         used to be there
11276
11277         * gtk/testtext.c: Add a menu item to apply invisibility tag;
11278         now we can test the feature and see that it's totally broken.
11279
11280 2000-11-08  Havoc Pennington  <hp@pobox.com>
11281
11282         Make DND copy pixbufs and tags when source and target share a 
11283         tag table.
11284         
11285         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
11286         in-process GTK_TEXT_BUFFER_CONTENTS target
11287         (gtk_text_view_drag_data_received): Paste from
11288         GTK_TEXT_BUFFER_CONTENTS if we receive it.
11289
11290 2000-11-08  Alexander Larsson  <alexl@redhat.com>
11291
11292         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
11293         API changes.
11294
11295         * gtk/gtkmenu.c: Add support for scrolling menus.
11296         Remove gtk_menu_append/prepend/insert, these have been moved to
11297         gtkcompat.h as #defines.
11298
11299         * gtk/gtkcompat.h.in:
11300         Add compatibility #defines for gtk_menu_append/prepend/insert
11301
11302         * gtk/gtkmenu.h: Add data needed for scrolling menus.
11303         GtkMenuPositionFunc gets an extra argument push_in.
11304         gtk_menu_append/prepend/insert removed.
11305         
11306         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
11307         positioning behaviour to fit to scrolling menus.
11308
11309         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
11310         into menuitem->submeny. That is wrong, and broke torn
11311         off submenus of torn off menus, since they were unrealized
11312         when the first menu was unrealized.
11313
11314         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
11315         gtk_menu_shell_select_item() since these need to be overridden in
11316         GtkMenu.
11317
11318         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
11319         positioning behaviour to fit to scrolling menus.
11320         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
11321         the current item so that it is prelighted when the menu pops up.
11322         This is a workaround to the fact that the menu doesn't get the
11323         initial enter event (due to grabs).
11324
11325         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
11326         s/gtk_menu_append/gtk_menu_shell_append/
11327
11328         * gtk/gtknotebook.c:
11329         s/gtk_menu_insert/gtk_menu_shell_insert/
11330
11331         * gtk/testgtk.c (create_menu, create_menus):
11332         Create the first menu with 50 items so that menu scrolling
11333         can be tested.
11334         
11335         
11336         Patch from Jonathan Blandford  <jrb@redhat.com>
11337
11338         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
11339         system to handle size requests.  First, we ask what the size of
11340         the toggle is.  Then, when allocating the size, we allocate the
11341         toggle_size first.  This way we can have multiple menu-item
11342         classes w/o needing a seperate class for each.
11343
11344         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
11345         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
11346
11347         * gtk/gtkcheckmenuitem.c
11348         (gtk_check_menu_item_toggle_size_request): New function to handle
11349         the toggle size-request.
11350
11351 2000-11-07  Havoc Pennington  <hp@redhat.com>
11352
11353         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
11354         Half-ass somewhat fix this function, so that scrolling to the
11355         insertion point works. Pango hacking is in the future to really
11356         fix it.
11357
11358         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
11359         length of data, no longer used.
11360
11361         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
11362         method contents in here, get rid of destroy method
11363         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
11364         that were backward. Remove debug spew.
11365         (cut_or_copy): Make the clipboard work with insert_range to
11366         preserve tags and pixbufs, not just the primary selection.
11367
11368 2000-11-07  Havoc Pennington  <hp@redhat.com>
11369
11370         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
11371         to gtk_text_mark_get_visible
11372
11373         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
11374         bug that was generating an invalid iterator
11375
11376         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
11377         ensure_char_offsets() in front of code placing the iter in an
11378         invalid state.
11379
11380         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
11381         make override_location arg const
11382         (paste): Replace the selection if we paste into the 
11383         current selection
11384
11385         * gtk/gtkselection.h: Remove "GtkSelectioData"
11386         (struct _GtkSelectionData): move the definition here.
11387
11388         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
11389         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
11390
11391         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
11392
11393         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
11394         (gtk_text_buffer_insert_range_interactive): implement
11395         (gtk_text_buffer_get_tags): Remove, replaced by
11396         gtk_text_iter_get_tags()
11397
11398         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
11399         limit parameter, to avoid infinite linear scan.
11400         (gtk_text_iter_backward_search): Add search limit
11401         (gtk_text_iter_forward_find_char): Add search limit
11402         (gtk_text_iter_backward_find_char): Add search limit
11403
11404 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
11405
11406         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11407         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
11408         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
11409         gdk/linux-fb/gdkwindow-fb.c:
11410         use g_object_new() instead of g_type_create_instance() which
11411         is a private function for fundamental type implementations.
11412
11413         * gdk/linux-fb/gdkinput-ps2.c:
11414         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
11415         instead just store the current modifier state. Add a (somewhat broken)
11416         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
11417         Rename exported function gdk_input_ps2_get_mouseinfo to
11418         gdk_input_get_mouseinfo.
11419
11420         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
11421         gdk/linux-fb/gdkwindow-fb.c:
11422         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
11423         
11424
11425 2000-11-02  Havoc Pennington  <hp@redhat.com>
11426
11427         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
11428         use stock buttons. Should be 100% source compatible, appropriate
11429         filesel fields now point to dialog->vbox and dialog->action_area.
11430         On the bizarre side, dialog->action_area and filesel->action_area
11431         are not the same widget.
11432         (gtk_file_selection_init): Put some padding around the selection
11433         entry, so it isn't touching the GtkDialog separator.    
11434
11435         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
11436         use stock buttons, etc. Should also be source compatible.
11437         Set the dialog default title in _init not _new().
11438         
11439         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
11440         Use stock buttons; don't put a button box inside the existing
11441         dialog button box. Don't bother with push/pop colormap anymore.
11442
11443         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
11444         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
11445         for message dialog, and necessary for the font selection and color
11446         selection with help and apply buttons.
11447         
11448         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
11449         to the created button widget. Set GTK_CAN_DEFAULT on the button.
11450         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
11451         between buttons, put less padding around the action area.
11452         (gtk_dialog_run): Exit on unmap rather than on destroy. 
11453         This will also exit the loop if the widget is hidden.
11454         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
11455         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
11456         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
11457         special-case delete event.
11458
11459         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
11460         formatting
11461         
11462 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
11463
11464         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
11465         button to temporarily disable position recording in the
11466         "saved position" test.
11467
11468 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
11469
11470         * gtk/gtkthemes.c: added compat code that temporarily implements
11471         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
11472         going to be revamped by owen's upcoming GtkModule patches, but
11473         untill then people want gtk to build, right? ;)
11474
11475 2000-11-04  Havoc Pennington  <hp@pobox.com>
11476
11477         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
11478         list
11479
11480         * docs/Changes-2.0.txt: Add note about
11481         gtk_container_get_toplevels()
11482
11483         * gtk/gtktextview.h: formatting
11484         
11485         * gtk/gtktextview.c: don't start descriptions with "Returns",
11486         confuses gtk-doc
11487
11488 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
11489
11490         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
11491         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
11492
11493 2000-11-03  Havoc Pennington  <hp@redhat.com>
11494
11495         * gtk/gtktexttagtable.c: Docs
11496         (gtk_text_tag_table_size): return a signed int
11497
11498         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
11499         (gtk_text_tag_event): make the event_object a GObject
11500
11501         * gtk/gtktextview.c: Write API docs for all functions.
11502
11503         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
11504         for gtk_text_view_get_window_type() called on one of the private
11505         windows.
11506
11507         * gtk/gtktextview.c: Instead of accessing text_view->buffer
11508         directly, call get_buffer() which demand-creates a default
11509         buffer. So gtk_text_view_new() can be used to create a view with a
11510         default buffer in it, if you just want an empty text box users can
11511         put data in. Useful for GUI builders also.
11512
11513 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
11514
11515         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11516         the charset encodign portion MUST be in lowercase.
11517         * gtk/gtkrc.az: added file for Azeri language
11518
11519 2000-11-03  Havoc Pennington  <hp@redhat.com>
11520
11521         Get widgets working on the btree/buffer side. Display of them 
11522         still doesn't work.
11523         
11524         * gtk/gtktextview.c: start implementing child widget stuff
11525
11526         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11527
11528         * gtk/gtktextlayout.c: handle embedded widgets
11529
11530         * gtk/gtktextdisplay.c: handle embedded widgets
11531
11532         * gtk/gtktextchild.c: Implement all the child anchor goo
11533
11534         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11535         function
11536
11537         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11538         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11539         creating a child anchor or a pixbuf segment.
11540         (gtk_text_btree_create_child_anchor): new function
11541         (gtk_text_btree_unregister_child_anchor): new function
11542
11543         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11544         allocate_child signal on GtkTextLayout
11545
11546         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11547         values
11548         (gtk_text_iter_get_child_anchor): new function
11549
11550         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11551         default handler for the changed signal, which calls
11552         gtk_text_buffer_set_modified(), instead of just always emitting
11553         changed then calling set_modified() manually. I guess this is
11554         maybe more flexible. It seems logical.
11555
11556 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
11557
11558         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
11559         now.
11560
11561         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
11562
11563 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
11564
11565         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
11566         been marked static.
11567
11568 2000-11-02  Havoc Pennington  <hp@redhat.com>
11569
11570         * gtk/testgtk.c (create_labels): had a test backward
11571
11572         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
11573         fields, so the dest GC ends up with the correct clip origin, 
11574         etc. Fixes a bug where colored labels didn't redraw 
11575         properly.
11576
11577 2000-11-02  Alexander Larsson  <alexl@redhat.com>
11578
11579         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11580         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
11581         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
11582         Add last argument to t_type_register_static call.
11583         
11584         * gdk/linux-fb/gdkdrawable-fb2.c:
11585         Add last argument to t_type_register_static call.
11586         export the get_image drawable virtual function.
11587
11588         * gdk/linux-fb/gdkimage-fb.c:
11589         Add last argument to t_type_register_static call.
11590         rename gtk_image_get to _gdk_fb_get_image and
11591         export it for use by gdkdrawable-fb2.
11592
11593         * gdk/linux-fb/gdkprivate-fb.h:
11594         export _gdk_fb_get_image.
11595
11596         * gdk/linux-fb/gdkselection-fb.c:
11597         Add new api call stubs.
11598
11599         * gtk/Makefile.am:
11600         Missing ( in linux-fb part.
11601
11602         * modules/linux-fb/Makefile.am:
11603         Must link with gdk_pixbuf or get unresolved symbol.
11604
11605 2000-11-01  Havoc Pennington  <hp@pobox.com>
11606
11607         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
11608         GTK_TYPE_TEXT_ITER and BOXED marshallers
11609
11610         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
11611
11612         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
11613         
11614         * gtk/gtk-boxed.defs: add GtkTextIter
11615
11616         * gtk/gtkmarshal.list: Add marshallers for text widget that 
11617         properly use OBJECT and BOXED
11618
11619 2000-11-01  Havoc Pennington  <hp@redhat.com>
11620
11621         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
11622
11623         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
11624         before returning it. 
11625         
11626 2000-11-01  Havoc Pennington  <hp@redhat.com>
11627
11628         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11629         Clip the rectangle to be rendered to the drawable, since
11630         get_from_drawable() requires a region within the drawable
11631
11632 2000-11-01  Havoc Pennington  <hp@redhat.com>
11633
11634         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
11635         from coordinates.
11636
11637 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
11638
11639         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
11640         it isn't NULL.
11641
11642 2000-11-01  Havoc Pennington  <hp@pobox.com>
11643
11644         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
11645         on a label
11646         (gtk_label_finalize): unref the attr list if any.
11647
11648         * gtk/testgtk.c (create_get_image): close test on second click
11649         (make_message_dialog): close dialog if it exists
11650
11651         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
11652
11653         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
11654         gdk-pixbuf
11655
11656         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
11657         from Pango markup format
11658         (gtk_label_set_markup_with_accel): ditto but with accelerator
11659         parsing
11660
11661         * gtk/gtkimage.c (gtk_image_expose): reformatting.
11662
11663         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
11664         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
11665         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
11666         call gdk_window_get_origin().
11667
11668         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11669         implement GDK_PIXBUF_ALPHA_FULL
11670         
11671 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
11672
11673         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
11674         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
11675         g_signal_handlers_disconnect_matched to block/unblock and disconnect
11676         multiple handlers respectively, instead of only treating the
11677         first handler found (bug reported by owen).
11678
11679 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
11680
11681         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
11682
11683         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
11684
11685         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
11686         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
11687         gtk/gtktreeviewcolumn.h: Fixed inline docs.
11688
11689         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
11690         widget.  Needs writing someday.
11691
11692         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
11693         the docs.
11694
11695 2000-10-30  Havoc Pennington  <hp@redhat.com>
11696
11697         * gtk/gtktextview.h, gtk/gtktextview.c:
11698         Rename delete_at_cursor delete_from_cursor, and 
11699         move to move_cursor.
11700
11701 2000-10-30  Havoc Pennington  <hp@redhat.com>
11702
11703         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
11704         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
11705         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
11706         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
11707         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
11708         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
11709         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
11710         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
11711         gtktexttypes.h, gtktextview.c, gtktextview.h:
11712
11713         Massive reindentation and reformatting. Arg alignment and comments
11714         still need fixing in various places.
11715
11716 2000-10-30  Havoc Pennington  <hp@redhat.com>
11717
11718         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
11719         to be named insert_at_cursor and delete_at_cursor so C++ can
11720         handle them.
11721
11722 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11723
11724         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
11725         to get a double directory separator in case the home directory
11726         ends with one. This would cause trouble especially on Windows,
11727         where the path will be confused with the syntax for an an UNC
11728         (network share) path \\server\share\path.
11729         (gtk_rc_add_initial_default_files): Ditto.
11730
11731 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
11732
11733         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
11734
11735         * gtk/gtktextview.c: Use correct marshallers.
11736
11737 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
11738
11739         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
11740         use new iter stuff, and added all the appropriate signals et al.
11741
11742         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
11743         code is internal to gtk only.
11744
11745 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11746
11747         * gtk/gtk.def
11748         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
11749         glib-genmarshal etc.
11750
11751 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
11752
11753         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
11754         parallel builds.
11755
11756 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
11757
11758         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
11759
11760 2000-10-27  Robert Brady  <robert@suse.co.uk>
11761
11762         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
11763         en_GB (British), ia (Interlingua).
11764
11765 2000-10-26  Havoc Pennington  <hp@redhat.com>
11766
11767         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11768
11769         Fixed output of:
11770         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11771         
11772         * gtk/gtktextsegment.c (char_segment_new): rename
11773         (_char_segment_new_from_two_strings): rename
11774         (_toggle_segment_new): rename
11775         
11776         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11777         (make_clipboard_widget): make it static
11778         (text_get_func): static
11779         (text_clear_func): static
11780
11781         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11782         static
11783         (hex_changed): make it static
11784         (hsv_changed): make it static
11785         (opacity_entry_changed): make it static
11786
11787         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11788         (toggle_segment_check_func): rename with _gtk
11789
11790         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11791         (_widget_segment_new): rename
11792         (_widget_segment_add): rename
11793         (_widget_segment_remove): rename
11794         (_widget_segment_ref): rename
11795         (_widget_segment_unref): rename
11796
11797         * gtk/gtktextmark.c (_mark_segment_new): Rename
11798         _gtk_mark_segment_new   
11799
11800 2000-10-26  Havoc Pennington  <hp@redhat.com>
11801
11802         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11803         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11804         types
11805
11806         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11807         marshaller types
11808
11809         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11810         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11811         license on these files.
11812
11813         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11814         work.
11815
11816         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11817         runtime random number different for each tree, instead of 
11818         a constant I made up.
11819
11820 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11821
11822         * gtk/Makefile.am: buncha cleanups, kludged build sources
11823         dependencies with a Makefile: oldest-source-stamp dependancy
11824         for the moment. automake is really fighting us here, with
11825         intentionally not allowing user-defined rules or dependancies
11826         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11827
11828         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11829         to public headers. tehy have a comment stating that they are
11830         "semi-public" aren't included by gtk.h and if enums popup there,
11831         they can be /*< skip >*/-ed.
11832
11833         * gtk/gtktextlayout.h: 
11834         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11835         added LGPL... <SIGH>
11836
11837 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11838
11839         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11840         GtkTreeIter.  Added iterators everywhere.
11841
11842         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11843
11844         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11845
11846         * gtk/gtktreestore.c: Changed to use the iterators.
11847
11848         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11849         iterators tomorrow.
11850
11851         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11852         iterators tomorrow.
11853
11854         * gtk/treestoretest.c: Changed to use iterators.
11855
11856         * demos/testgtk/main.c: Moved to use the new iterator system.
11857
11858 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11859
11860         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11861         localization misbehaviour.
11862
11863         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11864         a useless type without copy/free.
11865
11866         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11867         of GTK_TYPE_CTREE_NODE.
11868
11869 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11870
11871         * gtk/gtksignal.c:
11872         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11873         applicable.
11874
11875         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11876         gtk_selection_data_copy and gtk_selection_data_free
11877         do GtkSelectionData work as params in signals.
11878
11879 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11880
11881         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11882         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11883         couldn't they at least give it a non-standard name?
11884         
11885         * gtk/gtktextlayout.c: arg! yet another implementation of
11886         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11887
11888         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11889         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11890         home. now i know this _is_ a conspiracy.
11891
11892         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11893         ::state-changed.
11894
11895         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11896         (gtk_accel_group_create_add): marshaller signature fixups.
11897
11898         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11899         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11900
11901         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11902         anymore.
11903
11904 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11905
11906         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11907         due to the signal system changes, it wouldn't build currently. to
11908         be fixed soon.
11909
11910         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11911
11912         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11913         so it needs gtk_marshal_VOID__ENUM() instead of
11914         gtk_marshal_NONE__UINT().
11915
11916         * gdk/gdk*.c: adapted type registration functions.
11917
11918         * gtk/gtkbindings.c:
11919         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11920         gone.
11921
11922         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11923
11924         * gtk/gtkobject.c:
11925         (gtk_object_destroy):
11926         (gtk_object_shutdown): fixed recursion guards. basically we have to
11927         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11928         is called during ::destroy, and avoid recursion there.
11929
11930         * gtk/gtktypeutils.c:
11931         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11932         boxed_copy/boxed_free. this needs a more general solution based on a
11933         publically installed code-generator utility.
11934
11935         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11936         glib's gobject has support for that now.
11937         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11938
11939 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11940
11941         * gtk/gtksignal.[hc]:
11942         * gtk/gtkmarshal.[hc]:
11943         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11944         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11945         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11946         care of that.
11947
11948         * *.c: marshaller name fixups.
11949
11950         * gtk/gtkmarshal.list: added a comment briefing the format.
11951
11952 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11953
11954         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11955         compatibility macros here now. more specifically, most of
11956         the API is preserved (yes, _most_, nonwithstanding the
11957         following exceptions listed, the API is stil lHUGE ;)
11958         things that got removed completely:
11959         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11960         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11961         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11962         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11963         gtk_signal_remove_emission_hook().
11964         non-functional functions variants:
11965         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11966         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11967         not supported anymore.
11968         (gtk_signal_compat_matched): new internal function to aid
11969         implementation of the compatibility macros, it  provides
11970         functionality to block/unblock/disconnect handlers based
11971         on func/data.
11972
11973         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11974
11975         * *.c: adaptions to new type registration API signatures.
11976
11977 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11978
11979         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11980
11981 2000-10-25  Robert Brady  <robert@suse.co.uk>
11982
11983         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11984         gdk_property_delete): If window == NULL, assume the root window.
11985         (restoring the behaviour that was in 1.2).
11986         
11987         * gtk/testtext.c (save_buffer): Allow creation of new files when
11988         saving.
11989
11990         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11991         calls to read().
11992
11993 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11994
11995         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11996
11997         * gdk/win32/gdkdrawable-win32.c
11998         * gdk/win32/gdkimage-win32.c
11999         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
12000         X11 backend.
12001
12002         * gdk/win32/gdkcc-win32.c
12003         * gdk/win32/gdkcolor-win32.c
12004         * gdk/win32/gdkfont-win32.c
12005         * gdk/win32/gdkinput-win32.c
12006         * gdk/win32/gdkmain-win32.c
12007         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
12008
12009 2000-10-24  Havoc Pennington  <hp@redhat.com>
12010
12011         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
12012         it a static function
12013
12014         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
12015         redraw text when a tag is applied to it.
12016
12017         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
12018         (gtk_text_tag_affects_nonsize_appearance): private functions to
12019         see if a tag requires various kinds of redraw/layout to be queued
12020         up.
12021
12022         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
12023
12024         * gtk/testtext.c (fill_example_buffer): Put the cursor 
12025         at the start of the buffer, so search works by default
12026
12027         * gtk/gtktextiter.c (lines_match): init match_start always
12028
12029         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
12030         function, get iter at a line + a byte index
12031
12032         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
12033         to set byte position within a line
12034         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
12035
12036 2000-10-23  Havoc Pennington  <hp@redhat.com>
12037
12038         * gtk/testtext.c: Re-enable the "find" dialog
12039
12040         * gtk/testgtk.c: Add test for gdk_drawable_get_image
12041         
12042         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
12043         the arguments to gdk_draw_drawable were in the wrong order
12044         (gdk_window_paint_init_bg): This function was ignoring the
12045         init_region, instead of clipping to it, so the entire backing
12046         pixmap was cleared on every begin_paint()
12047         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
12048         was in here again, the loop kept using the same GtkWindowPaint
12049         over and over.
12050         (gdk_window_begin_paint_region): Fix a bug where we had two
12051         x_offset instead of x_offset and y_offset
12052
12053         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
12054         before we get the image.
12055         (gdk_draw_drawable): get the composite before we draw the drawable.
12056         (gdk_drawable_real_get_composite_drawable): default
12057         get_composite_drawable implementation that returns the drawable 
12058         itself
12059
12060         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
12061         get_composite_drawable virtual function
12062
12063         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
12064         list-walking bug
12065
12066         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
12067         make this work if the source drawable is a GdkDrawableImplX11
12068         instead of a public drawable type. This is really broken; the
12069         problem is that GdkDrawable needs a virtual method get_xid(), but
12070         of course that doesn't work in practice. Enter RTTI.
12071
12072         Also, improve mismatched depth message.
12073
12074         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
12075         GdkPixmap
12076
12077         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
12078         install _gdk_x11_get_image as our implementation of get_image
12079         
12080         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
12081         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
12082
12083         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
12084         gdk_drawable_get_image
12085
12086         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
12087
12088         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
12089         get_image
12090
12091         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
12092         trailing semicolon after for loop
12093
12094 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
12095
12096         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
12097         where font_desc for widget's context lagged widget's font_desc by
12098         one step.
12099
12100 2000-10-22  Tor Lillqvist  <tml@iki.fi>
12101
12102         * gdk/win32/gdkgc-win32.c
12103         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
12104
12105         * gtk/makefile.mingw.in
12106         * gtk/gtk.def: Updates.
12107
12108         * gtk/testgtk.c: sleep() is called _sleep in MS's C
12109         library.
12110
12111         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
12112
12113         * gtk/makefile.msc: Remove
12114
12115         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
12116
12117         * gtk/Makefile.am: Add it.
12118
12119         * configure.in: Generate it.
12120
12121         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
12122         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
12123         something even if not implemented, to satisfy picky MSVC.
12124
12125         Patches by Hans Breuer:
12126         
12127         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
12128         SetBkMode() and SetTextAlign() before calling
12129         pango_win32_render().
12130
12131         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
12132         Set hcliprgn to NULL after destroying it.
12133         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
12134
12135         * gdk/win32/gdkgeometry-win32.c
12136         (_gdk_windowing_window_queue_antiexpose): More effective
12137         implementation.
12138
12139         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
12140         depth as default, not the visual's.
12141
12142         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
12143         against empty title.
12144
12145         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
12146         IMAGE_PRIVATE_DATA.
12147
12148         * gdk/win32/gdkimage-win32.c: Use it.
12149
12150 2000-10-22  Robert Brady  <robert@suse.co.uk>
12151
12152         * configure.in: Check for bind_textdomain_codeset
12153
12154         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
12155         present, make use of it.
12156
12157         Add a translatable string "default:LTR" which, if translated
12158         to "default:RTL", will cause the default direction to be
12159         Right-to-Left.
12160
12161         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
12162         direction if marked as flippable.
12163
12164         * gtk/gtkhscale.c: Mark widget as flippable.
12165         
12166 2000-10-04  Havoc Pennington  <hp@redhat.com>
12167
12168         * gtk/testgtk.c (create_buttons): create some stock buttons
12169         with the default accel group
12170         (create_image): test some new GtkImage features
12171         (make_message_dialog): test GtkMessageDialog
12172         (create_modal_window): fix someone's bizzarro indentation
12173
12174         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
12175         GTK_WIN_POS_CENTER_ON_PARENT. 
12176         Add "destroy with parent" setting, which means the window goes
12177         away with its transient parent.
12178         (gtk_window_get_default_accel_group): get the default accel group
12179         for the window.
12180         (gtk_window_set_destroy_with_parent): set/unset destroy with
12181         parent flag
12182         (gtk_window_read_rcfiles): invalidate icon set caches
12183         after reloading rcfiles 
12184
12185         * gtk/gtkenums.h (GtkWindowPosition): add
12186         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
12187         on its parent window when the dialog is mapped for the first time.
12188
12189         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
12190         a simple message dialog class
12191         
12192         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
12193         handler to emit response signal, and maybe later it would
12194         honor a hide_on_delete flag - though that isn't there yet.
12195         Set border width on the vbox to 2, so we get some padding.      
12196         Use a button box for the action area.
12197         (gtk_dialog_key_press): synthesize a delete event if Esc
12198         is pressed and the GtkWidget key press handler didn't 
12199         handle the escape key.
12200         (gtk_dialog_new_with_buttons): new function creates a dialog
12201         with some default buttons in it.
12202         (gtk_dialog_add_action_widget): add an activatable widget
12203         as a button in the dialog - you can also add a non-activatable
12204         widget by accessing the action area directly.
12205         (gtk_dialog_add_button): add a simple button - stock ID or 
12206         label - to the action area
12207         (gtk_dialog_response): emit response signal
12208         (gtk_dialog_run): block waiting for the dialog, return 
12209         the response. Override normal delete_event behavior, so that 
12210         delete_event does nothing inside gtk_dialog_run().
12211
12212         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
12213         emitted when an action widget is clicked or the dialog gets
12214         delete_event
12215
12216         * gtk/gtk.h: add gtkmessagedialog.h
12217
12218         * gtk/Makefile.am: add gtkmessagedialog.[hc]
12219
12220 2000-10-18  Havoc Pennington  <hp@redhat.com>
12221
12222         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
12223         where any number of empty lines would get skipped
12224
12225         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
12226         edge.
12227
12228         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
12229         warning about invalid iterators (explain more thoroughly)
12230         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
12231
12232         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
12233         big
12234
12235         * demos/*.c: Add error handling
12236
12237         * gtk/gtktextbuffer.c: don't modify const iterators
12238
12239         * gtk/gdk-pixbuf-loader.c: Add full error handling here
12240
12241         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
12242         on file load
12243
12244         * gtk/gtkiconfactory.c: Update to reflect addition of error
12245         handling to gdk-pixbuf loaders
12246
12247 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
12248
12249         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
12250         move to new modularized testgtk.
12251
12252 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
12253
12254         * gtk/gtktreeview.c: Draw the arrows correctly.
12255
12256         * gtk/gtktreemodel.c: Added user docs.
12257
12258         * gtk/gtk.h: remove gtktreedatalist.h.
12259
12260         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
12261         parent when generating my type.
12262
12263         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
12264         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
12265
12266 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12267
12268         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
12269         GtkTreeModel from object to interface.
12270
12271 2000-10-16  Havoc Pennington  <hp@redhat.com>
12272
12273         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
12274         compilation
12275
12276 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12277
12278         * gtk/gtktreeselection.c: Add API documentation to all public
12279         functions.
12280
12281         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
12282         functions.
12283
12284 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
12285
12286         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
12287         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
12288         docs to all public functions.
12289
12290         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
12291         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
12292         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
12293         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
12294         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
12295         issue.
12296
12297 2000-10-14  Robert Brady  <robert@suse.co.uk>
12298
12299         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
12300
12301 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
12302
12303         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
12304         values other then G_TYPE_STRING.
12305         * gtk/gtktreeselection.c: Minor commenting updates.
12306         * gtk/gtktreeview.c: Format updates.
12307
12308 2000-10-09  Tor Lillqvist  <tml@iki.fi>
12309
12310         * README.win32: Update.
12311
12312         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
12313         lines that had been deleted by mistake (?).
12314
12315         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
12316         also the case fg==white and bg==black (but still not randomly
12317         coloured cursors). Thanks to Wolfgang Sourdeau.
12318
12319         * gdk/win32/*.c: Silence gcc -Wall.
12320
12321         * gtk/gtk.def: Add missing entry points.
12322
12323         Fixes by Hans Breuer:
12324
12325         * gdk/makefile.msc
12326         * gdk/win32/makefile.msc: Update.
12327
12328         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
12329         some MSVC thing, presumably), cause breakpoint on failures. Add
12330         GDK_NOR case. Call g_log_set_always_fatal.
12331
12332         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
12333         should be pased by reference.
12334         
12335         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
12336         
12337         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
12338
12339         * gdk/win32/gdkevents-win32.c
12340         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
12341
12342         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
12343         implementation object.
12344
12345         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
12346         not just windows.
12347         
12348         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
12349         Use the wrapper object.
12350         
12351 2000-10-06  Havoc Pennington  <hp@redhat.com>
12352
12353         * Makefile.am (SRC_SUBDIRS): contrib subdir
12354
12355         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
12356         so it can be used in Xlib version
12357
12358         * demos/testpixbuf.c (update_timeout): error checking from 1.0
12359         tree
12360
12361         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
12362         change from 1.0 tree that returns first frame of animation
12363         if the loaded file is an animation.
12364
12365         * contrib: add new directory to hold stuff that comes with GTK+
12366         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
12367         
12368         * configure.in: add contrib/*
12369
12370 2000-10-05  Havoc Pennington  <hp@redhat.com>
12371
12372         * demos/testpixbuf-save.c: add pixbuf save test
12373
12374         * demos/Makefile.am: add testpixbuf-save.c
12375
12376 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
12377
12378         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
12379         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
12380         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
12381         * gtk/gtktreeselection.[ch]: Replaced
12382         "node_selected"/"node_unselected" signal with "selection_changed"
12383         signal.
12384
12385 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12386
12387         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
12388         tree widget.
12389
12390 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12391
12392         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
12393         drawing.
12394
12395 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
12396
12397         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
12398         Move list pointer forwards before removing item from
12399         list. (Crash reported by Salmaso Raffaele)
12400
12401         * gdk/gdkwindow.h: Remove spurious trailing ,
12402
12403         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
12404         dependencies on uninstalled libraries, sorry folks.
12405
12406 2000-10-04  Havoc Pennington  <hp@redhat.com>
12407
12408         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
12409         gtk/gtkiconfactory.c: Fix copyrights    
12410
12411         * demos/testpixbuf.c: add inline pixbuf test
12412         
12413 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
12414
12415         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
12416         Add gdk_window_iconify.
12417
12418         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
12419         (gdk_window_set_geometry_hints): Add win_gravity
12420         to geometry structure.
12421
12422         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
12423         Implement _NET_WM_PING.
12424
12425         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
12426         Set _NET_WM_PID on the client leader.
12427
12428         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
12429         Handle UTF-8 better.
12430
12431         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
12432         UTF-8 better, set _NET_WM_NAME as well. Only set
12433         icon name if it hasn't previously been explicitely 
12434         set.
12435
12436 2000-10-03  Havoc Pennington  <hp@redhat.com>
12437
12438         * gtk/testtextbuffer.c: clean up trailing whitespace,
12439         add extensive tests for tag toggle iteration.
12440         
12441         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
12442         distance
12443
12444         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12445         optimize case where the tag root is on level 1
12446         (gtk_text_line_previous_could_contain_tag): attempt to implement
12447         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
12448         functionality
12449
12450         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
12451         Implement this, though not very efficiently.
12452
12453         * gtk/gtktextiterprivate.h: reformat
12454
12455         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
12456         iterator
12457
12458         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
12459         this to properly revalidate the iterators.
12460
12461         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
12462         properly at the end of the line (and therefore on empty lines)
12463
12464         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
12465         maybe we should return a value...
12466
12467 2000-10-03  Tor Lillqvist  <tml@iki.fi>
12468
12469         * config.h.win32: Guard definition of alloca(). glib.h now handles
12470         that.
12471
12472         * gdk/gdk.def
12473         * gtk/gtk.def: Add new entry points.
12474
12475         Changes just to make GTK+ build without errors on Win32. No hope
12476         of it working in its current state, though...:
12477         
12478         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
12479         some functions from the X11 backend, just to make GTK+ build.
12480
12481         * gdk/makefile.mingw.in
12482         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
12483         number. Add new object files.
12484
12485         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
12486         GetMessageTime to get timestamp (where on X11 uses
12487         gdk_x11_get_server_time()).
12488
12489 2000-10-02  Havoc Pennington  <hp@pobox.com>
12490
12491         * gtk/gtktextview.c: text_window_* weren't static and should have
12492         been.
12493         Start work on child widgets; not yet complete, syncing to 
12494         office computer.
12495
12496         * gtk/gtktextchild.h: change this to contain a public interface,
12497         starting work on child interfaces.
12498         * gtk/gtktextchildprivate.h: move private interfaces here
12499
12500         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
12501
12502         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
12503         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
12504         gtk/gtktextmark.c: copyright notices
12505
12506         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
12507         internal functions      
12508
12509         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
12510         internal function
12511
12512         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
12513         Reformatting    
12514
12515 2000-09-30  Havoc Pennington  <hp@pobox.com>
12516
12517         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12518         NULL start/end pointers
12519
12520         * gtk/gtktextbuffer.c: Write some docs
12521         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12522         NULL, so you can just check whether there's a selection.        
12523
12524         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12525         cleanup_line or segments_changed ourselves, it gets done 
12526         in unlink_segment
12527
12528         * gtk/gtktextmark.h:
12529         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12530         
12531         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12532
12533         * gtk/gtktextmark.c: delete some more old Tk cruft
12534
12535         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12536         mark before removing it, so we can emit MARK_DELETED with a valid
12537         pointer.
12538         (gtk_text_buffer_mark_set): hold ref across signal emission
12539
12540         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12541         whining about attempts to delete special marks
12542
12543         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12544         underscore, since it's internal.
12545
12546         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12547         now implemented in terms of iterators in gtktextiter.h
12548
12549         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12550         New function, destructively sets contents of buffer. Also 
12551         a convenient way to clear the buffer by setting text to ""
12552
12553         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12554         multiline string literal
12555
12556         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
12557         text changes.
12558
12559         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
12560         is not dereferenceable
12561         (gtk_text_iter_forward_lines): fix return value
12562
12563 2000-09-29  Havoc Pennington  <hp@redhat.com>
12564
12565         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
12566
12567         * gtk/gtktextview.c: Implement drag thresholding; change functions 
12568         that set border window size to have nicer name
12569         (gtk_text_view_mark_set_handler):  Fix this to have the 
12570         right signature.
12571
12572         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
12573
12574         * gtk/testtext.c: Update with API changes, put line numbers on 
12575         both sides.
12576         
12577         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
12578         with this
12579
12580         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
12581         pixbuf; delete a big block of #if 0 Tk code
12582
12583         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
12584         insert_pixmap with insert_pixbuf
12585
12586 2000-09-29  Martin Baulig  <baulig@suse.de>
12587
12588         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
12589         confusion with the GdkPixbuf of the GNOME 1.x platform.
12590
12591 2000-09-29  Havoc Pennington  <hp@pobox.com>
12592
12593         * gtk/gtktextview.c: Implement the side windows.
12594
12595         * gtk/testtext.c: Implement simple line numbering in the 
12596         left side window; seems to make scrolling sloooow. Oops.
12597         Also, cursor blink is for some reason causing redraws
12598         of the line numbers. Should investigate...
12599
12600 2000-09-28  Havoc Pennington  <hp@redhat.com>
12601
12602         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
12603         scrolling child windows, and draw focus rectangle properly.
12604         
12605         (gtk_text_view_buffer_to_window_coords):
12606         Coordinate transformation to deal with all these freaking windows
12607         and offsets
12608         (gtk_text_view_window_to_buffer_coords): transform the other way
12609
12610         * gtk/testtext.c (create_buffer): Update to match Pango API change
12611
12612         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
12613         anonymous tags
12614         (foreach_unref): don't emit remove signal from finalize, just
12615         set tag's parent to NULL
12616
12617 2000-09-26  Havoc Pennington  <hp@redhat.com>
12618
12619         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
12620         Fix some warnings       
12621
12622 2000-09-26  Havoc Pennington  <hp@redhat.com>
12623
12624         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
12625         headers into the private header list
12626
12627         * Makefile.am (pkgconfig_DATA): install pkg-config files
12628
12629         * configure.in: add pkg-config files
12630
12631         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
12632
12633         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
12634         outstanding icon caches on theme change.
12635
12636         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
12637         important types:
12638
12639         (GtkIconSource): Specification for creating a pixbuf 
12640         appropriate for a direction/state/size triplet from 
12641         a source pixbuf or filename
12642
12643         (GtkIconSet): List of GtkIconSource objects that are used to
12644         create the "same" icon (e.g. an OK button icon), and cache for
12645         rendered icons
12646
12647         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
12648         up the icon set for a given stock ID.  GTK maintains a stack of
12649         GtkIconFactory to search, and applications or libraries can add
12650         additional icon factories on top of the stack
12651         
12652         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
12653         the set of GtkIconSource specified for a given stock ID into 
12654         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
12655         RcStyle, under the specified stock ID.
12656
12657         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
12658         render_icon used to derive a GdkPixbuf from a GtkIconSource.
12659         This allows people to theme how prelight, insensitive, etc. are
12660         done.
12661
12662         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
12663         icon factories for a style, and return the resulting 
12664         icon set if any.
12665
12666         (gtk_style_render_icon): Render an icon using the render_icon 
12667         method in the GtkStyleClass.
12668
12669         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
12670         Use the style for a given widget to look up a stock ID, get the
12671         icon set, and render an icon using the render_icon method 
12672         of the style
12673
12674         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
12675         (contains information about a stock item), the built-in stock item
12676         IDs, and functions to add/lookup stock items.
12677
12678         * gtk/stock-icons/*: Stock icons that come with GTK
12679
12680         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
12681         a button based on a GtkStockItem
12682         (gtk_button_new_accel): Takes a uline string and accel group, and
12683         installs the accelerator.
12684
12685         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
12686         image-display widget.
12687
12688 2000-09-25  Havoc Pennington  <hp@redhat.com>
12689
12690         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
12691
12692         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
12693         Fix a bug when removing node data, we didn't properly 
12694         re-splice the linked list after removing the data.
12695
12696         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
12697         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
12698
12699         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
12700
12701         * gtk/gtktextlayout.c (set_para_values): Set tab array 
12702         for the layout from the GtkTextTag.
12703
12704         * gtk/gtktexttypes.h: delete tab and search cruft, 
12705         remove g_convert() in favor of GLib version
12706
12707         * gtk/gtktexttypes.c: remove tab implementation from here,
12708         move to Pango
12709
12710         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
12711         tab stuff using new PangoTabArray from Pango
12712
12713         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
12714         unused border_width stuff
12715
12716 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
12717
12718         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
12719         glib) and now useless utf_to_latin1() latin1_to_utf()
12720
12721         * gtk/gtktextview.[ch]: Change ::move_insert and
12722         ::delete_text action signals to ::move and ::delete;
12723         create the signals with the right enumeration type,
12724         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
12725         C-v bindings, change Home, End to move to beginning/end
12726         of line, Add C-Home C-End to move to beginning/end
12727         of buffer. Change ::cut_text to ::cut_clipboard, etc;
12728         combine ::scroll_text into ::move; use new GtkSelectionData
12729         functions to simplify DND text handling.
12730         
12731         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
12732         deletion enumerations here, rename enumeration values to 
12733         be consistently plural.
12734
12735         * gtk/gtktextbuffer.c: Use new clipboard interfaces
12736         for cut/copy/paste and primary selection.
12737
12738         * gtk/gtktextbuffer.[ch]: Remove excess time and
12739         'interactive' arguments from cut/copy/paste;
12740         rename cut to cut_clipboard, etc; remove
12741         gtk_text_buffer_get_clipboard_contents().
12742
12743         * gtk/gtktextlayout.[ch]: Add 
12744         gtk_text_layout_move_iter_to_line_end() to move the iter to 
12745         line ends.
12746
12747         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
12748         Functions to set or get a UTF-8 string on the selection
12749         data.
12750
12751         * gtk/gtkclipboard.[ch]: New, simplified selection handling
12752         interfaces.
12753
12754         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
12755         created widgets - one of these is useless if we don't.
12756
12757         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
12758         a public function clear all targets registered for the
12759         widget.
12760
12761         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
12762         Never call gtk_widget_realize() - that was just asking
12763         for bizarre side-effects.
12764
12765         * gtk/gtkselection.c (gtk_selection_owner_set): Call
12766         gdk_selection_owner_set even if the widget is the
12767         same so that we reliably update the timestamp on
12768         the server.
12769
12770         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12771         gdk_x11_get_server_time() function.
12772         
12773         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12774         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12775         Add some tricky filtering on serial numbers for
12776         selection clear events to fix up long-standard
12777         race condition FIXME's in gtkselection.c.
12778
12779         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12780         routines to convert from utf8 to compound text or
12781         STRING and from a text property to UTF-8.
12782
12783         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12784         a convenience function gdk_get_current_event_time().
12785
12786         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12787         and free selection_data->data properly
12788
12789 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12790
12791         * gtk/gtkthemes.c: Remove some unecessary includes.
12792
12793 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12794
12795         * gtk/gtktextdisplay.c
12796         * gtk/gtktextlayout.c
12797         * gtk/gtktexttag.c
12798         * gtk/gtktexttag.h
12799         * gtk/testtext.c: Change the overstrike property to strikethrough,
12800         to closer match pango.
12801
12802 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12803
12804         * gtk/gtktextview.c: Fix up visibility so that focus,
12805         cursor_visible and blink interact properly.  Reenable cursor blink
12806         which had been roughly disabled. Make blink and focus
12807         properly per-view.
12808
12809         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12810         Add a flag for whether to display insertion cursor and
12811         a function to set the flag.
12812
12813         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12814         get_line_y() to get_line_yrange(), to be a bit more generally
12815         useful.
12816
12817 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12818
12819         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12820           do stop_navigating_submenu, to clear last timeout properly.
12821           Also in gtk_menu_motion_notify move ignore_enter above
12822           the conditional to make it always happen as suggested by Owen
12823
12824 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12825
12826         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12827
12828         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12829         w32api headers.
12830
12831         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12832         declarations.
12833
12834         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12835         (gdk_win32_get_colormap): A line had been deleted by mistake.
12836
12837         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12838         (gdk_event_translate): Handle more virtual keycodes to be able to
12839         generate GDK events for Control-comma, Control-period, etc.
12840
12841         * gtk/gtk.def: Add some missing entry points.
12842
12843 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12844
12845         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12846         Doc comment fixing. (Mostly non-matching parameter names.)
12847
12848         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12849         comments a little to avoid looking like a doc comment.
12850
12851         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12852         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12853         conversions be changed to GError?)
12854
12855         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12856         Move private #defines into .c file.
12857
12858         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12859         order of argument addition, remove duplicates.
12860
12861         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12862         parent class is FrameClass, not BinClass.
12863
12864         * gtk/gtk.h: Add gtkinvisible, which was missing.
12865         (It's occasionalyl useful for client apps, if seldom.)
12866
12867         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12868         #define.
12869
12870 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12871
12872         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12873         coordinates when creating window, instead of GDK-space
12874         coordinates. (Avoid BadValue on too large windows.)
12875
12876 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12877
12878         * configure.in (use_mmx_asm): Remove conftest* after use along the
12879         lines of AC_TRY_COMPILE.        
12880         
12881         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12882         of g_dirname, which is deprecated.
12883         (gtk_rc_parse_any): Removed calls to
12884         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12885
12886         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12887         Removed calls to g_hash_table_{freeze,thaw}, as they are
12888         deprecated now.
12889
12890         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12891         instead of g_basename.
12892         
12893 2000-09-04 Elliot Lee <sopwith@redhat.com>
12894         
12895         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12896         ANSI warning.
12897
12898 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12899
12900         * gtk/gtkwidget.h:  Add some documenting comments about 
12901           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12902           just as owen said on irc.
12903
12904         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12905           set HAS_DEFAULT.  Only set it if there isn't another window
12906           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12907           it if the widget is not the focused window with RECEIVES_DEFAULT.
12908           This fixes weird double default bugs in dialogs which has things
12909           call gtk_window_set_default at times.
12910
12911 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12912
12913         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12914         Nils Barth and David Santiago to improve submenu
12915         navigation. The patch does this by creating a triangular
12916         region from the point where the pointer leaves the
12917         menu to the submenu.  While the pointer is in
12918         that region and a timeout has not expired, events 
12919         that would cause the active submenu to change are
12920         ignored.
12921
12922 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12923
12924         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12925         moving a toplevel window immediately after sizing it would
12926         result in it being sized back to the old size since 
12927         impl->width, impl->height aren't updated until we hear
12928         back from the server. There is still a (longstanding) bug
12929         here that gdk_window_get_size() will give the wrong size
12930         until we do hear back.
12931
12932 2000-08-31  Havoc Pennington  <hp@redhat.com>
12933
12934         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12935         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12936         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12937         Rename GtkTextStyleValues to GtkTextAttributes
12938
12939 2000-08-31  Havoc Pennington  <hp@pobox.com>
12940
12941         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12942         for rapid testing whether an iterator is the end iterator
12943         (gtk_text_btree_new): init end line cache
12944         (gtk_text_line_is_last): use fast cached line to 
12945         see if we're the last line.
12946         (get_last_line): use cached line here too, should 
12947         speed up some random unrelated code.
12948         
12949 2000-08-30  Havoc Pennington  <hp@pobox.com>
12950
12951         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12952         signals.
12953
12954         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12955         delete_text signals. This allows the signals to be used for
12956         implementing undo.
12957
12958         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12959         provide "interactive" argument when emitting insert_text or
12960         delete_text signal.
12961         
12962 2000-08-30  Havoc Pennington  <hp@pobox.com>
12963
12964         * gtk/gtktextbuffer.c: Docs
12965
12966 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12967
12968         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12969         from switch statements, since Tor removed the enumeration
12970         value.
12971         
12972         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12973         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12974
12975 2000-08-29 Elliot Lee <sopwith@redhat.com>
12976         * */*.h: Use G_GNUC_CONST.
12977
12978 2000-08-27  Havoc Pennington  <hp@pobox.com>
12979
12980         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12981         minor indentation fixes, inserted some FIXME about stuff I
12982         realized was broken while documenting it.
12983         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12984         GTK convention  
12985
12986 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12987
12988         * gtk/testgtk.c (create_styles): Fix double free of
12989         font desc.
12990
12991 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12992
12993         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12994         
12995         * gtk/testgtk.c (create_styles): Add a test for modifying
12996         the style through gtk_widget_modify_*.
12997
12998         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12999         a function to get the current modifier style.
13000
13001         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
13002         of the passed in GtkRcStyle instead of ref'ing it.
13003
13004         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
13005
13006 2000-08-20  Tor Lillqvist  <tml@iki.fi>
13007
13008         * gdk/gdkimage.h
13009         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
13010         shared memory image+pixmap GdkImage type, or
13011         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
13012         I am dropping that.
13013
13014         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
13015         actually call gtk_init_abi_check(), passing also
13016         sizeof(GtkWindow). Ditto for gtk_init_check(). 
13017
13018         * gtk/gtk.def
13019         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
13020         New functions, used to check that the GTK+-using code has been
13021         compiled using the correct compiler and switches. In particular,
13022         with gcc one has to use the -fnative-struct switch as GTK+ is
13023         compiled with that.
13024
13025 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
13026
13027         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
13028         ->prev fields when merging lists. (Found simultaneously
13029         by Pawel Salek and Jakub Jelinek)
13030
13031 2000-08-12  Tor Lillqvist  <tml@iki.fi>
13032
13033         * gdk/gdk.def
13034         * gtk/gtk.def: Add missing entries.
13035
13036         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
13037         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
13038
13039         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
13040         function. Dummy implementation at this point.
13041
13042         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
13043         rules. Undefine GTK_COMPILATION when compiling the test programs.
13044         
13045         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
13046
13047 2000-08-11  Tor Lillqvist  <tml@iki.fi>
13048
13049         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
13050         to convert back and forth from UTF-8 and the "system" (or "current
13051         locale") charset when necessary. Indentation/spacing cleanup.
13052
13053 2000-08-10  Havoc Pennington  <hp@redhat.com>
13054
13055         * Makefile.am (snapshot): Change the format of the snapshot
13056         version to match glib
13057
13058         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
13059         from EXTRA_DIST since it doesn't seem to exist
13060
13061 2000-08-10  Tor Lillqvist  <tml@iki.fi>
13062
13063         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
13064         version of the directory name (not the UTF-8 one) when building
13065         the path name to stat().
13066
13067 2000-08-03  Elliot Lee  <sopwith@redhat.com>
13068
13069         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
13070         PANGO_ATTR_SHAPE set.
13071
13072 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
13073
13074         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
13075         Peter Osterlund to simplify the code while keeping the
13076         functionality the same.
13077
13078 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
13079
13080         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
13081         is_viewable() test further inside the function, since removing the 
13082         window from the redraw list without clearing ->update_area
13083         was also very broken.
13084
13085 2000-08-02  Tor Lillqvist  <tml@iki.fi>
13086
13087         * configure.in: Check for <unistd.h>.
13088
13089 2000-08-01  Martin Baulig  <baulig@suse.de>
13090
13091         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
13092         to display the message that this is a development version of GTK+.
13093
13094 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
13095
13096         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
13097         was depending on widget->allocation instead of the width of text_area,
13098         which was incorrect for subclasses like GtkSpinButton.
13099
13100         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
13101         with width == 1 tests that should be width == -1.
13102
13103 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
13104
13105         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
13106         (broken, Elliot, every single window blank on X) custom code with call
13107         to gdk_window_is_viewable() which a) prevents code duplicate and
13108         b) works. 
13109
13110 2000-07-31  Elliot Lee  <sopwith@redhat.com>
13111
13112         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
13113         to get the GDK_PARENT_ROOT() macro to work.
13114         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
13115         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
13116         of, windows that aren't shown.
13117         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
13118         pointer grab stuff.
13119
13120 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
13121
13122         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
13123           s/gtk_main_iteration/g_main_iteration/
13124
13125           Did this already in change:
13126                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13127           don't know how it got reverted.
13128
13129 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
13130
13131         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
13132         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
13133
13134         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
13135         not gdk_pixbuf.
13136
13137 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
13138
13139         * configure.in,po/{sp,sr}.po: Added Serbian files
13140
13141 2000-07-30  Tor Lillqvist  <tml@iki.fi>
13142
13143         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
13144
13145         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
13146         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
13147         GIOChannel implementation.
13148
13149         * gdk/win32/gdkinput.c
13150         * gdk/win32/gdkpango-win32.c: Update license name here, too.
13151
13152         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
13153         definition to match prototype.
13154
13155         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
13156
13157 2000-07-27  Elliot Lee  <sopwith@redhat.com>
13158
13159         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
13160         function, to allow handling image formats that cannot be detected
13161         by looking at content alone.
13162
13163 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
13164
13165         * docs/tutorial/*.gif *.jpg *.eps
13166           Update these to the same look-n-feel.
13167           Why does including images in DocBook suck so badly?
13168
13169 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
13170
13171         * gtk/gtktable.c: applied patch from Phil Thompson
13172         <phil@river-bank.demon.co.uk> that enables space settings for
13173         the last row/columns as well.
13174
13175 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
13176
13177         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
13178         updates the license headers to the GNU Lesser General Public License,
13179         as well as updating the copyright year to 2000.
13180
13181 2000-07-26  Robert Brady  <rwb197@zepler.org>
13182
13183         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
13184           and po/Makefile, was installing and looking for them under gtk20
13185           and gtk2 respectively.
13186
13187 2000-07-25  Havoc Pennington  <hp@redhat.com>
13188
13189         * gtk/testtext.c: Comment out some stuff that depends on the rest
13190         of my patches.
13191
13192 2000-07-25  Havoc Pennington  <hp@redhat.com>
13193
13194         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
13195         buffer
13196
13197 2000-07-25  Havoc Pennington  <hp@redhat.com>
13198
13199         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
13200         widget changes.
13201
13202         * gtk/gtktextview.h: To be consistent with usage of "line"
13203         throughout the API to mean "newline-terminated thingy", change
13204         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
13205         to MOVEMENT_LINE.
13206
13207         (GtkTextView): Add flags for default editability, and whether to
13208         show the cursor. Add functions to get/set that. Add 
13209
13210         (gtk_text_view_get_iter_location): new function
13211
13212         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
13213         gtktextlayout.h
13214         (g_convert): Add g_convert temporarily, will go in glib in a bit
13215         
13216         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
13217         GtkTextTagTableForeach instead of brokenly using GHFunc.
13218         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
13219
13220         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
13221         moved to public header.
13222
13223         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
13224         "invisible", since "elide" was a bad name.
13225         (gtk_text_tag_get_priority): Added
13226
13227         (GtkTextStyleValues): put this in public header, along with
13228         functions to use it.
13229
13230         * gtk/gtktextmarkprivate.h: Include more headers, since we no
13231         longer include gtktextbtree.h.
13232
13233         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
13234         gtk_text_mark_deleted
13235
13236         * gtk/gtktextlayout.h: Don't include the "really private" headers,
13237         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
13238         to make this possible. Now we only need to install
13239         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
13240         (However the Makefile.am isn't changed yet because of the
13241         logistics of merging gtk-hp-patches piecemeal)
13242
13243         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
13244         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
13245         gtk_text_iter_get_line is now used in the public API for a
13246         different purpose.
13247
13248         * gtk/gtktextiter.h: Clean up function names to be more
13249         consistent. Always call char offset "offset" and byte index
13250         "index". A "line" is always a line number. 
13251
13252         (gtk_text_iter_is_last): new function, more efficient than 
13253         the existing way to check
13254         (gtk_text_iter_is_first): new function, also more efficient
13255
13256         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
13257
13258         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
13259         gtk_text_iter_forward_char, etc.
13260
13261         (gtk_text_iter_forward_to_tag_toggle): Renamed from
13262         forward_find_tag_toggle, since this isn't a linear search
13263
13264         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
13265
13266         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
13267         New functions, search for a buffer substring.
13268
13269         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
13270         interactive and default editable (since we need to store that info
13271         until we receive the selection data).
13272
13273         Remove all the _at_char and at_line etc. versions of functions;
13274         only have iterator versions.
13275
13276         Add _interactive() versions of functions, that consider the
13277         editability of text. (FIXME add interactive flag to the 
13278         insert/delete signals per Darin's suggestion)
13279
13280         (gtk_text_buffer_get_tag_table): new function, demand-creates the
13281         tag table if necessary
13282
13283         Remove declaration of gtk_text_buffer_get_iter_from_string
13284
13285         (_gtk_text_buffer_get_btree): private/internal function, added.
13286         
13287
13288         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
13289         (gtk_text_line_is_last): new function
13290
13291 2000-07-25  Havoc Pennington  <hp@redhat.com>
13292
13293         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
13294         using GtkProgressBar. See Changes-2.0.txt for details.
13295
13296         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
13297         "pulse_step" which are the equivalent of
13298         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
13299         Implement new API.
13300         
13301         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
13302         (use_text_format) to mark whether text set on the progress bar is
13303         a format string. Deprecate entire GtkProgress interface.
13304
13305         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
13306         (gtk_progress_build_string): make this a no-op if use_text_format
13307         is FALSE
13308
13309         * docs/Changes-2.0.txt: Describe progress bar changes.
13310
13311 2000-07-25  Tor Lillqvist  <tml@iki.fi>
13312
13313         * Makefile.am: Include the build directory.
13314
13315         * configure.in: Generate build/Makefile, build/win32/Makefile,
13316         gdk/, gdk/win32/, and gtk/makefile.mingw.
13317
13318         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
13319         Add GETTEXT_PACKAGE.
13320         
13321         * gdk/gdk.def
13322         * gtk/gtk.def: Updates.
13323
13324         * gdk/gdkfont.h
13325         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
13326         need them any longer.
13327
13328         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
13329
13330         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
13331         PANGOWIN32_LIBS and gdk_pixbuf.
13332
13333         * gdk/win32: Compiles, but no doubt doesn't work at all.
13334
13335         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
13336
13337         * gdk/win32/gdkinput.c: New file, temporarily.
13338         
13339         * gdk/win32/gdkinput-win32.h: New file
13340
13341         * gdk/win32/gdkinputprivate.h: Remove.
13342
13343         * gdk/win32/gdkpango-win32.c: New file.
13344
13345         * gtk/makefile.mingw.in: New file
13346
13347         * gtk/makefile.cygwin: Removed
13348         
13349         * gtk/Makefile.am: Update accordingly.
13350
13351         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
13352         made externally visible.
13353
13354         * gtk/gtkmain.c: Use it.
13355         
13356         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
13357         is enough.
13358
13359         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
13360
13361 2000-07-24 Elliot Lee <sopwith@redhat.com>
13362         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
13363         individual backends already.
13364         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
13365         again. Yes, there really is a good reason for this, if you are using the gdkregion
13366         internals, and if you're not, why do you care?
13367         * gdk/gdkwindow.c: Fix inverted condition
13368         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
13369         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
13370         * gtk/gtkrange.c: Redraw trough when moving.
13371         * gtk/gtktypeutils.c: Fix warning by adding const cast.
13372         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
13373
13374 2000-07-23  Tor Lillqvist  <tml@iki.fi>
13375
13376         * configure.in: Check for mkstemp and sigsetjmp. Output
13377         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
13378
13379         More work on GDK for Win32. Still in an intermediate state.
13380
13381         * gdk/makefile.cygwin
13382         * gdk/win32/makefile.cygwin: Removed.
13383         
13384         * gdk/makefile.mingw.in
13385         * gdk/win32/makefile.mingw.in: New files.
13386
13387         * gdk/Makefile.am
13388         * gdk/win32/Makefile.am: Generate and distribute them.
13389
13390         * gdk/win32/gdkwindow-win32.h
13391         * gdk/win32/gdkdrawable-win32.h
13392         * gdk/win32/gdkpixmap-win32.h: New files.
13393
13394         * gdk/win32/gdkcolor-win32.c
13395         * gdk/win32/gdkcursor-win32.c
13396         * gdk/win32/gdkdrawable-win32.c
13397         * gdk/win32/gdkgc-win32.c
13398         * gdk/win32/gdkimage-win32.c
13399         * gdk/win32/gdkprivate-win32.h
13400         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
13401         Rename fields and variables called xcursor, xid, etc (these names
13402         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
13403
13404 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
13405
13406         * gtk/gtkentry.[ch]: Fix some problems with vertical
13407         alignment.
13408
13409         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
13410         char/byte confusion.
13411
13412 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
13413
13414         * gtk/gtktextview.c (changed_handler): Fix bug where
13415         redraw wasn't being done properly when height of
13416         dirty region changed.
13417
13418         * demos/Makefile.am: Remove various references to
13419         -lgmodule
13420
13421 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
13422
13423         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
13424         PangoAttrShape to reserve space for pixmaps, add 
13425         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
13426         in the display functions.
13427         
13428         * gtk/testgtk.c (create_layout): Set some more exotic
13429         scrolled window options
13430
13431         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
13432         Add function to set the shadow type of a window, to allow
13433         putting a shadow around widgets such as GtkLayout or GnomeCanvas
13434         which don't draw their own frame.
13435
13436 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
13437
13438         * docs/tutorial/package-db-tutorial.sh: New file for
13439           packaging DocBook format tutorial
13440
13441 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
13442
13443         * docs/tutorial/gtk-tut.sgml: Minor updates
13444
13445         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
13446
13447 2000-07-19  Tor Lillqvist  <tml@iki.fi>
13448
13449         * gtk/gtksignal.c: Fix C++ comment.
13450
13451         * gtk/gtkimmulticontext.c
13452         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
13453         don't return value from void functions.
13454
13455         * gtk/gtk.def: Add gtk_rc_style_unref.
13456
13457 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13458
13459         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
13460         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
13461         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
13462         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
13463         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
13464         gtk/gtktypeutils.h: Include files outside of the extern "C"
13465         block. Makes some C++ compiler happy. Reported by Denis Vakatov
13466         <vakatov@peony.nlm.nih.gov>.
13467
13468 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
13469
13470         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
13471           Completes first pass. Hurrah!
13472
13473 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
13474
13475         * docs/tutorial/gtk-tut.sgml: More clean ups.
13476
13477 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
13478
13479         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
13480         paint the background of the text area which was accidentally
13481         removed at some point.
13482
13483         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
13484           
13485          - Move most of the functionality from the theme vtable
13486            into GtkRcStyleClass and GtkStyleClass. The moved
13487            vtable functions were changed a bit in the move to
13488            work better in their new home.
13489
13490          - Get rid of the engine and engine_data fields from
13491            GtkRcStyle and GtkStyle; instead the theme
13492            engine derives theme-specific subclasses of GtkRcStyle
13493            and GtkStyle
13494
13495          - Add extra dlsym() found entry point to themes,
13496            theme_create_rc_style().
13497
13498         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
13499         in gtk_style_real_copy.
13500
13501         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
13502         to register a type associated with an engine. (The engine
13503         won't be unloaded as there is an instance of the type.)
13504
13505
13506 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
13507
13508         * docs/tutorial/gtk-tut.sgml: Clean ups.
13509
13510 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
13511
13512         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
13513           of cleaning up to do.
13514
13515 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13516
13517         * gdk/testgdk.c: New file, quick hack to test backends for
13518         pixel-by-pixel correctness of the most simple graphic operations.
13519
13520 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13521
13522         * Really release 1.3.1
13523         
13524         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13525         include structure.
13526
13527 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13528
13529         * Released 1.3.1
13530
13531 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13532
13533         * gtk/gtktextlayout.c: use FALSE for size_only most
13534         of the time when calling gtk_text_layout_get_line_display()
13535         to avoid causing double reshapes when a redraw follows
13536         immediately after.
13537
13538 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13539
13540         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13541         appropriate region and gdk_window_process_updates() so trough
13542         updating doesn't lag behind the window being scrolled.
13543
13544         * gdk/gdkgc.c: Make parent_class pointer static.
13545          
13546 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13547
13548         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13549         include <string.h>.
13550          
13551         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13552         cut-and-paste error in computing memory offset for 4 channels.
13553
13554 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13555
13556         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
13557         gtk_rc_append_default_pixmap_path(), since it wasn't
13558         adding an interesting path and we don't have a meaningful
13559         default for this value.
13560
13561 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
13562
13563         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
13564         gtk-config to gtk-config-2.0 move gtk_.m4 to
13565         gtk-2.0.m4
13566
13567         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13568         gdk/Makefile.am demos/Makefile.am: Change 
13569         library names to libgtk-1.3.la, etc, so that we
13570         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
13571
13572         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13573         gdk/Makefile.am gdk/x11/Makfile.am
13574         Move include files into /usr/include/gtk-2.0, 
13575         /usr/lib/gtk-2.0/include/
13576          
13577         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
13578         gtk/gtkintl.h: Change package for gettext from 
13579         gtk+ to gtk20. Put hack in autogen.sh to modify
13580         po/Makefile.in.in after gettextize to make this
13581         possible.
13582
13583         * gtk+.spec: Some updates, not tested.
13584
13585         * gdk-pixbuf/Makefile.am: Move loaders into
13586         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
13587
13588         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
13589         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
13590         to THEMENAME/gtk-2.0/. Move engine directory  to
13591         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
13592         
13593 2000-07-12  Tor Lillqvist  <tml@iki.fi>
13594
13595         Win32 changes, still doesn't build though.
13596
13597         * gdk/makefile.cygwin
13598         * gdk/win32/makefile.cygwin
13599         * gtk/makefile.cygwin: Updates.
13600
13601         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
13602         default values for fg and bg pixel as X11 does (0 and 1), not
13603         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
13604         Use 0 for pen width by default (treated as 1 anyway later, but for
13605         apps that might check the value in the GdkGC).
13606         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
13607         interface to gdk_gc_predraw and _postdraw.
13608
13609         * gdk/win32/gdkwin32.h
13610         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
13611
13612         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
13613         extraneous semicolon.
13614
13615         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
13616
13617         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
13618         not the Win32 bitspixel value.
13619
13620         * gdk/win32/gdkcc-win32.c:
13621         * gdk/win32/gdkcolor-win32.c 
13622         * gdk/win32/gdkprivate-win32.h
13623         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
13624         GDK object structure.
13625
13626 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
13627
13628         * docs/tutorial/gtk_tut_12.es.sgml (name): 
13629         * docs/tutorial/gtk_tut_it.sgml (name): 
13630         * docs/tutorial/gtk_tut_fr.sgml (name): 
13631         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
13632         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
13633
13634 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
13635
13636         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
13637           small changes.
13638
13639 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
13640
13641         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
13642         a bug here, never been here and never fixed anything ;(
13643         (don't segfault if tree->root_tree is NULL, which happens prior
13644         to widget realization, but puke instead).
13645
13646 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
13647
13648         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
13649         add the necessary tokens.
13650
13651         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
13652         (gtk_rc_style_to_style): copy thicknesses.
13653         (gtk_rc_init_style): apply thicknesses.
13654         (gtk_rc_parse_style): parse xthickness and ythickness.
13655
13656         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
13657
13658         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
13659         (gdk_window_new): 
13660         (_gdk_windowing_window_init): 
13661         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
13662         (gdk_pixmap_create_from_data): 
13663         (gdk_bitmap_create_from_data): 
13664         (gdk_pixmap_new): 
13665         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13666         (gdk_image_new): 
13667         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
13668         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
13669         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
13670         (gdk_colormap_get_system): 
13671         (gdk_colormap_new): 
13672         * gdk/gdkwindow.c (gdk_window_init): 
13673         * gtk/gtkstyle.c (gtk_style_new):
13674         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
13675         * gdk/gdkpixmap.c (gdk_pixmap_init): 
13676         * gtk/gtkrc.c (gtk_rc_style_new):
13677         use g_object_new() instead of g_type_create_instance() which
13678         is a private function for fundamental type implementations.
13679
13680 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
13681
13682         * configure.in: Add check for db2html
13683
13684 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
13685
13686         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
13687         hack to set glib_debug_objects based on gtk_debug_flags.
13688
13689 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
13690
13691         * INSTALL.in: Update the Prerequisites section.
13692
13693         * Makefile.am demos/Makefile.am docs/Makefile.am
13694         docs/tutorial/Makefile.am gdk/x11/Makefile.am
13695         gdk/linux-fb/Makefile.am: Dist fixes
13696
13697 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
13698
13699         * NEWS: 10,000 foot view of 1.3.1 changes.
13700
13701 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
13702
13703         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
13704         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
13705         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
13706         gdk/x11/gdkmain-x11.c: 
13707
13708         Patch from George Lebl to add a GdkGrabStatus enumeration to use
13709         as a return value of gdk_*_grab(). Previously, we just
13710         returned the X11 values directly.
13711
13712 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
13713
13714         * gdk/x11/Makefile.am: Patch from George Lebl to 
13715         install all the headers in the right place.
13716
13717 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
13718
13719         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
13720           initial conversion to DocBook.
13721
13722 2000-07-04  Tor Lillqvist  <tml@iki.fi>
13723
13724         * README.win32: Improve a bit.
13725
13726         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
13727         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
13728         Alt+0nnn on the numpad (used to enter characters by numeric code
13729         from current DOS or ANSI codepage) working correctly, as in other
13730         Windows apps.
13731
13732         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
13733         same argument validity tests as in X11 version.
13734         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
13735
13736         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
13737         definitions in case missing from headers.
13738
13739         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
13740         destroy the window-specific cursor.
13741         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
13742         calling GetModuleHandle(NULL).
13743         (gdk_window_set_cursor): Reworked to always copy the passed cursor
13744         with CopyCursor before setting it as the window-specific
13745         cursor. It is OK for the caller to destroy the GdkCursor (and thus
13746         also its Windows cursor) after calling this function. Destroy any
13747         previous window-specific cursor.
13748
13749 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
13750
13751         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
13752         font charset is iso8859-1, not iso-8859-1.
13753
13754 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
13755
13756         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
13757         Use g_get_charset() instead of g_get_codeset().
13758
13759         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
13760         Comment out some strdup'ing functions to keep timj
13761         happy until we finish fighting this out.
13762
13763 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
13764
13765         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
13766         <= width or height.
13767
13768         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13769         from 1.2 for parent/child states.
13770
13771         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13772         of typos.
13773
13774         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13775         event structures, replace with a generic axes field. Replace 
13776         deviceid/sourec with GdkDevice *device.
13777
13778         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13779         to extract particular axis use value from event. (Also
13780         can be used for normal X/Y.)
13781
13782         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13783         allow for arbitrary number of axes, namespace everything
13784         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13785         everywhere.
13786
13787         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13788         Get rid of the gdk_input_vtable setup if favor of simply
13789         defining the functions in gdkinput-none/gxi/xfree.c in
13790         a similar fashion to the way that the port structure is 
13791         done.
13792
13793         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13794         for new event structures. 
13795
13796         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13797         new device interfaces.
13798
13799 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13800
13801         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13802         set the initial text.
13803
13804         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13805         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13806         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13807         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
13808
13809         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13810         pango_layout_set_font_description to simplify.
13811
13812 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13813
13814         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13815         pango_layout_set_font_description to simplify.
13816
13817 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13818
13819         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13820         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13821         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13822
13823         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13824         PANGO_PIXELS() macro.
13825
13826 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13827
13828         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13829         that returns a PangoContext owned by the widget and updated to
13830         match future changes in the widget. Also, make 
13831         gtk_widget_create_pango_layout() use this context. If we ever
13832         add a ::changed signal to PangoContext, this will make things
13833         much more convenient. 
13834
13835         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13836         in the appropriate places instead of destroying the layouts and
13837         creating new ones.
13838
13839         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13840         in a few strategic places.
13841
13842 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13843
13844         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13845         gtk_widget_size_request() on reparented child, if one. Otherwise,
13846         queue_resize() on the child never results in it getting size-requested
13847         at all.
13848
13849         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13850         in option menus, so that (with luck) people won't copy it into
13851         their apps in the future.
13852
13853         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13854         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13855         a lot of problems with changing the size of the menu's menu
13856         items after adding it to the option menu.
13857
13858         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13859
13860         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13861         the text direction for a widget changes.
13862
13863         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13864         ::direction_changed to get rid of various hacks.
13865
13866 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13867
13868         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13869         name.
13870
13871 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13872
13873         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13874         flag to the structure. Do not call XFreePixmap on pixmaps created
13875         by gdk_pixmap_foreign_new().
13876
13877 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13880         value using GdkRGB functionality given GdkColormap and GdkColor.
13881         (name not final, waiting for inspiration.)
13882         
13883         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13884         set the foreground/background of a GC using the GC's colormap
13885         and GdkRGB. (name not final, waiting for inspiration.)
13886
13887         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13888         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13889
13890         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13891         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13892         purely a function of the corresponding colormap. Make
13893         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13894
13895         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13896         gdk_pixbuf_*create_from_xpm_* in terms of
13897         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13898         code.
13899
13900         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13901         advantage of the new draw_rgb_32_image_dithalign.
13902
13903         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13904
13905         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13906         on each created GC.
13907
13908         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13909
13910         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13911         which we initialize from the drawable when the GC is created,
13912         if the drawable has a colormap.
13913
13914         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13915
13916         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13917
13918         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13919
13920 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13921
13922         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13923         actually returning expose events, make sure to set
13924         the count field properly.
13925
13926         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13927         accidentally reintroced bug which always cleared
13928         the graphics_exposures value. 
13929
13930 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13931
13932         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13933
13934 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13935
13936         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13937
13938 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13939
13940         * docs/faq/gtk-faq.sgml: Start of Section 6.
13941
13942 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13943
13944         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13945         
13946         (Fixes problem with drawing childless frames. Pointed out
13947         by and a first patch from Anders)
13948         
13949         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13950         compute a child_allocation, even if we don't have a child.
13951
13952         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13953         Always chain to the parent's impl, even if we don't have a child.
13954
13955 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13956
13957         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13958         use multiple parts of it instead of creating a bunch of separate
13959         segments, since the maximum number of segments per system is not
13960         large. (This might be worth backporting to GTK+-1.2.x if we make a
13961         new release )
13962
13963         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13964         structure in preparation for per-colormap GdkRGB.
13965
13966         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13967         to False when we get EINVAL from shmget so that the caller of
13968         gdk_image_new can retry with a smaller segment size.
13969
13970 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13971
13972         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13973
13974 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13975
13976         * configure.in: make the current version number 1.3.1 (binary age 0,
13977         interface age 0).
13978         
13979         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13980         gtkcompat.h is all we want.
13981
13982         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13983         GLib primitive types. fixed g_type_register_fundamental() argument
13984         ordering.
13985
13986         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13987         compiles.
13988
13989         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13990         object code cleanup, comment trigraph fixes, etc...
13991
13992 2000-06-23  Havoc Pennington  <hp@redhat.com>
13993
13994         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13995         instead of making up a bogus name for first_para_mark
13996
13997         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13998         0 as a context ID
13999
14000 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
14001
14002         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
14003
14004 2000-06-21  Havoc Pennington  <hp@pobox.com>
14005
14006         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
14007         we didn't check window->bg_pixmap != GDK_NO_BG.
14008
14009         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
14010         gdk-pixbuf
14011
14012 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
14013
14014         * docs/faq/gtk-faq.sgm: Move file to here.
14015           TODO: Update Makfile.am 
14016
14017 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
14018
14019         * docs/gtk-faq.sgm: Add Section 2
14020
14021 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
14022
14023         * docs/gtk-faq.sgm: New file. Start of DocBook
14024           version of the FAQ.
14025
14026 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
14027
14028         * configure.in (GDK_PIXBUF_MAJOR): Define version
14029         numbers for GDK_PIXBUF_*, as they get substituted
14030         into a header file. Need to consider versioning
14031         for gdk-pixbuf more carefully later.
14032
14033 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
14034
14035         Work with srcdir != builddir.   
14036         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
14037         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
14038         * demos/testpixbuf.c: Likewise.
14039         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
14040         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
14041         <gdk/x11/gdkx.h>.
14042         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
14043         "gdk-pixbuf.h".
14044         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
14045
14046 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
14047
14048         * TODO.xml: Change 1.4 version numbers to 2.0.
14049
14050 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
14051
14052         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
14053         fixups to GTK+ standard.
14054
14055 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
14056
14057         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
14058         gdk-pixbuf.
14059
14060         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
14061         fixups for GObject.
14062
14063         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
14064         gdk-pixbuf with GDK dependencies moved into GDK.
14065         
14066         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
14067         move gdk-pixbuf-loader here until GObject has signals.
14068
14069         * demos/: New directory of demos. Move demos from
14070         gdk-pixbuf here.
14071
14072         * demos/pixbuf-init.c: Small bit of code to check for
14073         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
14074         set GDK_PIXBUF_MODULEDIR appropriately.
14075
14076         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
14077         define which no longer makes sense.
14078
14079 2000-06-21  Havoc Pennington  <hp@redhat.com>
14080
14081         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
14082         gtk_get_default_language
14083
14084         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
14085         new function to get the default language
14086
14087         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
14088         s/gtk_text_view_style_values/gtk_text_style_values/
14089
14090         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
14091         Add a "language" field to tags.
14092
14093         (gtk_text_tag_set_arg): Fix bug in setting
14094         "bg_full_height_set" tag.
14095
14096 2000-06-21  Havoc Pennington  <hp@redhat.com>
14097
14098         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
14099         in the interfaces
14100
14101         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
14102         stuff instead when possible.
14103
14104         * gtk/gtktexttypes.h: Delete some unused constants
14105
14106         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
14107         testtextbuffer.c: use glib instead of custom unicode routines
14108
14109 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
14110
14111         * docs/es/: Removed mistakenly added generated sgml
14112
14113         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
14114         Remove outdated info files.
14115
14116         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
14117         Moved tutorial files into subdir
14118
14119         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
14120         subdir.
14121
14122         * docs/man/gtk_button.pod: Remove. (contents will be
14123         integrated into gtk-reference button page.)
14124
14125         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
14126         docs/faq/Makefile.am: Adjust for new organization
14127
14128 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
14129
14130         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
14131         not $(MKINSTALLDIRS)
14132
14133 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
14134
14135         * gtk/testgtk.c (create_text): Finish the job Elliot started
14136         of removing font setting test for text widget. (Since text widget
14137         and GdkFont are not deprecated, and cause portability problems.)
14138
14139 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
14140
14141         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
14142         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
14143         Remove use of libunicode in favor of new GLib functions.
14144
14145         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
14146         nano-x, framebuffer. The X11 include is just a hack until we get
14147         the necessary functions in gdkcolor.h, so there is no reason to
14148         add other includes of platforms.
14149
14150         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
14151         window bigger than the screen change.
14152
14153         * gtk/testgtk.c: Revert some random changes from Elliot
14154         that had no particular point and were causing testgtkrc
14155         not to function correctly.
14156         
14157         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
14158         because GdkSegment and GdkRegionBox have the same fields,
14159         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
14160         results in clearer code.
14161
14162         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
14163         gdk_input_translate_coordinates): Fix missed GdkObjectification
14164
14165 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14166
14167         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
14168         * gtk/gtk{plug,socket}.h: Missed commits from previous.
14169
14170 2000-06-20  Havoc Pennington  <hp@redhat.com>
14171
14172         * modules/linux-fb/Makefile.am: Make this compile
14173         without framebuffer enabled
14174
14175         * gdk/linux-fb/Makefile.am: Add conditional to not build
14176         framebuffer unless specified in configure
14177
14178         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
14179         the size of the target instead of source if -1 was passed for
14180         width/height
14181
14182         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
14183         width/height confusion.
14184
14185 2000-06-19  Havoc Pennington  <hp@redhat.com>
14186
14187         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
14188         GDK_DRAWABLE_XID. In the future, we probably want to make it
14189         faster with G_DISABLE_CHECKS turned on.
14190
14191 2000-06-14  Havoc Pennington  <hp@redhat.com>
14192
14193         * gdk/Makefile.am: add gdkpixmap.c
14194
14195         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
14196         s/gdk_image_init/_gdk_windowing_image_init
14197
14198         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
14199         ref/unref
14200
14201         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
14202
14203         * gdk/gdkcompat.h: remove GdkWindowType compat, since
14204         GdkWindowType is now non-deprecated; 
14205         change gdk_window_get_type() compat to be
14206         gdk_window_get_window_type().
14207
14208         * gdk/gdkdnd.h: make GdkDragContext a GObject.
14209
14210         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
14211         virtual GObject. Make all functions call into the vtable.
14212         Move gdk_image_put() guts in here. Remove GdkDrawableType
14213         and gdk_drawable_get_type(), these are now GdkWindow-specific.
14214         draw_image, get_depth, get_size, set_colormap, get_colormap,
14215         get_visual added to the vtable.
14216         
14217         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
14218         GObject. Virtualize everything. 
14219         (gdk_gc_new_with_values): remove check for destroyed window,
14220         because now GdkWindow::create_gc will check this.
14221         (gdk_gc_set_values): New function to set GC values, this 
14222         was already implemented but wasn't in the header
14223
14224         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
14225
14226         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
14227         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
14228         remove _gdk_window_class; add _gdk_window_impl_get_type() and
14229         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
14230         _gdk_windowing_window_init, rename gdk_image_init to
14231         _gdk_windowing_image_init.
14232         
14233         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
14234         (gdk_draw_layout): Remove check for destroyed window, 
14235         because all the drawable methods already check it.
14236         
14237         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
14238         Add gdkpixmap.c which contains implementation of GdkDrawable
14239         virtual table (by chaining to a platform-specific implementation
14240         object).
14241         
14242         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
14243         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
14244         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
14245         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
14246         GdkColormapPrivate. 
14247
14248         * gdk/gdktypes.h: #include <glib-object.h>
14249
14250         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
14251         Move most functionality to platform-specific implementation
14252         object. GdkWindow itself now handles the backing store, then
14253         chains to the platform-specific implementation.
14254         (gdk_window_get_window_type): return GdkWindowType of the window.
14255         (gdk_window_peek_children): New routine, returns the children of 
14256         a GdkWindow
14257         (gdk_window_get_children): Was in X11-specific code and did 
14258         XQueryTree. Changed to simply return a copy of window->children; 
14259         so it can go in cross-platform code.
14260         
14261         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
14262
14263         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
14264         GdkColormap; just changed to use the new private data instead
14265         of casting to GdkColormapPrivate.
14266
14267         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
14268         gdk_cursor_new().
14269
14270         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
14271         (private data member in the GObject). 
14272         (xdnd_manager_source_filter): Function had broken 
14273         error handling, fix it (use gdk_error_trap_push).
14274
14275         * gdk/x11/gdkdrawable-x11.c: This file now implements
14276         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
14277         base class is purely for the convenience of the X port,
14278         and not part of the interface to cross-platform GDK.
14279
14280         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
14281         
14282         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
14283         specific to X, and returned by the create_gc virtual method
14284         of GdkDrawableImplX11. 
14285         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
14286         rather than gchar, this was also changed in the GdkGC vtable.
14287         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
14288         mask is 0, return immediately, instead of checking every flag.
14289         This is faster, and keeps us from segfaulting if values is NULL
14290         and the mask contains some nonzero flags.
14291
14292         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
14293         GdkWindow.
14294
14295         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
14296         GdkWindowPrivate is gone.
14297
14298         * gdk/x11/gdkim-x11.c: rename things that got renamed.
14299
14300         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
14301         remove the image_put stuff that got transferred to GdkDrawable.
14302         
14303         * gdk/x11/gdkinput.c: renamings
14304
14305         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
14306
14307         * gdk/x11/gdkpixmap-x11.c: GObject conversion
14308
14309         * gdk/x11/gdkprivate-x11.h: indentation fixes
14310
14311         * gdk/x11/gdkproperty-x11.c: renamings
14312
14313         * gdk/x11/gdkselection-x11.c: renamings
14314
14315         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
14316         implements the platform-specific "impl" object.
14317         Moved gdk_window_get_children to gdk/gdkwindow.c
14318
14319         * gdk/x11/gdkx.h: Remove all the private structs and private datas
14320         that no longer exist. Add declaration of GdkGCX11 object here.
14321         Fix all the macros to still work. 
14322
14323         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
14324         GdkDragContext from the boxed types since they are now GObjects.
14325
14326         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
14327         moved xthickness/ythickness into the instance. GtkStyleClass
14328         functions are now in the standard vtable for GtkStyle, so you have
14329         to create a GObject subclass to write a theme engine.
14330         (gtk_style_copy): fixed a leaked PangoFontDescription
14331         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
14332         can be the standard GObject function.
14333         
14334         * Throughout GTK:
14335         s/style->klass->[xy]thickness/style->[xy]thickness
14336         s/pango_layout_unref/g_object_unref/
14337
14338         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
14339         
14340         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
14341         accessing GDK internals.
14342
14343         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
14344         accessing GDK internals.
14345
14346 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14347
14348         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
14349
14350         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
14351         problem by calculating event position relative to the trough
14352         rather than the slider.
14353         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
14354
14355         * gdk/gdkgc.h: Add GDK_NOR.
14356
14357         * configure.in, Makefile.am: Add modules top level dir
14358         * configure.in: Only use pangox library if building x11 target.
14359         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
14360
14361 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14362
14363         * gtk/gtkcolorsel.c: Change private class member to be named
14364         private_data throughout the file.
14365
14366         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
14367         private_data to avoid clashing with keyword.
14368
14369 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14370
14371         * gdk/gdkdnd.h: Add comment to remove warning.
14372
14373 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
14374
14375         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
14376         Byelorussian language; changed the Makefile and file names 
14377         to reflect that.
14378
14379 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
14380
14381         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
14382         rather than gdk_window_hide; this makes things work
14383         correctly if the window is programmatically hidden while
14384         iconified.
14385
14386 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
14387
14388         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
14389         cut and paste typo where wrong pixmap was being
14390         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
14391
14392 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
14393
14394         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
14395         Add helper function to compute format / bytes 
14396         relationship. Use in a couple places to fix up
14397         errors which assume 8 * format.
14398
14399         * gtk/gtkselection.c (gtk_selection_request): Use 32
14400         rather than 8 * sizeof (GdkAtom), to work correctly
14401         on Alpha.
14402
14403 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
14404
14405         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
14406         libgtk.la
14407         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
14408         versions
14409
14410         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
14411         checking macros return NULL since the function has a return value.
14412
14413 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
14414
14415         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
14416         GTK+ from building at all.
14417
14418         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
14419
14420 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
14421
14422         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
14423         gtk/Makefile.am: make it possible to configure gtk for different
14424         targets on the same platform. The library name is now 
14425         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
14426         flag. Only the x11 target compiles right now.
14427         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
14428         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
14429         * gdk/nanox/gdk*generic*: delete generic region code.
14430         * gdk/linux-fb/gdk*generic*: delete generic region code.
14431         * README.nanox: update information.
14432         
14433 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
14434
14435         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
14436         prepend not append. (Pointed out by Brett Hall.)
14437
14438 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
14439
14440         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
14441
14442 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
14443
14444         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
14445         need this later, and this makes sure that the atexit for
14446         glib gets called after that for GDK, so atexits are
14447         properly ordered for object leak checking.
14448
14449         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
14450
14451         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
14452         pango_x_shutdown_display()
14453
14454         * gtk/simple.c (main): Close window on destroy.
14455
14456 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
14457
14458         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
14459         to treat initial creation different from setting with 
14460         regards to the graphics-exposures parameter, so add a parameter
14461         indicating whether this is initial or not.
14462
14463 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
14464
14465         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
14466         to sort of work by adding an extra return_exposes arg
14467         to gdk_event_translate() - it might be better to simply
14468         deprecate the function altogether and force people to rewrite
14469         without it. gdk_window_scroll() handles most of it, and where
14470         gdk_window_scroll() doesn't work, simply redrawing more does.
14471
14472         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
14473         assertion.
14474
14475         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
14476
14477         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
14478         bunch of pretty much useless /* Print debugging info */ comments 
14479         which had drifted away from the code they were commenting.
14480
14481 2000-06-02  Havoc Pennington  <hp@pobox.com>
14482
14483         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
14484         is in working order.
14485         
14486         * gtk/testtext.c: Change to reflect anonymous mark API
14487
14488         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
14489
14490         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
14491         field, which was unused.
14492
14493         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
14494         saves some typing.
14495
14496         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
14497
14498         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
14499         flag on the insertion point and selection bound
14500
14501         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
14502         make mark-manipulation functions take a GtkTextMark* instead of a
14503         mark name.
14504         
14505         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
14506         GtkTextMarkBody; will be used to detect attempts to delete
14507         the permanent marks (insert and selection bound)
14508
14509         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
14510
14511 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
14512
14513         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
14514         flag to on.
14515
14516         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14517         Honor DOUBLE_BUFFRED_FLAG
14518
14519         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14520         function to set the DOUBLE_BUFFERED flag.
14521
14522         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14523         or not exposes done on the widget should be double-buffered.
14524
14525         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14526         to be what would be expected. (Fixes problem with a
14527         g_return_if_fail() validating a TextDirection enumeration)
14528
14529 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14530
14531         * gtk/gtkwidget.c: Remove all references to 
14532         offscreen flag which was no longer used.
14533
14534         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14535
14536         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14537         for non-null label_widget->parent.
14538
14539         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14540         which no longer was used.
14541
14542         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14543
14544         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14545         for null arguments.
14546
14547         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14548         check for destroyed windows.
14549
14550 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14551
14552         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14553         the slave context there.
14554
14555         * gtk/gtkinvisible.[ch]: Make reference counting behavior
14556         identical to GtkWindow.
14557
14558 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
14559
14560         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
14561         pangox to here, so we can write them independent of rendering
14562         system, using GDK primitives.
14563
14564         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
14565         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
14566         since we have a rendering-system independent implementation in
14567         terms of draw_glyphs().
14568         
14569         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
14570         function to render a single line.
14571
14572         * gdk/x11/gdkpango.c: Move the guts of this file mostly
14573         into ../gdkpango.c, which simplifies things, since we
14574         don't have to deal with raw X gc's.
14575
14576 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
14577
14578         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
14579         get the logical attributes for a given GtkTextLine.
14580
14581 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
14582
14583         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
14584         g_locale_get_codeset() to g_get_codeset() change.
14585
14586 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
14587
14588         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
14589         descriptions.
14590
14591         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
14592         the entry.
14593
14594         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
14595         redoing (vastly simplifying) for Pango. Still needs quite
14596         a bit of work. (Size selection is currently poor. List of 
14597         predefined sizes is not a good idea, since all of these
14598         sizes won't necessarily be distinct.)
14599
14600 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
14601
14602         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
14603         CODESET results for LANG=C.
14604
14605 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
14606
14607         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
14608         which takes a stringized pango font description;
14609         ignore the older 'font' and 'fontset' declarations.
14610
14611         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
14612         field with a GdkFont derived via gdk_font_from_description(),
14613         for compatibility. (Should we just remove it entirely?
14614         Probably too much compatibility breakage, but people
14615         should be migrating to the new Pango stuff as quickly
14616         as possible.)
14617
14618 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
14619
14620         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
14621
14622 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
14623
14624         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
14625         redoing; there are some bugs in size allocation right
14626         now, the semi-existant distinction between header / day
14627         fonts was removed, but, with Pango, could actually
14628         be made functional in a nice way.
14629         
14630         * gtk/testcalender: Move calender from examples into this
14631         directory as a test program. (We really need to restrcture
14632         testgtk into a whole directory full of tests for every
14633         widget or functionality group, separated into multiple .c
14634         files.)
14635
14636 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
14637
14638         * gtk/testgtk.c (file_exists): Fix stupid typo that
14639         was keeping RC file from being loaded.
14640
14641         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
14642         RC file font code.
14643
14644 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
14645
14646         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
14647         Add function to load a GdkFont from a PangoFontDescription.
14648
14649 2000-05-29  Tor Lillqvist  <tml@iki.fi>
14650
14651         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
14652         variable should be of type GdkEventPrivate.
14653
14654 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
14655
14656         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
14657         to have any widget for the label, use a GtkLabel widget
14658         to display the text. (Based partially on a patch from
14659         Anders Carlson.)
14660
14661         (Quite a bit of code reorganization - strip 90% of the
14662         guts out of gtkaspectframe and add a single virtual
14663         func to GtkFrameClass - compute_child_allocation.)
14664
14665 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
14666
14667         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
14668         (Removed clist->row_center_offset field because caching
14669         it wasn't saving time or code, added private function
14670         _gtk_clist_create_cell_layout()).
14671
14672 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
14673
14674         * gtk/gtkaccellabel.c: Pangoized.
14675
14676         * gtk/[hv]ruler.c: Pangoized
14677
14678 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
14679
14680         * gtk/gtkfilesel.c (gtk_file_selection_init):
14681         Use gtk_clist_set_column_auto_resize() to remove need
14682         need for manual column width computations.
14683
14684 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
14685
14686         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
14687         ensuring Pango correctness, and considerably simplifying the
14688         code.
14689         
14690         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
14691
14692         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
14693         getting of numbers of lines.
14694
14695         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
14696         to the actual requested width of the lable, not to the wrap
14697         width we set.
14698
14699         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
14700
14701         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
14702           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
14703
14704         * gtk/gtktextview.c: Fix structure inheritance.
14705
14706         * gtk/gtkprogressbar.c: Pangoize.
14707
14708 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
14709
14710         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
14711         in a function.
14712
14713         * gtk/gtktextlayout.c (find_display_line_above): Fixed
14714         bug with computing line tops.
14715
14716         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
14717
14718 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14719
14720         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
14721         and y_offset coordinates to do what we need now. (The offset between
14722         buffer and layout coordinates has been reintroduced, but is a 
14723         bit different than before.)
14724
14725         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
14726         handle the adjustments ourselves, and scroll as necessary using
14727         the new gdk_window_scroll().
14728         
14729         The advantage of this is that when we are incrementally revalidating,
14730         we are essentially rearranging things around the visible portion
14731         of the screen. With the old setup, the visible portion of the
14732         screen was moved around in the layout, so scrolling and redrawing
14733         to track that caused jumping of the display. Since we now
14734         control the scrolling ourselves, we can suppress this and
14735         only redraw when things actually change.
14736
14737 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
14738
14739         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
14740         the region not just redisplay it after-all, since we store the
14741         cursors in the LineDisplay. (Ugly interactions here between
14742         GtkLayout and GtkTextBTree here.)
14743         
14744         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
14745
14746 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14747
14748         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
14749         Added function to scroll contents of a window while keeping the
14750         window constant. Works by XCopyArea or guffaw-scrolling depending
14751         on the details of how the window is set up. (guffaw-scrolling
14752         still needs to be filled in.)
14753
14754 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
14755
14756         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
14757         move the debugging that was tied to a global variable
14758         to that.
14759
14760         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
14761
14762         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
14763         validated flag, in line data instead of setting height/width to
14764         -1. This allows us to perform operations with partially invalid
14765         buffer (using the old size for invalid lines) and thus to do
14766         incremental vaidation. Keep height/width aggregates up to date
14767         when deleting text and rebalancing the tree.
14768
14769         * gtk/gtktextbtree.[ch]: Add functions validate a line
14770         (gtk_text_btree_validate_line), and to validate up
14771         to a number of pixels (gtk_text_btree_validate).
14772
14773         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14774         that indicates that something is changed and a revalidation
14775         pass is needed. Change ::need_repaint to ::changed, and
14776         make it take old and new yranges instead of a rectangle.
14777
14778         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14779         the line_data_destroy() function from 
14780         gtk_text_btree_add_view() to a virtual function in 
14781         GtkTextLayout
14782
14783         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14784         since we are handling partial repaints in a different fashion
14785         now.
14786
14787         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14788         of the selection instead of queueing a repaint on the
14789         entire widget.
14790
14791         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14792         get_selection_bounds() down to btree, make the function
14793         in buffer a wrapper around the btree function.
14794
14795         * gtk/gtktextlayout.[ch]: Add functions to check if the
14796         layout is valid and to recompute either a range of pixels
14797         aroudn a line or a certain total number of pixels.
14798
14799         * gtk/gtktextlayout.[ch]: Cache a single line display;
14800         now that we only redraw the needed portions, the hit rate
14801         for this cache is quite high.
14802         
14803         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14804         on the screen so that when re-laying-out the buffer, we can
14805         keep the same place. This requires connecting to ::value_changed
14806         on the adjustments
14807
14808         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14809         the buffer after we receive an ::invalidated signal.
14810         
14811 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14812
14813         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14814         to max of allocation and layout size, not just to the
14815         layout size.
14816
14817         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14818         Invalidate window so it gets redrawn properly.
14819
14820         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14821         to mean the entire window.
14822
14823         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14824         into public header.
14825
14826 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14827
14828         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14829         to get the name of a mark.
14830
14831         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14832         to find the paragraph from a y position.
14833
14834 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14835
14836         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14837         nodes have width/height >= 0, not > 0.
14838
14839 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14840
14841         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14842         Add a size_only flag, so when we only need the size, we don't create
14843         useless appearance attributes.
14844
14845         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14846         duplicate setting of font description.
14847
14848         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14849
14850 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14851
14852         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14853         EXTRA_DIST. It does not work well when the file that
14854         everything depends on is not in the tarball.
14855
14856 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14857
14858         * gtk/testgtk.c: Some hacks and fixes so that it basically
14859         works when not sitting in the GTK+ build tree.
14860
14861 2000-05-03  Havoc Pennington  <hp@redhat.com>
14862
14863         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14864         Properly determine the ordering of the tag root and the current
14865         line within the tree. Previous algorithm only worked if the tag
14866         root's immediate parent was the common root of both the current
14867         line and the tag root.
14868
14869 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14870
14871         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14872         alignment.
14873
14874         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14875         the widget text directional dynamically.
14876
14877         * gtk/gtktextview.[ch]: Added functions to get and set default
14878         wrap mode.
14879
14880 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14881
14882         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14883         in cursor location computation.
14884
14885 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14886
14887         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14888         vadjusment values properly when layout gets smaller.
14889
14890         * gtk/gtktextview.c (need_repaint_handler): Areas being
14891         passed in are far completely inaccurate, and sometimes
14892         too small, so, for now, just queue a redraw on the
14893         whole visible region.
14894
14895 2000-04-25  Havoc Pennington  <hp@redhat.com>
14896
14897         * gtk/gtktextbtree.c (summary_destroy): new function to 
14898         destroy tag summary nodes
14899         (gtk_text_line_next_could_contain_tag): this function was 
14900         totally broken if the line passed in wasn't below the tag
14901         root. Fix it.
14902         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14903         "wildcard" case, we have to do a linear scan. Blah.
14904         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14905         we have to do the linear scan
14906         (tag_removed_cb): When a tag is removed from the tag table, 
14907         remove the GtkTextTagInfo node from the btree.
14908         (gtk_text_btree_spew): Implement the spew function, for 
14909         our debugging pleasure.
14910
14911 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14912
14913         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14914         a problem with referring to the wrong buffer.
14915
14916         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14917
14918         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14919         font description to gtk_style_new() - otherwise things
14920         don't work without a .gtkrc file.
14921
14922         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14923         tags table if we create it ourself, too.
14924
14925         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14926         it was conflicting with XKB modifiers.
14927
14928         * gtk/gtktextview.[ch]: Add simple support for 
14929         GtkIMContext.
14930
14931 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14932
14933         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14934         with deletion from last commit.
14935
14936 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14937
14938         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14939         in the context from the current locale.
14940         
14941         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14942         context, not hardcoded value.
14943
14944         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14945         not logical.
14946
14947 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14948
14949         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14950         attributes - that doesn't handle partial-glyph selection
14951         properly. Instead use new pango_layout_line_get_x_ranges()
14952         functionality to draw the selection.
14953
14954         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14955         now properly handles out-of-range coordinates.
14956
14957         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14958
14959         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14960         public.
14961
14962         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14963         for paragraphs opposite to the base direction of the widget.
14964
14965         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14966
14967         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14968         causes Arabic words to reshape as you cursor through.
14969
14970         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14971         cursor position when moving vertically with the arrow keys and
14972         scrolling with page-up/page-down. (Arrow keys save only the X,
14973         scrolling saves both X and Y.)
14974
14975         This means you can line-up / line-down or page-up / page-down
14976         without losing your place, and also that moving vertically
14977         with the cursor keys keeps the same X position, not the same
14978         character count:
14979
14980         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14981         arrow keys move by display lines, not paragraphs.
14982
14983 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14984
14985         * gtk/gtklayout.c: Make sure that the bin window is at least
14986         as big as the allocation. (Should we also make sure that the
14987         bin window is big enough to completely cover widget->window?)
14988
14989         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14990         function to get the onscreen rectangle.
14991
14992         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14993         for offsets in window coordinates.
14994
14995 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14996
14997         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14998         confusion.
14999
15000         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
15001         from the widget direction.
15002
15003         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
15004         Add a "direction" attribute.
15005
15006         * gtk/gtktextview.c: global s/tkxt/text_view/.
15007
15008         * gtk/testtext.c: Added long block of text in Arabic, to test out
15009         the direction attributes. (Some problems with the shaping system
15010         for arabic become obvious - like the fact the cursor splits words
15011         into unjoined pieces.)
15012
15013 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
15014
15015         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
15016
15017         * gtk/gtktextlayout.c: Fix up alignment.
15018
15019         * gtk/testtext.c: Add some tests for centering, wrapping.
15020
15021 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
15022
15023         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15024         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
15025         If we wrote GTK+-specific layout-render function this could just replace
15026         the draw_layout() operation in the vtable.
15027
15028         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
15029         pango_layout_get_cursor_pos() and use that function.
15030
15031         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
15032         is a non-static symbol.
15033
15034         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
15035         with gtk_text_btree_find_line_by_y()
15036
15037         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
15038         renderer that handles GtkTextAppearance attributes.
15039
15040         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
15041
15042           - Move the values in the style that don't affect geometry into a
15043             GtkTextAppearance structure.
15044           - Change underline to take a PangoUnderline and "font" a string
15045             representation of a font description
15046           - Add a "font_desc" attribute which takes a FontDescription structure.
15047
15048         * gtk/gtktextlayout.[ch]:
15049
15050           - Get rid of the display-line list per each line. Instead, we
15051             generate, on demand, a GtkTextLineDisplay structure which]
15052             contains a PangoLayout * and other necesary information
15053             (offsets, cursor locations) for displaying a paragraph.
15054           - Get rid of the code to wrap lines, create display chunks,
15055             etc. Instead, we just go through a paragraph and convert
15056             it into the necessary inputs to a PangoLayout.
15057           - Implement a new attribute type, GtkTextAttrAppearance. This
15058             holds a GtkTextAppearance, and is used to pass colors, 
15059             stipple, etc, through from the layout to the display without
15060             having to use lots and lots of individual attributes.
15061           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
15062             in terms of PangoLayout functions.
15063         
15064         * gtk/gtktextview.c: 
15065          
15066           - Handle passing the necessary PangoContext to the layout
15067           - Some fixups in painting to deal with the automatic backing store
15068             and offsetting of GTK+-1.4
15069           - Add a style_set handler so that the default style reacts
15070             properly to theme changes.
15071         
15072         * gtk/gtktext?*.[ch]: Random code-style fixes.
15073
15074         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
15075
15076 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
15077
15078         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
15079         in original form preparatory to Pango-ization and gdkimcontext-ization.
15080
15081 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
15082
15083         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
15084         so that we can derive from gtkimcontext in language bindings properly.
15085
15086 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
15087
15088         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
15089         Add a compose table including (almost) all the compose combinations
15090         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
15091         data in the XIM implementation.
15092
15093         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
15094         Moved functions to convert keyvalues from and to unicode here from
15095         the win32 port and made them public.
15096
15097 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15098
15099         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
15100
15101 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
15102
15103         * gtk/gtkimcontext.[ch]: Base class for new input context system
15104
15105         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
15106         the real input context implementation to be loaded from modules
15107         and switched on the fly.
15108
15109         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
15110         context that just does direct keysymbol => unicode translation.
15111
15112         * gtk/gtkentry.[ch]: Start switching editing over to using
15113         GtkInputContext. (No handling of preedit yet.)
15114
15115 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
15116
15117         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
15118         many substitutions. (klass should not be subsituted.)
15119
15120 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
15121
15122         * configure.in: Add checks for Pango
15123
15124         * configure.in docs/Makefile.am: Add test for sgml2html
15125         and allow 'make dist' without building html, but print out
15126         warnings in that case. (For making snapshots)
15127
15128         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
15129         Add Pango libraries and C flags
15130
15131         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15132         Add function (gdk_draw_layout) to draw a pango layout.
15133
15134         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
15135         for getting Pango contexts for GDK.
15136
15137         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
15138
15139         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
15140         editing.
15141
15142         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
15143         keysym => unicode translations. More languages can be added
15144         here, but real input-method support is needed.
15145
15146         * docs/Changes-1.4.txt: Added note about entry behavior.
15147         
15148         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
15149         to set the reading direction for a widget and the global direction.
15150         Add test which allows toggling the global direction. Two private
15151         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
15152
15153         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
15154           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
15155
15156         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
15157
15158         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
15159         underlining now handled by Pango.
15160
15161         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
15162         to RCStyle and Style. (Having both this and the old font name and GdkFont 
15163         is temporary.)
15164
15165         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
15166         convenience functions for creating contexts and layouts for widgets.
15167
15168         * gtk/testgtk.c: Enhance label tests with multilingual labels.
15169
15170 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
15171
15172         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
15173         titles to be active, even if they aren't visible.
15174         (gtk_clist_column_titles_passive):  Ditto.
15175
15176 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
15177
15178         * gtkmenu.c:
15179         * gtkmenu.h:
15180         * gtktypeutils.h: Spelling/grammar fixes in comments.
15181
15182 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
15183
15184         * gdk/nanox/*.h: add missing header files.
15185
15186 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
15187
15188         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
15189         send_event to TRUE.
15190         (gtk_drawing_area_size): queue a resize.
15191
15192 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
15193
15194         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
15195         the handlers, also invalidate them. bug nailed down by Karl Nelson
15196         <kenelson@ece.ucdavis.edu>.
15197
15198 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
15199
15200         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
15201         "(nil)" foundries, patch from Grigorios Magklis.
15202
15203         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
15204         on non-available fonts, based on a patch by Grigorios Magklis
15205         <maglis@cs.rochester.edu>.
15206
15207 2000-05-18  Elliot Lee  <sopwith@redhat.com>
15208
15209         * gdk/x11/gdkregion-generic.c: If a region does not have any
15210         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
15211         instead of GDK_OVERLAP_RECTANGLE_IN.
15212
15213 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
15214
15215         * gtk/gtklayout.c (gtk_layout_map): Remove references to
15216         OFFSCREEN, as it is no longer necessary.
15217
15218 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
15219
15220         * gtk/gtkcolorsel.c: Patch from David Santiago
15221         <mrcooger@cyberverse.com> to change things so that the 
15222         indicator of the active palette entry is done independently,
15223         not via the focus, since it should always be visible.
15224
15225 2000-05-17  Tor Lillqvist  <tml@iki.fi>
15226
15227         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
15228         refcount leaks as in the X11 backend.
15229
15230         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
15231         cosmetics.
15232
15233         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
15234         backend. Add _gdk_windowing_window_destroy().
15235
15236         * gtk/gtkcolorsel.c: Include correct backend-specific header.
15237         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
15238         either, but these probably do exist on nanox?)
15239         
15240         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
15241         which isn't necessarily defined by <math.h>.
15242
15243         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
15244         ancestry past GtkObject.
15245
15246         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
15247         from DLL on Win32.
15248
15249         * gtk/gtk.def: Update corresponding to recent changes.
15250
15251         * gtk/makefile.{cygwin,msc}: Updates.
15252
15253 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
15254
15255         * docs/Changes-1.4.txt: A bit of editing.
15256
15257         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
15258         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
15259         to clear the update area for the window, and clear it
15260         when hiding a window.
15261
15262         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
15263         if window destroyed.
15264
15265         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
15266
15267         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
15268         gdk_window_destroy() to the generic code, since there was a lot of 
15269         window-system-independent logic it in. Add a function:
15270         
15271          _gdk_window_destroy() 
15272
15273         to the internal API to destroy a window without unreferencing it.
15274         Add a function:
15275
15276          _gdk_windowing_window_destroy()
15277
15278         That does the windowing-system-dependent part of destroying 
15279         the window.
15280
15281 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
15282
15283         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
15284
15285 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
15286
15287         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
15288         Make gtk_widget_shape_combine_mask() keep a reference count on
15289         the pixmap since it keeps it around.
15290
15291 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
15292
15293         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
15294         leak.
15295
15296         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
15297         leak with event filters.
15298
15299 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
15300
15301         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
15302         signal handlers with the right data arguments. (Fixes
15303         some warnings when a widget was repeatedly set as a drag
15304         destination.)
15305
15306         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
15307         window so we can avoid avoid setting the DND properties on the
15308         toplevel window repeatedly.
15309
15310 2000-05-13  Tor Lillqvist  <tml@iki.fi>
15311
15312         * gdk/win32/gdkwin32.h: Define more message types missing from
15313         mingw headers.
15314
15315         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
15316         call gdk_window_destroy_notify(). It was never called. This
15317         probably meant that the GdkWindow was never freed. Thanks Owen for
15318         noticing (!).
15319
15320         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
15321         window as destroyed before calling DestroyWindow(). DestroyWindow()
15322         causes a call to the window procedure (gdk_WindowProc), which
15323         calls gdk_event_translate(), which calls
15324         gdk_window_destroy_notify(), which gets confused unless the window
15325         is set as destroyed.
15326
15327         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
15328         this function to indicate it's win32 only. Put inside #ifdef
15329         G_ENABLE_DEBUG.
15330
15331         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
15332         debugging function. (gdk_event_translate:) Add a default branch
15333         that uses the above function to print debug messages with all
15334         Windows messages symbolically.
15335
15336         * gdk/win32/gdkprivate-win32.h: Declare it, and
15337         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
15338
15339 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
15340
15341         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
15342         public header file.
15343
15344 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
15345
15346         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
15347
15348         * gtk/gtktext.c: made the adjustments no-construct args, simply
15349         provide default adjustments.
15350         (gtk_text_destroy): release adjustments.
15351
15352         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
15353         adjustment argument non-construct.
15354
15355         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
15356         instead of in finalize.
15357         (gtk_progress_get_text_from_value): 
15358         (gtk_progress_get_current_text): 
15359         (gtk_progress_set_value): 
15360         (gtk_progress_get_percentage_from_value): 
15361         (gtk_progress_get_current_percentage): 
15362         (gtk_progress_set_percentage): 
15363         (gtk_progress_configure): ensure an adjustment is present.
15364
15365 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
15366
15367         * gtk/gtkcolorsel.[hc]:
15368         * gtk/gtkcolorseldialog.[hc]:
15369         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
15370         their parent implementation, use bit fields for boolean values, don't
15371         create unused widgets, usage of glib types, braces go on their own
15372         lines, function argument alignment, #include directives etc. etc. etc..
15373
15374         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
15375
15376 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
15377
15378         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
15379
15380         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
15381         of NULL.
15382
15383         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
15384         to freed data.
15385         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
15386
15387         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
15388         to NULL when the toplevel is getting destroyed.
15389         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
15390         (gtk_menu_destroy): 
15391         (gtk_menu_init): store the information of whether we have to
15392         readd the initial child ref_count during destruction in a new
15393         GtkMenu field needs_destruction_ref_count.
15394
15395         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
15396         here, those reading: learn from my mistake! ;)
15397         in order for set_?adjustment to support a default adjustemnt if
15398         invoked with an adjustment pointer of NULL, the code read (pseudo):
15399         if (v->adjustment) unref (v->adjustment);
15400         if (!adjustment) adjustment = adjustment_new ();
15401         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
15402         now imagine the first unref to actually free the old adjustment and
15403         adjustment_new() creating a new adjustment from the very same memory
15404         portion. here, the latter comparision will unintendedly fail, and
15405         all hell breaks loose.
15406         (gtk_viewport_set_hadjustment):
15407         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
15408         after unreferencing it.
15409
15410         * gtk/gtkcontainer.[hc]: removed toplevel registration
15411         functions: gtk_container_register_toplevel(),
15412         gtk_container_unregister_toplevel() and
15413         gtk_container_get_toplevels() which had wrong semantics
15414         anyways: it didn't reference and copy the list.
15415
15416         * gtk/gtkwindow.c: we take over the container toplevel registration
15417         bussiness now. windows are registered across multiple destructions,
15418         untill they are finalized. the initial implicit reference count
15419         users are holding on windows is removed with the first destruction
15420         though.
15421         (gtk_window_init): ref & sink and set has_user_ref_count, got
15422         rid of gtk_container_register_toplevel() call. add window to
15423         toplevel_list.
15424         (gtk_window_destroy): unref the window if has_user_ref_count
15425         is still set, got rid of call to
15426         gtk_container_unregister_toplevel().
15427         (gtk_window_finalize): remove window from toplevel list.
15428         (gtk_window_list_toplevels): new function to return a newly
15429         created list with referenced toplevels.
15430         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
15431
15432         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
15433         adjustment a non-construct arg.
15434         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
15435         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
15436         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
15437
15438         * gtk/gtkrange.c: added some realized checks.
15439         (gtk_range_destroy): get rid of the h/v adjustments in the
15440         destroy handler instead of finalize. remove timer.
15441         (gtk_range_get_adjustment): demand create adjustment.
15442
15443         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
15444         we simply create them on demand now and get rid of them in
15445         the destroy handler.
15446         (gtk_viewport_destroy): get rid of the h/v adjustments in the
15447         destroy handler instead of finalize.
15448         (gtk_viewport_get_hadjustment): 
15449         (gtk_viewport_get_vadjustment): 
15450         (gtk_viewport_size_allocate): demand create h/v adjustment
15451         if required.
15452
15453         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
15454         gtk_widget_real_destroy () functionality.
15455         (gtk_widget_real_destroy): reinitialize with a new style, instead
15456         of setting widget->style to NULL.
15457
15458 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
15459
15460         * gtk/gtkcalendar.c:
15461         * gtk/gtkbutton.c: ported _get_type() implementation over to
15462         GType, either to preserve memchunks allocation facilities,
15463         or because Gtk+ 1.0 GtkTypeInfo was still being used.
15464
15465         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
15466         over. prepare for ::destroy to be emitted multiple times.
15467         removed reference tracer magic. chain into GObjectClass.shutdown()
15468         to emit ::destroy signal.
15469
15470         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
15471         fundamental.
15472
15473         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
15474         cludge.
15475
15476         * gtk/gtksocket.c:
15477         * gtk/gtkplug.c:
15478         * gtk/gtklayout.c:
15479         * gtk/gtklabel.c:
15480         * gtk/gtkargcollector.c:
15481         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
15482         not being a fundamental anymore, and to work with the new
15483         type system (nuked fundamental type varargs clutter).
15484
15485         * gtk/*.c: install finalize handlers in the GObjectClass
15486         part of the class structure.
15487         changed direct GTK_OBJECT()->klass accesses to
15488         GTK_*_GET_CLASS().
15489         changed direct object_class->type accesses to GTK_CLASS_TYPE().
15490
15491         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
15492         GType. made most of the GTK_*() type macros and Gtk* typedefs
15493         simple wrappers around macros and types provided by GType.
15494         most notably, a significant portion of the old API vanished:
15495         GTK_TYPE_MAKE(),
15496         GTK_TYPE_SEQNO(),
15497         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
15498         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
15499         GTK_TYPE_ARGS,
15500         GTK_TYPE_CALLBACK,
15501         GTK_TYPE_C_CALLBACK,
15502         GTK_TYPE_FOREIGN,
15503         GtkTypeQuery,
15504         gtk_type_query(),
15505         gtk_type_set_varargs_type(),
15506         gtk_type_get_varargs_type(),
15507         gtk_type_check_object_cast(),
15508         gtk_type_check_class_cast(),
15509         gtk_type_describe_tree(),
15510         gtk_type_describe_heritage(),
15511         gtk_type_free(),
15512         gtk_type_children_types(),
15513         gtk_type_set_chunk_alloc(),
15514         gtk_type_register_enum(),
15515         gtk_type_register_flags(),
15516         gtk_type_parent_class().
15517         replacements, where available are described in ../docs/Changes-1.4.txt.
15518         implemented compatibility functions for the remaining API.
15519
15520         * configure.in: depend on glib 1.3.1, use gobject module.
15521
15522 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15523
15524         * TODO.xml: Various updates to current status.
15525
15526 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15527
15528         * gtk.m4: Print out version when test succeeds.
15529
15530 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15531
15532         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15533         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15534         
15535         (Original triangle color selector from Simon Budig
15536         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15537         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15538         Santiago <mrcooger@cyberverse.com>)
15539
15540         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15541         out into a separate widget.
15542
15543         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15544         and opacity controls.
15545
15546 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15547
15548         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15549         snuck in prematurely.
15550
15551 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15552
15553         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15554         had deleted a ! operator by mistake, which caused
15555         GDK_SELECTION_CLEAR events never to be generated, which caused
15556         only the first copy to the clipboard from an gtkeditable to
15557         actually cause a copy to the Windows clipboard.
15558
15559 2000-05-06  Tor Lillqvist  <tml@iki.fi>
15560
15561         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
15562         compilation, too. Current mingw gcc distributions include the
15563         necessary headers. Also the necessary IIDs are now in mingw
15564         headers/libraries, and own definitions unnecessary.
15565
15566         More hacking on OLE2 DND, still doesn't work though, and thus
15567         ifdeffed out.
15568
15569         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
15570         here, too.
15571
15572 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
15573
15574         * gdk/nanox/*: nano-X port work in progress.
15575         * gdk/simple.c: simple test for Gdk.
15576         * README.nanox: notes about the port: read this first!
15577         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
15578         with nano-X.
15579
15580 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
15581
15582         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
15583         gdk_window_clear() into common code, implement in terms of
15584         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
15585         not redirected to the backing rectangle.
15586
15587 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15588
15589         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15590         EXTRA_DIST. It does not work well when the file that
15591         everything depends on is not in the tarball.
15592
15593 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
15594
15595         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
15596         with recursion where process_updates() is called from
15597         an expose handler. (GtkTextView is highly broken in
15598         doing this, but it should work, so it is a nice test
15599         case.)
15600
15601 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15602
15603         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
15604         handle the case where updates are queued during processing of
15605         updates.
15606
15607 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15608
15609         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
15610         window is on gdk_display - use that instead of segfaulting.
15611
15612 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
15613
15614         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
15615         broken and require an empty arg, give it to them.
15616
15617 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
15618
15619         * gtk/gtklabel.h: indentation fixes.
15620
15621 2000-05-02  Tor Lillqvist  <tml@iki.fi>
15622
15623         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
15624         draw too narrow or too low arcs, they seem to fail, at least with
15625         some display drivers.
15626
15627         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
15628
15629         Large changes to the Win32 backend, partially made necessary by
15630         the changes to the backend-independent internal
15631         structures. Attempts to implement similar backing store stuff as
15632         on X11. The current (CVS) version of the Win32 backend is *not* as
15633         stable as it was before the no-flicker branch was merged. A
15634         zipfile with that version is available from
15635         http://www.gimp.org/win32/. That should be use by "production"
15636         code until this CVS version is usable. (But note, the Win32
15637         backend has never been claimed to be "production quality".)
15638
15639         * README.win32: Add the above comment about versions.
15640
15641         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
15642
15643         * gdk/gdk.def: Update.
15644
15645         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
15646         presumably be replaced by some more better mechanism as 1.4 gets
15647         closer to release shape.
15648
15649         * gdk/makefile.{cygwin,msc}: Update.
15650
15651         * gdk/win32/*.c: Correct inclusions of the backend-specific and
15652         internal headers. Change code according to changes in these. Use
15653         gdk_drawable_*, not gdk_window_* where necessary.
15654
15655         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
15656         our old DND.
15657
15658         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
15659         to interpret single characters as UTF-8. Thanks to Hans Breuer.
15660         Use correct function name in warning messages.
15661
15662         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
15663         GSourceFuncs gdk_event_prepare and gdk_event_check.
15664         (gdk_event_get_graphics_expose): Do implement, use
15665         PeekMessage. Thanks to Hans Breuer.
15666         (event_mask_string): Debugging function to print an GdkEventMask.
15667         (gdk_pointer_grab): Use it.
15668
15669         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
15670         (old) book I used claimed was Hangul actually is CJK Unified
15671         Ideographs Extension A. Also, Hangul Syllables were missing.
15672         Improve logging.
15673
15674         * gdk/win32/gdkgc-win32.c: Largish changes.
15675
15676         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
15677         g_win32_getlocale() from GLib, and not setlocale() to get current
15678         locale name.
15679
15680         * gdk/win32/gdkprivate-win32.h
15681         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
15682         gdkwin32.h, similarily as in the X11 backend.
15683
15684         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
15685         assignment was used instead of equals in if test. Thanks to Hans
15686         Breuer.
15687
15688         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
15689         the X11 version.
15690
15691         * gdk/win32/makefile.{cygwin,msc}
15692         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
15693         path to the Win32 headers that works also with the mingw compiler.
15694
15695         * gtk/gtkstyle.c: Include <string.h>.
15696
15697 2000-04-26  Havoc Pennington  <hp@redhat.com>
15698
15699         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
15700         replacing the broken gtk_label_get ()
15701
15702 2000-04-15  Havoc Pennington  <hp@pobox.com>
15703
15704         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
15705         this keeps scanner scripts from getting confused.
15706
15707         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
15708         data, rather than void
15709
15710 2000-04-15  Tor Lillqvist  <tml@iki.fi>
15711
15712         * gtk/gtkclist.c (gtk_clist_motion)
15713         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
15714         with is_hint FALSE, get x and y from the event. They used to be
15715         used uninitialised. The Win32 backend never sends motion events
15716         marked as hints. This for instance fixes the annoying file and
15717         font selector behaviour in the Win32 version.
15718
15719 2000-04-14  Tor Lillqvist  <tml@iki.fi>
15720
15721         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
15722         gtk_private_n_signals variables, they are used by some software,
15723         sigh.
15724
15725         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
15726         installation directory from the Registry, where the installer
15727         should have put it.
15728
15729 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
15730
15731         * gdk/x11/Makefile.am: Fix problem with installation directory for
15732         gdkx.h
15733
15734         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
15735         <mrcooger@cyberverse.com> so that when selecting menus with the
15736         mouse, the first item will not be selected, but when selecting
15737         with an accelerator, or navigating left-right on a menubar with
15738         the menus popped up, the first item will be selected.
15739
15740 2000-04-05  Dan Damian  <dand@dnttm.ro>
15741
15742         * configure.in: Added "ro" to ALL_LINGUAS.
15743
15744 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
15745
15746         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
15747         indentation.
15748
15749         * Makefile.am (EXTRA_DIST): Fix typo.
15750
15751         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
15752         to catch gdkconfig.h
15753
15754         * gtk/gtkitemfactory.c: Added FIXME.
15755
15756 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
15757
15758         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
15759         s/return_if_fail/return_val_if_fail/g and add a return value.
15760
15761 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15762
15763         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
15764         merge slipup.
15765
15766         * gdk/gdkinput.h: Fix missing line from merge.
15767
15768 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15769
15770         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15771         instead of gdkprivate.h.
15772
15773 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15774
15775         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15776         parent class to correctly be GtkDialogClass.
15777
15778 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15779
15780         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15781         toplevel windows and their immediate children by their parents,
15782         since the size of toplevel windows is out of our immediate
15783         control and we don't get any real benefit from trying to track
15784         this size for clipping.
15785
15786         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15787         for input_only windows.
15788
15789         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15790         to fix some hacks and make sure that we don't try to set the
15791         background of input only windows.
15792
15793 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15794
15795         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15796         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15797         stuff that we've traditionally exposed.
15798
15799         * gdk/**.c: Use gdkinternals.h where appropriate.
15800
15801         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15802         not include gdkprivate-x11.h, move all stuff of conceivable public
15803         interest into gdkx.h; keep all really private stuff in
15804         uninstalled header gdkprivate-x11.h.
15805
15806         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15807         image->image_put on windows through a new function _gdk_window_draw_image()
15808         to allow us to do backing store for images. (Sort of ugly)
15809
15810         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15811         contexts locally so that we can offset them properly when drawing 
15812         onto backing pixmaps.
15813
15814         * gdk/gdkinput.h: Reindented
15815
15816         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15817         pixmap or color for the window, so we can properly initialize
15818         our double-buffer pixmaps, and also so that we temporarily set
15819         a background of None while scrolling.
15820
15821         * gdk/gdkregion.h: Revise region boolean operators to have an
15822         interface that is actually convenient - switch from creating new
15823         regions on every op, to "methods" that modify existing regions
15824         (A = A OP B). 3 argument forms which allow dest == src, would also
15825         be possible, but the current interfaces seem to map nicely
15826         onto what needs to be done. (There is quite a lot of region
15827         code in GDK now.)
15828
15829         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15830         operator.
15831
15832         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15833         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15834         to 32 bit coordinates, modify it to be mostly GTK+ style
15835         and to have interfaces that match gdkregion.h.
15836
15837         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15838         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15839         create a backing pixmap and redirect all drawing to
15840         that backing pixmap until a matching gdk_window_end_paint().
15841
15842         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15843         Create a special drawable class for GtkWindow's that 
15844         redirects the drawing to the backing pixmap as necessary
15845         and then calls the real operations in _gdk_windowing_window_class.
15846
15847         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15848         Store invalid region for each window. Generate expose events for invalid
15849         region in an idle. This replaces both the expose compression
15850         and the redrawing queuing in GTK+. It is both more efficient and
15851         simpler than either one individually and far more so then the
15852         combination.
15853
15854         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15855         Emulate 32 bit coordinates for windows with 16 bit coordinates
15856         by offsetting drawing, guffaw scrolling techniques and
15857         mapping/unmapping child windows as necessary.
15858
15859         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15860         where, when invalid regions are processed, the region is stored,
15861         and if expose events come in that are detectably duplicate
15862         the processed exposes (by comparison of event serial numbers),
15863         the stored region is subtracted out of those exposes.
15864
15865         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15866         regions newly exposed when scrolling or resizing windows.
15867         This, combined with forcing processesing of queued invalidated
15868         regions, gives nice flicker-free scrolling.
15869
15870         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15871         invalidated regions after every scroll.
15872
15873         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15874         emulation in GDK. Its, for all practical purposes just a
15875         GtkViewport/GtkFixed hybrid now.
15876
15877         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15878         (16-bit) structures as necessary instead of just casting.
15879
15880         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15881         in terms of the structures from gdkregion-generic.c, using appropriate
15882         offsets from GDK to X11 coordinates. Cache clip mask and
15883         origin and ts origin locally and only flush to the server
15884         when drawing, to avoid constantly setting and resetting these
15885         values when offsetting GC's for scrolling and backing pixmaps.
15886
15887         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15888
15889         * gtk/gtkcontainer.c: Call process_all_updates at end
15890         of resizing to reduce flicker. (Avoids having redraw
15891         lag arbitrarily behind resize under some circumstances)
15892
15893         * gtk/gtkentry.c: Remove old backing store code, and simply take
15894         advantage of the new backing store capabilities of GDK.
15895
15896         * gtk/gtkmain.c: Simple implementation of widget backing
15897         store - simply push a paint while handling each expose.
15898         (Should really be configurable widget for widget.)
15899         
15900         * gtk/gtkwidget.c: Remove all the old complicated redraw
15901         code, and simply invalidate the GDK windows from
15902         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15903         debugged complexity ... gone to the winds.)
15904
15905         Remove all the code for suppressing expose events while
15906         resizes are pending; this isn't needed since the invalid
15907         areas won't be processed until after the resizes are
15908         processed, since they are in a lower priority idle.
15909
15910 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15911
15912         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15913         and height of dest rectangle for non-intersecting rectangles.
15914
15915 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15916
15917         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15918         for GdkRectangle.
15919
15920 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15921
15922         * gdk/gdk{events,image,private,types,window}.h
15923          gdk/x11/gdkinputprivate.h: Change all coordinates
15924          from int16 to int. Also, Change width and height from
15925          unsigned to signed to avoid all the stupid C 
15926          signedness bugs.
15927
15928 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15929
15930         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15931         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15932         Add some more detailed checking.
15933
15934         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15935         New function to retrieve the depth of a drawable.
15936
15937         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15938         field, reorder fields to save memory. 
15939
15940 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15941
15942         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15943         of the background image instead of scaling the background down to
15944         a line.
15945
15946         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15947         which temporarily set slider to wrong size.
15948
15949         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15950         queue_clear().
15951
15952 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15953
15954 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15955
15956         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15957
15958 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15959
15960         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15961         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15962
15963         * gdk/win32/gdkfont-win32.c
15964         * gdk/win32/gdkproperty-win32.c
15965         * gdk/win32/gdkselection-win32.c
15966         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15967         now declared such.
15968
15969 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15970
15971         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15972
15973 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15974
15975         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15976         is called without trapping X errors.
15977
15978 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15979
15980         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15981         way into the fontset lists.
15982
15983 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15984
15985         * gtk/gtkthemes.h: add extern "C" scope.
15986
15987 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15988
15989         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15990         to make appends to the list constant. (gtk-guy-990901-0.patch)
15991
15992 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15993
15994         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15995         for the typename hash table.
15996
15997 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15998
15999         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
16000         to make sure we never divide by zero. 
16001         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
16002
16003 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
16004
16005         * gtk/gtkfontsel.c: Apply patch from
16006         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
16007         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
16008
16009         Also, some cleanups in atom handling.
16010
16011 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
16012
16013         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16014         not GtkWidget.
16015
16016 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
16017
16018         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
16019         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
16020         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
16021         more guint wrap-around bugs before going to bed.
16022
16023 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
16024
16025         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
16026         guint wrap arounds in allocation.width.
16027
16028         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
16029         process untill we fit the allocation given.
16030
16031 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
16032
16033         * gtk/gtkwidget.c:
16034         (gtk_widget_unrealize): guard widget access with ref/unref
16035         around signal emission.
16036         (gtk_widget_hide): same here, but also check its destroyed
16037         state before queueing a resize.
16038
16039 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
16040
16041         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
16042         of gtk_default_insensitive_bg as insensitive base color.
16043
16044         * gtk/gtktext.c (gtk_text_style_set): set the background color according
16045         to the widget's state.
16046         (gtk_text_realize): same here.
16047         (gtk_text_state_changed): same here.
16048         (draw_bg_rect): compare background color against base[] from
16049         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
16050
16051 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
16052
16053         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
16054         grabs are active, unless a delete event is send to the toplevel
16055         of the currently grab holding widget.
16056
16057 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
16058
16059         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
16060         debugging g_print's.
16061
16062 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
16063
16064         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
16065         ever make the scrolled-window requisition ever depend on the 
16066         visibility state of the scrollbars for the AUTOMATIC policy. 
16067         This breaks the GTK+ requisition model, and causes loops.
16068
16069 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
16070
16071         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
16072         the default font to avoid problems with XFree86-4.0 where the
16073         default charset is iso10646-1, not iso8859-1.
16074
16075 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
16076
16077         * acinclude.m4
16078         * config.guess
16079         * config.sub
16080         * ltconfig
16081         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
16082
16083         * gtk/Makefile.am: minor cosmetic consistency tweak
16084
16085 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
16086
16087         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
16088         the activate_time to 0, so that we handle a quick
16089         press/release press/release properly and don't suppress
16090         the second release. (Red Hat bug #7545)
16091
16092 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
16093
16094         * gtk/gtkctree.c (row_delete):
16095         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
16096         bugs with destruction notifier, *always* update internal
16097         structures *before* calling user code.
16098
16099 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
16100
16101         A few more fixes for bug #5487, #2051, #2677.
16102         * gtk/gtkclist.c : 
16103         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
16104         not GDK_BUTTON_PRESS.
16105         (resync_selection): resync only if selection_mode is
16106         GTK_SELECTION_EXTENDED
16107         * gtk/gtkctree.c (resync_selection): same here
16108
16109 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
16110
16111         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
16112         gdk_drag_get_selection() and gtk_menu_detach().
16113
16114         [ From Jeroen Ruigrok/Asmodai ]
16115
16116 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
16117
16118         * gtk/gtknotebook.c (gtk_notebook_size_request): 
16119         page->tab_label can be NULL.
16120
16121 2000-01-25  Havoc Pennington  <hp@pobox.com>
16122         
16123         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
16124         arg is boolean
16125
16126         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
16127
16128         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
16129
16130         * gdk/gdkproperty.c (gdk_property_get): return boolean
16131
16132         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
16133
16134         * gdk/gdkim.c (gdk_im_ready): return boolean
16135
16136         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
16137
16138         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
16139         glib clash, should fix glib)
16140
16141         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
16142         (gdk_get_show_events): return gboolean, and canonicalize 
16143         to TRUE/FALSE
16144
16145         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
16146         colormap is private
16147         (gdk_colors_alloc): gboolean whether to be contiguous
16148         (gdk_color_equal): return gboolean since we are a predicate
16149         and not a qsort() (this looks semi-wrong due to glib breakage,
16150         IMO glib should be fixed)
16151         
16152         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
16153         (gdk_get_use_xshm): return gboolean
16154         (gdk_pointer_is_grabbed): return gboolean
16155
16156         * gdk/gdk.h: Change prototypes to match all the above changes,
16157         and re-run egtk-format-protos as required.
16158
16159 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
16160
16161         * gtk/gtkctree.c (resync_selection): 
16162         * gtk/gtkclist.c (resync_selection):
16163
16164         Return immediately if clist->drag_pos < 0. This is a workaround
16165         for the corrupt state that the clist gets into when a
16166         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
16167
16168         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
16169         
16170         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
16171         variable from recent commit.
16172
16173 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
16174
16175         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
16176
16177 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
16178
16179         * gtk/Makefile.am: prefix all autogenerated source that get build in
16180         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
16181         in builddir. since we subsequently cd into srcdir for autogeneration,
16182         the paths have to be stripped from the target file names, thusly we
16183         use $(@F) as target names now.
16184         put a comment about configure.in's --disable-rebuilds option,
16185         which can be used for non-writable source directories, for development
16186         setups though, srcdir has to be *writable*.
16187
16188 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
16189
16190         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
16191           Finish the job of allowing event to be NULL.
16192           (Fixes bug #4283, reported by Chris Blizzard)
16193
16194         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
16195           things so that the cursor appears on screen, properly
16196           take into account INNER_BORDER.
16197           (Fixes bug #4754, reported by Antonio Campos)
16198
16199 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
16200
16201         * gtk/gtknotebook.c (gtk_notebook_map): Don't
16202           show the tab_label unless it itself is visible.
16203
16204           gtk/gtknotebook.c (gtk_notebook_size_request):
16205           Do a better job of making sure that the visibility
16206           of the tab label corresponds to whether it should
16207           be mapped or not.
16208
16209 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
16210
16211         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
16212           Use the requisition, not the allocation, since the
16213           allocation has not necessarily been computed yet.
16214           (Pointed out by Eugene Osintsev)
16215
16216 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
16217
16218         * gtk/gtkstyle.c (gtk_style_new): Dont' set
16219           style/base[GTK_STATE_INSENSITIVE] both to
16220           gtk_default_insensitive_bg!
16221           (Bug #2187, reported by Jonathan Blandford)
16222
16223         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
16224           Add Alt_L, Alt_R to list of invalid accelerators.
16225           (Bug #3736, reported by Vlad Harchev)
16226
16227 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
16228
16229         * gtk/gtkfilesel.c (open_ref_dir): Fix several
16230         bugs which occured after an attempt to open 
16231         invalid home directory left cmpl_state->reference_dir == NULL.
16232
16233          - completion on files in home directory didn't work
16234          - completion on an empty string caused  segfault
16235
16236          (Bug #3678, reported by Steve Ratcliffe)
16237
16238         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
16239         cut and paste error that was causing scales to
16240         be incorrectly positioned.
16241         (Bug #2956,
16242          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
16243
16244 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
16245
16246         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
16247         when checking for dcgettext, if we've found we needed
16248         it for dgettext.
16249 +
16250 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
16251
16252         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16253         queue_clear on NO_WINDOW widgets during a reparent,
16254         since at that point the window and widget heirarchies
16255         are out of sync. This stops crashing in some cases
16256         (the scrolled window reparent test, for instance), and
16257         _probably_ won't cause drawing errors.
16258
16259         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
16260         test do what it was supposed to do and be robust against
16261         window closings, etc. (Bug #2443)
16262
16263 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
16264
16265         * gtk/gtkentry.c: Fix return values on mouse events.
16266         (Bug #2686, Sky <seb_sky@yahoo.com>)
16267
16268         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
16269         (pointed out by George Lebl)
16270
16271         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
16272         (From Ettore Perazzoli  <ettore@helixcode.com>)
16273  
16274 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
16275
16276         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
16277         clicks between rows or outside calender area correctly.
16278         (Patch from Damon Chaplin)
16279
16280         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
16281         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
16282           Call destroy function when overwriting existing data. 
16283           (Pointed out by Damon Chaplin)
16284
16285 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
16286
16287         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
16288           which was causing problems on various systems with Xmu.
16289           This hasn't been needed for a very long time.
16290           (Fixes #1185 3167)
16291
16292 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
16293
16294         * gdk/gdki18n.h: Include <ctype.h> when defining
16295           gdk_isw* in terms of is* as a fallback.
16296           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
16297
16298 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
16299
16300         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
16301           realize the widget when it is size allocated!
16302           (old, old bug)
16303
16304         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
16305           Removed unused call to gdk_window_get_size() that
16306           showed up when the above was fixed.
16307
16308 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
16309
16310         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
16311           fix up widget->window when the widget is a
16312           NO_WINDOW container widget.
16313
16314 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
16315
16316         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
16317           to account for the fact that feof() does _not_ 
16318           return TRUE on errors, and thus avoid infinite loops
16319           when trying to use gdk_pixmap_create_from_xpm()
16320           on unreadable values.
16321
16322 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
16323
16324         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
16325
16326 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
16327
16328         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
16329           gdk_gc_set_dashes to take gint8 instead of gchar to
16330           make it clearer that it is _not_ a NULL terminated string.
16331
16332         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
16333           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
16334           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
16335           arguments.
16336
16337 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
16338
16339         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
16340         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
16341         background size relative to our allocation, guard against small
16342         allocations, we may have not yet been size allocated.
16343
16344 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
16345
16346         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
16347         not just version == 3. We implement all 3 + most of 4 - 
16348         (we don't support matching text/plain;charset=iso-8859-1
16349         to a dest that expects text/plain). We'll still advertise
16350         3 to be safe, but any client implementing version >= 3
16351         must interoperate with 3.
16352         
16353 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16354
16355         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
16356         background and gc members, add a warning in gtk_tooltips_set_color()
16357         indicating that this function is deprecated.
16358
16359 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
16360
16361         * docs/gtkfaq.sgml: FAQ Update:
16362           - Minor cleanups (Emmanuel, me)
16363           - New questions:
16364                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
16365                 How can I retrieve the text from a GtkMenuItem? (timj)
16366                 How do I validate/limit/filter the input to a GtkEntry? (me)
16367                 Memory does not seem to be released when I free the list
16368                         nodes I've allocated (timj)
16369
16370 2000-03-07  Tor Lillqvist  <tml@iki.fi>
16371
16372         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
16373         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
16374         for which it is no use to call GetLastError onWin9x.
16375         (gdk_other_api_failed) New function, for general error
16376         reporting without calling GetLastError.
16377         (gdk_win32_api_failed) OTOH, this function always calls
16378         GetLastError. (gdk_win32_last_error_string) Remove this function,
16379         GLib has the equivalent now.
16380
16381         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
16382         call them with function name, file name and line number in the
16383         arguments.
16384
16385         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
16386         functions.
16387         
16388         * gtk/gtk.def: Add some missing entry points.
16389
16390         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16391         gtk_paned_set_gutter_size, which don't exist any longer, as void.
16392         
16393         Fixes by Hans Breuer:
16394
16395         * gdk/makefile.msc: Update for debugging.
16396
16397         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
16398         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
16399         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
16400         in the dash_list.
16401
16402         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
16403         the x11 backend.
16404
16405         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
16406
16407         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
16408
16409 2000-03-04  Tor Lillqvist  <tml@iki.fi>
16410
16411         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
16412         just pixel value of background colour.
16413
16414         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
16415         containing code snippet previously duplicated in a couple of
16416         places.
16417         
16418         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
16419         gdk_colormap_color.
16420
16421         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
16422         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
16423         events for autorepeated Shift, Control and Alt keys. Use
16424         gdk_colormap_color.
16425
16426         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
16427         pointer is inside the window the cursor of which we are setting,
16428         call SetCursor immediately.
16429
16430         * gdk/win32/makefile.cygwin
16431         * gtk/makefile.cygwin: If we don't have the build number stamp
16432         file, use zero.
16433
16434         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16435         gtk_paned_set_gutter_size as empty.
16436
16437         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
16438         
16439 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
16440
16441         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
16442           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
16443           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
16444           docs/gtk_tut.sgml docs/gtk.texi TODO:
16445
16446           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
16447
16448 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
16449
16450         * gtk/gtkcalendar.c: Implement num_marked_dates,
16451           and don't emit mutiple day_selected signals on
16452           month_prev.
16453
16454 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
16455
16456         * docs/make-todo (lineno): let title and logo be configurable so
16457         that GNOME can use this script too.
16458
16459         * TODO.xml: added logourl and a title
16460
16461 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
16462
16463         * TODO.xml: Added some UI items, and an explanatory
16464         comment at the top of the file.
16465
16466 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
16467
16468         * TODO.xml: some updates, added abunch of new entries.
16469         a note for those fiddeling with this file, when done
16470         with it, invoke:
16471         $ ./docs/make-todo TODO.xml >/dev/null
16472         and correct output errors before comitting changes.
16473
16474 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
16475
16476         * TODO.xml: Added XML-structured TODO file.
16477         * docs/make-todo: python script to turn TODO.xml into
16478           pretty XML output. 
16479
16480 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
16481
16482         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
16483         the function to let it draw the seven dots, instead of the old,
16484         much maligned, method.
16485         (draw_dot): New function to draw a dot.
16486
16487         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
16488         to draw the handle inside the border width as opposed to outside.
16489         Use paint function instead of gdk_draw_point.
16490
16491         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
16492         to draw the handle inside the border width as opposed to outside.
16493         Use paint function instead of gdk_draw_point.
16494
16495         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
16496         Change indenting to be more GTK like.
16497
16498 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
16499
16500         * docs/gtk_tut.sgml: New section on GtkCalendar
16501         * examples/calendar: Update example code
16502
16503 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
16504
16505         * docs/gtkfaq.sgml: FAQ Update
16506
16507 2000-02-19  Anders Carlsson  <andersca@gnu.org>
16508
16509         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
16510         to prevent the scroll event to be propagated upwards.
16511
16512 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16513
16514         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16515         OwnerGrabButtonMask from button entries for
16516         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16517
16518         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16519         to the event mask (which will result in button/press release
16520         being added to the event mask on Unix) so scrolling works
16521         for layouts in scroll windows.
16522
16523         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16524
16525         Patch from Anders Carlsson  <andersca@gnu.org> to add
16526         a scroll event.
16527
16528         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16529         scrolling to the "Test Scrolling" part of testgtk.
16530  
16531         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16532  
16533         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16534         it against GDK_SCROLL.
16535  
16536         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16537         way of mouse wheel scrolling.
16538  
16539         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16540  
16541         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16542  
16543         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16544  
16545         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16546         gdk_event_mask_table.
16547  
16548         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16549         GdkEventScroll handler.
16550  
16551         * gdk/gdkevents.h: Added GdkEventScroll structure.
16552  
16553 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16554
16555         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
16556         and Anders Carlsson to change the Paned widgets so that they
16557         can be dragged from anywhere along the length. Also change
16558         the way that this is drawn to make this apparent.
16559
16560         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
16561         from George Lebl to check that option_menu->menu is present
16562         before getting history.
16563
16564 2000-02-14  Tor Lillqvist  <tml@iki.fi>
16565
16566         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
16567         before the assertion for non-NULL segment list.
16568
16569         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
16570         Seems that pattern brushes *must* be 8x8 pixels! At least on my
16571         machine, but it might be display driver dependent. Sigh, so make
16572         sure the stipple is that size. Does Windows suck or what?
16573
16574         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
16575         places.
16576
16577 2000-02-13  Havoc Pennington  <hp@pobox.com>
16578
16579         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
16580         refcount to 1
16581         (gdk_cursor_new): init refcount to 1
16582
16583         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
16584
16585 2000-02-13  Tor Lillqvist  <tml@iki.fi>
16586
16587         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
16588         so that we don't have to do unnecessary settings to the HDC.
16589
16590         * gdk/win32/gdkdrawable-win32.c
16591         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
16592         gdk_gc_predraw.
16593
16594         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
16595         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
16596         GDI paths, call WidenPath to get the outline of the stroken path,
16597         and then fill the outline (with the brush that was built from the
16598         stipple).
16599
16600         * gdk/win32/gdkgc-win32.c: Factor out common code from
16601         _gdk_win32_gc_new and gdk_win32_gc_set_values into
16602         gdk_win32_gc_values_to_win32values. Use correct colour for
16603         SetBkColor() (Until now the code actually used a random colour in
16604         the call to SetBkColor()... but that didn't show up as not many
16605         GDI APIs use the background colour. Pattern (opaque stippled)
16606         brushes do.)
16607
16608         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
16609         gdk_win32_api_failed): New functions for error logging.
16610
16611         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
16612         WIN32_API_FAILED to call them, passing function or file name and
16613         line number.
16614
16615         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
16616
16617         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
16618         GdkColor for foreground and background in GdkGCWin32Data.
16619
16620         * gdk/makefile.cygwin: Link in the resource object separately.
16621
16622         * gdk/win32/rc/gdk.rc
16623         * gtk/gtk.rc (New file)
16624         * gdk/win32/makefile.cygwin
16625         * gtk/makefile.cygwin: Update build number in DLLs automatically,
16626         as in GLib.
16627
16628 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
16629
16630         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
16631         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
16632         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
16633         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
16634         parameters given and cursor->ref_count. coding style fixups.
16635
16636         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16637         not GtkWidget.
16638         
16639         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
16640         fix up widget macros and add _GET_CLASS() variant.
16641         
16642         * gtk/*.c: some GtkType fixups.
16643
16644 2000-02-09  Tor Lillqvist  <tml@iki.fi>
16645
16646         * gdk/win32/gdkproperty-win32.c
16647         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
16648         were reversed.
16649
16650 2000-02-04  Tor Lillqvist  <tml@iki.fi>
16651
16652         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
16653         g_filename_to_utf8 to convert the font names Windows gives us from
16654         whatever is the default codepage to UTF-8.
16655         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
16656         in the other direction.
16657
16658         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
16659         error in debugging output.
16660
16661 2000-02-02  Tor Lillqvist  <tml@iki.fi>
16662
16663         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
16664         and height parameters to gdk_window_clear_area(). Not minus one.
16665
16666 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
16667
16668         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
16669         checks if the widget passed to gtk_drag_get_data() was not the
16670         dest widget.
16671
16672 2000-02-01  Tor Lillqvist  <tml@iki.fi>
16673
16674         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
16675         g_filename_from_utf8 functions (which were added a moment ago to
16676         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
16677         size buffers.
16678
16679         gtk_file_selection_get_filename returns the filename in the C
16680         runtime encoding. It calls g_filename_from_utf8, but copies the
16681         returned string to a static buffer, which is returned. I think
16682         this is better than returning the result from g_filename_from_utf8
16683         directly, which would mean all apps that use it would have to free
16684         the return value. Or should this function care about this issue at
16685         all? Maybe a new function with clearly defined semantics.
16686
16687         * gtk/gtkfilesel.h: Add comment about
16688         gtk_file_selection_get_filename returning the filename in the C
16689         runtime's encoding.
16690
16691         * README.win32
16692         * gdk/gdk.def
16693         * gdk/makefile.{cygwin,msc}
16694         * gtk/gtk.def: Updates.
16695
16696         * gdk/gdkcursor-win32.c: Initialise refcount.
16697
16698 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
16699
16700         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
16701
16702 2000-01-30  Havoc Pennington  <hp@pobox.com>
16703
16704         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
16705         destroy
16706
16707         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
16708
16709         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
16710         implemented in platform-specific code
16711
16712         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
16713
16714         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
16715         underscore in front
16716
16717         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
16718         put an underscore in front
16719
16720         * gdk/gdkcursor.c: new file, implements
16721         gdk_cursor_ref/gdk_cursor_unref
16722
16723         * gdk/gdkcursor.h: Refcount GdkCursor
16724
16725         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
16726
16727 2000-01-29  Tor Lillqvist  <tml@iki.fi>
16728
16729         * gdk/gdkwindow.h
16730         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
16731
16732 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16733
16734         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
16735         structures to properly inherit from GtkWidget not GtkBin.
16736
16737 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
16738
16739         * gtk+.spec.in: Added lib/gtk+/include/* to %files
16740         (bug #5178 - Peter Wainright)
16741         
16742         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
16743         so that it will be installed.
16744         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
16745
16746 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
16747
16748         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
16749         for the GtkStyleClass vtable const.
16750
16751         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
16752         take a const string argument like GtkTranslateFunc. This will
16753         require changes in use code.
16754
16755 2000-01-19  Tor Lillqvist  <tml@iki.fi>
16756
16757         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
16758         semantics (to mimic the X11 backend, which just calls XClearArea)
16759         is to check for zero width (and height), and in that case use the
16760         window's width minus x (height minus y). This fixes for instance
16761         some redraw problems with gtkclist, which were easily noticeable
16762         in the gtk file selection widget.
16763
16764         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
16765         windows.
16766
16767 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16768
16769         * configure.in
16770         * gdk/Makefile.am
16771         * gdk/x11/Makefile.am
16772         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16773         (bug #5177).
16774         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16775         out later.
16776
16777 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16778
16779         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16780         WM_MOVE for iconified or invisible windows. This fixes various
16781         problems when minimising windows. Thanks to Bernd Herd.
16782
16783 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16784
16785         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16786         backend's draw_lines method, not draw_points.
16787
16788 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16789
16790         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16791         before Owen's reorganisation: Don't have queued_events and
16792         queued_tail statics in this file, but use gdk_queued_events and
16793         gdk_queued_tail. This makes exposure event compression work again.
16794
16795         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16796         seem to be needed?
16797
16798 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16799
16800         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16801         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16802         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16803         doesn't do anything.
16804
16805         * gdk/gdk.def: Add gdk_xid_table_insert.
16806
16807         * gdk/win32/gdkprivate-win32.h
16808         * gdk/win32/gdkevents-win32.c
16809         * gdk/win32/gdkinput-win32.c
16810         
16811         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16812         extension_events field in the GdkWindowWin32Data struct. Use only
16813         the extension_events field in GdkWindowPrivate. Previously one was
16814         set, and the other one tested, which broke tablet
16815         functionality. Thanks to Keishi Suenaga for pointing this out.
16816
16817 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16818
16819         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16820         When handling a single character (text length == 1), don't handle
16821         it as if it was UTF-8.
16822
16823 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16824
16825         * Makefile.am: Distribute README.win32.
16826         
16827         * gdk/Makefile.am
16828         * gdk/win32/Makefile.am: Distribute Win32 files.
16829
16830         * gdk/makefile.msc: New file.
16831
16832         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16833         after label).
16834
16835         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16836         gdk_error_code as GDKVAR, as they are referred outside GDK.
16837
16838         * gdk/win32/makefile.msc: Update.
16839
16840         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16841         tweaks. Check only if at least one of those Unicode subrange bits
16842         we care for is set. If no code page bits are set, guess (wildly)
16843         based on the charset.
16844
16845         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16846
16847         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16848         non-NULL.
16849
16850         * gtk/gtkdnd.c
16851         * gtk/gtklayout.c
16852         * gtk/gtkplug.c
16853         * gtk/gtkselection.c
16854         * gtk/gtksocket.c
16855         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16856         appropriate. There must be a cleaner way to handle this?
16857
16858         * gtk/gtkrc.c: Must include windows.h on Win32.
16859
16860         * gtk/testgtk.c: No need to include gdkx.h.
16861
16862         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16863
16864 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16865
16866         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16867         the rbearing is set to the same as the width, but this should be
16868         fixed.
16869
16870 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16871
16872         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16873         function. If Windows doesn't tell us what Unicode subranges a font
16874         covers, guesstimate based on the codepages it covers. This will
16875         hopefully help those Windows versions or fonts that don't give us
16876         any useful Unicode subrange information with GetTextCharsetInfo.
16877         Call this function in gdk_font_load_internal.
16878
16879         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16880         minor changes.
16881
16882 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16883
16884         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16885         New function, long needed.
16886
16887 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16888
16889         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16890         only_if_exists argument of gdk_atom_intern to
16891         bool.
16892
16893 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16894
16895         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16896         Fix two copy&paste errors.
16897
16898         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16899         win32 has changed.
16900
16901         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16902         GdkWin32SingleFont struct.
16903
16904         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16905         subranges of loaded fonts. Clear font signature first, in case
16906         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16907         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16908
16909         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16910         Unoffset clip region.
16911
16912 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16913
16914         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16915         event->any.window before calling filter functions.
16916
16917 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16918
16919         * gtk/gtkgamma.h: Adapt cast macros to standard.
16920
16921 [ Merges from 1.2 ]
16922
16923 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16924
16925         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16926         If translation does not include a '/', use entire
16927         translation instead of crashing.
16928
16929 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16930
16931         * docs/gtk_tut.sgml:
16932         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16933
16934 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16935
16936         * gtk/gtkselection.c (gtk_target_list_remove): Use
16937         g_list_remove_link, not g_list_remove.
16938
16939         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16940         
16941 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16942
16943         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16944         statement upon unselection (how the heck did that slip in?).
16945
16946 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16947
16948         * gtk/gtktext.c (gtk_text_freeze): 
16949         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16950         in frozen state (and aparently crashes). patch provided by Anders
16951         Melchiorsen <and@kampsax.dtu.dk>.
16952
16953 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16954
16955         * fix insensitive default/focus widget activation,
16956         reported by Matt Goodall <mgg@isotek.co.uk>.
16957
16958         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16959         (gtk_window_activate_default):
16960         (gtk_window_activate_focus):
16961         return handled=FALSE for actiavtion of insensitive default
16962         widgets. return handled=TRUE for activation of insensitive
16963         focus widgets. don't activate in either case.
16964
16965 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16966
16967         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16968         and $glib_cflags to match library order and in the
16969         theory that an old version of GLib is more likely to
16970         be in the include directory for X then vice-versa.
16971         (Bug #2776)
16972
16973 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16974
16975         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16976         to determine the locale for fontsets, not LC_MESSAGES;
16977         the user may want English messages with a handling
16978         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16979         will still be broken) (Bug #2891)
16980
16981 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16982
16983         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16984
16985 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16986
16987         * gtk/gtkrc.ko: Changed the Korean default fontset.
16988
16989 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16990
16991         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16992         where when scrolling to the left or top double exposes
16993         were done, causing major slowdowns.
16994
16995 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16996
16997         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16998         names to lowercase and alphanumeric, before looking
16999         them up.
17000
17001         * gtk/Makefile.am: Install codeset variant gtkrc files
17002         with normalized names.
17003
17004 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
17005
17006         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
17007         popup menus when the menu is already visible, but its parent
17008         is still hidden, (happens after tornoff window got hidden).
17009
17010 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
17011
17012         * gtk/Makefile.am (install-data-local): Fix
17013         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
17014         deleted, causing error messages on install.
17015
17016 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
17017
17018         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
17019         the handle as well, since we now sometimes ignore
17020         exposes on the handle while resizing.
17021
17022 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
17023
17024         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
17025         extra g_free introduced in one of the last one or two 
17026         commits.
17027
17028 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
17029
17030         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
17031         consistent, put each style that a gtkrc.* file creates
17032         in a unique namespace, remove old files before installing.
17033
17034 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
17035
17036         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
17037         gtk_rc_init is called multiple times. (Yes, people who
17038         do that have bugs in their code.)
17039
17040 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
17041
17042         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
17043         Remove it since it's generated by the Makefile anyway
17044
17045 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
17046
17047         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
17048         device->info.axes for core pointer.
17049
17050 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
17051
17052         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
17053         idle_id, to deal with obsolete, broken C libraries.
17054
17055 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
17056
17057         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
17058         allocation->x/y twice!
17059
17060         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
17061         consistent with gtk_vscale_pos_trough().
17062
17063 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
17064
17065         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
17066         be queueing a resize on a toplevel container between
17067         the time we show it and when we map it. So, we need
17068         to test GTK_WIDGET_VISIBLE() for toplevels, and only
17069         use GTK_WIDGET_DRAWABLE() for child windows.
17070
17071 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
17072
17073         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
17074         (fixes bug #2144)
17075
17076 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
17077
17078         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
17079         container DRAWABLE (instead of VISIBLE), so we don't queue
17080         resizes on non-toplevel containers.
17081
17082 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
17083
17084         * gtk/gtkselection.[ch]: Make the data argument
17085         const guchar *.
17086
17087 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
17088
17089         * gtk/gtkwindow.c: Try to behave sensibly if 
17090         the focus widget is the window itself. (Should
17091         we allow this at all?)
17092
17093 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17094
17095         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
17096         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
17097         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
17098         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
17099         in prototypes and implementations consistent (Tomas Ogren).
17100
17101         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
17102         before the widget is unparented (reported by damon).
17103
17104         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
17105         since we provide unsigned data anyways.
17106
17107 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
17108
17109         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
17110         the call to gtk_tooltips_layout_text() until later.
17111
17112         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
17113         Call gtk_widget_ensure_style() before using the style.
17114
17115 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
17116
17117         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
17118         for old widgets that don't propagate draws to all
17119         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
17120
17121 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
17122
17123         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
17124         for a redraw but just the widget that requested the resize.
17125
17126 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
17127
17128         * gtk/gtkcontainer.c: added new widget level method
17129         gtk_container_set_reallocate_redraws() and a GtkContainer flag
17130         reallocate_redraws : 1 to reflect the setting, exported this through
17131         the argument system as a boolean ::reallocate_redraws.
17132
17133         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
17134         on the widget because the allocation changes, do so as well for
17135         widget->parent if the parent has reallocate_redraws set to TRUE.
17136         with that containers requesting reallocation redraws get automatically
17137         redrawn if their children changed allocation (this unfortunately
17138         affects also other children that didn't change allocation, but we
17139         cannot work around that before 1.3).
17140
17141 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17142
17143         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
17144         _and_ height are >0 (not _or_).
17145
17146         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
17147         instead of gtk_container_queue_resize(), which is a core gtk internal
17148         function (must have been on crack when i queued that).
17149
17150         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
17151         we can check more reliably if we want to discard expose events.
17152         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
17153         flag.
17154         
17155         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
17156         we simply trust these events. for deciding whether to discard exposes,
17157         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
17158         
17159 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
17160
17161         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17162         queues of areas that are completely off screen.
17163
17164         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
17165         logic for handleboxes.
17166
17167         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
17168         check on width/height.
17169
17170 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
17171
17172         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
17173         we are fine with using $@ the way we do (if we actually encounter
17174         brokeness with $@ in VPATH builds because of additional path prefixes,
17175         we need to use $(@F) actually).
17176
17177 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
17178
17179         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
17180         short lived bugs, that would allow language bindings to do surgeries
17181         to our guts.
17182
17183 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
17184
17185         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
17186         where comparison was being done against an uninitialized
17187         value causing intermittant results depending on
17188         compiler flags. Also make it clearer that we aren't
17189         ever initializing the child as 0x0 (though this will
17190         be caught in gtk_widget_size_allocate())
17191
17192 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
17193
17194         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
17195         gtk_window_unset_transient_for() call after we do checks
17196         involving the old transient parent.
17197         [ From Lance Capser <lmc@cyberhighway.net> ]
17198
17199 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
17200
17201         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
17202         an empty file.
17203
17204 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
17205
17206         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
17207         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
17208
17209 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
17210
17211         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
17212         `$@' is valid only in the build dir, not after we've done 
17213         `cd $srcdir'.  Also use `test -f' instead of less portable
17214         `test -e'.
17215
17216 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
17217
17218         * gtk/gtktext.c (correct_cache_insert): Rewrite
17219          for simplicity, and hopefully correctness.
17220          (Fixes bug #1322, which was a segfault when
17221           on some insertions with the properties around
17222           the insertion set up just wrong.)
17223
17224         * gtk/gtktext.c (gtk_text_adjustment): When we receive
17225          a "changed" signal, clamp the new value to the adjustment
17226          bounds to avoid segfaulting if someone tries to change
17227          the adjustment to a bogus value. (Bug #1795)
17228
17229 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17230
17231         * gtk/gtkmain.c: Ignore unexpected destroy notifies
17232         for children, for toplevel windows handle them
17233         like delete_event.
17234
17235         * gtk/gtkplug.c: Add an unrealize handler so that
17236         we unref plug->socket_window when we are done
17237         with it.
17238
17239 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
17240
17241         * gtk/gtktext.c (clear_area): Fix stupid signedness
17242          problem that was causing background to sometimes
17243          be misaligned.
17244
17245 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
17246
17247         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
17248         
17249         * gtk/gtkmenu.c (gtk_menu_position): Make
17250          sure we never position menus with negative x, y,
17251          since gtk_widget_set_uposition() can't handle that.
17252
17253         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
17254          Modify the positioning code a bit so that we always
17255          put the top-left corner onscreen. (This is for
17256          UI reasons, gtk_menu_position() now takes care of
17257          gtk_widet_set_uposition() brokeness.)
17258
17259 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
17260
17261         * gtk/Makefile.am: fixed up things for -jx, x > 1.
17262
17263 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
17264
17265         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
17266           RC style that is passed in. The lack of the ref
17267           before was a bug. If people worked around this
17268           bug, this will introduce a slight memory leak
17269           in their code. The code should typically look like:
17270
17271             rc_style = gtk_rc_style_new ();
17272             [...]
17273             gtk_widget_modify_style (widget, rc_style);
17274             gtk_rc_style_unref (rc_style);
17275
17276         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
17277           the style if it was already set.
17278
17279         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
17280           style if it was set before.
17281
17282 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17283
17284         * gtk/testgtk.c (main): Add a check to see if we
17285           are being run from the correct directory and
17286           to quit nicely if we are not.
17287
17288         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
17289           static.
17290
17291 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
17292
17293         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
17294
17295         * gtk/gtkwindow.c:
17296         queue resizes unconditionally (gtk_widget_queue_resize will figure
17297         what to do if the window is not realized).
17298         (gtk_window_move_resize): only recenter the window
17299         for GTK_WIN_POS_CENTER_ALWAYS.
17300         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
17301         the same way as GTK_WIN_POS_CENTER.
17302
17303 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
17304
17305         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
17306         with (!(info->last_flags & GDK_HINT_POS)) instead of
17307         (!info->last_flags & GDK_HINT_POS).
17308
17309         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
17310         new_height unconditionally, because we use these values even if
17311         !default_size_changed && !hints_changed.
17312         comented the (default_size_changed || hints_changed) case with
17313         respect to resize rejects from the window manager.
17314
17315         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
17316         in the zvt condition hack, since this includes the window hints, set
17317         the hints after the handling_resize case.
17318
17319         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
17320         window is initially shown with to the geometry.
17321
17322 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
17323
17324         * gtk/gtkwindow.c (gtk_window_move_resize):
17325         s/size_changed/default_size_changed/g so i know what's
17326         really going on (frying brain on smaller flame now).
17327
17328 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
17329
17330         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
17331         we have size_changed upon handling_resize. this is a gross
17332         workaround for the broken zvt widget and should be removed in
17333         1.3 again (search for FIXME).
17334         Owen provided an accurate comment for this:
17335
17336         /* We could be here for two reasons
17337          *  1) We coincidentally got a resize while handling
17338          *     another resize.
17339          *  2) Our computation of size_changed was completely
17340          *     screwed up, probably because one of our children
17341          *     is broken. It's probably a zvt widget.
17342          *
17343          * For 1), we could just go ahead and ask for the
17344          * new size right now, but doing that for 2)
17345          * might well be fighting the user (and can even
17346          * trigger a loop). Since we really don't want to
17347          * do that, we requeue a resize in hopes that
17348          * by the time it gets handled, the child has seen
17349          * the light and is willing to go along with the
17350          * new size. (this happens for the zvt widget, since
17351          * the size_allocate() above will have stored the
17352          * requisition corresponding to the new size in the
17353          * zvt widget)
17354          *
17355          * This doesn't buy us anything for 1), but it shouldn't
17356          * hurt us too badly, since it is what would have
17357          * happened if we had gotten the configure event before
17358          * the new size had been set.
17359          */
17360
17361 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
17362
17363         * gtk/gtkrc.c: deal properly with the fact that RC
17364           style lists may include rc styles more than once.
17365
17366         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
17367           unused static function.
17368
17369         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
17370           stack of directories of RC files currently being
17371           parsed and implicitely add them to pixmap path.
17372           
17373           This fixes a bug where the directory would get
17374           appended then overwritten by pixmap_path declarations.
17375
17376           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
17377
17378         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
17379           theme's exit function. (Patch from Peter Wainwright,
17380           bug #1454)
17381
17382         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
17383           Add a destroy() handler to take care of removing
17384           group for menu item. (Fixes bug #1197)
17385
17386         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
17387           in warning message.
17388
17389 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
17390
17391         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
17392         roundtrip to figure window's width and height, since we know that
17393         anyways from widget->allocation.
17394
17395 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
17396
17397         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
17398           the hints after we request the new size.
17399
17400 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
17401
17402         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
17403           GTK_WIDGET_REALIZED() assertion - we can compute the
17404           hints before we are realized.
17405
17406         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
17407           hint changing so that we have a value of hints_changed
17408           when we decide whether to constrain the window size.
17409
17410         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
17411
17412         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
17413         change back to G_MAXINT.
17414
17415 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
17416
17417         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
17418         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
17419         contain uncluttered values.
17420         (gtk_window_compute_hints): simply assert that window is realized
17421         and that geometry_info is valid, since we rely on this anyways.
17422         (gtk_window_constrain_size): major cleanups to the code.
17423         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
17424         for the base size, instead of the minimums. use 32767 as max width
17425         and height (like in gtkwindow.c) instead of G_MAXINT.
17426
17427 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
17428
17429         * cleaned up the GtkContainer.need_resize flag handling mess, we
17430         only need to force resize requests when we were prematurely
17431         realized, or our widget tree was modified when we were temporarily
17432         hidden. handling these cases directly upon showing the window (i.e.
17433         while the GdkWindow is still unmapped) avoids the need to wait for
17434         a configure event response and therefore makes the GUI more snappier
17435         and avoids blank windows during the roundtrip.
17436
17437         * gtk/gtkwidget.c:
17438         (gtk_widget_hide): 
17439         (gtk_widget_show): don't queue resizes on toplevels, they know how
17440         to deal with matters.
17441
17442         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
17443         flag directly for not visible resize containers and spare us unecessary
17444         signal emissions.
17445
17446         * gtk/gtkwindow.c:
17447         (gtk_window_realize): if we need to enforce premature size allocation,
17448         queue a container resize so we are correctly resized later on.
17449         (gtk_window_init):
17450         (gtk_window_size_request):
17451         don't freak around with the ->need_resize flag,
17452         gtk_container_queue_resize() will care about that.
17453         (gtk_window_show):
17454         handle initial resizing issues here, we can handle matters better in
17455         this place, especially since we know that our GdkWindow is still
17456         unmapped.
17457         (gtk_window_move_resize):
17458         don't care about ->need_resize at all.
17459         handle size changes properly that occoured while we waited for a
17460         configure event.
17461
17462 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
17463
17464         * gtk/gtkwidget.c (gtk_widget_set_uposition):
17465         * gtk/gtkwindow.[hc] (gtk_window_reposition):
17466         Move the hint setting code from gtk_widget_set_uposition
17467         to here; set the hints so that we respect any previously
17468         set geometry hints.
17469
17470         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
17471         change the window hints here or move the window here,
17472         let that happen in gtk_window_move_resize().
17473
17474 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
17475
17476         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
17477         to already queued resizes (and therefore redraws) on a widget, check
17478         its anchestry as well.
17479
17480         * gtk/gtkcontainer.c:
17481         (gtk_container_queue_resize): clear resize widgets for resize
17482         containers before aborting prematurely. this is especially important
17483         for toplevels which may need imemdiate processing or their resize
17484         handler to be queued.
17485         (gtk_container_dequeue_resize_handler): added new internal function for
17486         gtkwindow.c.
17487
17488         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
17489         configure event, take possible changes in window position into account
17490         as well.
17491         if we request a new window size, queue up a resize handler that will
17492         last until the configure event response arrives.
17493         combined the ->need_resize case (initial show) with the general size
17494         (hints) changed case and added even more comments.
17495         if !auto_shrink, only revert to the old allocation if the new size
17496         is smaller than the current allocation.
17497
17498 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
17499
17500         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
17501                            gtk_window_set_geometry_hints
17502                            gtk_window_set_default_size):
17503         When hints are set, queue a resize so that the hints will
17504         be eventually reset on the toplevel.
17505
17506         * gtk/gtkwindow.c (gtk_window_show): Use
17507         gtk_window_compute_default_size(). Clear the need_resize flag
17508         on the initail map so that we don't unnecessarily trigger the
17509         resize code.
17510
17511         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
17512         into separate functions. Compare the hints we are setting
17513         with what we set last time so that we can accurately
17514         tell when we need to reset the hints.
17515
17516         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17517         function to figure out the size from requisition
17518         and default_size.
17519
17520         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17521         from fvwm to constrain a size to the geometry hints.
17522
17523         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17524         to compare two sets of geometry hints.
17525
17526         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17527         from gtk_window_set_hints(), just compute the hints,
17528         don't set them.
17529
17530         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17531         code from gtk_window_move_resize() to separate function,
17532         rationalize a bit.
17533
17534 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17535
17536         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17537         structure into a new private structure.
17538
17539         * gtkrc.c: Split GtkRcStyle into public/private.
17540         In the private part, add a list of pointers to the
17541         RcStyle lists this RcStyle participates in.
17542
17543         * gtkrc.c: When a RcStyle is free, remove all
17544         lists referencing it from the 
17545         realized_style_ht hash, and free those lists.
17546         
17547         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17548         gtk_rc_init(), since that adds the default styles
17549         to the list of parsed RC files again.
17550
17551         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17552         
17553 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17554
17555         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
17556         checks that ensure that a widget's allocation is at least 1 in width
17557         and height. (GNOME note: this doesn't affect old panel code anymore,
17558         because GtkSocket will request width and height of at least 1 since
17559         Fri Jul 23).
17560
17561         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
17562         allocated yet (happens if the user realizes the window prematurely),
17563         size request and allocate it.
17564         (gtk_window_size_allocate): guard against guint underflows.
17565
17566 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
17567
17568         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
17569         in gtk_built_sources, so gtk.defs gets built prior to all other
17570         sources.
17571
17572 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17573
17574         * gtk/Makefile.am:
17575         invoke indent on gtkmarshal.*. 
17576         rewrote source generation rules, use COPYING as oldest source tag for
17577         a piggyback rule to generate all sources from (don't touch it ;).
17578         major cleanups, strip spaces on build rules for GNU Make.
17579
17580         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
17581         source and target files from commandline arguments. don't invoke indent.
17582
17583 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17584
17585         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17586         notebook after switch to avoid drawing problems.
17587         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17588         
17589         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17590         show them instead. 
17591         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17592
17593 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17594
17595         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17596         notebook after switch to avoid drawing problems.
17597         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17598         
17599         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17600         show them instead. 
17601         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17602
17603 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
17604
17605         * gtk/gtkwindow.c:
17606         we use window->need_resize from configure_event now, to indicate that
17607         the gtkwindow should keep its allocation (e.g. because the user resized
17608         the window through window manager handles). resize_count is now reliably
17609         used to figure whether we got the allocation we requested from the
17610         window manager.
17611         configure events get queued as resizes now, the real stuff (size
17612         computation and allocation) now only goes on in gtk_window_move_resize().
17613         GtkWindow's requisition now contains its *real* requisition (like all
17614         other widgets), *not* taking usize into account.
17615         geometry_info->last_{width|height} is now updated from set_hints() only
17616         so it always contains the last hints we set for the window manager.
17617         made some event handlers return TRUE instead of FALSE.
17618         the overall code should be much more straight forward now, and the
17619         significant code portions are accompanied by comments now.
17620         (gtk_window_set_hints):
17621         removed requisition argument and made it
17622         fetch the requisition through gtk_widget_get_child_requisition.
17623         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
17624         does that now.
17625         (gtk_window_show):
17626         ensure that the widget is realized before calling 
17627         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
17628         ensure that we got properly size requested and allocated before
17629         realization.
17630         (gtk_window_configure_event):
17631         ignore plain window moves, or reallocate the widget tree through the
17632         resize queue otherwise.
17633         (gtk_window_move_resize):
17634         mostly rewrote this function to figure window manager hints more
17635         reliably, coalesce window moves and resizes to reduce configure events
17636         and do actuall size allocations.
17637
17638 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17639
17640         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
17641         that have a resize pending, because a redraw is already queued for them.
17642
17643         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
17644         hack to clear resize_widgets.
17645
17646         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
17647         for resize containers prior to size allocation. (this is also a bit
17648         ugly, but avoids side effects for stopped emissions and is thus more
17649         reliable).
17650         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
17651
17652         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
17653         function from gtk_tooltips_expose, as we connect to ::expose_event
17654         *and* ::draw now.
17655
17656 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17657
17658         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
17659         checks.
17660         (gtk_target_list_unref): Likewise.
17661
17662         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
17663
17664 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
17665
17666         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
17667         guard against division by zero. (Fixes bug #1339)
17668
17669 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
17670
17671         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
17672         Prevent the trivial leak of information of allowing
17673         word motion when the entry is not visible.
17674
17675 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
17676
17677         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
17678         modality to error dialog as well as confirmation dialogs.
17679         (Bug #1803, reported by Rosanna Wing Sze Yuen)
17680
17681 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17682
17683         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
17684         tree->view_lines.
17685         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
17686
17687         * gtk/Makefile.am (install-data-local): Solaris apparently
17688         has various troubles with ln -f; use rm first instead.
17689         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
17690
17691 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
17692
17693         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
17694         use `cp' followed by `rm' (the `rm' was already there).
17695
17696 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17697         
17698         * configure.in: Fix autoconf warnings about cross compilation by
17699         trying to provide sane defaults for AC_TRY_RUN.
17700         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
17701         put them into $(srcdir) when generated. Also add a dependency of
17702         gtksignal.h on gtkmarshal.h for -j builds. 
17703         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
17704
17705 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
17706
17707         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
17708         GDK_THREADS_{LEAVE,ENTER} pair.
17709         (From Paul Fisher <pnfisher@redhat.com>)
17710
17711 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
17712
17713         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
17714         width and height are always >0 (owen).
17715
17716 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
17717
17718         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
17719         change that assured that a widget's allocated with and height are
17720         always >1, since this breaks *buggy* panel code. unfortunately this
17721         back-breaks the gimp's color selector.
17722
17723         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
17724         allocation is always >0 in width and height, before sending the
17725         configure event; this is a *gross* hack to get the gimp back to work.
17726         
17727         * marked both cases with TODO-1.3
17728
17729 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
17730
17731         * gtk/gtktext.c: Don't display wrap indicators when
17732         text is not editable and word wrap is on.
17733
17734 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
17735
17736         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
17737         option menus here as they are not derived from menu shell, assure that
17738         the option menu has a menu we can add items to.
17739
17740 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
17741
17742         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
17743         width/height to (gint) before calculations and check against < 0 to
17744         avoid guint wraparounds.
17745
17746 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
17747
17748         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
17749         width and height is never zero. sanity check both dimensions against
17750         32767 and issue a warning if the allocation is greater than that.
17751
17752 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
17753
17754         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
17755         to g_main_pending() as well.
17756
17757 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
17758
17759         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
17760         call to g_main_iteration() - since that will regrab
17761         GTK+ lock to process events.
17762
17763 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
17764
17765         * gtk/gtkwindow.c
17766         - Regularize with the rest of GTK+ by making widget->requisition
17767           not reflect the set_usize()
17768         - Always recompute geometry hints, then check if they
17769           changed before sending them to the X server. The
17770           previous checks for changes would fail in a number
17771           of circumstances. 
17772
17773 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17774
17775         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17776
17777 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17778
17779         * gtk/gtkdnd.c:
17780         - Code cleanups
17781         - Instantaneously update on modifier key presses
17782         - Allow cancellation of the drag with Escape.
17783
17784 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17785
17786         * gtk/testgtk.c (create_handle_box): Set the policy
17787         to auto_shrink - otherwise the appearance is rather
17788         strange when flipping between horizontal and vertical.
17789
17790 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17791
17792         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17793         (gtk_window_set_default_size): don't change a value if it's < 0.
17794         queue a resize.
17795
17796 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17797
17798         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17799
17800 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17801
17802         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17803         add an extra "/" when concating "/" + filename.
17804         (From Matt Grossman <mattg@oz.net>)
17805
17806 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17807
17808         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17809         for fg_gc if we set it for drawing pixmap.
17810
17811 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17812
17813         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17814         
17815         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17816         already set, call old engine's destroy function and
17817         unref the old engine.
17818
17819 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17820
17821         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17822
17823 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17824
17825         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17826
17827 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17828
17829         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17830         expand behaviour changed.
17831
17832         * gtk/gtklabel.c (gtk_label_set_pattern):
17833         (gtk_label_set_justify):
17834         (gtk_label_set_line_wrap):
17835         don't bother invoking queue_clear, the reallocation does
17836         that for us, always free_words so the upcoming resize will
17837         relayout the label's contents.
17838
17839 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17840
17841         * applied argument implementation patches from Elena Devdariani
17842         <elena@cogent.ca>.
17843
17844         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17845         ::space_style, ::relief
17846         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17847         * gtk/gtkpreview.c: ::expand
17848         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17849         * gtk/gtknotebook.c: ::homogeneous
17850         * gtk/gtklabel.c: ::wrap
17851         * gtk/gtklist.c: ::selection_mode
17852         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17853         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17854         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17855         * gtk/gtkclist.c: ::sort_type
17856         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17857         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17858
17859 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17860
17861         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17862         comment.
17863
17864 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17865
17866         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17867         counting right when we have to attach a new style
17868         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17869
17870         * gtk/gtkstyle.c: Documented the refcounting
17871         peculularities of gtk_style_attach.
17872
17873 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17874
17875         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17876         window types.
17877
17878         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17879         of GTK_TOPLEVEL for creating the window.
17880
17881 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17882
17883         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17884         the last argument (reported by Per Winkvist).
17885         
17886 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17887
17888         Fixes for invisible XOR lines (Frank Loemker
17889         <floemker@TechFak.Uni-Bielefeld.DE>)
17890         
17891         * gtk/gtkclist.c (gtk_clist_realize): Always use
17892         a non-zero pixel for GDK_XOR.
17893
17894         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17895         Use GDK_INVERT instead of GDK_XOR.
17896
17897 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17898
17899         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17900         signals if h/voffsets differ from adjustment values.
17901         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17902
17903 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17904
17905         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17906         ::selection-done emissions up to the topmost menu shell.
17907
17908 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17909
17910         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17911         the user data on the window before destroying it.
17912
17913         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17914         unrealize handler to take care of destroying 
17915         notebook->panel properly. 
17916         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17917
17918         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17919         of g_new and g_realloc to stop memory leak. (Actually,
17920         we could just use g_realloc(), but I'm not 100% sure
17921         that is portable).
17922         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17923
17924 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17925
17926         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17927
17928         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17929         for fontsets.
17930
17931         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17932         with bin/button confusion.
17933
17934 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17935
17936         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17937         and show how preselection of radio items is done.
17938
17939 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17940
17941         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17942         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17943         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17944         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17945         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17946         * gtk/gtktable.c (gtk_table_attach): 
17947         * gtk/gtklist.c (gtk_list_insert_items): 
17948         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17949         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17950         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17951         * gtk/gtkbin.c (gtk_bin_add): 
17952         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17953         * gtk/gtkfixed.c (gtk_fixed_put): 
17954         * gtk/gtklayout.c (gtk_layout_put):
17955         general fixups to container_add logic. always realize child if
17956         child->parent is realized, only map the child and queue a resize
17957         if child and child->parent are both visible.
17958
17959 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17960
17961         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17962         instead of gtk_container_foreach to walk and unrealize children, so
17963         composite children get also unrealized.
17964         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17965         (gtk_widget_map): assert that the widget is visible (basic constrain).
17966         (gtk_widget_real_map): assert that the widget is realized (basic
17967         constrain).
17968
17969 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17970
17971         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17972
17973 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17974
17975         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17976         file for iso-8859-2 locales.
17977
17978         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17979
17980 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17981
17982         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17983          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17984          Remove some suspicious and useless lines. 
17985
17986 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17987
17988         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17989         width,height = 0, 0 to mean - here to edge of window,
17990         instead of -1, -1, since the former is all we support.
17991
17992 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17993
17994         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17995         when removing from quit_functions list.
17996
17997 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17998
17999         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
18000
18001 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
18002
18003         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
18004          When redrawing characters on non-visible entry, use appropriate
18005          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
18006
18007 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
18008
18009         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
18010         from drag coordinates.
18011         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
18012         use drag_dest_cell.
18013
18014         * gtk/gtktree (drag_dest_cell)
18015         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
18016         (Bug #1129)
18017
18018 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
18019
18020         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
18021         translate_* fields.
18022         (gtk_item_factory_finalize): invoke translate_notify independant from
18023         translate_data.
18024         (gtk_item_factory_set_translate_func): likewise.
18025         (gtk_item_factory_destroy): only remove ifactory pointer from those
18026         widgets that belong to us (stupid me).
18027
18028 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
18029
18030         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
18031         rc_style list when lookup succeeeds.
18032
18033 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
18034
18035         * gtk/gtkctree.c (resync_selection): 
18036         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
18037         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
18038         bug.
18039
18040 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
18041
18042         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
18043         Add some missing GDK_THREADS_ENTER()/LEAVE around
18044         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
18045
18046 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
18047
18048         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
18049         rather than emit_by_name.
18050
18051         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
18052         on the widget across multiple signal emissions.
18053         (gtk_editable_delete_text): same here.
18054         (gtk_editable_class_init): set widget_class->activate_signal after
18055         editable_signals[ACTIVATE] has been created.
18056
18057 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
18058
18059         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
18060         position here prematurely -- we might not have the
18061         right ->min_position and ->max_position yet.
18062
18063 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18064
18065         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
18066         Add error traps so if the other end of the connection
18067         dies, we survive.
18068
18069         * gtk/gtkselection.c (gtk_selection_notify): Clean
18070         up properly when selection property retrieval fails.
18071         
18072         * gtk/gtkselection.c (gtk_selection_request): Correctly
18073         reject SelectionRequest notifies where the handler
18074         returns no data.
18075
18076 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18077
18078         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
18079         when we've previously highlighted.
18080
18081         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
18082         emit two "drag_leave" signals for Motif drops.
18083
18084         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
18085         back the correct status messages when dropping from
18086         Motif onto a proxy window that is rejecting the
18087         drop.
18088
18089 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
18090
18091         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
18092         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
18093         to compare two argument values. added gtk_arg_to_valueloc() to set a
18094         variable from an arg through its location (pointer).
18095
18096         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
18097         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
18098         as gfloat*, uchars are collected as guchar*, ints are collected as
18099         gint*, etc...
18100
18101 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
18102
18103         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
18104         Include <string.h> instead of <strings.h>.
18105
18106         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
18107         (actually, a lot more duplicate includes occur if
18108          you trace through the sequence of #include's)
18109         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
18110         
18111 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18112
18113         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18114         gtk-a-higuti-990322-[0-3]
18115
18116         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18117         that was causing -DX_LOCALE not to work.
18118
18119         * gtk/gtkrc.c (gtk_rc_init):
18120         X_LOCALE will never have LC_MESSAGES defined
18121
18122 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
18123
18124         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
18125         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
18126
18127         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
18128         left/right as well (gtk-michael-980726-0.patch.gz).
18129
18130         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
18131         for pointer values, use gchar instead of char. fixed uline allocation
18132         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
18133         chunks instead of G_ALLOC_ONLY.
18134         (gtk_label_size_request): always alter requisition as passed and leave
18135         widget->requisition alone.
18136         (gtk_label_set_text): allow NULL strings.
18137         (gtk_label_new): likewise.
18138
18139 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
18140
18141         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
18142
18143 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
18144
18145         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
18146         *and* mapped (i.e. drawable).
18147         (gtk_bin_expose): only send exposes to drawable children.
18148
18149         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
18150         (gtk_box_expose): only send exposes to drawable children.
18151
18152         * gtk/gtkhscale.c (gtk_hscale_draw): 
18153         * gtk/gtkvscale.c (gtk_vscale_draw):
18154         hm, this is an ugly one. we first compute the size of our trough area
18155         here (window relative) and then check intersection with the draw_area
18156         which is parent relative because we're a NO_WINDOW widget, so we need
18157         to offset the trough area by allocation.x and allocation.y before the
18158         check. (this must not be done for the background area though, since
18159         that's already computed parent relative).
18160
18161 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
18162
18163         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
18164         unrealize title buttons.
18165
18166 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
18167
18168         * gtk/gtkclist.c (gtk_clist_column_title_passive)
18169         (gtk_clist_column_title_active): 
18170         only connect/disconnect to GtkWidgetClass::event to block mouse events.
18171
18172         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
18173         zero initialize event, removed superfluous gdk_window_get_pointer call
18174
18175         * gtk/gtklist.c (gtk_list_vertical_timeout)
18176         (gtk_list_horizontal_timeout): removed superfluous
18177         gdk_window_get_pointer call
18178
18179 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18180
18181         * plugging problems reported by "Bruce Mitchener, Jr."
18182         <bruce@puremagic.com> due to a purify session.
18183
18184         * gtk/gtkstyle.c:
18185         (gtk_style_ref): 
18186         (gtk_style_unref): assert ref_count to be > 0.
18187
18188         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
18189         the requisition.
18190         (gtk_clist_set_shift): likewise.
18191
18192         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
18193         adjustments.
18194
18195         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
18196         event before sending it and set send_event to TRUE (which needs to
18197         be done for *all* synthesized events).
18198         (gtk_list_vertical_timeout): likewise.
18199
18200         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
18201         leaks.
18202
18203         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
18204         to TRUE when synthesizing events.
18205
18206 [ *** end of merges from 1.2 *** ]      
18207         
18208 1999-11-21  Tor Lillqvist  <tml@iki.fi>
18209
18210         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
18211         (or copied from gdkconfig.h.win32 on Win32, sigh).
18212
18213         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
18214
18215         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
18216
18217         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
18218
18219         * gdk/gdkconfig.h.win32: New file.
18220
18221         * gdk/win32/makefile.cygwin: Build just a static archive here.
18222
18223         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
18224         for the DLL from the static archive built above.
18225
18226         * gdk/gdk.def: Moved here from the win32 subdirectory.
18227
18228         * gdk/win32/*: Adapt for the changed private struct organisation.
18229
18230         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
18231
18232 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
18233
18234         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
18235         for wheel mice (buttons 4 and 5).
18236
18237 1999-11-18  Tor Lillqvist  <tml@iki.fi>
18238
18239         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
18240         drawables use just the pixel field in the foreground and
18241         background GdkColor of the GdkGC.
18242
18243         gdk_gc_set_{fore,back}ground() are called in the GIMP with
18244         GdkColors containing uninitialized (red,green,blue) fields, and
18245         just the pixel field filled in, and furthermore in the
18246         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
18247         It thus turns out that we really don't need to have the full
18248         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
18249         it later to have just the pixel values.
18250
18251 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
18252
18253         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
18254
18255 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
18256
18257         * docs/gtkfaq.sgml: threads example from Erik Mouw.
18258         New question on GtkLabel background colors.
18259
18260         * docs/gtk_tut.sgml:
18261           - Correct the example code callback
18262             function definitions.
18263           - Update the gtkdial example code, from Frans van Schaik.
18264           - Update setselection.c to current API.
18265
18266         * examples/Makefile examples/*/*.c: Update to code
18267         listed in tutorial.
18268
18269 1999-11-10  Tor Lillqvist  <tml@iki.fi>
18270
18271         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
18272         subrange table (from the "Developing International Software for
18273         WIndows 95 and Windows NT" book) was missing the Hangul syllable
18274         block... Get the loaded font's charset correctly.
18275
18276         (Note that this, and the other *-win32.c files, still really are
18277         the old ones, the win32 subdirectory is not ready for compilation
18278         yet after the reorg.)
18279
18280 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
18281
18282         * gtk/gtkclist.c: Fix off-by-one bug in parameter
18283         check.
18284
18285 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
18286
18287         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
18288         on results of XQueryDeviceState().
18289
18290 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
18291
18292         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
18293         we need to accesss only ->children. We need an accessor
18294         for the children.
18295
18296         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
18297         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
18298         to get rid of gdkx.h include.
18299         
18300         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
18301         and random references to 'None'.
18302
18303         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
18304         Get rid of unused #include <gdk/gdkx.h>
18305
18306         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
18307         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
18308         gdkconfig.h.
18309
18310 1999-11-08  Tor Lillqvist  <tml@iki.fi>
18311
18312         * gdk/win32/gdkdraw.c
18313         * gdk/win32/gdkfont.c
18314         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
18315         following yesterday's changes. (Unrelated to Owen's reorg.)
18316
18317 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
18318
18319         * gdk/x11/gdkinput-gxi.c: Add missing include,
18320           fix GdkWindowPrivate => GdkDrawablePrivate.
18321
18322         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
18323
18324         * gdk/x11/Makefile.am (xinput_sources): Add missing
18325         backslash to fix building with --with-xinput=none
18326
18327 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
18328
18329         Move all X specific code into the x11/ directory.
18330         Aside from shuffling things around, did the following:
18331
18332        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
18333          gdk_arg_context_* - a simple argument parsing system
18334          in the style of popt.
18335
18336        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
18337          gdk/x11/gdkprivate-x11.h:
18338          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
18339          add ->klass and ->klass_data fields. The klass_data
18340          field points to an auxilliary structure that is
18341          windowing system dependent.
18342
18343        * gdk/gdkfont.c: Make most of the measurement functions
18344          simply wrappers around gdk_text_extents().
18345
18346        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
18347          _gdk_font_strlen() function that hides the weird
18348          behavior in gtk+-1.[02] where a string is interpreted
18349          differently for 8-bit and 16-bit fonts.
18350
18351        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
18352          to store common code for synthesizing double/triple
18353          press events.
18354         
18355        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
18356          Make all the function that modify an existing GC
18357          simply wrappers around gdk_gc_set_values().
18358          
18359        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
18360          for throwing out later.
18361
18362        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
18363          GdkImagePrivate and GdkColormapPrivate to have a
18364          windowing system dependent part (GdkFontPrivateX etc.)
18365          that "derives" from the system-independent part.
18366
18367        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
18368          Got rid of the included-source-files for XInput in
18369          favor of automake conditionals. (Which didn't exist
18370          when XInput support was originally added.)
18371
18372        * gdk/gdkrgb.c: Remove the visual id from the debugging
18373          statements since that is X11 specific; print out
18374          type/depth info instead.
18375          
18376
18377 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
18378
18379         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
18380         loading duplicates of hashed fonts.
18381
18382         * gdk/gdk.c (gdk_keysym_convert_case): rename
18383         gdk_XConvertCase to gdk_keysym_convert_case, allow
18384         results to be NULL in the GTK+ style.
18385
18386         * gdk/gdkcompat.h: Started compatibility header
18387         for renames.
18388
18389 1999-11-07  Tor Lillqvist  <tml@iki.fi>
18390
18391         * gdk/win32/gdkprivate.h: New font private structures, related to
18392         fontsets.
18393
18394         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
18395         gdk_font_list_free(). On X11, will just be wrappers to
18396         XListFonts() and XFreeFontNames(). On Win32, the code previously
18397         in gtkfontsel.c is now here.
18398
18399         New function gdk_font_xlfd_create(). On X11 will get the FONT
18400         property of the font (for GDK_FONT_FONTs), or call
18401         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
18402         builds a XLFD style name from the font information in the LOGFONT
18403         struct(s).
18404
18405         New function gdk_font_xlfd_free(), which correspondingly frees the
18406         string returned by gdk_font_xlfd_create().
18407
18408         Implement fontsets on Win32. Add a function that iterates over a
18409         wide char string and calls a callback function for each substring
18410         of wide chars from the same Unicode subrange (and thus probably
18411         available in the same real font).
18412
18413         Improve the XLFD emulation a bit.
18414
18415         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
18416
18417         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
18418         Beta3, WM_IME_CHAR messages don't seem to contain the composed
18419         multi-byte char as with the Active IMM on Win9x. Oh well, handle
18420         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
18421         ImmGetCompositionStringW() to get the composed Unicode chars.
18422
18423         * gdk/win32/gdkgc.c
18424         * gdk/win32/gdkdraw.c: Changes needed because of the font private
18425         struct changes.
18426
18427         * gdk/win32/gdk.def: Add the new functions.
18428
18429 1999-11-04  Tor Lillqvist  <tml@iki.fi>
18430
18431         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
18432         get the Platform SDK to get <dimm.h>.
18433
18434         * gdk/win32/gdkevents.c: More event handling fixes and
18435         simplification. Never generate motion events with is_hint true. We
18436         used to do that on bogus grounds earlier. Windows sends
18437         WM_MOUSEMOVE messages on button events even if the mouse hasn't
18438         moved, ignore these.
18439
18440         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
18441
18442         * gdk/win32/gdkglobals.c
18443         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
18444         the TrackMouseEvent function, and use it.
18445
18446         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
18447         char before calling WideCharToMultiByte in order to get a string
18448         for the window title.
18449
18450         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
18451
18452         * gdk/win32/gdk.def: Remove obsolete functions.
18453
18454         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
18455         /nodefaultlib and /defaultlib switches.
18456
18457         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
18458
18459 1999-10-31  Tor Lillqvist  <tml@iki.fi>
18460
18461         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
18462         EuroSign).
18463
18464         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
18465         same type as GdkWChar, especially on Win32.
18466
18467         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
18468
18469         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
18470         before passing to Windows GDI for drawing etc. Convert to the
18471         system default codepage before passing to Windows as window
18472         titles.
18473
18474         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
18475         support changing input locale on the fly.
18476
18477         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
18478         on-the-fly changes. Convert incoming characters from the current
18479         codepage to Unicode (and then to a UTF-8 multi-byte string) based
18480         on the current input language. Use keysym<->Unicode mapping tables
18481         and functions borrowed from xterm sources.
18482
18483         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
18484         editions of Win9x, use the ActiveX-based Active IMM (Input Method
18485         Manager) if available. IMEs and the Active IMM are available under
18486         the disguise of Chinese, Korean and Japanese support for IE and
18487         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
18488         support is present in all editions (as long as you install it).
18489
18490         Call DispatchMessage from gdk_events_queue() (and thus
18491         gdk_WindowProc()), instead of duplicating the code in
18492         gdk_WindowProc().
18493
18494         Reworked the grab handling and propagation code, factored out
18495         duplicated code snippets into separate functions. Other cleanups,
18496         too.
18497
18498         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
18499         the <dimm.h> header describing the Active IMM.
18500
18501         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
18502         just do the same as for "single" fonts.
18503
18504         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
18505         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
18506         the new keysyms from gdkkeysyms.h.
18507
18508         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
18509         fontset, so that gtkentry uses wide characters.
18510
18511         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
18512         GTk+'s system directory "gtk+", not "gtk".
18513
18514 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18515
18516         * docs/gtkfaq.sgml: FAQ update
18517
18518 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18519
18520         * gdk/win32/gdkprivate.h: Add more font private data.
18521
18522         * gdk/win32/gdkfont.c
18523         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18524         fonts and strings. Now works much better. You still have to
18525         have a correct font selected, though. No fontset emulation yet.
18526
18527 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18528
18529         * gtk/maketypes.awk: Use G_OS_WIN32.
18530
18531         * gtk/gtk.def: Add some missing entry points. Also some non-public
18532         ones, but PyGTK porter claims to need them.
18533
18534         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18535         built-in type generation.
18536
18537 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18538
18539         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18540         GDK_FONT_FONT fonts (which is all we have for now, we don't
18541         emulate fontsets). The X11 version uses plain XDrawString in that
18542         case, too. The string passed to gdk_draw_text_wc seems to be in
18543         fact (at least, when used by gtkentry and gtktext) either in a
18544         single-byte charset, or a DBCS. Not Unicode.
18545
18546         This fixes the problem in gtkfontsel, where even if you had
18547         selected a font with a non-Latin1 charset (windows-greek, for
18548         instance), the preview still used Latin-1 glyphs.
18549
18550         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18551         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18552         (gdk_font_load): Recognize the demibold etc weights, even if we
18553         don't have the corresponding constants in the headers.
18554         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18555         version. Should save font resources a bit, when we don't have
18556         multiple HFONTs for the same font.
18557
18558         * gdk/win32/gdkprivate.h: Add the names field as in the X11
18559         version.
18560
18561 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
18562
18563         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
18564         X values
18565
18566 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
18567
18568         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
18569         layout support (as mentioned on
18570         http://www.jcinteractive.com/gnome-ui/software/widgets/)
18571
18572 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
18573
18574         * gtk/fnmatch.c
18575         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
18576
18577 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
18578
18579         * configure.in (ALL_LINGUAS): Added Galician (gl)
18580
18581 1999-10-05  Tor Lillqvist  <tml@iki.fi>
18582
18583         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
18584
18585         * gdk/win32/gdkcompat.c: New file, actually provide an
18586         implementation for the deprecated functions. (Just temporarily.)
18587
18588         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
18589
18590         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
18591
18592         * gdk/win32/gdk.def gtk/gtk.def: Updates.
18593
18594 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
18595
18596         * configure.in: Added "uk" to ALL_LINGUAS.
18597         
18598 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
18599
18600         * configure.in: correct checking for BeOS check
18601
18602         * gdk/gdktypes.h
18603         * gtk/fnmatch.c
18604         * gtk/gtkfilesel.c
18605         * gtk/gtkitemfactory.c
18606         * gtk/gtkmain.[ch]
18607         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
18608
18609 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18610
18611         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
18612         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
18613         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
18614         by Bulgarian). 
18615
18616 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
18617
18618         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
18619         Fix a reference to window_private->destroyed.   
18620
18621         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
18622         (ugly) setting of an internal GdkWindow member to use
18623         a _slightly_ cleaner macro.
18624
18625         * gdk/gdkprivate.h: Split GdkWindowPrivate into
18626         GdkDrawablePrivate and GdkWindowPrivate.
18627         Add extra macros for accessing GDK_DRAWABLE_ components.
18628
18629         * *.[ch]: Massive adjustments for the above, use the
18630         new macros in a lot of places.
18631
18632 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
18633
18634         * gdk/gdktypes.h: Make GdkDrawable the base type,
18635         not GdkWindow.
18636
18637 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
18638
18639         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
18640
18641 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
18642
18643         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
18644
18645 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
18646
18647         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
18648         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
18649
18650         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
18651
18652         * docs/gtk-config.1: Now autogenerated.
18653         * docs/Changes-1.4.txt: started
18654         
18655 1999-10-03  Tor Lillqvist  <tml@iki.fi>
18656
18657         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
18658         to #ifdef also here.
18659
18660         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
18661         Owen did to the X11 backend.
18662
18663         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
18664         ScrollWindowEx when blitting inside a window, it can't be correct
18665         in the general case.
18666
18667         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
18668         WM_GETMINMAXINFO is easier.
18669
18670         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
18671         depth equal to the bitspixel value, not the visual's depth.
18672
18673         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
18674         to 24 even if the bitspixel value is 32.
18675
18676         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
18677         need to check for depth==32 when bpp==32, depth will always be 24.
18678
18679 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
18680
18681         * docs/Changes-1.4.txt: Started
18682         
18683         * gtk/Makefile.am (gdk_headers): Include all the new headers.
18684
18685         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
18686         
18687         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
18688         into C file.
18689         
18690         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
18691         header to gdkinputprivate.h.
18692
18693         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
18694         unused since before 1.2.
18695
18696 1999-09-30  Tor Lillqvist  <tml@iki.fi>
18697
18698         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
18699         expand possible hex escapes in the font family (put there by
18700         logfont_to_xlfd if the font name isn't a legal XLFD font family,
18701         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
18702         On Win32, add hex escapes here, too.
18703
18704 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
18705
18706         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
18707         to #ifdef GDK_WINDOWING_X11.
18708
18709 [ Merges from gtk-1-2 ]
18710
18711 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
18712
18713         * configure.in: fixed "GNU Make" check to pass with new make version
18714         3.77.95.
18715
18716 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
18717
18718         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
18719         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
18720         AM_PATH_GTK() macros don't get confused by the -pre1.
18721
18722 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18723
18724         * configure.in (REBUILD): Change check for perl5
18725           to check explicitely for v >= 5.002. (5.001
18726           does not work with our scripts.)
18727
18728 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
18729
18730         * configure.in: evaluate $PERL for the perl version check. added
18731         --disable-rebuilds to give the user an option to completely disable
18732         any source autogeneration rules.
18733
18734 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
18735
18736         * configure.in: evaluate $ac_make when checking for GNU Make.
18737
18738 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18739
18740         * docs/Makefile.am: added generation.txt.
18741
18742         * Makefile.am: require automake 1.4, build README from README.in and
18743         INSTALL from INSTALL.in in dist-hook.
18744         
18745         * README.in:
18746         * INSTALL.in: new files to autogenerate README and INSTALL from.
18747
18748         * configure.in: figure whether we have GNU Make
18749
18750         * docs/generation.txt: minor additions/corrections.
18751
18752 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18753
18754         * docs/gtkfaq.sgml: FAQ Update
18755
18756 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18757         
18758         * configure.in: Fix autoconf warnings about cross compilation by
18759         trying to provide sane defaults for AC_TRY_RUN.
18760
18761 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
18762
18763         * ltconfig
18764         * ltmain.sh: upgrade to libtool 1.3.3
18765
18766 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
18767
18768         * INSTALL: Indicate that the --with-glib= configure
18769         time flag is unsupported.
18770
18771 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18772
18773         * docs/generation.txt: Added a file that gives
18774         documenation about the autogeneration process for
18775         various autogenerated files.
18776         
18777 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18778
18779         * configure.in (LIBS): Look for libgmodule in the
18780         right location.
18781
18782 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18783
18784         * docs/gtk_tut.sgml: Removed references to
18785         code examples in my directory on gtk.org as
18786         they should all be in the tutorial now.
18787
18788         * docs/gtk_tut.sgml: Added sources for dial-test
18789         and scribble-xinput programs that were previously
18790         missing.
18791
18792 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18793
18794         * TODO: Added entry about menu keyboard navigation, removed
18795         some finished items.
18796
18797 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18798
18799         * acinclude.m4: Standardize on func_dgettext
18800         not func_gettext, so that the checks for dgettext
18801         actually are paid attention to.
18802
18803 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18804
18805         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18806         directly, rather than repeating the checks for
18807         gettext.
18808
18809         * INSTALL: Added information about gettext and
18810         NLS support.
18811
18812         * acinclude.m4 (LIBM): Check for dgettext, not
18813         just gettext. This should hopefully fix things wrt
18814         systems with old versions of GNU gettext installed.
18815
18816 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18817
18818         * configure.in (LIBS): Look for libgmodule in the
18819         right location.
18820
18821 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18822
18823         * autogen.sh: add --enable-maintainer-mode
18824
18825         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18826
18827 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18828
18829         * docs/gtk-config.1.in:
18830           docs/Makefile.am:
18831           configure.in: gtk-config is now generated.
18832
18833         * docs/gtk-config.1: Removed, now generated.
18834
18835 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18836
18837         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18838         handle CreateNotify itself, still put out a debuging message for
18839         --gdk-debug=events. made the ReparentNotify debugging message more
18840         verbose.
18841         wrap xcoords translation for ConfigureEvents into an error trap,
18842         a destroy event may already be pending, and in that case, the
18843         actuall coordinate values are not at all critical.
18844
18845 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18846
18847         * gdk/gdkcc.c: Stop leaking the color_hash all over
18848         the place. Simplify and improve the logic.
18849
18850 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18851
18852         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18853         for prototypes and function implementations consistent (reported
18854         by Tomas Ogren).
18855
18856 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18857
18858         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18859         send_event set in debugging output.
18860         (gdk_compress_exposures): default initialize the event so we don't
18861         operate on bogus values (namely send_event).
18862
18863 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18864
18865         * gdk/gdkwindow.c: When we receive an unexpected
18866         destroy notify on one of our windows, don't just
18867         warn about it, also mark our windows as destroyed.
18868
18869 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18870
18871         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18872           name => font and name => fontset hashes. The 
18873           name => fontset hash is a _big_ win since we
18874           weren't previously caching fontsets at all and loading
18875           fontsets is expensive. The name => font hash
18876           is less of a win, but it does save us from doing
18877           repeated XQueryFont calls on the same font.
18878
18879         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18880           list so we can remove font/fontset from hash.
18881
18882 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18883
18884         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18885           and slightly confusing test. [ XInternAtom (,,TRUE)
18886           will never return None ].
18887
18888 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18889
18890         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18891           gdk/gdkwindow.c (gdk_window_set_hints):
18892
18893         Don't omit setting the properties if flags == 0 -
18894         there may be an existing set of properties there
18895         already. (Very old bug. Would it be better to
18896         delete the property instead?)
18897
18898         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18899           spelling error in comment.
18900
18901 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18902
18903         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18904           to avoid stomping over gdk_error_warnings.
18905
18906         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18907           as (bits_per_pixel + 7) / 8. This gives the same
18908           result as before for multiples of 8, but actually
18909           a "reasonable" value for 1bit or 4bit displays.
18910
18911 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18912
18913         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18914         GNU Make.
18915
18916 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18917
18918         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18919         discarding configure events.
18920
18921 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18922
18923         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18924         refcount is greater than zero.
18925
18926         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18927
18928         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18929
18930         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18931
18932         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18933
18934 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18935
18936         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18937         that format 32 => sizeof(item) == 4. It really is
18938         sizeof(long).
18939
18940 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18941
18942         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18943         core dump at all on X IO errors, only core dump
18944         if --enable-debug for X errors.
18945
18946 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18947
18948         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18949         unknown window:" message. disabled ConfigureNotify discarding code,
18950         because it led to events being processed out of order.
18951
18952 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18953
18954         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18955
18956         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18957         we export this function, supress error warnings and don't reset the
18958         error code in the first half of this function.
18959
18960         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18961         code (instead of just -1) so gdk_error_trap_pop() reveals something
18962         actually informative about the error that happened.
18963
18964         * gdk/*.c:
18965         don't rely on gdk_error_code being -1 if an error occoured, but just
18966         gdk_error_code != 0.
18967
18968 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18969
18970         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18971         pointer *before* invoking the filter function, so we at least don't
18972         crash if a filter is removed that is currently executed. window filters
18973         *really* need to be made truely reentrant at some point.
18974
18975 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18976
18977         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18978         PropertyNotify debug messages.
18979
18980 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18981         
18982         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18983         
18984         * gdk/gdkim.c: Fix cut-and-paste errors for 
18985         x/y and PreeditAttributes/StatusAttributes.
18986
18987 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18988
18989         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18990         G_MAXINT to 2^16 to alleviate overflow problems in
18991         various window managers.
18992
18993 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18994
18995         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18996         for fontsets.
18997
18998 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18999
19000         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
19001         Initialize size_hints.x and size_hints.y because kwm
19002         brokenly pays attention to them.
19003         (Bug #1181 -  Lars Heete <hel@admin.de>)
19004
19005 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
19006
19007         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
19008         return value of gdk_list_visuals(). 
19009         (Bug #1193 - Morten Welinder <terra@diku.dk>)
19010
19011 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
19012
19013         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
19014         XSetIMValues to (void *) when comparing to NULL, to workaround
19015         the problem of some compilers barfing since older X headers don't
19016         have the prototype for it.
19017
19018 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
19019
19020         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
19021         for pseudocolor where colormap->colors was double
19022         allocated.
19023
19024         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
19025         color value in the hash table with the pixel filled
19026         in so when we do later hash table lookups, the color
19027         value is correct.
19028         
19029 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
19030
19031         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
19032         making the call
19033
19034 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
19035
19036         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
19037         pointed out by Morten Welinder <terra@diku.dk>.
19038
19039 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19040
19041         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19042           default filter from the list
19043
19044 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19045
19046         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19047           default filter from the list
19048
19049 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
19050
19051         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
19052
19053         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
19054         g_strdup_printf instead of calcing the length separately
19055
19056 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
19057
19058         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
19059         that we don't do in many other places. (Fixing duplicate 
19060         #include of config.h)
19061
19062         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
19063         Otherwise, #ifndef XINPUT_NONE check in the latter
19064         doesn't work. (Bug #546)
19065
19066 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
19067
19068         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
19069         "None" case insensitive.
19070
19071 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19072
19073         * gdk/gdkselection.c: 
19074         Add error traps so if the other end of the connection
19075         dies, we survive.
19076
19077 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19078
19079         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
19080         dest_xid field into two fields - one for the window
19081         to send in messages, one to indicate the last looked
19082         up window for caching purposes. This is needed, so
19083         that Leave messages get the correct window.
19084
19085 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
19086
19087         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
19088         Fix warning created by people mucking around
19089         with the gsource API.
19090
19091         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
19092         Change mapping between GIOCondition and GdkInputCondition
19093         to match the way the Linux kernel does it. This should
19094         fix problems where closed pipes were no longer signalling
19095         GDK_INPUT_READ on systems with a native poll().
19096
19097 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
19098
19099         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
19100         explicitly for the string "None" - it is in the XPM
19101         spec and some servers treat unknown colors in odd ways
19102         (like asking the user!)
19103
19104 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19105
19106         * gdk/gdkevents.c: made "->" into a "." of previous change so
19107         it compiles
19108
19109 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
19110
19111         * gdk/gdkevents.c (gdk_compress_exposures): Set the
19112         window field of the event structure before calling
19113         user filters.
19114
19115 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19116
19117         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
19118         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
19119
19120 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
19121
19122         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
19123         intermediate text property - prevents major memory
19124         leak when gdk_use_mb.
19125         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
19126
19127 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19128
19129         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19130         gtk-a-higuti-990322-[0-3]
19131
19132         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
19133         sizeof(wchar_t) != sizeof (GdkWChar)
19134
19135         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19136         that was causing -DX_LOCALE not to work.
19137
19138         * gtk/gtkrc.c (gtk_rc_init):
19139         X_LOCALE will never have LC_MESSAGES defined
19140
19141         * gdk/gdk.c (gdk_init_check):
19142         Remove --xim-preedit and --xim-status from argv properly.
19143
19144         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
19145         that the client window is present on the X server
19146         before we pass it to the input method.
19147
19148 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19149
19150         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
19151         if --display is specified on the command line, than
19152         the drag window will not be created on that display.
19153         
19154 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
19155
19156         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
19157         lookups with only_if_exists == TRUE were inserting
19158         bogus values into the atom cache.
19159
19160 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19161
19162         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
19163         then reset it to NULL.
19164
19165         * gdk/gdkcolor.c:
19166         (gdk_colors_free): 
19167         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
19168         key for g_hash_table_remove() in both functions, this prevents us
19169         from accessing possibly uninitialized portions of a GdkColor structure
19170         where we are only interested in its pixel value.
19171
19172 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19173
19174         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19175         font hash table, if we have a GdkFontPrivate entry for this font
19176         already, simply increment its reference count, provided by Olaf Dietsche
19177         <olaf.dietsche+list.gtk@netcologne.de>.
19178
19179 1999-09-21  Tor Lillqvist  <tml@iki.fi>
19180
19181         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
19182         just to be sure.
19183
19184         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
19185         unused variables, leftovers from the X11 version.
19186
19187         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
19188
19189         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
19190         downcase fields on X11.
19191
19192 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19193         
19194         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
19195         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
19196
19197 1999-09-17  Tor Lillqvist  <tml@iki.fi>
19198
19199         * gdk/win32/gdk.def: Add gdk_threads_mutex.
19200
19201         * gtk/makefile.msc: Correct path to libintl.
19202
19203         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
19204         use of gint vs. int, and gint vs. gboolean in headers and
19205         definitions. Use GtkType for the *_get_type functions. Note that
19206         these changes preserve binary compatibility.
19207
19208         * gdk/gdk.c
19209         * gdk/win32/gdk.c
19210         * gdk/gdk.h: Fix inconsistencies: gint vs int.
19211
19212         * gtk/gtkmain.c
19213         * gtk/gtkclist.c
19214         * gtk/gtkmenufactory.c
19215         * gtk/gtknotebook.c
19216         * gtk/gtkwidget.c: Fix inconsistencies, also gint
19217         vs. gboolean.
19218
19219         * gtk/gtkcolorsel.[ch]
19220         * gtk/gtkcombo.[ch]
19221         * gtk/gtkdrawingarea.[ch]
19222         * gtk/gtkgamma.[ch]
19223         * gtk/gtkhandlebox.[ch]
19224         * gtk/gtkhpaned.[ch]
19225         * gtk/gtkhruler.[ch]
19226         * gtk/gtkplug.[ch]
19227         * gtk/gtkpreview.[ch]
19228         * gtk/gtkruler.[ch]
19229         * gtk/gtksocket.[ch]
19230         * gtk/gtkstatusbar.[ch]
19231         * gtk/gtktoolbar.[ch]
19232         * gtk/gtkvbbox.[ch]
19233         * gtk/gtkvpaned.[ch]
19234         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
19235         functions.
19236
19237         * gtk/gtkgamma.h: Fix bug, missing () in call of
19238         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
19239
19240 1999-09-14  Tor Lillqvist  <tml@iki.fi>
19241
19242         * gdk/gdkcolor.c (gdk_colormap_new)
19243         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
19244         colormap->colors was allocated twice.
19245
19246         * gdk/win32/gdk.c: Remove some unused stuff.
19247
19248         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
19249         colormap.
19250
19251         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
19252         * gtk/gtklabel.h (gtk_label_get_type)
19253         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
19254         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
19255         in a couple of places, not guint.
19256
19257 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19258
19259         * configure.in,po/et.po: added Estonian language file
19260
19261 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19262
19263         * configure.in,po/da.po: added Danish file
19264
19265 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
19266
19267         * docs/gtkfaq.sgml: Minor FAQ Update
19268
19269 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
19270
19271         * docs/gtkfaq.sgml: FAQ update
19272
19273 1999-08-27  Tor Lillqvist  <tml@iki.fi>
19274
19275         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
19276         way to get window contents continually refreshed while resizing. I
19277         didn't like the effects myself, so it's not on by default.
19278
19279         * gdk/win32/gdkprivate.h: New flag variable
19280         gdk_event_func_from_window_proc, FALSE by default.
19281
19282         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
19283         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
19284         are passed --gdk-event-func-from-window-proc.
19285
19286         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
19287         and we have am event_func, call it instead of enqueing the event.
19288
19289 1999-08-23  Tor Lillqvist  <tml@iki.fi>
19290
19291         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
19292         Kelley: Set expose_count in GdkEventExposes correctly.
19293
19294         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
19295         MULTIPLE_WINDOW_CLASSES).
19296
19297         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
19298         for bug in NT, apparently NT *does* draw the end pixel, too, in
19299         LineTo with a one-pixel pen, so we don't have to do it ourselves.
19300
19301 1999-08-21  Tor Lillqvist  <tml@iki.fi>
19302
19303         Improvements by Hans Breuer: 
19304
19305         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
19306
19307         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
19308         CS_?REDRAW flags as they cause lots of (late) redraws when "show
19309         window contents while dragging" is turned on. Allocate at least
19310         one unique class for every GdkWindowType. If support for single
19311         window-specific icons is ever needed (eg. Dialog specific), every
19312         such window should get its own class.
19313
19314 1999-08-19  Tor Lillqvist  <tml@iki.fi>
19315
19316         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
19317         error that caused crashes.
19318
19319 1999-08-17  Tor Lillqvist  <tml@iki.fi>
19320
19321         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
19322         window, use ScrollWindowEx, and call UpdateWindow. This prevents
19323         bugs when for instance part of the window was outside the
19324         display. Thanks to Philippe Colantoni for finding and fixing this.
19325
19326 1999-08-16  Tor Lillqvist  <tml@iki.fi>
19327
19328         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
19329         endpoint calculations which were totally wrong. (A little RTFMing
19330         helps a lot ;-)
19331
19332         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
19333         from a separate directory, not from gettext, because of licensing
19334         issues (we want to use the LGPL version).
19335
19336         * README.win32: Mention the intl from glibc vs from gettext issue.
19337
19338 1999-08-13  Tor Lillqvist  <tml@iki.fi>
19339
19340         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
19341         in the key event handling: Now AltGr chars work again. Also,
19342         now Alt-digits are passed up as well as Control-digits.
19343         Pass keypad plus and minus as normal plus and minus.
19344
19345 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19346
19347         * docs/gtkfaq.sgml: FAQ Update
19348
19349 1999-07-25  Tor Lillqvist  <tml@iki.fi>
19350
19351         * README.win32
19352         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
19353         the Wintab SDK.
19354
19355         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
19356         OK, but getting closer. Guard against bogus tilt data from Wacom
19357         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
19358         enable easier building without Wintab.
19359
19360         * gdk/win32/gdkinput.h
19361         * gdk/win32/gdkevents.c 
19362         * gdk/win32/gdkwindow.c: Minor changes related related to above.
19363         
19364         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
19365         code. As we have just one visual on Win32, no sense to have it in a
19366         table, and no need for the hash table.
19367
19368         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
19369         better on white background.
19370
19371 1999-07-21  Tor Lillqvist  <tml@iki.fi>
19372
19373         * README.win32: Update gcc build instructions. Mention gettext is
19374         GPL.
19375
19376         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
19377         supported cursor size with GetSystemMetrics.
19378
19379         * gdk/win32/gdkfont.c
19380         * gtk/gtkfontsel.c: Guard against some font weight and charset
19381         symbols being undefined (in mingw32 headers).
19382
19383         * gdk/win32/makefile.cygwin
19384         * gtk/makefile.cygwin
19385         * gtk/gtkthemes.c: No longer need to have differently named
19386         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
19387
19388 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
19389
19390         * docs/gtkfaq.sgml: Long awaited FAQ update.
19391
19392 1999-07-15  Tor Lillqvist  <tml@iki.fi>
19393
19394         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
19395         it. Obscure bit manipulation needed.
19396
19397         * gdk/win32/gdkevents.c: Logging.
19398         
19399         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
19400         style (file name include compiler name) for theme engines.
19401
19402 1999-07-13  Tor Lillqvist  <tml@iki.fi>
19403
19404         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
19405
19406         * gdk/win32/gdkevents.c: Fix long-standing bug in key
19407         events. The key.string wasn't zero-terminated, still we strdup'ed
19408         it in gdk_event_copy(). Synthesize crossing events for button
19409         events before possible propagation.
19410
19411         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
19412
19413         * gdk/win32/makefile.cygwin
19414         * gtk/makefile.cygwin: Use new DLL naming style for the
19415         GCC-compiled ones.
19416
19417         * gdk/win32/makefile.msc
19418         * gtk/makefile.msc: Cosmetics mostly.
19419
19420         * gtk/gtk.def: Add missing entry points.
19421
19422         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
19423
19424 1999-07-09  Tor Lillqvist  <tml@iki.fi>
19425
19426         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
19427         or height is zero. Don't print a warning if Pie or Arc fails, they
19428         always fail (?) for very narrow ellipses.
19429
19430         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
19431         the part or the destination window corresponding to source area
19432         outside of the source drawable's boundary.
19433
19434         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
19435         anything if less than two points.
19436
19437         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
19438         return NULL. Gtk cut-and-paste inside a single program works
19439         better this way. (It always gets the clipboard contents from
19440         Windows, not from its own copy, which is cleared anyway. I can't
19441         say I fully understand what happens... Emulating the X selection
19442         and property stuff is a bit of a mess.)
19443
19444         * gdk/win32/gdkevents.c
19445         * gdk/win32/gdkproperty.c: A bit more verbose logging.
19446
19447         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
19448         that never got deleted). Revamp gdk_region_shrink.
19449
19450         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
19451         after use.
19452
19453         * gtk/gtk.def: Add some missing entry points.
19454
19455         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
19456         component.
19457
19458 1999-07-04  Tor Lillqvist  <tml@iki.fi>
19459
19460         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
19461         Control-digits specially.
19462
19463 1999-07-03  Tor Lillqvist  <tml@iki.fi>
19464
19465         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
19466
19467 1999-06-28  Tor Lillqvist  <tml@iki.fi>
19468
19469         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
19470         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
19471         finding this.)
19472
19473 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
19474
19475         * gtk+.spec.in: Corrected some typos in files section.
19476         
19477 1999-06-15  Tor Lillqvist  <tml@iki.fi>
19478
19479         * README.win32: Mention using GNU gettext.
19480         * config.h.win32: Enable NLS stuff.
19481         * gtk/makefile.msc: Use GNU gettext.
19482         * gdk/win32/gdkdnd.c: Minor header reorg.
19483         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
19484         cosmetics.
19485         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
19486         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
19487
19488 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
19489
19490         * acinclude.m4
19491         * config.guess
19492         * config.status
19493         * ltconfig
19494         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
19495
19496 1999-05-30  Tor Lillqvist  <tml@iki.fi>
19497
19498         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
19499         SafeAdjustWindowRectEx. Don't override all calls to
19500         AdjustWindowRectEx by it, but use it only in two places: When
19501         creating a new top-level window and when moving a top-level
19502         window.
19503
19504         Use screen coordinate rectangle, not client rectangle, in
19505         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
19506         when we try to place a window so that the decoration (mainly,
19507         title bar) isn't visible.
19508
19509         These changes fix the bug that showed up for instance as the
19510         GIMP's saved top-level windows moving right and down (by an amount
19511         equal to the window decoration) for each session. This bug showed
19512         up also in testgtk's "Saved Position".
19513
19514         gdk_window_resize also redone a bit.
19515
19516 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19517
19518         * gtk/testgtkrc: Add (commented out) Windows-style theme
19519         include line.
19520
19521         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19522
19523 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19524
19525         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19526         gdkx.h to a gdk subdirectory, so that applications can include
19527         these with <gdk/*.h> without trouble.
19528
19529         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19530         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19531         have their bitmap destroyed.
19532
19533         * gdk/win32/gdk.def: Add gdk_root_parent.
19534
19535 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19536
19537         * configure.in
19538           gtk-config.in
19539           ltconfig
19540           ltmain.sh     
19541           gtk/Makefile.am: changes to compile nicely (with xlib) 
19542           on BeOS
19543
19544 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19545
19546         * acinclude.m4
19547         * config.guess
19548         * config.sub
19549         * ltconfig
19550         * ltmain.sh: upgrade to libtool 1.3
19551
19552 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19553
19554         * gtk/gtkclist.c:
19555         * gtk/gtkctree.c: merges from gtk-1-2
19556
19557 1999-04-25  Tor Lillqvist  <tml@iki.fi>
19558
19559         Support added for building using a GNU toolchain on Win32,
19560         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
19561
19562         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
19563         * config.h.win32: Changes for gcc.
19564         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
19565         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
19566         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
19567         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
19568         Protect shl stuff unavaiilable with mingw32 headers.
19569         * gdk/win32/gdkevents.c: Fix typo.
19570         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
19571         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
19572         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
19573         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
19574         the mingw32 headers.
19575         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
19576         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
19577         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
19578         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
19579         Test for NATIVE_WIN32, not _MSC_VER.
19580         * gtk/gtkmain.c: No use warning about developer version on Win32,
19581         there aren't any non-developer versions anyhow.
19582         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
19583         * gtk/makefile.msc: Use pthread from another directory. Minor other
19584         changes. 
19585
19586 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19587
19588         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19589           default filter from the list
19590
19591 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
19592
19593         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
19594          when gtk_widget_grab_default() is called for a widget that
19595          is not within a GtkWindow.
19596
19597 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
19598
19599         * docs/gtk_tut.sgml, examples/clist.c: use a
19600           scrolled window in the clist example. Minor
19601           tutorial fixes.
19602
19603 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
19604
19605         * docs/gtk_tut.sgml: Style check from David King
19606           <dking@youvegotmail.net>
19607
19608 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
19609
19610         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
19611         compile with unknown value of GDK_WINDOWING
19612
19613 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
19614
19615         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
19616         after the rule is fired.
19617         (install-exec-local): Install gdkconfig.h only if the contents are
19618         different from the currently installed gdkconfig.h.
19619
19620 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
19621
19622         * gdk/Makefile.am (configexecincludedir): Rename from 
19623         configincludedir so that gdkconfig.h will be installed 
19624         as part of `make install-exec'. 
19625
19626 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
19627
19628         * acinclude.m4
19629         * config.guess
19630         * config.sub
19631         * ltconfig
19632         * ltmain.sh: upgrade to libtool 1.2f
19633
19634         * autogen.sh: libtool is not required to autogen gtk+
19635
19636         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
19637         needed)
19638
19639 1999-03-18  Tor Lillqvist  <tml@iki.fi>
19640
19641         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
19642         declaring gdk variables exported/imported from the DLL. New image
19643         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
19644         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
19645         GDK_DRAG_PROTO_OLE2.
19646
19647         * gdk/gdk.h: Merge in Win32 version: Two new functions,
19648         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
19649         declared only for the Win32 version, but could be in the X11
19650         version as well. (Needed for a Xlib-less gdk_imlib.)
19651         gdk_color_hash should have only one parameter. Declare
19652         gdk_threads_mutex with GDKVAR.
19653         
19654         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
19655         just one parameter.
19656
19657         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
19658         per pixel, not bits.
19659
19660         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
19661         Fetch bpp (which means bits-per-pixel here) from another place on
19662         Win32. Accept also depth==32 (which we might get on Win32) with
19663         bpp==32.
19664
19665         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
19666         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
19667         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
19668         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
19669         in the backend-dependent directory, not in the common gdk
19670         directory.
19671
19672         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
19673         headers.
19674
19675 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
19676
19677         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
19678         want to use the Gtk+ devel version (which is true, and yes - even i am
19679         currently working with the 1.2.x branch). so everyone reading this, you
19680         probably want to issue
19681         cvs checkout -r glib-1-2 glib
19682         and
19683         cvs checkout -r gtk-1-2 gtk+
19684         as your next two comands.
19685
19686 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
19687
19688         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
19689         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
19690
19691         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
19692         file. strongly deprecated the GTK_HAVE_* macros, we provide
19693         GTK_CHECK_VERSION() for people that need to check for certain
19694         Gtk+ versions.
19695
19696         * gtk/gtkcompat.h: removed this from CVS.
19697         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
19698         idea right from the start, it just didn't seem like that back then.
19699
19700 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
19701
19702         * merges from gtk-1-2:
19703
19704 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
19705
19706         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
19707         item factory class has been created.
19708         (gtk_item_factory_parse_rc): likewise.
19709
19710         * gtk/gtkmenu.c:
19711         keep proper references for old_active_menu_item.
19712         (gtk_menu_reparent): unset the usize of the new parent,
19713         so the menu can sanely be size requested and we don't get nasty screen
19714         artefacts upon next reparentation.
19715         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
19716         enter notify. only synthesize enter notifies if the pointer really is
19717         inside the event window.
19718         (gtk_menu_popdown): use gtk_menu_shell_deselect().
19719         (gtk_menu_popup): move the background setting stuff into
19720         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
19721
19722         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
19723         gtk_menu_shell_select_item() to select the new item.
19724         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
19725         do the right thing for deselection as well.
19726
19727 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
19728
19729         * gtk/gtkwidget.[hc]:
19730         (gtk_widget_accelerators_locked): return whether a widget's accelerators
19731         are locked.
19732
19733         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
19734         existing accelerators if the widget's accelerators are locked.
19735
19736 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
19737
19738         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
19739
19740         * gtk/gtkmenu.c: truely forward key press and key release events to
19741         the menu widget from the toplevel or tearoff window. we can't simply
19742         connect to that, we need to stop further processing of the events as
19743         well.
19744
19745 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
19746
19747         * gtk/gtkmenu.c:
19748         (gtk_menu_key_press): pass event->keyval, event->state to
19749         gtk_accelerator_valid, instead of event->keyval twice.
19750         refuse to install single letter accelerators for menus that use
19751         single letter shortcuts.
19752
19753         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
19754         gtk_menu_ensure_uline_accel_group().
19755
19756         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
19757         which will always return an uline accel group, made
19758         gtk_menu_get_uline_accel_group() return NULL if the group isn't
19759         yet created.
19760
19761 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
19762
19763         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
19764
19765         * gtk/gtkclist.c (gtk_clist_column_title_passive):
19766         Leave button sensitive, trap  button_press, button_release,
19767         motion_notify, enter_notify and leave_notify events instead.
19768         (gtk_clist_column_title_active): disconnect event handler.
19769         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19770         Guillaume Laurent <glaurent@worldnet.fr>
19771
19772 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19773
19774         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19775         width/height mixups.
19776
19777         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19778         if needed.
19779
19780 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19781
19782         * gtk/testgtk.c (create_item_factory): unref the item factory after
19783         window's destruction.
19784
19785         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19786         count on the menu shell around the menu item's activation, since the
19787         signal emission may cause menu shell destruction.
19788
19789         * gtk/gtkitemfactory.c:
19790         the previous code leaked one accel group per menu. we use
19791         gtk_menu_get_uline_accel_group() now to fix that, and with that
19792         also create the underline accelerator group of the menus only if
19793         required (i.e. an underline accelerator has been specified).
19794         (gtk_item_factory_construct):
19795         (gtk_item_factory_create_item): removed code that would create an
19796         extra accel group for the menu (and leak references).
19797         (gtk_item_factory_create_item): adapted the underline accelerator
19798         installation code to properly feature gtk_menu_get_uline_accel_group().
19799
19800         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19801         menu->accel_group, this may return NULL if the accelerator group
19802         hasn't been set yet.
19803         added gtk_menu_get_uline_accel_group() to retrive the underline
19804         accelerator group of the menu, this will be created on demand
19805         and proper care is taken about its reference count.
19806
19807         * gtk/gtkitemfactory.h:
19808         * gtk/gtkitemfactory.c:
19809         dumped the approach of keeping a widgets by action list on the
19810         factory since the factory<->widget destroy negotiation didn't work
19811         and would be hard to get going at all. instead we keep a list of
19812         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19813         persistant throughout a program's life time).
19814         also, i removed the static const gchar *key_* variables, and made
19815         them inline strings (they weren't actually used anyways).
19816         (gtk_item_factory_add_item): update ifactory->items.
19817         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19818         the item factory pointer from the remaining ifactory widgets).
19819         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19820         list to find the widget.
19821         (gtk_item_factory_get_item): new function that works around
19822         gtk_item_factory_get_widget() limitations, this function will only
19823         return menu items, even for <Branch> entries.
19824
19825 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19826
19827         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19828         font hash table, if we have a GdkFontPrivate entry for this font
19829         already, simply increment its reference count, provided by Olaf Dietsche
19830         <olaf.dietsche+list.gtk@netcologne.de>.
19831
19832         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19833         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19834
19835 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19836
19837         * gtk/gtkcontainer.c:
19838         (gtk_container_add_with_args):
19839         (gtk_container_addv):
19840         (gtk_container_add): before adding a child to a conatiner, make sure
19841         it is (default) constructed, this is neccessary because under certain
19842         circumstances the child will get relized and mapped immediatedly, in
19843         which case it has to be constructed already.
19844
19845 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19846
19847         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19848         values > 1 as TRUE also.
19849
19850 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19851
19852         * README.win32: New file.
19853                 
19854         * configure.in: Check for lstat.
19855
19856         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19857         completeness.
19858
19859         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19860
19861         * gtk/gtk.def: Removed CRs.
19862
19863         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19864         ..\gdk\win32).
19865
19866         * gdk/win32/makefile.msc: Correct upwards relative paths.
19867         
19868 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19869
19870         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19871           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19872           it was connecting a void function to expose_event and the int
19873           returning function to the draw signal
19874
19875 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19876
19877         * configure.in:
19878         Use correct path to libgmodule.la when ref'ing uninstalled copy
19879         of glib.  (Already in stable branch, Bug #417)
19880
19881 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19882
19883         Win32 merge and general portability stuff:
19884                 
19885         * acconfig.h,configure.in: Check for <sys/time.h>.
19886
19887         * gdk/win32: New directory (actually, been there for a while).
19888         
19889         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19890         NATIVE_WIN32, and use these. Always case fold on Win32. No
19891         backslashed escapes on native Win32.
19892
19893         * gtk/{gtk.def,makefile.msc}: New files.
19894
19895         * gtk/Makefile.am: Add above new files.
19896         
19897         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19898         instead of <strings.h>.
19899
19900         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19901         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19902         <unistd.h> appropriately.
19903
19904         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19905         Use ABS() (from <glib.h>) instead of abs().
19906         
19907         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19908         of gtk (and thus glib) headers, so that WIN32 will be
19909         defined. With MS C, include <direct.h> for mkdir prototype.
19910
19911         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19912         some casts, needed by MS C.
19913
19914         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19915         implemented).
19916
19917         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19918         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19919         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19920
19921         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19922                 
19923         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19924         the event is not a hint, or its window is not the slider. Needed
19925         on Win32, at least.
19926
19927         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19928         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19929         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19930         a subdirectory of the Windows directory as gtk system
19931         configuration directory.
19932
19933         * gtk/gtkselection.c: No chunks on Win32.
19934
19935         * gtk/gtksocket.c: Not implemented on Win32.
19936
19937         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19938
19939         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19940
19941         * gtk/maketypes.awk: Declare variables with a macro that expands to
19942         necessary export/import magic in the case of Win32.
19943                 
19944         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19945
19946 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19947
19948         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19949         since those were meant only for gdki18n.h.  
19950         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19951         for widechar tests.
19952         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19953
19954 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19955
19956         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19957         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19958
19959         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19960         installed) to CFLAGS.
19961
19962         * gdk/Makefile.am: Add rules for gdkconfig.h.
19963
19964         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19965         APIs.
19966
19967         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19968         gdkx.h anyway when compiling for X11.
19969         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19970         general): Merge in Win32 version.
19971         
19972         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19973         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19974         expansion (if we don't have HAVE_PWD_H), allow for drive
19975         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19976         included code from Craig Setera's port to Win32 (the one that uses
19977         X11, and the cygwin dll), even if it probably will be abandoned.
19978
19979         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19980         the user entered one herself.  This way one can complete *.h and
19981         don't get matches on any .help files, for instance.
19982         
19983 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19984
19985         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19986         font hash table, if we have a GdkFontPrivate entry for this font
19987         already, simply increment its reference count, provided by Olaf Dietsche
19988         <olaf.dietsche+list.gtk@netcologne.de>.
19989
19990         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19991         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19992
19993 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19994
19995         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19996         the number of calls to gdk_draw_point() (and thus to X) by
19997         clipping the points by hand.
19998
19999         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
20000         the clip parameter.
20001         (gtk_handle_box_paint): Only paint the handle if the expose area
20002         intersects it.
20003
20004 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
20005
20006         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
20007
20008 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
20009
20010         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
20011         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
20012
20013 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
20014
20015         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
20016          textmode (O_TEXT) for OS/2 version.
20017
20018 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
20019
20020         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
20021         GtkSpinButton, "input" and "output", to make the output more flexible.
20022         The user has to provide a mapping between adjustment->value and the
20023         output string (and vice versa, if the spin button is editable). 
20024         See testgtk for examples.
20025
20026 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
20027
20028         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
20029         new one.
20030         
20031         * configure.in: set gtk+ version to 1.3.0.