]> Pileus Git - ~andy/gtk/blob - ChangeLog
dialog icon fix-ups, arrow icons, font, refresh and others
[~andy/gtk] / ChangeLog
1 2001-09-12  Jakub Steiner <jimmac@ximian.com>
2
3         * gtk/stock-icons/dialog_question.png: replacing the shaky
4           question mark with a sans-serif one.
5         * gtk/stock-icons/stock_top.png, stock_bottom.png,
6      stock_first.png, stock_last.png: using the new style arrows
7         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
8      colors.
9         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
10      color.
11         * gtk/stock-icons/stock_zoom*: anti-aliased
12         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
13      '-' with a '_', removed the wrong files
14
15 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
16  
17         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
18  
19         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
20         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
21         than in gtk-2.0/major.minor.micro/<type>/. This
22         works better for a search path for modules.
23  
24         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
25         gtk_binary_version variable holding major.minor.(micro-binary_age).
26  
27         * modules/input/Makefile.am (moduledir): Fix installation
28         directory to match change in lookup location.
29  
30         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
31         suffixes. Needs to be handled in g_module_build_path().
32
33         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
34         appropriate.
35  
36 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
37
38         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
39         causing RC properties not to work.
40
41 2001-09-11  Jakub Steiner <jimmac@ximian.com>
42
43         * gtk/stock-icons/dialog-error.png: less drastic
44         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
45           "STOP" is international enough.
46         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
47         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
48
49 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
50
51         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
52         (add|remove)_selection_clipboard symmetric. (bug #59836)
53
54         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
55         Avoid SEGV for empty tree. (bug #60243)
56
57 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
58
59         * tests/testgtk.c (create_idle_test): slight fix for
60         g_object_set() not usable for nesting anymore.
61
62         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
63         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
64         properties, supply ::shadow_type properties instead as most
65         other widgets do.
66
67 2001-09-10  Alex Larsson  <alexl@redhat.com>
68
69         * demos/gtk-demo/stock_browser.c:
70         * gdk/gdkcolor.c:
71         * gdk/gdkfont.c:
72         * gdk/gdkcursor.c:
73         * gdk/gdkevents.c:
74         * gdk/gdkrectangle.c:
75         * gtk/gtktypeutils.c:
76         Update to use the new g_boxed_type_register_static API.
77
78 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
79
80         * gtk/gtktreestore.c:
81         Fix looping in gtk_tree_store_init() waiting for zero random int.
82
83 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
84
85         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
86         behaviour which havoc broke. they have to default to 1.0 for
87         expand behaviour.
88
89         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
90
91 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
92
93         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
94         Amend previous change to avoid runtime error in g_param_spec_ref()
95
96 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
97
98         * gtk/gtkrc.c (insert_rc_property): Fix blank line
99         in the wrong place.
100
101 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
102
103         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
104         do a lookup immediately after creating style->property_cache,
105         since bsearch crashes on zero length for Solaris.
106         (Found by Padraig O'Briain.)
107
108 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
109
110         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
111         Really return NULL if not set.
112         (gtk_widget_init): Remove unused varaible.
113         
114 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
115
116         * configure.in:
117         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
118         in cvs.
119
120 2001-09-08  Havoc Pennington  <hp@pobox.com>
121
122         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
123         people might want to use
124
125 2001-09-08  Havoc Pennington  <hp@pobox.com>
126
127         * gtk/gtkalignment.c (gtk_alignment_class_init): default
128         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
129
130         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
131
132         * gtk/gtktextiter.c: fix docs
133         (gtk_text_iter_spew): get rid of this
134
135         * gtk/gtklayout.c: docs
136
137         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
138         to center image and label together, instead of having image on
139         left and label centered, patch/suggestion from Jacob
140
141         * gtk/gtkdialog.c: docs
142
143 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
144
145         * gtk/gtkliststore.c: Write documentation
146         * gtk/gtktreestore.c: Write documentation
147
148 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
149
150         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
151         with GArray and bsearch(), to remove dependency on a still
152         evolving interface that we want to keep private to glib/gobject. 
153
154 2001-09-08  Havoc Pennington  <hp@pobox.com>
155
156         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
157         docs fixes
158
159         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
160
161         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
162
163         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
164
165         * gtk/gtkscrolledwindow.h: docs fixes
166
167         * gtk/gtkimage.c (gtk_image_new): docs fixes
168
169 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
170
171         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
172         false alarm  constness warning with a cast.
173
174         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
175         for the inside-gdk case.
176
177 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
178
179         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
180         remove g_print.
181
182         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
183         change models, #59899
184
185 2001-09-07  Havoc Pennington  <hp@pobox.com>
186
187         * gtk/gtkmain.c: move some docs inline
188
189 2001-09-07  Havoc Pennington  <hp@pobox.com>
190
191         * gtk/gtk.h: tsk tsk, jrb broke the build
192
193 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
194
195         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
196         Removed 'fill' attribute.  It was silly b/c that was a property of
197         the cell renderer, anyway.
198         (gtk_tree_view_column_render): Actually render the packed
199         renderers.
200         * doc/tree-column-sizing.txt: initial devel documentation.
201         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
202         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
203
204         * tests/testtreefocus.c: fix up to reflect above changes.
205         * tests/testtreeview.c: ditto
206         * demos/gtk-demo/stock_browser.c: ditto
207
208 2001-09-07  Alex Larsson  <alexl@redhat.com>
209
210         * gdk/linux-fb/gdkcolor-fb.c:
211         Removed unused function.
212         
213         * gdk/linux-fb/gdkdrawable-fb2.c
214         * gdk/linux-fb/gdkfont-fb.c:
215         Use PangoLanguage functions.
216
217         * gdk/linux-fb/gdkinput.c:
218         * gdk/linux-fb/gdkselection-fb.c:
219         Fix const warnings.
220         
221         * gdk/linux-fb/gdkwindow-fb.c:
222         Fix warning. Implement gdk_window_set_icon_list() and
223         gdk_window_get_frame_extents(). (No icon support yet though.)
224
225         * gtk/gtkwindow.c (gtk_window_get_position):
226         If window->frame is set get the extents of it instead.
227         
228 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
229
230         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
231         Make the default default colormap the GdkRGB colormap,
232         not the system colormap.
233
234         * gtk/gtkinvisible.c (gtk_invisible_init) 
235           gtk/gtkwindow.c (gtk_window_init): Set the current
236         colormap, as returned by _gtk_widget_peek_colormap()
237         on the widget.
238
239         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
240         to GTK+. Make it return %NULL instead of the default
241         colormap if no colormap has explicitely been pushed.
242
243         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
244         colormaps on ancestral widgets before defaulting the
245         the system default colormap.
246
247         * docs/Changes-2.0.txt: explain colormap changes.
248
249 2001-09-07  Havoc Pennington  <hp@redhat.com>
250
251         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
252         #57424
253
254 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
255
256         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
257         make gdk_set_use_xshm a noop. Remove --no-xshm command line
258         option. If we aren't autodetecting properly, we need
259         to fix the problem, or at least make it an environment
260         variable setting, to avoid problems with propagating
261         to embedded children, plugins, etc.
262
263         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
264
265         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
266         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
267         New function to render a pixmap and mask for a particular colormap.
268
269         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
270         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
271         of internal implementation of the same.
272
273 2001-09-07  Havoc Pennington  <hp@redhat.com>
274
275         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
276         debug code that seems to have caused a breakpoint in valid cases
277         
278         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
279         pointer on the first view when adding the second view, fixes
280         crash when closing gtk-demo text test with active selection
281
282         * gtk/gtktextbuffer.c
283         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
284         clipboards in the list of clipboards - probably fixes #59836
285
286 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
287
288       Make gdkx.h the only installed header from gdk/x11.
289       All structures in gdk/x11 are opaque.
290
291         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
292         Don't install gdk{drawable,pixmap,window}-x11.h.
293
294         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
295         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
296         GdkVisualClass into C files.
297
298         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
299
300         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
301         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
302         Add public functions to replace previously exported direct
303         structure access.
304         gdk_x11_colormap_get_{xdisplay,xcolormap} 
305         gdk_x11_cursor_get_{xdisplay,xcursor},
306         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
307         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
308         gdk_x11_gc_get_{xdisplay,ximage}
309         
310         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
311         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
312
313       Fix a number of variables and functions that were exported
314       "accidentally" from GDK.
315
316         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
317         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
318         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
319         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
320         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
321         gdk_event_queue_find_first, gdk_event_queue_remove_link,
322         gdk_event_queue_append, gdk_event_button_generate,
323         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
324
325         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
326            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
327         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
328         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
329         gdk_use_xshm, gdk_input_ignore_core.
330
331         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
332         #defines to namespace functions into the private _gdk_ 
333         namespace.
334
335         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
336         to replace gdk_parent_root exported variable. Adjust and
337         deprecate GDK_ROOT_PARENT().
338
339         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
340         GDK_ROOT_PARENT usage, remove includes of port-specific
341         headers.
342
343         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
344         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
345         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
346
347         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
348         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
349         gdk_wm_delete_window functions, gdk_wm_take_focus, 
350         use gdk_atom_intern() instead.
351
352         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
353           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
354           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
355           gtk/gtkselection.c 
356         Unexport gdk_selection_property, just use 
357         gdk_atom_intern ("GDK_SELECTION").
358
359         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
360         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
361         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
362         GdkVisualprivate, gdk_x11_gc_flush.
363
364       Make a number of public exports of variables into functions
365       to increase encapsulation.
366
367         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
368         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
369         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
370
371         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
372         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
373         gdk_error_warnings.
374
375         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
376           docs/Changes-2.0.txt: 
377         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
378         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
379         Add gdk_x11_get_default_xdisplay().
380
381         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
382         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
383         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
384         Don't export gdk_progclass, move --class command line
385         option and handling to common portion of GDK.
386
387       Miscellaneous fixes:
388
389         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
390         g_return_val_if_fail that should have been g_return_if_fail.
391
392         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
393         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
394
395         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
396         X11 dependency.
397
398         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
399         Remove unused gdk_key_repeat_disable/restore.
400
401         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
402         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
403         Remove unused gdk_null_window_warnings variable.
404
405         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
406         it can be retrieved from the repository; it is too far
407         from functional to be worth having people check out;
408         it would be easier to start from scratch, I suspect.
409
410         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
411
412         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
413         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
414         Fix some accidentally global variables and unused global variables.
415
416         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
417         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
418         Fix some accidentally global variables and unused global variables.
419
420       Add some space for future expansion to multihead.
421
422         * gdk/gdkdrawable.h: Add four reserved function pointers
423         for future expansion of GdkDrawableClass.
424
425         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
426         where we can put a GdkScreen * later.
427
428 2001-09-07  Havoc Pennington  <hp@redhat.com>
429
430         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
431         adjustments after validating destination yrange; fixes #53918
432         (This may cause other issues, but I hope it won't)
433         
434 2001-09-05  Havoc Pennington  <hp@redhat.com>
435
436         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
437         line into start line, update the character counts in parent nodes; 
438         caused a bug when end and start line had different parent nodes.
439
440 2001-08-30  Havoc Pennington  <hp@redhat.com>
441         
442         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
443         assertion that tag is in a table
444
445 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
446
447         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
448         g_strcasecmp on NULL strings. (#59058)
449
450 2001-09-06  Alex Larsson  <alexl@redhat.com>
451
452         * gtk/gtkbin.c:
453         * gtk/gtkfontsel.c:
454         * gtk/gtkspinbutton.c:
455         * gtk/gtktipsquery.c:
456         Use GtkType/GType instead of uint.
457
458 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
459
460         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
461         sort column.
462
463         * gtk/gtktreestore.c (gtk_list_store_init): ditto
464
465         * gtk/gtktreesortable.c: add docs.
466
467 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
468
469         * Version 1.3.7
470
471         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
472         docs for gtk-config
473
474         * modules/input/Makefile.am (install-data-local): Don't
475         run gtk-query-immodules if DESTDIR is set.
476
477         * NEWS: Various additions.
478
479 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
480
481         * NEWS: updates for 1.3.7 release.
482
483 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
484
485         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
486         handle default sort feature
487
488         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
489         new function to handle default sort.
490         (gtk_tree_sortable_has_default_sort_func): check if default sort
491         is set.
492
493         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
494         handle default sort feature
495
496 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
497
498         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
499         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
500         #59731
501
502 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
503
504         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
505         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
506         time, #59727
507
508         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
509         correctly.
510
511 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
512
513         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
514         so that we don't eternally update the keymap after we
515         get a change notification.
516
517         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
518         incorrect cast.
519
520 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
521
522         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
523         it working. It mostly works now, although there're still a few issues
524         to be worked out.
525
526         * tests/testtreesort.c (main): changes to have a better test
527         application for the GtkTreeModelSort.
528
529 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
530
531         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
532         fix for bug #59222.
533
534         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
535         gpointer search_data argument to function definition and
536         prototype, to match GtkTreeViewSearchEqualFunc typedef.
537
538 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
539
540         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
541         per jrb's request.
542
543 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
544
545         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
546
547         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
548
549 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
550
551         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
552         Instead of always mirroring the selection to a single PRIMARY
553         selection, allow it to be mirrored to any number of clipboards.
554
555         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
556         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
557
558         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
559         GtkClipboard argument, and for paste_clipboard, the
560         @override_location argument from @paste_primary.
561
562         * gtk/gtktextview.c: Adapt to above change.
563         
564 2001-08-30  Havoc Pennington  <hp@redhat.com>
565
566         * gtk/gtktextview.c (invalidated_handler): put validate idle at
567         resize - 2 just for flexibility
568
569 2001-08-30  Havoc Pennington  <hp@redhat.com>
570
571         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
572         object from the empty-child-anchor case by drawing a little box.
573         
574         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
575         if the child anchor has no anchored widgets - fixes #59328.
576
577         Also, remove bizarre deletion of preedit string that seems to have
578         gotten in here somehow.
579
580 2001-08-30  Havoc Pennington  <hp@redhat.com>
581
582         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
583         to #58420 from Hidetoshi Tajima and Matthias Clasen
584
585 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
586
587         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
588         change color when the GtkTreeView loses focus.
589
590         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
591         ditto.
592         
593         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
594
595 2001-08-28  Havoc Pennington  <hp@pobox.com>
596
597         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
598
599 2001-08-28  Havoc Pennington  <hp@pobox.com>
600
601         * demos/gtk-demo/main.c (setup_default_icon): add default icon
602
603         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
604         warning fix
605         (gtk_radio_button_new_with_label): warning fix
606
607         * gtk/gtkdnd.c: used some random GtkImage private structs, 
608         update to reflect GtkImage changes
609
610         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
611         whether the hint is supported, just always set the icon. A task
612         list might want to use it even if the WM doesn't, and the WM may
613         change over time. Also, XDeleteProperty() if list == NULL.
614
615         * gtk/gtkwindow.c (gtk_window_set_icon_list)
616         (gtk_window_get_icon_list)
617         (gtk_window_set_icon)
618         (gtk_window_get_icon)
619         (gtk_window_set_default_icon_list)
620         (gtk_window_get_default_icon_list):
621         new functions
622
623         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
624
625         * gtk/gtkimage.c: Implement property support, bug #59408
626
627         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
628         on reparent-without-removing-first a bit more helpful.
629         Let's just destroy this FAQ.
630
631 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
632
633         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
634         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
635
636 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
637
638         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
639         of use_text_format to the end of the function. (#56447)
640
641 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
642
643         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
644         only in response to an area_prepared signal.
645
646 2001-08-28  Alex Larsson  <alexl@redhat.com>
647
648         * gtk/gtkwidget.c (gtk_widget_class_init):
649         Make unrealize GTK_RUN_LAST.
650
651 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
652
653         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
654         with_label and with_mnemonic should create radio buttons, not
655         check buttons
656
657 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
658
659         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
660         * tests/treestoretest.c (make_window): ditto
661         * demos/gtk-demo/main.c (create_tree): ditto
662         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
663
664 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
665
666         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
667         GTK selection types rather than GtkTreeSelectionMode.
668
669         * docs/Changes-2.0: Add comment about selection change.
670
671 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
672
673         * gtk/gtkenums.h (GtkSelectionMode): deprecate
674         GTK_SELECTION_EXTENDED.
675
676         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
677         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
678
679         * gtk/gtkctree.c: ditto
680
681         * gtk/gtklist.c: ditto
682
683         * gtk/gtktree.c: ditto
684
685 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
686
687         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
688         of typos in compat macros. (#59624, Skip Montaro)
689
690 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
691
692         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
693         macro.
694
695          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
696  
697         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
698         interface to be a standard setter from gtk_menu_item_right_justify.
699         (gtk_menu_item_get_right_justified): a getter to go with the setter
700
701         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
702         gtk_menu_item_right_justify.
703
704         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
705         gtk_menu_item_set_right_justified.
706  
707 2001-08-27  Jens Finke <jens@gnome.org>
708
709         * gtk+.spec.in: Updated to match gpp requirements, reworked the
710         files section to make it work with 1.3.x releases.
711
712 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
713
714         * gtk/gtkbutton.[ch]:
715         Add properties for labels, mnemonics and stock items.
716         Added C accessor functions for the properties.
717         Removed deprecated button->child.
718
719         * gtk/gtkradiobutton.c:
720         * gtk/gtktogglebutton.c:
721         Update to use the functions in GtkButton.
722
723         * gtk/gtkcheckbutton.c:
724         Update to use the functions in GtkButton.
725         Changed size allocation of child. Now only gets as much
726         space as it requests.
727
728         * gtk/gtkclist.c:
729         Don't use GtkButton->child
730
731         * gtk/gtklabel.c:
732         Fixed typo in docs
733         
734 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
735
736         * tests/testgtk.c:
737         * tests/Makefile.am:
738         Ressurect the properties test.
739         I don't care if it is inferior, I just want to test my property code.
740
741 2001-08-25  Chema Celorio  <chema@celorio.com>
742
743         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
744         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
745         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
746
747 2001-08-24  Havoc Pennington  <hp@pobox.com>
748
749         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
750         these are already in gtkmenu.h, and the copies
751         here were broken.
752
753         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
754
755         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
756         special-case bitmaps to allow no colormap
757         (bitmap1): implement no-colormap bitmap-getting
758         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
759         alpha
760         (rgb8): indentation
761         (rgb1a, rgb1): change the way we read the data out of the image, 
762         old way didn't seem to work quite right.
763
764         I'm pretty sure a lot of the rgbconvert code is still broken.
765         
766         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
767         above position constraint (I really intended to do this before,
768         don't know what's up with that)
769         (gtk_XParseGeometry): shut up gcc
770
771         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
772         and "0" should have been. remove the attempted 4-bytes-at-once
773         optimization, it was totally broken.
774
775 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
776
777         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
778         on push to buttons (based on patch from Soeren Sandmann, #54720)
779
780           - Add child_displacement_x/y style properties to control how far the
781             child moves when the button is depressed.
782
783           - Add non-exported function _gtk_button_set_depressed to clean
784             up the handling of the in/out shadow and separate it frmo
785             widget->state.
786
787           - Lots of code cleanup and simplification of state handling
788             for GtkButton/GtkToggleButton.
789  
790         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
791         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
792
793 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
794
795         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
796         and make gtk_image_new() take no arguments. The compiler will
797         catch it, and it is vastly more useful than having
798         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
799
800         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
801         to add tearoff-title property (#51319, Lee Mallabone)
802
803 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
804
805         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
806         gtk_menu_item_configure(). (#58925)
807
808 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
809
810         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
811         "use_align" to give people the option to just make a cell visible.
812
813         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
814         we were scrolling past the end of the tree.
815
816         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
817         rename gtk_tree_view_column_pack_start_cell_renderer to
818         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
819
820 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
821
822         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
823         a stray g_object_ref() left over from gtk_object_ref/sink.
824         (Pointed out by Josh Pritikin.)
825
826 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
827
828         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
829         to gtk_container_get_children. Added deprecated compatibility
830         macro. (Suggested by Vitaly Tishkov, #59051)
831
832         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
833         calls.
834
835 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
836
837         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
838         gtk_menu_bar_append/prepend/insert, forgot to do this
839         when we deprecated gtk_menu_append/prepend/insert.
840
841         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
842         compat macros.
843
844         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
845         renamed by compat macro.
846
847         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
848         gtk_font_selection_dialog_get_font(). (Suggested by
849         Vitaly Tishkov, #59383)
850
851 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
852
853         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
854         Rename from gtk_text_tag_table_size(). (#59366)
855
856 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
857
858         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
859         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
860         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
861         (#59173).
862
863 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
864
865         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
866         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
867         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
868
869 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
870
871         [ Patch from Sebastian Wilhelmi, 52790 ]
872
873         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
874
875         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
876         Move compatibility macros from g[dt]kcompat.h to within 
877         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
878
879         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
880
881         * demos/Makefile.am demos/gtk-demo/Makefile.am 
882           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
883           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
884
885         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
886                  testpixbuf.c}: Fix usages of deprecated functions.
887
888 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
889
890         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
891         when changing models.
892
893 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
894
895         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
896         We check the current event for modifiers rather than try to trap
897         all presses.
898
899 2001-08-22  Anders Carlsson  <andersca@gnu.org>
900
901         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
902         It's LIST_STORE, not LISTSTORE.
903
904 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
905
906         * gtk/gtk.h: Remove commented out gtkpacker reference.
907
908 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
909
910         * configure.in (all_loaders): Add tga loader, 
911         patch by Nicola Girardi. (#56067)
912
913 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
914
915         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
916         a little.  More needs to be done tomorrow.
917
918 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
919
920         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
921
922 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
923
924         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
925         reported by Kristian Rietveld <kristian@planet.nl> to handle row
926         == NULL.
927         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
928         <kristian@planet.nl> to change destroy order.
929
930 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
931
932         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
933         correct marshaller.
934
935 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
936
937         * gtk/gtkliststore.c: Fix up warnings, #58928.
938
939         * gtk/gtktreeselection.h: Change signal prototype, #58647
940
941         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
942         #59221.
943
944         * gtk/gtkstyle.c: Actually prelight arrow, #50981
945         
946 2001-08-18  Hans Breuer  <hans@breuer.org>
947
948         * gdk/gdk.def : updated externals
949
950         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
951         is required to get (at least) visible in entry fields. Some selections
952         are really handled now - even on win32 - but copying via middle
953         mouse button into a different app needs to wait ... 
954
955         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
956         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
957
958         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
959         handling. I'm not sure if it is better now, but at least not worse
960
961         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
962         with SetWindowPos () which allows more fine-tuning backing-store wise
963
964         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
965         Also changed move/resize to be more like the X version.
966
967         * gtk/gtk.def : updated externals
968
969 2001-08-19  Sven Neumann  <sven@gimp.org>
970
971         * gtk/gtktooltips.c
972         * tests/testtreesort.c
973         * tests/treestoretest.c: inserted some casts to get rid of compiler
974         warnings.
975
976 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
977
978         * gtk/gtktreeviewcolumn.c
979         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
980
981         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
982         (_gtk_tree_view_find_node): If *node is NULL,
983         *tree should be NULL too.
984
985         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
986         column/renderers.
987         * tests/testtreecolumns.c: ditto
988         * tests/testtreefocus.c: ditto
989         * tests/testtreesort.c: ditto
990         * tests/testtreeview.c: ditto
991         * tests/treestoretest.c: ditto
992
993 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
994
995         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
996         signals; is_expander/is_expanded.
997
998         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
999         pixbufs.
1000
1001         * gtk/gtktreeview.c: set above properties.
1002
1003 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
1004
1005         * gtk/gtkwidget.h: Really remove set_default_style().
1006
1007         * docs/Changes-2.0.txt: added a note about
1008         gtk_widget_push/pop/set_default_style.
1009
1010 2001-08-18  Havoc Pennington  <hp@pobox.com>
1011
1012         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
1013         hints_changed in addition to the other cases.
1014         (gtk_window_move_resize): include last position from configure
1015         notify in debug spew
1016
1017 2001-08-18  James Henstridge  <james@daa.com.au>
1018
1019         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
1020         second argument to the weak ref notify, cleaning up some uglyness.
1021         (gtk_accel_group_attach): remove and add the weak notifier when
1022         changing the accel groups slist.
1023         (gtk_accel_group_detach): same here.
1024
1025 2001-08-17  Darin Adler  <darin@bentspoon.com>
1026
1027         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
1028         missing parameters to utf8 functions to make it compile.
1029
1030 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
1031
1032         * gtk/gtktreeprivate.h:
1033         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
1034         (gtk_tree_view_init), (gtk_tree_view_set_property),
1035         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
1036         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
1037         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
1038         (gtk_tree_view_set_destroy_count_func),
1039         (gtk_tree_view_set_enable_search),
1040         (gtk_tree_view_get_enable_search),
1041         (gtk_tree_view_get_search_column),
1042         (gtk_tree_view_set_search_column),
1043         (gtk_tree_view_get_search_equal_func),
1044         (gtk_tree_view_set_search_equal_func),
1045         (gtk_tree_view_search_dialog_destroy),
1046         (gtk_tree_view_search_position_func),
1047         (gtk_tree_view_interactive_search),
1048         (gtk_tree_view_search_delete_event),
1049         (gtk_tree_view_search_button_press_event),
1050         (gtk_tree_view_search_key_press_event),
1051         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
1052         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
1053         * gtk/gtktreeview.h:
1054         Add heavily modified patch from Kristian Rietveld to handle
1055         interactive searching.
1056
1057 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
1058
1059         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
1060         string parameter.
1061
1062         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
1063         GtkMenuShell::selection_done, now that we have it, instead of 
1064         ::deactivate so we're not tearing the menu apart and notify
1065         the user prematurely.
1066
1067 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
1068
1069         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
1070         window, clear window->need_default_position to avoid infinite loops.
1071         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
1072
1073 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
1074
1075         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
1076         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
1077         (gtk_tree_view_set_property): don't cast possible NULL objects.
1078         (gtk_tree_view_destroy): reset the model to NULL.
1079
1080         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
1081         parent_class handler.
1082
1083 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1084
1085         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
1086
1087 >>>>>>> 1.2276
1088 2001-08-17  Anders Carlsson  <andersca@gnu.org>
1089
1090         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
1091         point numbers so that the result will be floating point.
1092
1093 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1094
1095         * tests/testgtk.c (create_handle_box): 
1096         (create_toolbar): Replace gtk_window_set_policy calls by
1097         gtk_window_set_resizable.
1098
1099 2001-08-16  Jakub Steiner <jimmac@ximian.com>
1100
1101         * gtk/stock-icons/dialog_info.png: new style bulb
1102         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
1103         * gtk/stock-icons/dialog_warning.png: need a hand?
1104         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
1105           the aa border gets chopped off ok
1106         * gtk/stock-icons/stock_colorselector.png: using the new hand
1107         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
1108           this one is for, but the old icon was butt ugly.
1109         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
1110         * gtk/stock-icons/stock*_insert_object.png: "
1111         * gtk/stock-icons/stock_index.png: using new hand icon
1112         * gtk/stock-icons/stock*_new.png: the document template being used 
1113           elsewhere too
1114         * gtk/stock-icons/stock*_print*.png: new print and print preview 
1115           icons (panel/menu)  
1116         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
1117           icons based on Tuomas' floppy image.
1118         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
1119         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
1120         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
1121         * gtk/stock-icons/stock*_undelete.png: "
1122         * gtk/stock-icons/stock_preferences.png: I have a version with a 
1123           document base if the sliders are no good.
1124         * gtk/stock-icons/stock_properties.png: properties 
1125         
1126
1127         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
1128           (tigert@ximian.com) clipboard icons
1129         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
1130         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
1131         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
1132           little bigger IMHO
1133
1134 2001-08-16  Sven Neumann  <sven@gimp.org>
1135
1136         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
1137
1138 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
1139
1140         * gtk/gtkcellrenderertext.c:
1141         Avoid warning when specifying NULL for "attributes" property
1142
1143 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1144
1145         * docs/debugging.txt: Add a warning about --enable-debug=no,
1146         some editorial changes.
1147
1148 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1149
1150         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
1151         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
1152         debugging info, remove unused debug flags. (#58330)
1153
1154 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
1155
1156         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
1157         (gtk_tree_selection_select_all): Remove strict checking for rows.
1158
1159 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1160         
1161         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
1162         Don't remove the tooltip window when the tip text changes. (#15891)
1163
1164 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
1165
1166         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
1167         $(srcdir).
1168
1169 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
1170
1171         * Makefile.am (EXTRA_DIST): Fix problem with trying to
1172         dist files from intl/, which is no longer there.
1173
1174 2001-08-11  Hans Breuer  <hans@breuer.org>
1175
1176         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
1177           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
1178           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
1179           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
1180           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
1181           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
1182
1183         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
1184           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
1185         GDK_TYPE_EVENT signals
1186
1187         * gtk/gtkalignment.c : removed 'direct allocation bug',
1188         which Tim discovered while reading the patch
1189
1190 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
1191
1192         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
1193         compat macros for push/pop/set_visual that were supposed
1194         to be added a long time ago, but got dropped. 
1195
1196 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
1197
1198         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
1199         property notifies.
1200
1201 2001-08-07  Havoc Pennington  <hp@pobox.com>
1202
1203         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
1204
1205         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
1206         some fixage is needed here, but nothing simple. Owen understands
1207         it. ;-)
1208
1209         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
1210         sizing and positioning.  Also, fix bug in compute_geometry_hints
1211         (width/height confusion for setting min size). 
1212         (gtk_window_move): new function
1213         (gtk_window_resize): new function
1214         (gtk_window_get_size): new function
1215         (gtk_window_get_position): new function
1216         (gtk_window_parse_geometry): new function
1217         
1218         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
1219         (gtk_widget_get_size_request): new function
1220         (gtk_widget_get_usize): delete, that was a short-lived function
1221         ;-)
1222         (gtk_widget_set_usize): deprecate
1223         (gtk_widget_set_uposition): deprecate, make it a trivial 
1224         gtk_window_move() wrapper
1225         (gtk_widget_class_init): remove x/y/width/height properties,
1226         add width_request height_request
1227         
1228         * demos/*: update to avoid deprecated functions
1229         
1230         * gtk/gtklayout.c: add x/y child properties
1231
1232         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
1233         uses of "gint16"
1234
1235         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
1236         sizing test
1237
1238         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
1239         configure events on toplevel windows are always in root window
1240         coordinates, following ICCCM spec that all synthetic events 
1241         are in root window coords already, while real events are 
1242         in parent window coords. Previously the code assumed that 
1243         coords of 0,0 were parent window coords, which was 
1244         really broken.
1245   
1246         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
1247         warning
1248  
1249         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
1250         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
1251         hints in gtk_window_parse_geometry()
1252  
1253         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
1254         new USER_POS USER_SIZE hints    
1255
1256 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1257
1258         * tests/prop-editor.c (properties_from_type): Use 
1259         g_object_class_list_properties to get the param specs 
1260         for a given type. (#58609)
1261
1262 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1263
1264         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
1265         free the text_aa parts. (#57549)
1266
1267 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1268
1269         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
1270         not the foreground color. (#57621)
1271
1272 2001-08-09  Alexander Larsson <alexl@redhat.com>
1273
1274         * gdk/win32/gdkfont-win32.c:
1275         Update to the new pango win32 api.
1276
1277 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
1278
1279         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
1280         COMPOUND_TEXT instead of TEXT
1281         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
1282         interpret the return value of g_string_to_compound_text()
1283         (#55152)
1284
1285 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1286
1287         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
1288         fail if iter is NULL. (#58347)
1289
1290 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1291
1292         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
1293         some off-by-one issues, fixing selection of line-ends. (#50323)
1294
1295 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1296
1297         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
1298         functions in order to make mouse operation work again in the
1299         color wheel. (#58604)
1300
1301 2001-08-07  James Henstridge  <james@daa.com.au>
1302
1303         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
1304         the accelerator when the accel object is changed.  Fixes bug
1305         #58628.
1306
1307 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
1308
1309         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
1310         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
1311         (gnome bugzilla #58202)
1312
1313 2001-08-06  Havoc Pennington  <hp@pobox.com>
1314  
1315         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
1316         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
1317         it was expecting a GdkWindow, not a GdkWindowImplX11.
1318  
1319         Also, we were getting the window rect in screen coords 
1320         and the screen rect in window coords then intersecting 
1321         them; instead, get window rect in window coords.
1322  
1323         Finally, there were codepaths that resulted in a stuck server grab
1324         (when the window was fully onscreen, or on gdk_image_new()
1325         failure); make the server ungrab thing a bit more
1326         robust/consistent.
1327
1328 2001-08-06  Sven Neumann  <sven@gimp.org>
1329
1330         * gdk/gdkpango.c (gdk_pango_context_destroy): 
1331         check if info->colormap != NULL before unref'ing it. It might have
1332         been set to NULL using gdk_pango_context_set_colormap().
1333
1334 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
1335
1336         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
1337         Fix conversion from float to int so that we don't get
1338         skew in the int => float => int roundtrip. 
1339         (#58120, reported by Vitaly Tishkov). Also fix problem
1340         where if no alpha was set, the returned alpha
1341         from (say) set_current_alpha() was returned as 1, not 65535.
1342
1343 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
1344
1345         * gtk/gtklist.c (gtk_list_clear_items): Fix
1346         problem with selecting a new focus child.
1347
1348         * gtk/gtklist.c (gtk_list_clear_items): Clear 
1349         list->undo/list_focus_child after unparenting
1350         child, since unparenting the child can result
1351         in list->last_focus_child being set. (#58024)
1352
1353         * Makefile.am (SUBDIRS): Add target specific pc
1354         files to DISTCLEANFILES.
1355
1356         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
1357         (58327, Matthias Clasen)
1358
1359 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
1360
1361         * tests/testgtk.c: Patch from Hans (with various modifications),
1362         to add the ability to use testgtk as a rough-and-ready
1363         benchmark. Try, 'testgtk --bench all:5' (if you want decent
1364         numbers, run without a window manager)
1365
1366 2001-08-04 Alexander Larsson <alexl@redhat.com>
1367
1368         * gdk/win32/gdkinput.c:
1369         Add #ifdef HAVE_WINTAB around wintab.h include.
1370
1371         * gtk/gtk.def:
1372         Removed marshals that have been moved to glib.
1373         Commented out plug and socket. They didn't compile for me 
1374         on win32.
1375
1376 2001-08-04  Hans Breuer  <hans@breuer.org>
1377
1378         * gtk/stocks-icons/makefile.msc : new file
1379         * gtk/makefile.msc.in : use it
1380
1381         * gtk/gtkstyle.c : not all platforms do provide M_PI and
1382         friends, but luckily there is G_PI
1383
1384         * gtk/gtk.def : updated
1385
1386         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
1387         windows WS_POPUP, but only those without a parent. This fixes the 
1388         mis-alignment between the selectable (temp, input only) window and 
1389         the window text of GtkLabel.
1390
1391         (gdk_window_show) : respect private->state when actually showing
1392         the window.
1393
1394         (gdk_window_set_transient_for) : Implementation from Wolfgang 
1395         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
1396         error handling. Should fix #50586.
1397
1398         * gdk/win32/gdkevents-win32.c : beautify log output
1399
1400 2001-08-04  Michael Natterer  <mitch@gimp.org>
1401
1402         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
1403         Need to show the image after adding it to the GtkImageMenuItem.
1404         This used to work without in testgtk because of the
1405         gtk_widget_show_all() at the end of the function.
1406         (Closes #54978).
1407
1408 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
1409
1410         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
1411         (gtk_notebook_set_child_property): fix finding of child's page,
1412         since we have to validly deal with labels and menus here as well.
1413         (gtk_notebook_get_child_property): fix warning.
1414         (gtk_notebook_class_init): property tab_pack is of type
1415         GTK_TYPE_PACK_TYPE (enum) not boolean.
1416         (gtk_notebook_find_child): don't always warn, we might be looking
1417         for a label or menu child.
1418         (gtk_notebook_map): fix mapping of panel.
1419
1420         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
1421         widget's mapped state, regardless of the value being set equals
1422         old settings, since things like REALIZED(parent) or MAPPED(parent)
1423         may have changed since the old value was set. make it an error to
1424         invoke this function on a toplevel widget.
1425
1426 2001-07-31  Darin Adler  <darin@bentspoon.com>
1427
1428         * gdk/gdkprivate.h:
1429         * gdk/x11/gdkx.h:
1430         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
1431
1432         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
1433         GTK_OBJECT.
1434
1435 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
1436
1437         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
1438         scoping error pointed out by matthiasc@poet.de.
1439
1440 2001-07-31  Sven Neumann  <sven@gimp.org>
1441
1442         * demos/gtk-demo/appwindow.c
1443         * demos/gtk-demo/item_factory.c
1444         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
1445
1446 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
1447
1448         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
1449         argument order for g_signal_has_handler_pending.
1450
1451 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
1452
1453         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
1454         instead of long deprecated g_scanner_stat_mode().
1455
1456 2001-07-29  Hans Breuer  <hans@breuer.org>
1457
1458         * gdk/makefile.msc : build in the backend dir after
1459         auto-generating files
1460
1461         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1462         with code from win32-production-branch.
1463
1464         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1465         before calling DestroyWindow, which indirectly calls 
1466         gdk_window_destroy_notify ()
1467
1468         (performance patch merged from win32-production-branch)
1469         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1470         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1471         R2_COPYPEN rop). It is claimed to be much faster.
1472
1473 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1474
1475         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1476         add an "attributes" property to the text renderer for ATK.
1477
1478 2001-07-26  Alex Larsson  <alexl@redhat.com>
1479
1480         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1481         Initialize image->bits_per_pixel from the drawable, not from
1482         the root window.
1483
1484         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1485         Fix cast. argument is an IMPL already.
1486
1487 2001-07-15  James Henstridge  <james@daa.com.au>
1488
1489         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1490         (gtk_window_remove_accel_group): same here.
1491         (gtk_window_key_press_event): same here.
1492
1493         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1494         (gtk_widget_remove_accelerator): same here.
1495         (gtk_widget_remove_accelerators): same here.
1496
1497         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1498
1499         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
1500         instead of GtkObject.
1501
1502         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
1503         now takes GObjects.
1504
1505         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
1506         pass a GObject to gtk_accel_group_entries_from_object.
1507         (gtk_item_factory_create_item): s/accel_widget/accel_object/
1508
1509         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
1510
1511         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
1512
1513         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
1514         GObjects can have accelerators set now.  Add compatibility
1515         defines.
1516
1517         * gtk/gtkmarshal.list: add missing marshallers.
1518
1519         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
1520         accelerators on plain GObjects.  gtk_accel_group_object_destroy
1521         has been converted into a weak reference, and
1522         gtk_accel_group_delete_entries is now a destroy notify for that
1523         piece of data.
1524
1525 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1526
1527         * gdk/gdkdraw.c: Added a check on the colormap depth to
1528         gdk_drawable_set_colormap()
1529         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
1530         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
1531         for pixmaps without visuals (more specifically, bitmaps)
1532         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
1533         doesn't set a colormap with the wrong depth
1534
1535
1536 2001-07-22  Anders Carlsson  <andersca@gnome.org>
1537
1538         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
1539         expander_height and expander_width properties with a single
1540         property, expander_size.
1541         (gtk_tree_view_init): Set the tab_offset to expander_size
1542         plus some padding.
1543         (gtk_tree_view_unrealize): Remove the expand/collapse
1544         timeout if it exists.
1545         (coords_are_over_arrow): Fix a small bug.
1546         (gtk_tree_view_motion_draw_column_motion_arrow): Use
1547         expander_size.
1548         (gtk_tree_view_draw_focus): Use "treeview" instead of
1549         "add-mode" as detail when drawing the focus.
1550         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
1551         instead of "add-mode" as detail when drawing the focus.
1552         (gtk_tree_view_deleted): If we have a node currently being
1553         expanded or collapsed, remove the timeout and set the node 
1554         to NULL.
1555         (gtk_tree_view_queue_draw_arrow): New function that just
1556         redraws the arrow of a node.
1557         (gtk_tree_view_draw_arrow): Use expander_size instead of
1558         expander_width/expander_height, also pass a different
1559         expander_style to gtk_paint_expander depending on the 
1560         state of the node being drawn.
1561         (expand_collapse_timeout): New function for expanding 
1562         or collapsing a node depending on the previous state.
1563         (gtk_tree_view_real_expand_row): Add timeout and set 
1564         correct state for node being expanded.
1565         (gtk_tree_view_real_collapse_row): Add timeout and set
1566         correct state for node being collapsed.
1567
1568         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
1569         information about the node currently being expanded or
1570         collapsed, and also a timeout id.
1571
1572         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
1573         with expander_style for draw_expander.
1574
1575         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
1576         expander_style.
1577         (create_expander_affine): New function for creating an 
1578         expander affine.
1579         (apply_affine_on_point): New function for applying an 
1580         affine to a point.
1581         (gtk_default_draw_expander): Modified to take expander_style
1582         instead of is_open, and to draw the rectangle rotated differently
1583         depending on the expander style.
1584         (gtk_paint_expander): Replace is_open with expander_style.
1585
1586         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
1587
1588         * gtk/gtkenums.h: Add expander style enum.
1589
1590 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
1591
1592         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
1593         value from gtk_tree_model_get_iter, the model might be empty.
1594
1595 2001-07-20  Hans Breuer  <hans@breuer.org>
1596
1597         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
1598         gdk/gdkinput.c like the other backends
1599
1600         * gdk/win32/gdkinput-win32.h :
1601         * gdk/win32/gdkinput.c :
1602         * gdk/win32/gdkvisual-win32.c :
1603         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
1604         GdkVisual GObjectification. UNTESTED for pen-devices because
1605         I simply have none.
1606
1607         * gdk/gdk.def :
1608         * gtk/gtk.def : updated externals
1609
1610         * gtk/gtkiconfactory.c :
1611         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
1612         before passing &error to functions to avoid strange crashes
1613         
1614         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
1615
1616         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
1617
1618         * gtk/makefile.msc.in : updated
1619
1620 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
1621
1622         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
1623         Add property support. (#51858)
1624
1625 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
1626
1627         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
1628         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
1629         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
1630
1631 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
1632
1633         * gtk/gtkcolorsel.c: Add propery support (roughly
1634         based on patch from Lee Mallabone, #51014)
1635
1636         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
1637         deprecated, since we already g_warning() on it.
1638
1639 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
1640
1641         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
1642         typo that sometimes caused selection not to work properly.
1643
1644         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
1645         entry when tabbing in. (#57743)
1646         
1647         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
1648         user drags up above or down below the entry, move
1649         to the end or the beginning of the entry. (Suggestion
1650         from Jay Cox, #50940)
1651
1652         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
1653         a current selection, then when moving by chars or
1654         words, move to the end of the selection rather than
1655         from entry->current_pos. (Suggestion from Jay Cox,
1656         #50942)
1657         
1658 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
1659
1660         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
1661         set window->decorated. (Patch from Hidetoshi Tajima,
1662         #55846)
1663
1664 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
1665
1666         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
1667         the widget/child realization/mapping invariants.
1668
1669         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
1670         gtk_widget_[get/set]_child_visible() to control
1671         whether visible children of a mapped window are
1672         mapped.
1673
1674         * docs/widget_system.txt: Updated for changes in
1675         container contract, and addition of GTK_CHILD_VISIBLE.
1676
1677         * gtk/gtkcontainer.c: Add generic map()/unmap()
1678         functions that work for almost all containers.
1679
1680         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
1681         gtk_widget_set_child_visible() where necessary.
1682
1683         * gtk/*.c: Remove excess map(), unmap(), and 
1684         realization/mapping invariant enforcing code
1685         from many containers.
1686
1687 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
1688
1689         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
1690         Get the foreground color from 'text', nor 'fg'. (#57568)
1691
1692 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
1693
1694         * gtk/*.c: Patch from Matthias Clasen to remove remove
1695         all instances of g_return_if_fail (foo != NULL); that are
1696         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
1697         since the second check catches the NULL anyways.
1698
1699 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1700
1701         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
1702         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
1703         GDK_THREADS_ENTER()/LEAVE() pairs.
1704
1705         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
1706         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
1707         pairs. (Problem found by M. Meeks)
1708
1709 2001-07-18  Darin Adler  <darin@bentspoon.com>
1710
1711         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1712         that we don't get a g_warning message every time we register a new
1713         icon size.
1714
1715         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1716         using pixel variable of the correct type.
1717         
1718 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1719
1720         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1721         so that using X functions on a GdkWindow is possible, if
1722         a little hairy.
1723
1724         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1725         and ts_origin of a GC, so that external parties can offset/restore
1726         a GC, when using gdk_window_get_internal_paint_info().
1727
1728 2001-07-17  Darin Adler  <darin@bentspoon.com>
1729
1730         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1731         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1732         instead of the deprecated gtk_window_set_policy.
1733         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1734         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1735         function to get rid of warning and some code too.
1736         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1737         missing const.
1738         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1739         unused local.
1740         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1741         const.
1742         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1743         (gdk_utf8_to_compound_text): Add missing const.
1744         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1745         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1746         cast and get rid of an unnecessary one.
1747         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1748         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1749         local.
1750         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1751         Remove unused local.
1752         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1753         missing const.
1754         * tests/testsocket.c: (add_child): Add cast so the printf format
1755         doesn't make us implicitly depend on what integer type
1756         gtk_socket_get_id returns.
1757         * tests/testtextbuffer.c: Add missing const.
1758         * tests/testtreefocus.c: (main): Remove unused local.
1759         * tests/treestoretest.c: (iter_remove): Remove unused local.
1760         (uppercase_value): Remove unused function.
1761         (make_window): Add statement to quiet the compiler's uninitialized
1762         variable warning.
1763
1764 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1765
1766         * gtk/gtkrange.c:
1767         (second_timeout): 
1768         (initial_timeout): 
1769         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1770         (gtk_range_calc_layout): compute the new layout based on an
1771         adjustment->value being passed in as argument.
1772         (gtk_range_button_press): for button2 slider warps, first recalc
1773         the layout, then adjust the value. also, use update_slider_position()
1774         for adjusting the value, so we keep pixel quantisation at which we
1775         usually operate (upon motion or button releases). the reason for this
1776         is that, we can't change the adjustment upon button2 presses to a non
1777         quantised value and upon button2 release re-quantise the value since
1778         that'd alter the value even if we didn't get any motion events (causing
1779         unexpected scroll area warps upon release and/or slider pixel-jitter).
1780         (gtk_range_motion_notify): update the slider position from queried
1781         coordinates, not event coordinates.
1782
1783 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1784
1785         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1786         the default gc values are: width=0, CapBut, JoinMiter.
1787
1788 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1789
1790         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1791         into account the xpad and ypad when calculating the width and the
1792         height of the pixbuf cel.
1793
1794 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1795
1796         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1797         Rename to gtk_radio_menu_item_get_group(), add deprecated
1798         alias. (#57044)
1799
1800         * gtk/gtkfilesel.c: Indentation fix.
1801
1802 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1803
1804         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1805         Hasselmann to fix warnings in compat macros. 
1806         (#56773)
1807
1808         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1809         stupid wrong cast added in last patch.
1810
1811 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1812
1813         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1814         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1815
1816 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1817
1818         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1819         missing cast.
1820
1821         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1822         NULL/FALSE return value confusion.
1823
1824         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1825         problem when scrollbar completely fills range. (Patch
1826         from  Matthias Clasen, #57047)
1827
1828 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1829
1830         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1831         clean up when handling events for move-resize emulation.
1832         (Problem traced down by Matthias Clasen, #57271)
1833
1834 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1835
1836         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1837           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1838           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1839           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1840           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1841           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1842           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1843         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1844
1845 2001-07-09  Peter Williams  <peterw@ximian.com>
1846
1847         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1848         for when srcdir != builddir
1849
1850 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1851
1852         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1853         gtk_tree_model_get_iter_root.
1854
1855         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1856         (gtk_list_store_iter_n_children): Fix up.
1857
1858         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1859
1860 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1861
1862         * gtk/gtkwidget.c (gtk_widget_class_init):
1863         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1864         restore some workingness.
1865
1866         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1867         handle of window type for input-only windows.
1868
1869 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1870
1871         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1872         Patch from Gregory Merchan to add 
1873         gtk_button_box_set_secondary(), which separates
1874         the child into a separate group from the normal
1875         buttons. (#56331)
1876
1877         * gtk/gtkdialog.c: Make help buttons secondary by
1878         default.
1879
1880         * gtk/gtkbbox.c: Added a child property "secondary".
1881
1882         * gtk/testgtk.c: Turn on the help button for the 
1883         color selector to check that it properly appears
1884         as secondary.
1885
1886 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1887  
1888         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1889         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1890         Add gdk_set_pointer_hooks() to allow pointer-querying to
1891         be hooked by an event record/playback system like GERD.
1892         (#56914)
1893         
1894 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1895
1896         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1897         in the right value of initial_emission to
1898         gtk_widget_set_style_internal (#57091)
1899
1900 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1901
1902         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1903         Make compile.
1904
1905         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1906         with calling gtk_widget_set_style_internal() with
1907         the old style, not the new style. (#56989)
1908
1909 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1910
1911         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1912           gtk/gtkwidget.c:
1913         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1914         not GTK_WIDGET_GET_ANCESTOR ... see 
1915         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1916         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1917
1918         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1919         so GtkPlug can give the correct signals when transforming
1920         from a child to a toplevel.
1921         
1922         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1923         reparentation correctly.
1924
1925         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1926         Propagate the previous_toplevel argument down properly.
1927
1928         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1929         of wrong atr list.
1930
1931         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1932
1933         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1934         signals.
1935
1936         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1937         functions gtk_plug_get_id(), gtk_socket_get_id(),
1938         to avoid the user having to worry about realization,
1939         and gdkx.h.
1940
1941         * tests/testsocket.c: Extend to try out the new signals
1942         and gtk_plug/socket_get_id().
1943
1944         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1945         setting of underline attributes.
1946
1947         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1948         DestroyNotify events from SubstructureNotifyMask
1949
1950         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1951         Switch GDK_WINDOW_TYPE (window) as needed.
1952
1953         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1954         allow creation of toplevel windows as children of
1955         foreign windows.
1956
1957         * gtk/gtkplug.c: Remove hacks involving changing private
1958         fields of GdkWindow.
1959
1960         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1961         exactly the same signals and notification
1962         be emitted for local embedding as for inter-process
1963         embedding.
1964
1965 2001-07-04  James Henstridge  <james@daa.com.au>
1966
1967         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1968
1969 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1970
1971         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1972         XEMBED embedding add a _XEMBED_INFO property to the
1973         client with version number and a "mapped" flags.
1974         Use the mapped flag instead of the racy MapRequestEvent
1975
1976         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1977         code to reliably set things (when the child is a passive
1978         embedder participating in the XEMBED protocol) intead
1979         of just being a hack for embedding non-participating
1980         programs. Fix various bugs and race conditions.
1981         
1982         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1983         work by simply making the GtkSocket the gtk parent
1984         of the GtkPlug. Set a flag in this case and make
1985         the GtkPlug work like a normal container by overriding
1986         methods such as check_resize and "chaining past" GtkWindow
1987         to GtkBin.
1988
1989         * gtk/gtkentry.c (gtk_entry_real_activate)
1990           gtk/gtkmain.c (gtk_propagate_event): 
1991         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1992         
1993         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
1994         gtk_widget_get_ancestor):
1995         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
1996         might not give the expected result and recommend
1997         an alternative.
1998
1999         * tests/testsocket.c tests/testsocket_child.c
2000         tests/testsocket_common.c tests/Makefile.am: Extended
2001         to test different type of adding plugs to sockets
2002         (local,active,passive), and to test mapping/unmapping
2003         the plug.
2004
2005         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
2006         mark the window as destroyed until after we
2007         called _gdk_windowing_window_destroy().
2008         (_gdk_windowing_window_destroy() may use GDK functions
2009         on the window.)
2010
2011         * gdk/x11/gdkinput.c: Remove the check for finalization - 
2012         devices can be finalized under some circumnstances.
2013  
2014         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
2015         small problem with GDK_TYPE_DEVICE.
2016  
2017 2001-07-02  Havoc Pennington  <hp@pobox.com>
2018
2019         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
2020         use constants not atoms.
2021
2022 2001-07-02  James Henstridge  <james@daa.com.au>
2023
2024         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
2025         PANGO_TYPE_TAB_ARRAY.
2026
2027         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
2028         for PANGO_TYPE_TAB_ARRAY.
2029
2030         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
2031         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
2032
2033         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
2034         the file.  Remove Pango types from defs -- they are now defined in
2035         libpango.
2036
2037 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
2038
2039         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
2040
2041         * gtk/gtkobject.c (gtk_object_destroy): invoke
2042         g_object_run_dispose().
2043
2044         * gtk/gtkwindow.c: 
2045         * gtk/gtkwidget.c: 
2046         * gtk/gtkobject.c:
2047         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
2048         method.
2049
2050 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
2051
2052         * gtk/gtktypeutils.c (gtk_type_class): Remove
2053         change check for GTK_TYPE_OBJECT derivation to
2054         G_TYPE_OBJECTS - it's Tim-approved to use this 
2055         for arbitary objects.
2056
2057         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
2058         prefix gtk_container_dequeue_resize_handler().
2059
2060         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
2061         to the hierarachy_changed signal, since you otherwise
2062         have to always keep that around.
2063
2064         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
2065         for extra argument to hierarchy_changed.
2066
2067 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
2068
2069         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
2070         for style to mean "revert to default style"
2071
2072         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
2073           gtk_widget_restore_default_style): Make this functions
2074         deprecated aliases for gtk_widget_set_style (widget, NULL).
2075
2076         * gtk/gtkwidget.[ch]: Remove:
2077            gtk_widget_set_default_style ()
2078            gtk_widget_push_style ()
2079            gtk_widget_pop_style ()
2080         These functions interact are overriden by RC files, and
2081         thus virtually useless, and complicated.
2082
2083 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
2084
2085         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
2086         most of the previous global variables in gtkrc.c. This is
2087         in preparation for multi-head, since each screen can
2088         have different GtkSettings and RC information.
2089
2090         * gtk/gtkrc.[ch]: 
2091
2092         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
2093         GtkSettings parameter to GtkRcStyle::parse.
2094
2095         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
2096         Add two new settings gtk-theme-name, gtk-key-theme-name,
2097         for RC files that are loaded by name after reading
2098         the default RC files.
2099         
2100         * gtk/gtkrc.c: Allow priorities for styles, as wll as
2101         bindings.
2102
2103         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
2104         and use it by default for RC files loaded via 
2105         gtk-theme-name, gtk-key-theme-name.
2106
2107         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
2108         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
2109         tests/testgtkrc: Require pathnames to be absolute.
2110
2111         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
2112         the source when parsing, since the operation of looking up a
2113         pixmap from an RC file depends on the parsing context.
2114
2115         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
2116         reset RC styles on all widgets when files are reparsed.
2117
2118         * tests/testgtk.c (create_rc_file) 
2119           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
2120         Simplify, now that gtk_rc_reparse_all() resets styles on
2121         all widgets itself.
2122
2123         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
2124         return value.
2125
2126         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
2127         GtkSettings argument.
2128
2129         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
2130         gtk_settings_get_global().
2131
2132         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
2133         to get the appropriate GtkSettings for a widget. (For now,
2134         just gets the default GtkSetttings.) 
2135
2136         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
2137           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
2138         changes.
2139
2140         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
2141         getting a style for a path without actually having a widget.
2142         (Allows using a style for a subpart of a widget, for
2143         example.)
2144
2145         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
2146         the RC files to be reloaded for just one GtkSettings
2147         (not sure how useful this really is.)
2148
2149         * gtk/gtkrc.h: Deprecate
2150         gtk_rc_add_widget_name/widget_class/class_style
2151
2152 2001-06-30  Alex Larsson  <alexl@redhat.com>
2153
2154         * gdk/linux-fb/gdkinput-none.c:
2155         * gdk/linux-fb/gdkinput.c:
2156         * gdk/linux-fb/gdkinputprivate.h:
2157         Convert GdkDevice to a GObject.
2158
2159         * linux-fb/gdkprivate-fb.h:
2160         * linux-fb/gdkvisual-fb.c:
2161         Convert GdkVisual to a GObject.
2162
2163 2001-06-29  Alex Larsson  <alexl@redhat.com>
2164
2165         * gdk/gdkvisual.h:
2166         * gdk/gdkcolor.c:
2167         * gdk/x11/gdkx.h:
2168         * gdk/x11/gdkvisual-x11.c:
2169         Convert GdkVisual to a GObject.
2170
2171         * gdk/gdkinput.h:
2172         * gdk/gdkevents.c:
2173         * gdk/x11/gdkinputprivate.h:
2174         * gdk/x11/gdkinput-gxi.c:
2175         * gdk/x11/gdkinput-none.c:
2176         * gdk/x11/gdkinput-x11.c:
2177         * gdk/x11/gdkinput-xfree.c:
2178         * gdk/x11/gdkinput.c:
2179         Convert GdkDevice to a GObject.
2180
2181 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
2182
2183         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
2184         to just plain new, fixing the number of columns, and column types
2185         at creation time.
2186
2187         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
2188
2189         * gtk/gtkcellrenderertext.c
2190         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
2191         height to a specific font.
2192
2193         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
2194
2195         * tests/*c: change to work with new store models.
2196
2197 2001-06-29  Havoc Pennington  <hp@redhat.com>
2198
2199        * Throughout: fixes to compile with G_DISABLE_COMPAT
2200         (s/g_signal_connectc/g_signal_connect/,
2201         s/g_signal_newc/g_signal_new/,
2202         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
2203
2204 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
2205
2206         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2207         add path argument to selection callbacks.
2208
2209 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
2210
2211         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
2212         walk through a model in a depth first manner, with the option to
2213         break out.
2214
2215 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
2216
2217         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
2218         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
2219         column and follow it when draged, rather than a location in the
2220         view. "expander_column" property and drawing functions changed
2221         accordingly.  Fixes bug #55942.
2222
2223         (gtk_tree_view_{set,get}_expander_column): Now works with a
2224         GtkTreeViewColumn* instead of int.
2225
2226 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
2227
2228         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
2229
2230 2001-06-28  Havoc Pennington  <hp@pobox.com>
2231
2232         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
2233         image data to the screen, using a server grab to avoid race
2234         conditions.
2235
2236         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
2237         check for NULL return from gtk_image_new_from_stock(), it never
2238         returns NULL.
2239         (gtk_item_factory_create_item): fix bug where we parsed the stock
2240         ID as an inline pixbuf
2241
2242         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
2243
2244         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
2245         support (should be using binding set here)
2246
2247         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
2248         support (should be using binding set here)
2249
2250         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
2251         support
2252
2253         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
2254
2255         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
2256
2257         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
2258
2259         * gtk/gtkimcontextsimple.c
2260         (gtk_im_context_simple_filter_keypress): keypad
2261
2262         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
2263
2264         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
2265
2266         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
2267
2268         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
2269         should be binding-setted)
2270
2271         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
2272
2273         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
2274
2275         * gtk/gtkcalendar.c: numeric keypad fixes
2276
2277         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
2278         support
2279
2280         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
2281         screwup
2282
2283         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
2284         clip the render area to the drawable's clip region in advance,
2285         so we don't get data from the server that we don't need.
2286
2287         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2288         check return value of gdk_pixbuf_get_from_drawable(), fall back 
2289         to bilevel alpha if we can't get the pixbuf to composite against.
2290
2291         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
2292
2293         * gdk/gdkimage.c (gdk_image_get_colormap): add
2294         gdk_image_set_colormap, gdk_image_get_colormap
2295
2296         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
2297         take a region of the image, instead of converting the entire
2298         image.
2299
2300         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
2301         keybinding signal. Add default bindings for it. Add default
2302         handler for show_help that shows the tooltip for the widget.
2303
2304         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
2305         "close" keybinding signal, remove key press handler.
2306
2307         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
2308         it's not our usual practice to leave a deprecated function around
2309         with a runtime warning, plus we don't want it to appear in docs,
2310         plus if we make them yellow no one will want to change them
2311         anyhow.
2312
2313 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2314
2315         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
2316         GTK_WIDGET_REALIZE() for resize queueing.
2317
2318         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
2319         GTK_WIDGET_REALIZE() for post event delivery destruction upon
2320         GDK_DESTROY.
2321         
2322         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
2323         sompensate for former (pre-2.0) connect_after() facility.
2324         (gtk_widget_send_expose): 
2325         (gtk_widget_event): assert the widget is realized, since event delivery
2326         to non-realized widgets is essentially a bug. event handlers should
2327         be able to unconditionally rely on widget->window (unless they
2328         emit events on their own which can trigger widget destruction).
2329         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
2330         logic. event delivery happens as follows:
2331         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
2332         b) if !was_handled in (a) and the widget is still realized, emit event-
2333            specific signal (RUN_LAST handler). returns was_handled.
2334         c) emission of GtkWidget::event-after for notification if the widget is
2335            still realized (regardless of was_handled from previous stages, no
2336            class handler). no return value.
2337         d) was_handled gets passed on to caller, to determine further
2338            propagation. if the widget got unrealized meanwhile, was_handled
2339            is returned as TRUE.
2340
2341         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
2342         gdk_event_get_coords().
2343
2344 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2345
2346         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
2347         age 0, binary age 0. depend on glib 1.3.7.
2348
2349         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
2350
2351         * gtk/gtkmenubar.c: same here.
2352         
2353         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
2354
2355         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
2356
2357         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
2358         
2359         * gtk/gtkmenubar.c (add_to_window): likewise.
2360         
2361         * gtk/gtktextbtree.c: and here...
2362         
2363         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
2364         
2365         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
2366         
2367         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
2368         
2369         * gtk/gtktreeviewcolumn.c:
2370         (_gtk_tree_view_column_set_tree_view): yet again.
2371
2372         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
2373         signal connections without g_signal_connect_data().
2374         
2375         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
2376         demo of the matter.
2377         
2378         * demos/testpixbuf.c (main): running out of equality phrases for the
2379         ChangeLog, but had to adapt connections here as well.
2380         
2381         * demos/testanimation.c (progressive_timeout): and for the fun of it,
2382         tackled this the same way.
2383         
2384         * tests/testtext.c (create_view): ok, it's becoming a pain at this
2385         point, but had enough enery for one more fix.
2386
2387         * tests/testtreecolumns.c (main): stand up man, do your work!
2388
2389         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
2390         fix, either that's been all of it or CVS gtk is broken yet again.
2391         
2392 2001-06-29  James Henstridge  <james@daa.com.au>
2393
2394         The following changes correspond to bug #56812
2395
2396         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
2397         code for GdkDevice.
2398
2399         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
2400         GdkCursor.
2401
2402 2001-06-19  Havoc Pennington  <hp@pobox.com>
2403
2404         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
2405         for mapping a window without fooling with stacking order, but
2406         updating the "withdrawn" flag
2407
2408         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
2409         filtering as soon as possible, moving move resize and wmspec_check
2410         handling after the event filter.  Make default filter apply to all
2411         events, not just those with no GdkWindow wrapped around the X
2412         window. Fix a FIXME about how the window could be a pixmap using 
2413         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
2414
2415         Also, be robust against events not on a known GdkWindow.
2416
2417         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
2418         gdk_x11_ungrab_server): export reference-counted server grabs, so
2419         other people can grab server over a GDK function that also does
2420         so.
2421
2422 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2423
2424         * gtk/gtktreeviewcolumn.c
2425         (gtk_tree_view_column_pack_start_cell_renderer): New function to
2426         reflect that you can (hypothetically) pack cell renderers into a
2427         column.
2428         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
2429         (gtk_tree_view_column_cell_is_visible): Move more functionality to
2430         the column.
2431         (gtk_tree_view_column_cell_can_focus): Move more functionality to
2432         the column.
2433
2434         * gtk/gtktreeview.c: Move to use new column-packing code.
2435         (gtk_tree_view_real_expand_row): remove totally braindead code.
2436         (gtk_tree_view_real_collapse_row): ditto.
2437
2438 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
2439
2440         * gtk/gtktreeviewcolumn.c: Fix a typo.
2441         
2442 2001-06-26  Joel Becker  <jlbec@evilplan.org>
2443
2444         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
2445           at the end of the file
2446
2447 2001-06-26  Havoc Pennington  <hp@redhat.com>
2448
2449         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2450
2451 2001-06-26  Havoc Pennington  <hp@redhat.com>
2452
2453         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
2454         property
2455
2456 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
2457
2458         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2459         stupid missing statement
2460
2461         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2462         private function for ATK.  It notifies you of how many _visible_
2463         children are deleted when a node is deleted.  Should be used by
2464         atk only.
2465
2466 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2467
2468         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2469         Use new pango_context_get_metrics() to fix problems
2470         with font lists in descriptions. (#56184, reported by
2471         Jonas Borgström)
2472
2473 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2474
2475         * gtk/gtkiconfactory.c:
2476         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2477         item factory so inlined pixbufs actually work.
2478
2479 2001-06-25  Havoc Pennington  <hp@redhat.com>
2480
2481         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2482         s/RESIZEABLE/RESIZABLE/
2483
2484         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2485
2486 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2487
2488         * configure.in:
2489         Added --enable-fbmanager. This is some experimental code
2490         that lets several GtkFB apps coordinate their access to the
2491         framebuffer.
2492         
2493         * acconfig.h:
2494         Added ENABLE_FB_MANAGER.
2495
2496         * gdk/linux-fb/Makefile.am:
2497         Added gdkfbmanager and gdkfbswitch.
2498
2499         * gdk/linux-fb/gdkkeyboard-fb.c:
2500         * gdk/linux-fb/gdkmouse-fb.c:
2501         * gdk/linux-fb/gdkprivate-fb.h:
2502         Split device init and open so that
2503         they can be opened and closed while switched
2504         away.
2505
2506         * gdk/linux-fb/gdkmain-fb.c:
2507         Add the basic manager communication.
2508
2509         * gdk/linux-fb/gdkrender-fb.c:
2510         Don't update to the shadow fb if we're
2511         blocked by the fb manager.
2512
2513 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2514
2515         * docs/Changes-2.0.txt: Add note about child property
2516         changes.
2517
2518 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2519
2520         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
2521         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
2522
2523         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
2524         with un'reffing wrong list reported by Jeff Franks.
2525
2526         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
2527
2528         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
2529         for the default icon. Remove inline XPM.
2530
2531         * gtk/gtkstock.h gtk/gtkiconfactory.c:
2532         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
2533         is used for GTK_STOCK_DND, but it is a bit too small.)
2534
2535         * gtk/stock-icons/stock_dnd_multiple.png
2536         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
2537
2538         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
2539         TRUE when starting a drag. In other cases, we are
2540         just observing. (#52995)
2541
2542         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
2543         function to set the icon for a drag from a GdkPixbuf
2544         or stock ID.
2545
2546         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
2547         Likewise, for drag sources.
2548
2549         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
2550         (Now should be done using the stock system.)
2551
2552 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
2553
2554         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
2555         Removed - didn't work and not particularly useful anyways
2556         if it did. 
2557
2558 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
2559
2560         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
2561         introduced last night that was making things decidedly not work.
2562
2563         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
2564         so that we have getter/setter pairing everywhere it makes
2565         sense. (#55767)
2566
2567         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
2568         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
2569         deprecated compat macro. (#55516)
2570
2571         * gtk/gtklabel.[ch]: Add functions
2572         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
2573         gtk_label_set_label(), which mirror the property API for GtkLabel.
2574         Make gtk_label_get_attributes() only reflect the attributes
2575         set by gtk_label_set_attributes.
2576
2577         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
2578         from gtk_notebook_set_page().
2579
2580 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
2581
2582         * configure.in: Fix tests for XShm.h.
2583
2584         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
2585         gdk_image_new() by use of goto, properly use g_object_unref().
2586
2587 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
2588
2589         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
2590         calls, as GdkImage is an object. these should be g_obejct_unref()
2591         instead but that won't work because of the g_error() statement
2592         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
2593         to spot these places.
2594
2595 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
2596
2597         * modules/input/gtkimcontextxim.c: Fixup some problems with 
2598         text length handling in error cases.
2599
2600         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
2601         a bit to make test actually warn on attempt to allocation
2602         a negative size. (#56101, Matthias Clasen)
2603
2604 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
2605
2606         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2607         noticed by Brian Cameron.
2608         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
2609         Cameron.
2610
2611 2001-06-22  Hans Breuer  <hans@breuer.org>
2612
2613         * gdk/gdk.def : updated externals
2614
2615         * gdk/win32/gdkdrawable-win32.c : corrected some casts
2616         in GDK_NOTEs
2617
2618         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
2619         to translate coordinates to the internal > 16 bit system
2620         Try to handle WM_WINDOWPOSCHANGED to get better performance for
2621         when moving/resizing
2622
2623         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
2624         and gdk_keymap_get_direction (). The latter is untested for
2625         the RTL case
2626
2627         * gtk/gtk.def : updated externals
2628
2629         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
2630         from pango_language_from_string (), not an already freed pointer
2631
2632         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
2633         binary (-kb) to be useable on windoze
2634  
2635 2001-06-21  Alexander Larsson  <alexl@redhat.com>
2636
2637         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
2638         Update to new PangoLanguage changes.
2639         
2640         * gtk/gtkwindow-decorate.c:
2641         * gtk/gtkwindow.[ch]:
2642         Added setting argument to gtk_window_set_has_frame ()
2643         
2644 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
2645
2646         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
2647         the case without XKB properly.
2648
2649         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
2650         unused gtk_rc_auto_parse variable.
2651
2652         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
2653         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
2654         longer needed with GdkPixbuf.
2655
2656         * gtk/gtkrc.c (_gtk_rc_init): Make private.
2657
2658 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
2659
2660         * gtk/gtkentry.h: Mark deprecated functions with
2661         GTK_DISABLE_DEPRECATED.
2662
2663 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2664
2665         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
2666
2667         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
2668
2669         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
2670           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
2671           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
2672           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
2673           to recent changes in Pango.
2674
2675         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
2676           to test whether the basic engine honors them.
2677
2678 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
2679
2680         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
2681         gtk_container_child_get_property().
2682
2683 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
2684
2685         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
2686         (gtk_tree_view_move_cursor_page_up_down): implement.
2687
2688 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
2689
2690         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
2691         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
2692         don't use automatic fixed size buffer for printf-ing floats, doubles
2693         can expand to really _huge_ strings, use g_strdup_printf() instead.
2694
2695 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
2696
2697         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
2698         construct property in 1.2 and still needs to be.
2699
2700         * gtk/gtkwidget.c: "composite_child" is not a settable property.
2701
2702 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
2703
2704         * gtk/gtkliststore.c (gtk_list_store_clear): 
2705         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
2706         clear a model.
2707
2708 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
2709
2710         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2711
2712         * gtk/Makefile.am:
2713         * gtk/gtk.h: disabled GtkPacker compilation.
2714
2715         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2716
2717         * gtk/gtknotebook.c:
2718         * gtk/gtktable.c:
2719         * gtk/gtkbox.c: ported this over to child properties.
2720
2721         * gtk/gtksettings.c: fetch class properties via
2722         g_object_class_list_properties().
2723
2724         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2725         child arg interface. use gobjectnotifyqueue.c for child property
2726         notification.
2727
2728         * gtk/gtkwidget.[hc]: provide necessary means for container child
2729         properties, i.e. ::child_notify signal,
2730         gtk_widget_freeze_child_notify(),
2731         gtk_widget_child_notify(),
2732         gtk_widget_thaw_child_notify().
2733
2734         * tests/testgtk.c: removed inferior property handling code, for
2735         property editing, a generic module should be used, and GLE
2736         coincidentally fullfills that purpose.
2737
2738         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2739         needs to be adapted to g_object_class_list_properties() before this
2740         builds again.
2741
2742 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2743
2744         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2745         test if a node is expanded.
2746
2747 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2748
2749         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2750         where collapsing a selected row would result in the cursor/anchor
2751         getting screwed up.
2752
2753 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2754
2755         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2756         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2757         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2758         Now I can really reorder/sort all Store widgets.  treesorttest
2759         seems to just work now.
2760         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2761         testtreesort worked through a big coincidence all this time.
2762         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2763         code.
2764         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2765         people know that this code should never ever ever be copied.
2766
2767 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2768
2769         * gtk/gtkwindow.h: Fixed a small typo, it should be
2770         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2771         on line 134.
2772
2773 2001-06-14  Havoc Pennington  <hp@redhat.com>
2774
2775         Docs fixups, and:
2776         
2777         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2778         GTK_DISABLE_DEPRECATED
2779
2780 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2781
2782         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2783         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2784         finish it off tonight, though it basically works now when it's a
2785         list.  Also, I have a sinking feeling neither GtkTreeStore or
2786         GtkListStore actually resort when adding a new item.  I'll look
2787         into it.
2788
2789 2001-06-14  Havoc Pennington  <hp@redhat.com>
2790
2791         * demos/gtk-demo/main.c (load_file): fix bug identified by
2792         warnings I just added to gtktextbuffer
2793
2794 2001-06-14  Havoc Pennington  <hp@redhat.com>
2795
2796         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2797
2798         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2799
2800         * gtk/gtktextbtree.c: don't leak node data all over the place.
2801
2802         * demos/gtk-demo/main.c (main): create fontify tags for the right
2803         buffer
2804
2805         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2806         to mention tags in the same table can't have the same name,
2807         suggested by Skip Montanaro
2808
2809 2001-06-11  Havoc Pennington  <hp@redhat.com>
2810
2811         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2812         for trying to add two tags with same name to the tag table
2813
2814         * demos/gtk-demo/main.c (main): fix colors ;-)
2815
2816 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2817
2818         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2819         that allows grouping together multiple windows so that grabs
2820         within that set of windows only affect those windows.
2821
2822         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2823         signal for notification when a widget becomes shadowed
2824         by a grab or is no longer shadowed by a grab.
2825
2826         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2827           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2828         insenstive widgets to maintain a grab.
2829
2830 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2831
2832         * docs/README.linux-fb:
2833         Add some example config files that can be used with the URW fonts.
2834         
2835         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2836         Set up the color ramps for DirectColor mode.
2837
2838 2001-06-11  Havoc Pennington  <hp@redhat.com>
2839
2840         * Release 1.3.6
2841          
2842 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2843
2844         * gdk/linux-fb/gdkwindow-fb.c:
2845         Unify shaped window code and make it repaint the area that used
2846         to be part of the shape, but isn't anymore.
2847
2848 2001-06-11  Havoc Pennington  <hp@redhat.com>
2849
2850         * NEWS: Updates
2851
2852         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2853
2854         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2855         
2856 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2857
2858         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2859         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2860         passes zero instead, so do we.
2861         
2862 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2863
2864         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2865         Deep copy dash_list too.
2866         (_gdk_fb_gc_new): Set default cap_style before
2867         setting values.
2868
2869 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2870
2871         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2872         gdk_keymap_get_direction): New functions.
2873
2874 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2875
2876         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2877         gtk_tree_model_get_flags by adding a second flag for atk.
2878
2879         * gtk/gtktreemodel.c: make cursor behavior interact better with
2880         mouse presses.
2881
2882 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2883
2884         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2885         expand_row/collapse_row to be 2 signals each -- test_expand_row
2886         and row_expanded as well as test_collapse_row and row_collapsed.
2887
2888 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2889
2890         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2891         signal name to be changed instead of selection_changed.
2892
2893 2001-06-08  Havoc Pennington  <hp@redhat.com>
2894
2895         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2896         "scroll_offset" property for notification when the layout offsets
2897         may have changed
2898         (gtk_entry_adjust_scroll): add notify for scroll_offset
2899         (gtk_entry_layout_index_to_text_index): function to compensate for
2900         preedit string when doing coordinate stuff on the entry's layout
2901         (gtk_entry_text_index_to_layout_index): inverse function
2902         (gtk_entry_get_layout_offsets): hook to get current position of
2903         the layout      
2904         (gtk_entry_get_layout): hook to get the layout itself.
2905
2906         * gtk/gtklabel.c (gtk_label_get_layout): new function
2907
2908 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2909
2910         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2911         keybinding.
2912         (gtk_tree_view_focus): Fix merge conflict.
2913
2914 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2915
2916         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2917         clean up cursor handling.
2918
2919 2001-06-08  Havoc Pennington  <hp@redhat.com>
2920
2921         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2922         function
2923
2924         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2925         this function
2926
2927 2001-06-08  Alex Larsson  <alexl@redhat.com>
2928
2929         * gtk/gtkcompat.h.in:
2930         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2931         Fixes bug #52892
2932
2933 2001-06-08  Havoc Pennington  <hp@redhat.com>
2934         
2935         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2936         parent still
2937
2938 2001-06-08  Havoc Pennington  <hp@redhat.com>
2939
2940         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2941         don't call g_list funcs on GSList
2942
2943         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2944         gtk_container_focus(), since some widgets have focusable locations
2945         which are not other widgets. These widgets should not have to be 
2946         containers just to manage the focus. For example, GtkHSV is
2947         currently a container for no good reason. Also, this cleans
2948         up the "if (is_container && is_sensitive && is_drawable)
2949         container_focus ()" mess in widget implementations.
2950
2951         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2952         function, and have it just call gtk_widget_child_focus().
2953
2954         * gtk/gtkhsv.c: derive from widget not container
2955         
2956         Throughout: fix to reflect GtkContainer::focus change
2957         
2958 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2959
2960         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2961         range.  Fix bug #55921
2962
2963         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2964         (#55920).
2965
2966 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2967
2968         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2969         and gdk_keymap_get_current_direction().
2970
2971         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2972           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2973         the current locked group, use it to set the keymap
2974         direction.
2975
2976         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2977         to determine whether we draw a split cursor or use
2978         a jumping cursor based on the current direction.
2979
2980         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2981         Obey the split cursor setting. 
2982
2983 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2984
2985         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2986         when toggling on, not when toggling off... (#55906)
2987
2988 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2989
2990         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2991         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2992         in docs. (#55812, Vitaly Tishkov)
2993
2994 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
2995
2996         * demos/gtk-demo/main.c (create_tree): Changed signal name from
2997         selection_changed to changed in signal connection to GtkTreeSelection,
2998         also used g_signal_connectc since GtkTreeSelection is now a GObject.
2999
3000 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
3001
3002         * gtk/gtktreeselection.c: Now it's a GObject instead of a
3003         GtkObject.  The GtkTreeSelection::selection_changed signal is now
3004         the GtkTreeSelection::changed signal.
3005
3006         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
3007         object.
3008
3009         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
3010         object.
3011
3012 2001-06-07  Havoc Pennington  <hp@redhat.com>
3013
3014         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
3015
3016 2001-06-07  Havoc Pennington  <hp@redhat.com>
3017         
3018         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
3019         (not tested yet because with absolute path to srcdir I can't build
3020         atk, but it was broken anyway so this may help) 
3021
3022 2001-06-07  Havoc Pennington  <hp@redhat.com>
3023
3024         * configure.in: output m4macros/Makefile
3025         
3026 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
3027
3028         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
3029         buttons.  Fixes #55460 reported by matthiasc@poet.de.
3030
3031 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
3032
3033         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
3034         expansion/collapsing so it only happens in one place.
3035         (gtk_tree_view_real_expand_row): ditto.
3036
3037 2001-06-07  Havoc Pennington  <hp@redhat.com>
3038
3039         * tests/Makefile.am: add missing -I flag
3040
3041         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
3042
3043         * configure.in: use pkg-config to see if GModule is
3044         supported; fix to properly turn on included loaders 
3045         when GModule isn't supported; don't use AC_CHECK_LIB 
3046         when libs are not installed yet
3047
3048         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
3049
3050         * Makefile.am (SUBDIRS): add m4macros subdir
3051
3052         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
3053         dependencies also.
3054
3055 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
3056
3057         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
3058         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
3059
3060 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
3061
3062         * gtk/gtktreeview.c
3063         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
3064         bindings to expand and collapse rows.
3065         (gtk_tree_view_real_select_cursor_parent): New key binding.
3066         (gtk_tree_view_real_toggle_cursor_row): New key binding.
3067
3068         * gtk/gtkmarshal.list: new
3069         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
3070
3071 2001-06-06  Havoc Pennington  <hp@redhat.com>
3072
3073         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
3074
3075         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
3076         Down to move visually rather than logically, since it confuses 
3077         people. Add -/+ and Ctrl--/+ bindings for logical movement.
3078
3079 2001-06-06  Alex Larsson  <alexl@redhat.com>
3080
3081         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3082         Fix up error messages.
3083
3084 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
3085
3086         * gtk/gtktooltips.h: Include gtkwidget.h 
3087         (#55798, Karl Nelson)
3088
3089         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
3090         a valid latin-1 character. (Marc Lehmann, #35467)
3091
3092         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
3093         (Marc Lehmann, #35467)
3094         
3095 2001-06-05  Alex Larsson  <alexl@redhat.com>
3096
3097         * demos/gtk-demo/appwindow.c (do_appwindow):
3098         Don't swap the order of the args to gtk_widget_destroyed.
3099
3100         * tests/testgtk.c (destroy_properties):
3101         Don't crash when the properties window is destroyed.
3102
3103         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
3104         Use with_mnemonics to handle the case of stock items with
3105         underscores in them.
3106
3107 2001-06-05  Havoc Pennington  <hp@redhat.com>
3108
3109         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
3110         gtk_text_iter_reorder
3111
3112 2001-06-05  Havoc Pennington  <hp@redhat.com>
3113
3114         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
3115
3116 2001-06-05  Havoc Pennington  <hp@redhat.com>
3117
3118         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
3119         to the range that was set
3120
3121         * gtk/gtkrange.c: add value_changed signal, primarily 
3122         intended for use with GtkScale
3123         (gtk_range_set_increments): new function
3124         (gtk_range_set_range): new function with weird name
3125         (gtk_range_set_value): new function
3126         (gtk_range_get_value): new function
3127
3128         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
3129         from gtk_spin_button_get_value_as_float(). Compat #define
3130         added for get_value_as_float.
3131
3132         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
3133
3134         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
3135
3136 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
3137
3138         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
3139
3140 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
3141
3142         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
3143
3144         * tests/testgtk.c (create_tooltips): Remove usage of
3145         gtk_widget_set().
3146
3147 2001-06-05  Havoc Pennington  <hp@redhat.com>
3148
3149         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
3150
3151         Applying patch from Jeff Franks, with function docs added.
3152         
3153         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
3154         remove call to set_mnemonic_widget, change docs a bit.  
3155
3156         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
3157         new function
3158
3159         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
3160         new function
3161
3162         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
3163
3164         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
3165         function
3166         (gtk_radio_button_new_with_mnemonic_from_widget): new function
3167
3168         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
3169         new function
3170
3171         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
3172         function        
3173
3174         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
3175         auto-selection of mnemonic widget.
3176
3177 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
3178
3179         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
3180         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
3181         (gtk_tree_view_column_set_min_width): ditto.
3182
3183 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
3184
3185         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
3186         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
3187
3188 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
3189
3190         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
3191         gtk_clist_thaw().
3192
3193 2001-06-04  Havoc Pennington  <hp@pobox.com>
3194
3195         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
3196         releases for buttons 6, 7
3197
3198 2001-06-04  Havoc Pennington  <hp@redhat.com>
3199
3200         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
3201         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
3202         #55562
3203
3204 2001-06-04  Havoc Pennington  <hp@redhat.com>
3205
3206         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
3207         where text_view->layout == NULL by assuming its size is 0, 
3208         i.e. same as if we haven't done any reflow. Reported by 
3209         Hidetoshi Tajima #55448 
3210
3211 2001-06-04  Havoc Pennington  <hp@redhat.com>
3212
3213         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
3214         and 7 for scroll left/right, from Thomas Broyer
3215
3216 2001-05-10  Havoc Pennington  <hp@redhat.com>
3217
3218         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
3219         we need to parse the xsetting as if it were an RC file string.
3220
3221         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
3222         value of palette from settings, not from static variable
3223
3224         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
3225         xsettings translation table
3226
3227         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
3228         hardcoding the toolbar style conflicts with new customizable 
3229         toolbar style philosophy
3230         (gtk_toolbar_class_init): add settings for default toolbar style;
3231         these are used unless the app specifically forces a toolbar style
3232
3233         * gtk/gtksettings.c (settings_install_property_parser): only
3234         return at the start if we warn and parser == NULL
3235
3236         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
3237         palette changed handler so we don't notify dead color selections
3238
3239         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
3240         xthickness/ythickness of 0 or 1 properly 
3241         (gtk_default_draw_resize_grip): clear the background behind the
3242         resize grips, and align to bottom right if we square the 
3243         area to be drawn.
3244
3245         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
3246         statusbar label to 1, so it doesn't make toplevels resize oddly
3247         (gtk_statusbar_size_request): add grip size to request
3248         (gtk_statusbar_size_allocate): hack so the hbox still works with 
3249         the grip size in the request
3250
3251         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
3252         bug where showing all on a toplevel makes the toolbar 
3253         button text appear despite the toolbar mode
3254
3255         * gtk/gtkmenubar.c: add internal padding style property
3256
3257         * gtk/gtktoolbar.c: Add internal padding style property; add
3258         shadow type style property
3259
3260         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
3261         state; and put Container::border_width outside the frame
3262
3263         * gtk/gtktextview.c: don't draw focus rectangle if we're in
3264         interior focus mode, we just use blinking cursor
3265
3266 2001-06-04  Havoc Pennington  <hp@redhat.com>
3267
3268         * configure.in: Make gdk-pixbuf have same version number as GTK
3269
3270 2001-06-04  Havoc Pennington  <hp@redhat.com>
3271
3272         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
3273         digits greater than 6. If there actually are limits (which there
3274         likely aren't), should clamp to them not warn.
3275         (gtk_spin_button_new_with_range): don't take log of 0
3276         (gtk_spin_button_size_request): use digits to compute size
3277         request, rather than step increment.
3278
3279         * tests/testgtk.c (create_spins): test larger values of digits
3280         
3281         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
3282         font on map not expose, so we don't get weirdness during scrolling
3283
3284 2001-06-04  Havoc Pennington  <hp@redhat.com>
3285
3286         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
3287         Sam Solon, bug #54577, update value even if not drawable.
3288
3289 2001-06-04  Havoc Pennington  <hp@redhat.com>
3290
3291         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
3292         SCROLL_LEFT, reported by Thomas Broyer.
3293
3294 2001-06-04  Havoc Pennington  <hp@redhat.com>
3295
3296         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
3297         Process updates immediately, to prevent funny lag effect
3298         when scrolling, at some mild potential efficiency cost.
3299
3300 2001-06-04  Havoc Pennington  <hp@redhat.com>
3301
3302         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
3303         slider on the click.
3304
3305 2001-06-03  Havoc Pennington  <hp@pobox.com>
3306
3307         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
3308         hscale/vscale details, so we can use it for scrollbar as well.
3309
3310         * tests/testgtk.c (reformat_value): honor digits from GtkScale
3311
3312         * gtk/gtkenums.h (GtkTroughType): Remove this enum
3313         (GtkScrollType): add START and END from GtkTroughType
3314
3315         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
3316         its x/y arguments
3317
3318         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
3319         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
3320         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
3321         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
3322         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
3323
3324         Notable changes in the process:
3325          
3326         - stepper_size style property is the height for vertical 
3327           ranges, width for horizontal; the other dimension matches
3328           the trough size
3329         - add ability to do NeXT-style steppers (and several other styles
3330           that don't make any sense)
3331         - added min_slider_length, fixed_slider_length properties to
3332           GtkScrollbar
3333         - cleaned some private (or at least useless) functions out of
3334           gtkscale.h    
3335         - moved bindings to GtkScale from subclasses, even arrow keys,
3336           since blind users don't know scale orientation.
3337         - change move_slider action signal to use new GtkScrollType,
3338           remove GtkTroughType argument
3339         - digits rounds the values a range will input to the given 
3340           number of decimals, but will not try to force adjustment 
3341           values set by other controllers. That is, we no longer
3342           modify adjustment->value inside a value_changed handler.
3343         - added getters for GtkScale setters
3344         - middle-click begins a slider drag
3345         
3346 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
3347
3348         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
3349         getting the focus code to work.
3350         (gtk_tree_view_class_init): Add a bunch of keybindings.
3351
3352         * gtk/gtktreeviewcolumn.c
3353         (gtk_tree_view_column_set_cell_data_func):
3354         s/GtkCellDataFunc/GtkTreeCellDataFunc.
3355         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
3356         of "properties_changed" to help justify the death of the latter
3357         signal. (-:
3358
3359         * tests/testtreefocus.c (main): Let some columns be focussable to
3360         test focus better.
3361
3362 2001-06-01  Havoc Pennington  <hp@redhat.com>
3363
3364         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
3365         
3366         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
3367         overwrite in overwrite mode if we already deleted the selection
3368         and replaced it with new text.  
3369
3370         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
3371         selection to an empty range, clear the clipboard if we owned it.
3372         (gtk_label_set_selectable): give up selection if we become
3373         unselectable.
3374         (gtk_label_state_changed): override state changed to unselect text
3375         when insensitive
3376         (get_text_callback): add paranoia check that indexes aren't
3377         outside of label->text
3378         (gtk_label_select_region): make -1 for start_offset mean "end of
3379         label," for consistency with GtkEditable
3380
3381         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
3382         GTK_DIALOG_NO_SEPARATOR flag
3383
3384 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
3385
3386         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
3387         notifications on non-existant "enable_arrow_keys".
3388         (#53753, Skip Montanaro)
3389
3390 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
3391
3392         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
3393         GDK_TYPE_RECTANGLE.
3394
3395         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
3396         of allocation argument be GDK_TYPE_RECTANGLE.
3397
3398 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
3399
3400         * gtk/gtkoptionmenu.c: Account for the fact that the border
3401         width is _outside_ the window. (Fixes #54585, bug found
3402         by Bastien Nocera.)
3403
3404 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
3405
3406         * gtk/gtksettings.c (gtk_settings_get_property): Validate
3407         value from GDK settings against parameter spec.
3408
3409         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
3410         to temporary values and use g_value_transform(), since
3411         thinking that GValue was going to be easy or efficient
3412         to use was, of course, a mistake.
3413
3414         * gtk/gtksettings.c: Add cursor blink setting.
3415         
3416         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
3417
3418         * gtk/gtkentry.c: Add cursor blinking.
3419
3420         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
3421         cursor blink global settings.
3422
3423         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
3424         for :text_position in places where it is missing.
3425
3426 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
3427
3428         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
3429
3430 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
3431
3432         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
3433         not pkg-config. (#51032)
3434
3435         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
3436         (fixes #51952, James Henstridge)
3437         
3438 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
3439
3440         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
3441         Rename to the more correct gtk-go-up.
3442
3443         * gtk/stock-icons/stock_menu_sort_ascending.png:
3444         Added new file.
3445         
3446         * gtk/stock-icons/stock_menu_sort_descending.png:
3447         Changed to show descending instead of ascending.
3448
3449         * gtk/gtkiconfactory.c:
3450         Added menu size icon to sort ascending.
3451
3452         * gtk/stock-icons/Makefile.am:
3453         Added stock_menu_sort_ascending.png.
3454         
3455         * gtk/gtkseparatormenuitem.c:
3456         Use correct typenames.
3457
3458 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3459
3460         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3461         gulong as in GSignal.
3462
3463 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3464
3465         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3466         instances of GtkCellRenderer in code (all but dnd icon code).
3467         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3468         there, and I can do multiple Cells per column.
3469
3470         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3471
3472         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3473         when model was unreffed prior to removing the row reference.
3474
3475 2001-05-25  Havoc Pennington  <hp@redhat.com>
3476
3477         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3478         you call gtk_stock_list_ids()
3479
3480         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3481         in list
3482
3483 2001-05-25  Havoc Pennington  <hp@redhat.com>
3484
3485         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3486         set can render without falling back to missing image icon
3487
3488         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3489         size of text, instead of random values
3490
3491         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3492         size of tree view, instead of random values
3493
3494         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3495         image in an appropriate size
3496
3497         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3498         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
3499
3500         Throughout: fix GTK_STOCK_BUTTON_ instances
3501         
3502         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3503         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
3504         Add a bunch of new stock items/icons
3505
3506         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
3507         new function, convenience for inserting columns with a data func
3508
3509         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
3510         (_gtk_icon_factory_list_ids): use list of all factories to
3511         generate a list of all known IDs
3512
3513         * gtk/gtkstock.c (gtk_stock_list_ids): replace
3514         gtk_stock_list_items() with a function that returns all IDs known
3515         including those for GtkIconFactory.
3516
3517 2001-05-25  Hans Breuer  <hans@breuer.org>
3518
3519         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
3520         work -> check boxes and radio buttons are drawn now, even on win9x.
3521         Improved line settings a bit, still no clue how to get really dotted
3522         lines on win9x, on NT it's PS_ALTERNATE.
3523
3524         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
3525         GDK_HINT_MIN_SIZE as well
3526
3527         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
3528
3529         * gtk/gtk.def : updated
3530
3531         * gtk/gtktreeprivate.h : change column_drop_func to be a function
3532         pointer not a function pointer pointer
3533
3534         * tests/testdnd.c : include <stdlib.h> for putenv prototype
3535
3536         * tests/testsocket.c : made it compile on win32 again
3537
3538         * tests/makefile.msc : one more test-app uses prop-editor.obj
3539
3540 2001-05-22  Havoc Pennington  <hp@pobox.com>
3541
3542         * gtk/gtkbin.c (gtk_bin_get_child): New function
3543
3544 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
3545
3546         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
3547         to ignore when doing compose processing.
3548
3549 2001-05-22  Joe Shaw  <joe@ximian.com>
3550
3551         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
3552         Simplify as suggested by Havoc. Just get the last iter and work
3553         backward to the tag instead of getting a line and working back from
3554         there. Fixes passing in an invalid offset to
3555         iter_init_from_byte_offset().
3556
3557 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
3558
3559         * gtk/gtktreeview*.h: 
3560         * gtk/gtkcell*.h:
3561         * gtk/gtk*store.h:
3562         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
3563         macros to all objects.
3564
3565 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
3566
3567         * gtk/gtkcellrenderertext.c
3568         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
3569         with very large (TM) amounts of text.  May be moved to
3570         GtkCellRenderer in the future, though I'm not sure it wants to be
3571         this accessible.
3572
3573         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
3574         More sanity brought to this class.  I like it.
3575
3576         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
3577         case.  Kids, don't try this at home.
3578
3579         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
3580         convenience function.
3581
3582         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
3583
3584 2001-05-21  Alexander Larsson  <alexl@redhat.com>
3585
3586         * gtk/gtkfontsel.c:
3587         Added properties. Based on patch by Lee Mallabone.
3588
3589         * gtk/gtkruler.c:
3590         * gtk/gtkhruler.c:
3591         * gtk/gtkvruler.c:
3592         * gtk/gtktext.c:
3593         * gtk/gtktextview.c:
3594         Converted GtkArg to GParam. Based on patches by John Margaglione.
3595
3596         * tests/Makefile.am:
3597         * tests/testtext.c:
3598         Add a property editor to testtext.
3599         
3600 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
3601
3602         * gtk/gtk{h,v,}paned.c: Only show the separator if 
3603
3604         * configure.in: Fixed reversed conditional causing all image
3605         libraries to be linked in.
3606
3607 2001-05-21  Joe Shaw  <joe@ximian.com>
3608
3609         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
3610         that top_y needs to be >= 0.
3611
3612 2001-05-11  Havoc Pennington  <hp@pobox.com>
3613         
3614         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
3615         losing connection to the X server.
3616
3617 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
3618
3619         * configure.in: Start checks for X from pangox/pangoxft
3620         CFLAGS to avoid duplicate libraries.
3621
3622         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
3623
3624         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
3625         to include gobject.
3626         
3627 2001-05-18  Alexander Larsson  <alexl@redhat.com>
3628
3629         * gtk/gtkspinbutton.c:
3630         Convert GtkArgs to GParams. Based on patch by John Margaglione.
3631         Also do size request reasonable for MAXDOUBLE. Previously it printed
3632         the limits to a buffer and overran it. Instead do it using log10() and
3633         limit the width to 10 digits.
3634         
3635         * gtk/gtkwidget.c (gtk_widget_get_property):
3636         Correctly handle setting the parent property to NULL.
3637
3638 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
3639
3640         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
3641         style attributes even if the widget isn't realized.
3642
3643         * demos/gtk-demo/main.c: Use a slightly smaller font.
3644
3645 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
3646
3647         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
3648         This is something that only a widget writer would ever want
3649         to change.
3650
3651         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
3652         gtk_signal_emit_by_name().
3653
3654         * gtk/gtkviewport.c: Fix some warnings.
3655
3656         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
3657         allowing the requisitions of multiple widgets to be grouped
3658         together.
3659
3660         * tests/testgtk.c: Add GtkSizeGroup test
3661
3662         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
3663
3664         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
3665         warnings.
3666
3667         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
3668
3669 2001-04-28  Martin Baulig  <baulig@suse.de>
3670
3671         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
3672         to gtk_image_menu_item_set_icon() and made it work if there's already
3673         an image.
3674         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
3675         (gtk_image_menu_item_new_with_label): New function.
3676
3677 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
3678
3679         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
3680         highlighting code!!!!  The result is okay so long as you don't try
3681         to stress it.  It also highlights a bug in the TextView so it's in
3682         an unproportional font right now until it's fixed.
3683
3684         *demos/gtk-demo/*.c: Clean up code a bit to make it
3685         ugly-parser(TM) friendly. (-:
3686
3687 2001-05-17  Joe Shaw  <joe@ximian.com>
3688
3689         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
3690         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
3691         if it is only partially onscreen.
3692
3693 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
3694
3695         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
3696         not by characters.
3697
3698         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
3699         are not zero or one; that is, when graphemes of multiple characters
3700         are involved.
3701
3702         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
3703         FIXME.
3704
3705 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
3706         
3707         * gtk/gtkbbox.c:
3708         Add properties, based on patch by Lee Mallabone.
3709
3710         * gtk/gtknotebook.c:
3711         * gtk/gtktoolbar.c:
3712         Convert from GtkArg to GParam, based on patch by John Margaglione.
3713         
3714         * gtk/gtkhscale.c:
3715         * gtk/gtkvscale.c:
3716         * gtk/gtkhscrollbar.c:
3717         * gtk/gtkvscrollbar.c:
3718         * gtk/gtkrange.c:
3719         Move adjustment property to GtkRange.
3720
3721         * gtk/gtklabel.c:
3722         Setup mnemonics on property changes
3723
3724         * gtk/gtkwidget.c (gtk_widget_get_property):
3725         GdkExtensionMode is an enum, not a flag. Set it with
3726         g_value_set_enum ().
3727
3728         * tests/prop-editor.c:
3729         Better propery editor.
3730
3731         * tests/testgtk.c:
3732         Add new property test. Pass zero to the property editor to
3733         get properties from all derived types.
3734         
3735 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3736
3737         * autogen.sh (have_automake): Require libtool-1.4,
3738         automake-1.4p1.
3739
3740         * acinclude.m4: Remove libtool macros.
3741
3742         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3743         modules.
3744
3745         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3746         for libgdk.
3747
3748         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3749         libgdk.la for libgtk.
3750
3751         * modules/input/Makefile.am: Make modules have full
3752         dependencies.
3753
3754 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3755
3756         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3757         #54699 where paths weren't being checked for correctness.
3758
3759 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3760
3761         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3762         in any order you wan, whether or not the column is added to the
3763         tree, or the tree is realized.  Yay!
3764
3765         * gtk/gtktreeviewcolumn.c
3766         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3767         sorting columns a lot saner
3768
3769         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3770         new function to actually set wether or not a column is
3771         reorderable.
3772
3773         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3774         if we have 'em.
3775
3776         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3777         Fix nasty bug where we were showing the button just before
3778         realizing it.  As a result, the parent window was
3779         tree_view->window instead of tree_view->priv->header_window.
3780
3781         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3782         to let you easily reorder a list or tree.
3783
3784 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3785
3786         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3787         from args to properties.
3788
3789 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3790
3791         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3792         from args to properties. (#51957)
3793
3794         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3795         calls to after ->set_property call.
3796
3797 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3798
3799         * tests/prop-editor.c: Block against redundant changes.
3800
3801         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3802         properties.
3803
3804 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3805
3806         * gdk/gdkpixmap.h: Remove creative formatting.
3807
3808 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3809
3810         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3811         property API. (#51669)
3812
3813         * gtk/gtkscale.c: Patch from John Margaglione converting to
3814         property API. (#51891)
3815
3816         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3817         to property API. (#50985)
3818
3819 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3820
3821         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3822         buffering state across expose event, so we still call end_paint().
3823
3824 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3825
3826         * gtk/gtkhsv.c (paint_triangle):
3827         Expose the ring in the triangle at the correct place when
3828         exposing just a part of the triangle.
3829
3830         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3831         Return FALSE, or window focusing will not work.
3832
3833 2001-05-11  Havoc Pennington  <hp@pobox.com>
3834
3835         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3836         #54144
3837
3838         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3839         bug #54330
3840
3841 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3842
3843         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3844         propagate exposes to NULL child.
3845
3846         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3847         against not having one of the scrollbars.
3848
3849         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3850         we don't keep a mnemonic window if we have no mnemonic installed.
3851
3852 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3853
3854         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3855         it has the _important_ side effect of initializing a class.
3856
3857 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3858
3859         * gdk/linux-fb/gdkprivate-fb.h:
3860         Make sure you can compile out the implementation/wrapper assert
3861         macros.
3862
3863         * gdk/linux-fb/gdkdrawable-fb2.c:
3864         Check implementation/wrappers, initialize type for pixmap dummys.
3865
3866         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3867         Hide the cursor if reading from the screen.
3868
3869         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3870         Fix sign bug in tiling code.
3871
3872         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3873         Handle background pixmaps.
3874
3875 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3876
3877         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3878         function to let user control where columns are dragged.
3879
3880         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3881         Escape is pressed.
3882
3883 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3884
3885         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3886         "columns_changed" signal.
3887         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3888         motion code to draw arrows to the side if indicator is outside the
3889         widget.
3890         (gtk_tree_view_map_expanded_rows): Implement.
3891
3892 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3893
3894         * demos/testpixbuf-save.c: 
3895         * demos/testpixbuf-drawable.c:
3896         Include gdkfb.h on linux-fb.
3897
3898 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3899
3900         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3901         New function for getting toplevel window at position.
3902         (gdk_drag_find_window): Use get_toplevel_window () instead
3903         of gdk_window_get_pointer(). (gdk_drag_status): Use
3904         correct context for getting window.
3905
3906         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3907         g_strdup the atom name.
3908
3909         * gdk/linux-fb/gdkwindow-fb.c:
3910         Costmetic fix.
3911
3912         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3913         Add code for changing cursor on linux-fb backend (same as
3914         win32).
3915
3916 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3917
3918         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3919         present before doing anything with it.  Patch from Håvard Kvålen
3920         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3921         report was not for the development branch of GTK+, but it applies
3922         anyways).
3923
3924 2001-05-04  Havoc Pennington  <hp@redhat.com>
3925
3926         * configure.in: fix some shell typos
3927
3928         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3929
3930         * gtk/gtkimage.c: handle animations
3931
3932         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3933         border_width * 2, not just border_width
3934
3935         * gtk/gtkscale.c: add "format_value" signal to allow people
3936         to override the way values are drawn.
3937         (gtk_scale_get_value_size): fix width/height mistake,
3938         and compute size from actual displayed text, not 
3939         from made-up text.
3940
3941         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3942         signal registration
3943
3944         * tests/testtext.c: Add "Remove all tags" menu item for testing
3945
3946         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3947
3948         * demos/gtk-demo/main.c (main): add hack so we can find modules
3949         without installing gtk
3950
3951         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3952
3953         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3954         factor)
3955         (gtk_cell_renderer_text_set_property): remove some bogus
3956         g_object_notify
3957
3958         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3959         factor
3960
3961         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3962         to layout
3963
3964         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3965         gtk_text_iter_is_first
3966
3967 2001-01-06  Hans Breuer  <hans@breuer.org>
3968
3969         * gdk/gdk.def : updated exports
3970
3971         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3972         gdk won't compile anymore
3973  
3974         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3975         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3976         Improved gdk_flush () to not only do pending drawing operations
3977         but also process all currently pending events. This should make
3978         the behaviour more similar to the X11 version.  
3979
3980         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3981         option needs to be set even if there is no GDK_GC_BACKGROUND.
3982         (gdk_win32_hdc_get) : use predraw_set_background () independent
3983         of value_mask. This allows to draw dashed lines leaving the original
3984         background intact.
3985
3986         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3987         after processing, because we can't reuse it as the X11 version does.
3988
3989         * gtk/gtk.def : updated exports
3990
3991         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3992         would like to get rid of this file again, and use straight
3993         makefile.msc again, as the other Gtk+ subdirs do)
3994
3995         * test/makefile.msc (new file) : build the test apps here
3996
3997 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
3998
3999         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
4000         strike-through setting
4001         (gdk_draw_layout_line_with_colors): Render strike-through
4002
4003 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
4004
4005         * Release 1.3.5
4006
4007         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
4008
4009         * NEWS: Updated
4010
4011         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
4012         Makefile breakage.
4013
4014 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
4015
4016         * demos/gtk-demo/images.c (progressive_timeout): Fix
4017         typo in filename.
4018
4019         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
4020         out FIXME warning; just too annoying.
4021
4022 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
4023
4024         * gdk/linux-fb/gdkcolor-fb.c:
4025         Better error messages.
4026
4027         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
4028         Initialize abs_x and abs_y.
4029         
4030         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4031         Correct handling of stipple offset.
4032
4033         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
4034         Treat directcolor framebuffers as truecolor.
4035         
4036 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
4037
4038         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
4039         dependency on Atk for accessibility support.
4040
4041         * configure.in **/Makefile.am: Major reworking of substituted
4042         variables for CFLAGS/LIBS to make a lot more sane and 
4043         keep the the compile/link lines a bit shorter.
4044
4045         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
4046
4047 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
4048
4049         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
4050         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
4051         use _gtk_boolean_handled_accumulator.
4052
4053 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
4054
4055         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
4056         to fix things so clicking inside selection leaves cursor
4057         at point where clicked. (#50324)
4058
4059         * gtk/gtksettings.c (gtk_settings_class_init): Restore
4060         sane value for default double click time.
4061
4062         * tests/testtext.c (test_init): Really path to input modules.
4063
4064 2001-05-03  Sven Neumann  <sven@convergence.de>
4065
4066         * demos/testpixbuf-save.c: include target-specific headers as
4067         done in testpixbuf-drawable.c
4068
4069 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
4070
4071         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
4072         new_text_length appropriately when we run into the 
4073         size limit for the entry. (#53445, reported by Jeff Franks)
4074
4075         * tests/testgtk.c (create_entry): Remove most of the
4076         property toggle buttons. Replace with a "Props" button
4077         that brings up a property editor.
4078
4079         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
4080         Split the property editor code out for reuse, improve.
4081
4082 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
4083
4084         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
4085         trap errors around calls to XSetInputFocus since we have
4086         no way of knowing reliably whether we are viewable or
4087         not. (#53947)
4088
4089 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
4090
4091         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4092         fix bug in dropping columns.  Moving columns now basically works
4093         modula some fine tuning.
4094
4095 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
4096
4097         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
4098         autoscroll support.  It mostly works, but could use some fine
4099         tuning.
4100         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4101         Actually move the column.
4102
4103 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
4104
4105         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
4106           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
4107           New default theme! A slighly improved version of the 2.0 Raleigh
4108           theme, with Windows-esque focus/drawing default. 
4109           (GtkWidget::interior_focus defaults to TRUE.)
4110
4111         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
4112
4113 2001-04-30  Havoc Pennington  <hp@pobox.com>
4114
4115         * tests/testtext.c (line_numbers_expose): fix to work with
4116         gtk_paint_layout change
4117
4118 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4119
4120         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
4121           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
4122           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
4123           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
4124
4125         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
4126           with GtkWidget::interior_focus = TRUE better.
4127
4128         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
4129         ::default_outside_border for more flexibility.
4130
4131         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
4132         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
4133         change that had to be made with g_object_get.
4134
4135 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
4136
4137         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
4138         (gtk_tree_view_move_column_after): Clean up interface. 
4139
4140 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
4141
4142         * gtk/gtkpacker.h:
4143         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
4144          to gtkenum.h.
4145
4146         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
4147         handled in switch).
4148
4149         * gtk/Makefile.am:
4150         (gtk.defs): generate enum portions with  glib-mkenums.
4151         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
4152         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
4153         
4154         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
4155         addition.
4156
4157         * docs/Changes-2.0.txt: keep a note on signal handlers now
4158         not getting emitted during the emission they were connected within.
4159
4160 2001-04-28  Havoc Pennington  <hp@pobox.com>
4161
4162         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
4163
4164 2001-04-24  Havoc Pennington  <hp@redhat.com>
4165
4166         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
4167         (gtk_text_layout_move_iter_to_next_line): fix these two for
4168         invisible text, lots of other stuff still hosed.
4169
4170         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4171         new function, replaces the get/set palette stuff. This function 
4172         is intended for use by libgnomeui which should set the hook to a
4173         thing which sets the palette in GConf, and we need the
4174         GConf-to-xsettings proxy which will result in the change being
4175         propagated back to the GTK app.
4176
4177         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
4178         about unusable signals that it may be because the signal has 
4179         parameters.
4180
4181         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
4182         style, otherwise gtkrc.c won't know to create a new GtkStyle for
4183         it.
4184         (gtk_widget_modify_color_component): call
4185         gtk_widget_modify_style() so the rc style will get copied.
4186         (gtk_widget_modify_font): ditto
4187
4188         * gtk/gtkrc.c: make a couple variables static
4189
4190         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
4191         help button by default, since it does nothing
4192
4193         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
4194         around with UI
4195
4196         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
4197         so we can have tooltips
4198
4199         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
4200         can have tooltips
4201
4202         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
4203         GDK_ENABLE_BROKEN, because its memory behavior is completely
4204         hosed.
4205
4206         * gtk/gtknotebook.c: remove key press handler, replace with
4207         binding set, add numeric keypad support
4208
4209         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
4210
4211         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
4212
4213         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
4214         addition to plain Delete
4215
4216         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
4217         GDK_KP_Enter in addition to GDK_Return
4218
4219         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
4220         activate on entry instead of key press
4221         (gtk_font_selection_on_clist_key_press): get
4222         rid of this signal handler, not needed with new font sel.
4223
4224         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
4225         no-longer-needed emit_stop_by_name(), just return TRUE
4226
4227         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
4228         cruft, this widget is no longer focusable.
4229
4230         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
4231         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
4232         move_slider action signal, add binding set for vscale/hscale, in
4233         the process support numeric keypad
4234
4235         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
4236         make GDK_Return and GDK_KP_Enter activate the entry via 
4237         binding set, instead of hardcoded.
4238
4239 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
4240
4241         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
4242         code.  Some documentation added.
4243
4244 2001-04-27  Havoc Pennington  <hp@redhat.com>
4245
4246         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
4247
4248         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
4249
4250         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
4251         line/para separators
4252         (gtk_entry_create_layout): set single paragraph mode on the layout
4253
4254         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
4255         spacing between the image and label; instead, inside a button box 
4256         the button will get extra space that will go there, but if people 
4257         configure button box for 0 chubbiness, then there's no spacing.
4258
4259         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
4260         and min/max size style properties, so people can tune their
4261         chubbiness.
4262
4263         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
4264         functions
4265
4266         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
4267         space_style, and button_relief into style properties, remove
4268         functions for setting them
4269         
4270         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
4271         it back down
4272
4273         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
4274         types from gtk_widget_style_get
4275
4276         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
4277         with a style property.
4278
4279         * gdk/x11/gdkevents-x11.c: namespace the settings
4280
4281         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
4282
4283         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
4284         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
4285         be used. Also, translate doc strings for settings. Also, namespace
4286         the double-click-time property. Also, remove bell properties crap.
4287
4288 2001-04-27  Sven Neumann  <sven@gimp.org>
4289
4290         * Makefile.am: before creating links, check if pkg-config files
4291         exist for the default target. Otherwise link to the pkg-config files
4292         that got installed with this build.
4293
4294 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
4295
4296         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
4297         dragging code.  Revealed some (potential) GdkWindow bugs.
4298
4299         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
4300         _gdk_window_init_position to the end of reparent to fix the case
4301         of reparenting when new_x != old_x and new_y != old_y.
4302
4303 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
4304
4305         * gtk/gtkentry.c (strstr_len): Fix optimization that
4306         was correct for the use here, but completely incorrect
4307         in general.
4308
4309 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
4310
4311         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
4312         until patch adding gtk_window_set_size() is recommitted. 
4313
4314         * **Makefile.am configure.in gdk/x11/gdkim-11.c
4315           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
4316           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
4317           (#10784)
4318
4319 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
4320
4321         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4322         window == NULL in a number of cases.
4323
4324         * tests/testdnd.c: Set module path for gdk-pixbuf.
4325
4326 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
4327
4328         * gtk/Makefile.am xembed.h: File containing #defines
4329         for XEMBED protocol.
4330
4331         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
4332
4333         - Change protocol from old plug/socket specific protocol
4334           to XEMBED draft
4335         - Various fixes to work with GTK+-2.0
4336
4337         Still quite a bit of work to do here to handle initiation
4338         from the socket side (as specified by XEMBED), to handle
4339         the more advanced features of XEMBED, and to figure out
4340         a good way to handle same-app embedding with less overhead
4341         than using full XEMBED.
4342
4343 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
4344
4345         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
4346         track of whether the toplevel has the focus; only send
4347         focus-in events to the focus widget when the window
4348         actually has the focus.
4349
4350 2001-04-25  Havoc Pennington  <hp@pobox.com>
4351
4352         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
4353         were still in the header
4354
4355 2001-04-24  Alexander Larsson  <alexl@redhat.com>
4356
4357         * gtk/gtkclist.[ch]:
4358         * gtk/gtkctree.c:
4359         When there is a row highlighted for D'n'D it must alse
4360         be painted hightlighted on exposes. Otherwise exposes from
4361         the icon being dragged will mess up the hightlight.
4362
4363         * gtk/gtkfontsel.c:
4364         Don't recenter selected font when exposing the font family
4365         clist. This means you can now actually scroll the font family
4366         list.
4367
4368         * gtk/gtknotebook.c:
4369         Fix focus movement on scrolling tabs that are placed on the left
4370         and right.
4371
4372 2001-04-21  Havoc Pennington  <hp@pobox.com>
4373
4374         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
4375         empty/invisible lines.
4376
4377         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
4378         (gtk_text_iter_set_visible_line_index): new functions to set
4379         indexes excluding invisible text
4380
4381         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
4382         index
4383
4384         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
4385         (gtk_text_iter_get_visible_line_offset): new functions to 
4386         get indexes excluding invisible text
4387
4388         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
4389         bunch of extra padding that served no purpose
4390
4391         * gtk/gtkdialog.c: Make all the spacings configurable via style
4392         properties, for chubbiness configuration in themes
4393
4394         * tests/testtext.c: fix path to the immodules.
4395         
4396 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
4397
4398         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
4399         got munched by #endif.
4400
4401         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
4402
4403         * gtk/gtktreeview.c: Refactored code to clean up a number of
4404         events.
4405
4406         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
4407         values to make consistent with other functions.  Spotted by Jeff
4408         Franks <jcf@tpg.com.au>.
4409
4410         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
4411         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
4412
4413 2001-04-23  Sven Neumann  <sven@gimp.org>
4414
4415         * gtk/Makefile.am
4416         * gtk/gtkplug.c
4417         * gtk/gtksocket.c: on request of Owen, reverted my last change 
4418         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
4419
4420 2001-04-23  Sven Neumann  <sven@gimp.org>
4421
4422         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
4423         compile for non-X11 targets again
4424
4425 2001-04-20  Alexander Larsson  <alexl@redhat.com>
4426
4427         * gtk/gtkcolorsel.[ch]:
4428         API Change. Take GdkColor arguments instead of gdouble *.
4429         Leave the old gtk_color_selection_set_color for compatibility,
4430         but marked deprecated.
4431         Do correct rounding when converting RGB <-> HSV.
4432         
4433         * gtk/gtkcolorseldialog.c:
4434         * tests/testgtk.c:
4435         Use new GtkColorSelection API.
4436
4437         * gtk/gtkhsv.c:
4438         Fix problem selecting colors in triangle when Hue is 330.
4439         Fix some black dots around the HSB triangle.
4440         
4441         * gtk/gtkfilesel.c:
4442         return FALSE from the focus_in_event handler to fix focus problems.
4443
4444 2001-04-18  Havoc Pennington  <hp@redhat.com>
4445
4446         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
4447         set, so keybindings are configurable    
4448         (gtk_window_activate_default): Change to activate the focus widget
4449         instead if there's a focus widget, to be consistent with the
4450         behavior that previously existed in key_press_event
4451
4452 2001-04-18  Havoc Pennington  <hp@redhat.com>
4453
4454         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
4455
4456 2001-04-18  Havoc Pennington  <hp@redhat.com>
4457
4458         Close bug #50615:
4459         
4460         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4461         the layout
4462
4463         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4464
4465         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4466
4467         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4468         
4469         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4470         to blue for base, in addition to bg
4471         
4472 2001-04-18  Havoc Pennington  <hp@redhat.com>
4473
4474         * tests/testgtk.c (create_image): allow shrinking the image window
4475         to test that we clip to allocation.
4476
4477         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4478         #9845
4479
4480         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4481
4482 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4483
4484         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4485         mode on shm segments to 0600. We'll see who complains.
4486
4487         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4488         _gdk_windowing_window_destroy() AFTER recursing through
4489         children.
4490
4491         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4492         testsocket_child on X.
4493
4494         * tests/testsocket[_child].c: Fix uses of
4495         gtk_window_get_default_accel_group().
4496
4497         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4498
4499         * gdk/gdkimage.c: (gdk_image_get):
4500         Deal with the possibility that XGetImage() might return NULL.
4501         Allocate the GdkImagePrivate structure only after XGetImage()
4502         succeeds in order not to dereference a NULL ximage pointer.  This
4503         prevents a core dump when XGetImage() fails - which is unlikely,
4504         but can happen due to race conditions accessing the geometries of
4505         drawables.  An x error will still be triggered, but the gdk image
4506         wrapper at least wont seg fault.
4507         
4508 2001-04-18  Havoc Pennington  <hp@redhat.com>
4509
4510         * gtk/gtkimage.c: fix to properly queue resizes when the image is
4511         set
4512
4513         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
4514         if the insertion point isn't editable
4515
4516         * demos/gtk-demo/images.c: Added a GtkImage demo
4517
4518         * demos/gtk-demo/drawingarea.c: drawing area demo
4519         
4520         * demos/gtk-demo/menus.c (create_menu): cleanups
4521
4522 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
4523
4524         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
4525           gdk/x11/gdkevents-x11.c: Introduce an extra child
4526         of toplevel windows that serves to hold the focus to
4527         avoid events being delivered to embedded windows.
4528
4529         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
4530         some extra variables to clean up code and reduce the
4531         number of casts.
4532
4533         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
4534         guint for 1 bit bit fields, not gboolean.
4535
4536 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
4537
4538         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4539         not TRUE. (Fixes #52925)
4540
4541 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
4542
4543         * Released 1.3.4
4544
4545         * NEWS: Updated
4546
4547         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
4548         use GTK_TYPE_ENUM.
4549
4550 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
4551
4552         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4553
4554         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
4555         names to compatibility #defines so docs work.
4556
4557         * gtk/gtkenums.h: Remove GtkMenuFactoryType
4558
4559         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
4560
4561         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4562
4563         * tests/testgtkrc: No magenta cursors, please.
4564
4565         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
4566
4567         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
4568         
4569 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
4570
4571         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
4572         grabs, since they are no longer necessary.
4573
4574         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
4575         by signal_connect() and call gtk_button_pressed() rather
4576         than signal_connect_after().
4577
4578         * tests/testgtk.c: Restore radio menu items to combos 
4579         since they'll look OK with Raleigh, and it is easier
4580         than finishing the process of removing them that was
4581         started earlier.
4582
4583 2001-04-16  Hans Breuer  <hans@breuer.org>
4584
4585         * gdk/gdk.def :
4586         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
4587
4588         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
4589         we are interested in the functions return value not the function address
4590         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
4591
4592         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
4593
4594 2001-04-14  Hans Breuer  <hans@breuer.org>
4595
4596         * gdk/gdk.def :
4597         * gdk/makefile.msc : updated
4598
4599         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
4600         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
4601         (the testgtk::text backgound pixmap is drawn again)
4602         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
4603         Win32 Pango change
4604         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
4605
4606         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
4607         Not sure if the returned settings have the right unit, because I couldn't
4608         find any docs for the X version ...
4609
4610         * gtk/gtk.def :
4611         * gtk/makefile.msc.in : updated
4612
4613 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
4614
4615         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
4616         wording problems. (Compared to version from Johannes Stezenbach to
4617         check correctness.)
4618
4619 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
4620
4621         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
4622         this to compile.
4623
4624 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
4625
4626         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
4627         not pixbufpos.
4628
4629         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
4630
4631         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
4632         are unsigned insts, therefore use g_value_set_uint.
4633         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
4634
4635 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
4636
4637         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
4638
4639         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
4640         GTK_TYPE_STRING.
4641
4642         * gtk/gtktreeview.c: New functions to allow initial column
4643         dragging work.
4644
4645         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
4646
4647         * tests/testtreefocus.c: give dave some love.
4648
4649         * tests/testtreesort.c: Modify test to check really long samples.
4650
4651 2001-04-11  Alexander Larsson  <alexl@redhat.com>
4652
4653         * gtk-2.0.m4: Pass pkg-config options
4654         before the other args so it works even if
4655         POSIXLY_CORRECT is set.
4656
4657 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
4658
4659         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
4660         0, interface 0).
4661
4662 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
4663
4664         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4665         check for action_func != NULL
4666
4667 2001-04-04  Sven Neumann  <sven@gimp.org>
4668
4669         * tests/testgtk.c (test_init): corrected path to gtk.immodules
4670
4671 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
4672
4673         * Released Gtk+-1.3.3.
4674
4675 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
4676
4677         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
4678
4679 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
4680
4681         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
4682         files to/from source dir. (if we don't stay in builddir, we
4683         can't reach make-inline-pixbuf.
4684
4685         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
4686         deps.
4687
4688         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
4689         ages 0).
4690
4691 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
4692
4693         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
4694         moved to the GtkTreeSortable interface.
4695
4696         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4697         Make more efficient (fixes #50262).
4698
4699 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
4700
4701         * NEWS: Updated.
4702
4703         * configure.in: Remove support for uninstalled glib.
4704
4705         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
4706         so as not to stop emission.
4707
4708         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
4709         is no longer supported.
4710
4711         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4712         into tests, change build order to build modules before
4713         gtk/.
4714
4715         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4716         to here.
4717
4718 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4719
4720         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4721         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4722         GPatternSpec. this is actually unlikely to cause breakage in
4723         third-party apps since except for gle, pretty much ever caller
4724         passes NULL here.
4725
4726         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4727
4728         * *.c: use g_pattern_*() API.
4729
4730         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4731
4732         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4733         directions aren't passed in.
4734
4735         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4736         functionality to be usable from gtkstyle.c as well, give precedence
4737         for conversion to user-supplied parsers.
4738         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4739
4740         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4741         _gtk_settings_parse_convert() for rcporperty value conversion.
4742
4743 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4744
4745         * gdk/linux-fb/gdkevents-fb.c:
4746         Add empty gdk_setting_get().
4747
4748 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4749
4750         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4751         variable names.
4752         
4753         * gtk/makeenums.pl: touch this so enum files get remade.
4754
4755 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4756
4757         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4758         work again when not sorted.
4759
4760         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4761         and "expand_row" signal, closing bug 52578.
4762
4763         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4764         support.
4765
4766         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4767         support.
4768
4769 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4770
4771         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4772         of changes to system settings, gdk_setting_get() to retrieve
4773         a single system setting.
4774
4775         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4776         to the draft XSETTINGS mechanism.
4777
4778         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4779         XSETTINGS.
4780
4781         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4782         of GDK settings changes to the GtkSettings object.
4783
4784         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4785         double-click-timeout property to GDK.
4786
4787         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4788         Define GDK boxed types here.
4789
4790         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4791         gdk/gdkenumtypes.[ch] for enum definitions.
4792
4793         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4794         * gtk/gtk-boxed.defs: Comment out GDK types
4795         * gtk/gtktypeutils.h: Remove GDK types
4796         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4797
4798 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4799
4800         * Applied patch from Ron Steinke to add signal accumulators
4801         so that signals with the convention 'TRUE return means
4802         handled' stop emission on a TRUE return.
4803
4804         * gtk/gtkmain.[ch]: Add private accumulator 
4805         _gtk_boolean_handled_accumulator, used throughout GTK+.
4806         
4807         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4808
4809         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4810         
4811         * gtk/gtkwidget.c: Add accumulators for event signals,
4812         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4813         for ::mnemonic-activate.
4814
4815         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4816
4817 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4818
4819         * gtk/gtkwidget.c: Add missing include.
4820
4821 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4822
4823         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4824         marshaller.
4825
4826         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4827         "changed" signal to "range_changed".
4828
4829         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4830         removing a tree from one model would remove all trees from that
4831         model.
4832         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4833         changed signal instead.
4834
4835 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4836
4837         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4838         chaining up to parent impl, since we have a INPUT_ONLY
4839         window.
4840
4841         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4842         foreground color for the cursor.
4843
4844 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4845
4846         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4847         param spec when caching property values, since we unref it
4848         later when we free the style.
4849
4850         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4851         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4852
4853 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4854
4855         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4856         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4857         stupidity.
4858
4859 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4860
4861         [ First pass at adding style properties. Still needs some definite
4862         fine-tuning. ]
4863
4864         * gtk/gtkbutton.c: Add ::default_spacing style property.
4865          
4866         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4867         ::indicator_spacing style properties.
4868
4869         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4870         style properties.
4871
4872         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4873         rather than a normal property.
4874
4875         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4876         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4877
4878         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4879         Honor ::interior_focus.
4880         
4881         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4882         TRUE.
4883
4884         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4885         Add ::slider_width, ::trough_border, ::stepper_size,
4886         ::stepper_spacing style properties.
4887
4888         * gtk/gtkscale.[ch] Add ::slider-length style property.
4889
4890 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4891
4892         * gdk/linux-fb/gdkwindow-fb.c:
4893         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4894         warnings that were spewed on startup.
4895
4896         * gtk/gtkwindow-decorate.c:
4897         gtk_window_reposition -> _gtk_window_reposition
4898
4899 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4900
4901         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4902         Add boxed type for GtkRequistion. Use it for ::size-request.
4903
4904         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4905         Add a new GtkBorder structure useful for geometry properties
4906         for widgets. Add corresponding GTK_TYPE_BORDER.
4907         
4908         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4909         Support automatic parser selection like
4910         gtk_settings_install_property_parser().
4911
4912         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4913         functionality for use by gtk_widget_class_install_style_property.
4914         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4915
4916 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4917
4918         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4919         g_param_spec_unichar(). 
4920
4921 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4922
4923         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4924         _NET window managers.
4925
4926         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4927
4928 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4929
4930         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4931         bad needs to be nuked, not just deprecated.
4932
4933         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4934         gtk_widget_popup().
4935
4936         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4937         
4938         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4939         widget.
4940         
4941         * docs/Changes-2.0.txt: updates.
4942         
4943 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4944
4945         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4946         for (i = 0; i < 100; i ++)
4947           g_print ("I will confirm it compile before committing\n");
4948
4949 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4950
4951         * gtk/gtktreestore.c: Initial work on implementing the
4952         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4953
4954 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4955
4956         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4957         reference counts around emissions where the widget is used afterwards.
4958         added freeze/thaws around multiple properties being notified.
4959         (_gtk_widget_get_aux_info): cleanups.
4960         
4961         * gtk/gtksettings.c (gtk_settings_install_property): provide
4962         default parsing functions for gdkcolor, enums and flags.
4963
4964         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4965         applied by owen.
4966         backed out gtk_window_get_location(), gtk_window_set_location(),
4967         gtk_window_get_size() and gtk_window_set_size(), these
4968         have to be sorted out wrg x/y/width/height/default_with/default_height
4969         properties.
4970         kept a flag in GtkWindowGeometryInfo to handle user
4971         resetting default sizes.
4972         cleaned up ZVT comments.
4973         bunch of assorted bug fixes, notification fixes.
4974         (_gtk_window_reposition): make this a really internal function.
4975         
4976         * gtk/testgtk.c: fixups.
4977         
4978 2001-03-31  Hans Breuer  <hans@breuer.org>
4979
4980         * config.h.win32.in : disable USE_MMX for msvc build cause
4981         the assembler doesn't fit and is out of my scope. Disable
4982         USE_GMODULE for msvc build as wel. The right way to share
4983         binaries on win32 would be to use libtiff.dll etc. To reduce
4984         installation hassles IMO it's better to include all fileformats
4985         builtin to gdk-pixbuf
4986
4987         * gdk-pixbuf/makefile.msc : new file
4988
4989         * gdk/gdk.def : updated
4990
4991         * gdk/win32/gdkevents-win32.c : don't erase the background if
4992         .no_bg is set. It improves the scrolling (e.g. of testgtk main
4993         buttons
4994         * gdk/win32/gdkgeometry-win32.c : added comment about the above
4995
4996         * gdk/win32/gdkwindow-win32.c : added three new functions like
4997         the X version. Only one is implemented, because the other two
4998         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
4999         be default behaviour on win32 anyway ...
5000
5001         * gtk/gtk.def : updated
5002
5003         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
5004         from where it was built and add an additional rule to automagically
5005         build gtkmarshal.[hc]
5006
5007         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
5008         before array access for the current entry isn't finished
5009
5010         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
5011         use g_return_val_if_fail
5012
5013         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
5014         for the static array, but let the compiler calculate it. It
5015         makes me wonder if gcc isn't capable to catch bugs like this ...
5016
5017 2001-03-31  James Henstridge  <james@daa.com.au>
5018
5019         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
5020         constant "-1" in the aux info structure.
5021
5022 2001-03-30  Alexander Larsson  <alexl@redhat.com>
5023
5024         * gtk/gtkbutton.c (gtk_button_get_property):
5025         * gtk/gtklabel.c:
5026         Remove leaks.
5027         
5028         * gtk/gtkcontainer.c:
5029         * gtk/gtkhscale.c:
5030         * gtk/gtkhscrollbar.c:
5031         * gtk/gtklayout.c:
5032         * gtk/gtkmisc.c:
5033         * gtk/gtkprogress.c:
5034         * gtk/gtkprogressbar.c:
5035         * gtk/gtkrange.c:
5036         * gtk/gtktable.c:
5037         * gtk/gtkviewport.c:
5038         * gtk/gtkvscale.c:
5039         * gtk/gtkvscrollbar.c:
5040         * gtk/gtkwidget.c:
5041         Property patches, based on patches from John Margaglione and Lee Mallabone.
5042
5043 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
5044
5045         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
5046         adjustment. Cleaned redundant preconditions (spin != NULL). Added
5047         inline API function docs.
5048         (gtk_spin_button_new_with_range): New convenience constructor.
5049         (gtk_spin_button_set_increments): New adjustment helper.
5050         (gtk_spin_button_set_range): New adjustment helper.
5051
5052         * gtk/testgtk.c : added test of the new convenince constructor and
5053         value_changed signals.
5054
5055 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
5056
5057         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
5058         listen to the reorder signal.
5059
5060 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
5061
5062         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
5063         to get the aux info structure fo the widget.
5064
5065         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
5066         above function.
5067
5068         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
5069
5070         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
5071         to get the size of the window manager frame, basically the same
5072         code that gdk_window_get_root_origin() had
5073         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
5074
5075         * gtk/gtkwindow.c (gtk_window_set_default_size): use
5076         gdk_window_resize() if the window is realized and resizeable
5077
5078         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
5079         typo so that setting gravity works
5080
5081         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
5082         allocation if auto_shrink is on, even if the default size
5083         has not changed.
5084
5085         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
5086         g_return_if_fail
5087
5088 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
5089
5090         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
5091         reordering/sorting work.  Now pretty much works.
5092
5093         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
5094         reorder mostly work.  Still need to get the parity correct.
5095
5096         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
5097         signal, so I can listen for the sort_column_changed signal so I
5098         can change my "sort_indicator" property.  Cool.
5099
5100 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
5101
5102         [ Patch from Havoc Pennington, hp@redhat.com ]
5103
5104         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
5105         Add functions gdk_window_begin_resize_drag/begin_move_drag
5106         to start resizing or moving a toplevel window. This
5107         is done either using the _NET_WM_MOVERESIZE protocol,
5108         or, if that isn't present, by emulation.
5109
5110         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
5111         to export the above to GTK+-land.
5112
5113         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
5114         
5115         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
5116         Move this function into gdkwindow, since we need it
5117         when implementing fallback resizing.
5118
5119         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
5120         Fix typo when setting gravity.
5121
5122         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
5123         Add an optional (but on by default) resize grip for resizing 
5124         the parent window.
5125
5126 01-03-29  Alexander Larsson  <alexl@redhat.com>
5127
5128         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
5129         Don't return TRUE from the event handler, that blocks all
5130         event signals on the tooltip widget. Now you can press buttons
5131         in toolbars again.
5132
5133 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
5134
5135         * gtk/testtext.c (create_buffer): Add missing NULL on
5136         valist.
5137
5138         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
5139         c-n-p problem with INCONSISTENT property.
5140
5141         [ Patch from Havoc Pennington  <hp@redhat.com> ]
5142
5143         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
5144         hook.
5145
5146         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
5147         signal as a hook for extending the default popup menu
5148
5149         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5150         use radio menu items for the input method menuitems
5151
5152         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
5153         inserted unicode from Ctrl-Shift-hex input method
5154
5155         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
5156         validatation here, already done at GtkTextBuffer level.
5157
5158         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
5159         popup_menu run action signal and Shift+F10 and Menu keybindings.
5160
5161         * gtk/gtkentry.c: implement a default handler for popup_menu
5162
5163         * gtk/gtktextview.c: implement a default handler for popup_menu
5164
5165         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
5166         from a key event
5167         
5168         * gtk/gtklabel.c: remove "trailer" cruft
5169
5170 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
5171
5172         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
5173         handle reordering of trees.  Seems to mostly work w/ the exception
5174         of the parity flag.
5175
5176         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
5177         signal.
5178
5179 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
5180
5181         * gtk/gtkwidget.h: c++ fixes.
5182
5183 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
5184
5185         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
5186         memory.
5187
5188 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
5189
5190         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
5191         Nils Barth fixing event return values. (#51041)
5192
5193         * gtk/gtkwidget.c: Fix some return values for default
5194         functions.
5195
5196         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
5197         return values for trough_keys functions.
5198
5199         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
5200         value for add_accelerator (shoudl have been a void
5201         return.)
5202
5203         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
5204         Fix return type of EVENT.
5205
5206         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
5207         signal return a boolean.
5208
5209 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
5210
5211         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
5212         reordered signal.
5213
5214         * tests/testtreesort.c (main): fix spelling.
5215
5216 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
5217
5218         * gtk/gtkliststore.c: More work on implementing sortable
5219         interface.
5220
5221 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
5222
5223         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
5224         reference the widgets in the resulting list. (#11821)
5225         This makes this consistent with gtk_container_children.
5226
5227         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
5228         uses of gtk_window_list_toplevels.
5229
5230 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
5231
5232         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
5233         a virtual function to set whether the IM context should use 
5234         the preedit string. (#51922)
5235         
5236 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
5237
5238         * gdk/gdkpango.h: Remove stale FIXME comment.
5239
5240 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
5241
5242         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
5243         Fixed bug that returned NULL if a filename was selected.
5244
5245 2001-03-24  Havoc Pennington  <hp@pobox.com>
5246
5247         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
5248         to contain the word "theme"
5249
5250 2001-03-24  Havoc Pennington  <hp@pobox.com>
5251
5252         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
5253         slower but finer-grained
5254         (gtk_hsv_focus): get initial focus on the ring or triangle 
5255         according to tab direction
5256
5257         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
5258
5259 2001-03-23  Havoc Pennington  <hp@pobox.com>
5260
5261         * gtk/gtkhsv.c: make this somewhat key-navigable
5262
5263         * gtk/gtkfontsel.c: mnemonics
5264
5265         * gtk/gtkgamma.c: mnemonics
5266
5267         * gtk/gtkcolorsel.c: add mnemonics to labels
5268
5269 2001-03-22  Havoc Pennington  <hp@pobox.com>
5270
5271         Applied big patch from Seth Lytle to fix event handler return
5272         values, slightly modified.
5273
5274         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
5275         handled.
5276         (gtk_calendar_key_press): return TRUE for GDK_space triggers
5277         select_day
5278
5279         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
5280         (gtk_clist_button_release): return TRUE if handled
5281
5282         * gtk/gtkcolorsel.c (mouse_release):
5283         (palette_activate): 
5284         (palette_press): 
5285         (palette_new): 
5286         (mouse_press): 
5287         (get_screen_color): 
5288         fixed return type (void to gboolean), return TRUE,
5289         added GTK_SIGNAL_FUNC cast
5290
5291         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
5292         (void to gboolean), and return TRUE
5293         (gtk_combo_button_release): changed return value to TRUE after
5294         gtk_grab_add on combo->popwin
5295
5296         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
5297         collapse or expand
5298
5299         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
5300         button/motion
5301
5302         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
5303         press/release and motion that trigger act
5304
5305         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
5306
5307         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
5308         for GDK_Return
5309         
5310         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
5311         (gtk_list_button_release): return TRUE if selection
5312
5313         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
5314         press
5315
5316         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
5317         (gtk_menu_shell_button_release): chain parent_menu_shell retval
5318
5319         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
5320         nothing triggered
5321         (gtk_notebook_button_release): return TRUE if we do anything
5322
5323         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
5324         (gtk_spin_button_button_release): return TRUE or chained retval
5325
5326         * gtk/gtktext.c (gtk_text_button_press): 
5327         (gtk_text_button_release): return TRUE
5328         (gtk_text_key_press): remove redundant retval code
5329         
5330         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
5331         and sensitive
5332         (gtk_tree_item_subtree_button_click): changed type to gint, and return
5333         TRUE if sensitive
5334
5335         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
5336         return TRUE
5337
5338 2001-03-23  Havoc Pennington  <hp@redhat.com>
5339
5340         * gtk/testgtk.c: fix warnings
5341
5342         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
5343
5344         * gtk/gtktextview.c: fix warnings
5345
5346         * gtk/gtktext.c (find_cursor_at_line): fix warning
5347
5348         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
5349
5350         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
5351         of this function
5352
5353         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5354         fix warning
5355
5356         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
5357
5358         * gtk/gtkfontsel.c: fix warning
5359
5360         * gtk/gtkcolorsel.c: fix warnings
5361
5362 2001-03-23  Havoc Pennington  <hp@redhat.com>
5363
5364         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
5365
5366         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
5367
5368         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
5369         and deprecated gtk_check_menu_item_set_show_toggle().
5370         
5371         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
5372
5373         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
5374
5375         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
5376
5377 2001-03-23  Havoc Pennington  <hp@redhat.com>
5378
5379         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
5380         some docs
5381
5382 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
5383
5384         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
5385         this.
5386
5387         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
5388         set_cell to set_value
5389
5390         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
5391         set_cell to set_value
5392
5393 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
5394
5395         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5396         fix braino.
5397         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
5398         support.
5399
5400         * gtk/gtktreeview.c: Addition of initial sortable support.
5401
5402         * gtk/gtktreestore.c: Addition of initial sortable support.
5403
5404         * gtk/gtkliststore.c: Addition of initial sortable support.
5405
5406         * gtk/gtkmarshal.list: yet another marshaller.
5407
5408         * gtk/gtktreedatallist.[ch]: shared code between the store models
5409         for handling sorting headers.
5410
5411 2001-03-22  Havoc Pennington  <hp@redhat.com>
5412
5413         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
5414         (gtk_container_unset_focus_chain): Add ability to override the 
5415         focus chain for a container explicitly
5416
5417 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
5418
5419         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
5420         added PROP_MNEMONIC_WIDGET.
5421
5422         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
5423         (gtk_window_remove_mnemonic): 
5424         (gtk_window_add_mnemonic): fixed assertions.
5425         (gtk_window_activate_mnemonic): constrain modifier checks to those
5426         permitted by gtk_accelerator_get_default_mod_mask().
5427         got rid of gtk_window_get_default_accel_group().
5428
5429         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
5430         activatable widgets either by focussing or a warning.
5431         added a signal accumulator to ::activate_mnemonic which stops the
5432         emission once a handler returned TRUE.
5433
5434 2001-03-22  Havoc Pennington  <hp@pobox.com>
5435
5436         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
5437         the stock item label
5438
5439         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
5440
5441         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
5442
5443         * demos/gtk-demo/*.c: Add mnemonics all over the place
5444
5445         * gtk/gtklabel.h: mark parse_uline deprecated
5446
5447 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5448
5449         * gtk/gtkitemfactory.[ch]:
5450         Add support for stock and normal imagemenuitems.
5451         
5452         * gtk/testgtk.c:
5453         Add some tests for mnemonics, stock toolbars, stock
5454         and image menuitems in itemfactory and gdk_window_scroll.
5455
5456 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5457
5458         * gtk/gtkbutton.[ch]:
5459         * gtk/gtkdialog.c:
5460         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5461         removed accel_group argument. Renamed gtk_button_new_accel() to
5462         gtk_button_new_with_mnemonic() and removed accel_group argument.
5463
5464         * gtk/gtkcheckbutton.[ch]:
5465         New function gtk_check_button_new_with_mnemonic().
5466
5467         * gtk/gtkentry.c:
5468         Override activate_mnemonic and just grab focus.
5469
5470         * gtk/gtkitemfactory.c:
5471         Don't add menu uline accel group, instead use mnemonics support.
5472
5473         * gtk/gtklabel.[ch]:
5474         New support for mnemonics.
5475
5476         * gtk/gtkmarshal.list:
5477         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5478
5479         * gtk/gtkmenu.[c]:
5480         * gtkmenushell.c:
5481         Use mnemonics instead of accel groups for uline
5482         support in menu items.
5483         Removed gtk_menu_get_uline_accel_group() and
5484         gtk_menu_ensure_uline_accel_group().
5485
5486         * gtk/gtkmenuitem.c:
5487         Override activate_mnemonic to handle switching between
5488         menu items if there are collisions.
5489         
5490         * gtk/gtknotebook.c:
5491         Connect to activate_mnemonic on the tab_label, so that
5492         activating it switches to that notebook page.
5493
5494         * gtk/gtkwidget.[ch]:
5495         Add activate_mnemonic signal. New function
5496         gtk_widget_activate_mnemonic() to emit it.
5497         Default implementation does activate/grab_focus.
5498
5499         * gtk/gtkwindow.[ch]:
5500         Add support for mnemonics in windows.
5501         New functions:
5502         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
5503         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
5504
5505         * gtk/testgtk.c:
5506         Update to function name changes.
5507         
5508 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5509
5510         * gtk/gtkimagemenuitem.[c]:
5511         Add gtk_image_menu_item_new_from_stock()
5512
5513 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
5514
5515         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5516         Fix buglet in meeting.
5517
5518 2001-03-19  Havoc Pennington  <hp@redhat.com>
5519
5520         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
5521         add a bunch of accessor functions. This is because we have
5522         reasonable expectations of extending what fields it contains in
5523         the future.
5524
5525         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
5526         changes
5527
5528         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
5529         GtkIconSource   
5530
5531 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
5532
5533         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
5534         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
5535
5536         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
5537           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
5538           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
5539           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
5540         Change float to double everywhere with the exception of 0<->1.0 alignment
5541         and GtkCurve.
5542
5543 2001-03-19  Tor Lillqvist  <tml@iki.fi>
5544
5545         * gdk/win32/gdkdrawable-win32.c
5546         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
5547         output.
5548
5549         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
5550         gdkwin32.h.
5551
5552 2001-03-18  Tor Lillqvist  <tml@iki.fi>
5553
5554         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
5555         print_event_state, print_event): Use preprocessor macro to make
5556         code more compact. Print also GDK_WINDOW_STATE events.
5557         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
5558         
5559         * gtk/gtk.def
5560         * gtk/makefile.mingw.in: Update.
5561
5562         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
5563         to catch also Cygwin.
5564
5565 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
5566
5567         * gtk/gtkspinbutton.[hc]: added rc-style argument
5568         GtkSpinButton::shadow_type.
5569         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
5570         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
5571         rc-style settings.
5572
5573         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
5574
5575         * gtk/gtkwidget.c: quark cleanups.
5576
5577         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
5578         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
5579         to create_rc_style() (we don't do cloning in standard OO sense).
5580         added per rc style properties.
5581         
5582         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
5583         property values and for caching those. some cleanups.
5584         
5585         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
5586         
5587         * gtk/gtksettings.[hc]: new file for global rc-file properties
5588         (at least currently, should get extended to support X properties
5589         and other communication mechanisms).
5590         
5591         * gtk/gtkwidget.[hc]: added style property support:
5592         (gtk_widget_class_install_style_property_parser): install style
5593         property pspec with parser function for rc-file values other
5594         than LONG, DOUBLE or STRING.
5595         (gtk_widget_class_install_style_property): same as above without
5596         parser (parsers are going to be needed quite infrequently).
5597         (gtk_widget_style_get_property): retrive style property value.
5598         (gtk_widget_style_get_valist): same as above with varargs support,
5599         has NOCOPY semantics.
5600         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
5601
5602 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
5603
5604         * demos/gtk-demo/main.c (row_activated_cb): modified to use
5605         "row_activated" signal.
5606
5607         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
5608         stupidity.  Lets actually pass in the row with this signal...
5609
5610 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
5611
5612         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
5613
5614         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
5615
5616         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
5617         everything into the ::destroy function, and freed a lot more.
5618
5619 2001-03-16  Havoc Pennington  <hp@redhat.com>
5620
5621         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
5622         instead of gint16, to avoid overflow issues, since sizes > 16-bit
5623         are now allowed.
5624
5625 2001-03-16  Havoc Pennington  <hp@redhat.com>
5626
5627         * Applied patch from Nils Barth (bug # 51041) to 
5628         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
5629         in various places.
5630
5631 2001-03-15  Havoc Pennington  <hp@redhat.com>
5632         
5633         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
5634         for properties to set on the tag.
5635
5636         * gtk/testtext.c: fixups to reflect create_tag change
5637         
5638         * gtk/gtktexttag.c (gtk_text_tag_set_property):
5639         background/foreground stipple are objects, not boxed.
5640
5641         * demos/gtk-demo/textview.c: intellihancing
5642
5643 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
5644
5645         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
5646         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
5647
5648 2001-03-16  Alexander Larsson  <alexl@redhat.com>
5649
5650         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
5651         Fix sign error with queued region translations.
5652
5653 2001-03-15  HideToshi Tajima  <tajima@happy>
5654
5655         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
5656         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
5657         * gtk/gtkentry.c (update_im_cursor_location): 
5658         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
5659         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
5660         set_cursor_pos to set_cursor_location in GtkInputContext class
5661
5662 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
5663
5664         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
5665         the location of the cell relative to its area.
5666         * gtk/gtkcell*: modified for above change
5667         * gtk/gtktreeview.c: modified for above change.
5668
5669 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
5670
5671         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
5672          (gtk_tree_view_finalize): actually unref the model.  Thanks to
5673         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
5674
5675 2001-03-14  Havoc Pennington  <hp@redhat.com>
5676
5677         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
5678         
5679         * gtk/gtk.h: remove gtkdata.h
5680
5681         * gtk/Makefile.am: remove gtkdata
5682         
5683         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
5684         not "disconnect" on the adjustments.
5685         
5686         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
5687         GtkData
5688
5689         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
5690         not GtkData
5691
5692         * configure.in: handle case where X render exists, but Pango lacks
5693         Xft support.
5694
5695 2001-03-15 Alexander Larsson  <alexl@redhat.com>
5696
5697         * gtk/gtktoolbar.[ch]:
5698         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
5699         to add stock items to toolbars.
5700
5701         * gtk/Makefile.am:
5702         Remove ../gdk/gdkim.h from gdk_headers.
5703
5704 2001-03-15  Sven Neumann  <sven@gimp.org>
5705
5706         * gdk/gdkim.h: removed
5707         
5708         * gdk/gdkprivate.h
5709         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
5710
5711 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5712
5713         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5714         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5715         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5716         set_cursor_pos() virtual method
5717
5718         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5719         (gtk_im_context_xim_set_cursor_pos): add implementation for
5720         set_cursor_pos() method
5721
5722         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5723         position to input methods
5724
5725 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5726
5727         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5728         code a lot.
5729
5730         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5731         g_mem_chunk.
5732         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5733         (_gtk_tree_data_list_node_to_value): Fix to switch on
5734         G_TYPE_FUNDAMENTAL.
5735         (_gtk_tree_data_list_value_to_node): Fix to switch on
5736         G_TYPE_FUNDAMENTAL.
5737         (_gtk_tree_data_list_node_copy): Fix to switch on
5738         G_TYPE_FUNDAMENTAL.
5739
5740 2001-03-12  Havoc Pennington  <hp@redhat.com>
5741
5742         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5743         to convert to new property API. Also, change default_width and
5744         default_height get_property to return 0 as the flag value for
5745         "unset"; -1 is not a valid value for these fields.
5746
5747 2001-03-12  Havoc Pennington  <hp@redhat.com>
5748
5749         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5750         enum with registration for icon sizes, instead of strings.
5751
5752         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5753         gtkwidget.c: Fix to reflect GtkIconSize
5754         
5755 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5756
5757         Make GtkFB compile and link.
5758         
5759         * gdk/linux-fb/gdkdrawable-fb2.c:
5760         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5761         
5762         * gdk/linux-fb/gdkwindow-fb.c:
5763         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5764         Added gdk_window_shape_combine_region.
5765         Added assorted placeholders for unimplemented new GdkWindow API calls.
5766
5767 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5768
5769         * gtk/gtkfilesel.c:
5770         Add more test when converting filenames from/to utf-8.
5771         Don't allow entering text in the filename entry which isn't allowed in
5772         a filename. Just beep instead.
5773
5774 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5775
5776         * gtk/gtkclist.c:
5777         Scroll using gdk_window_scroll(). Don't wait for exposes.
5778         Move the column headers in an order that makes them flash less.
5779
5780 2001-03-10  Hans Breuer  <hans@breuer.org>
5781
5782         * gdk/gdk.def : updated
5783
5784         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5785         to offseting the clip_mask at the right place
5786
5787         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5788         for all the gdkClasses, especially not for the input_only case.
5789         Otherwise flickering wont be avoidable, because we don't get
5790         WM_ERASEBKGND message for these windows.
5791
5792         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5793         and fixed massive redraw problems apparently triggered by Alexanders 
5794         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5795         but it seems to work quite well :-)
5796
5797         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5798         prototype
5799
5800 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5801
5802         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5803         (gtk_list_store_set_cell): Fix a stupid typo.
5804
5805 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5806
5807         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5808         select_all not work if you're in SINGLE mode (it doesn't make that
5809         much sense, anyway.)
5810
5811         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5812         handle types more sanely.
5813         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5814         (_gtk_tree_data_list_node_copy): handle types more sanely.
5815
5816         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5817         GValue better. Converts the type as well.
5818
5819         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5820         GValue better. Converts the type as well.
5821
5822 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5823
5824         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5825         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5826         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5827         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5828
5829         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5830         gdk_im/gdk_ic.
5831
5832 2001-03-09  Hans Breuer  <hans@breuer.org>
5833
5834         * gdk/gdk.def : updated
5835
5836         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5837         for their palette
5838
5839         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5840         removing
5841
5842         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5843         removing and implemented Havoc's GdkWindow state functions; 
5844         stick/unstick only as no-op, cause I don't know how to emulate 
5845         on win32 ...
5846
5847         * gtk/gtk.def : updated
5848
5849         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5850
5851         * gtk/gtktypeutils.c : #include <string.h>
5852
5853         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5854
5855 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5856
5857         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5858         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5859         not a boxed.
5860
5861 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5862
5863         * docs/Changes-2.0.txt:
5864         Document expose event->region change and that gtk_widget_event
5865         doesn't allow passing expose events.
5866
5867         * gdk/gdkevents.h:
5868         Add region to expose event.
5869         
5870         * gdk/gdkevents.c:
5871         Handle event->region in gdk_event_copy() and gdk_event_free().
5872
5873         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5874         Generate expose_event->region when creating expose events.
5875
5876         * gdk/x11/gdkevents-x11.c:
5877         Generate expose events with regions when translating X events.
5878
5879         * gtk/gtkcontainer.[ch]:
5880         Default expose handler that propagates expose events to NO_WINDOW
5881         children. New function gtk_container_propagate_expose()
5882
5883         * gtk/gtkwidget.[ch]:
5884         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5885         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5886         expose events. New function gtk_widget_send_expose() to send expose
5887         events. New function gtk_widget_region_intersect() to calculate
5888         window/region intersections.
5889         
5890         * gtk/gtkmain.c (gtk_main_do_event):
5891         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5892         Use gtk_widget_send_expose() to send expose events.
5893         
5894         * gtk/gtkbin.c:
5895         * gtk/gtkbox.c:
5896         * gtk/gtkfixed.c:
5897         * gtk/gtkimagemenuitem.c:
5898         * gtk/gtklist.c:
5899         * gtk/gtkpacker.c:
5900         * gtk/gtktable.c:
5901         * gtk/gtktree.c:
5902         Remove expose handler, using the default container implementation
5903         instead.
5904         
5905         * gtk/gtkbutton.c:
5906         * gtk/gtkcheckbutton.c:
5907         * gtk/gtkeventbox.c:
5908         * gtk/gtkfixed.c:
5909         * gtk/gtkhandlebox.c:
5910         * gtk/gtklayout.c:
5911         * gtk/gtklistitem.c:
5912         * gtk/gtkmenu.c:
5913         * gtk/gtkmenubar.c:
5914         * gtk/gtkmenuitem.c:
5915         * gtk/gtknotebook.c:
5916         * gtk/gtkoptionmenu.c:
5917         * gtk/gtkpaned.c:
5918         * gtk/gtkscrolledwindow.c:
5919         * gtk/gtktogglebutton.c:
5920         * gtk/gtktoolbar.c:
5921         * gtk/gtktreeitem.c:
5922         * gtk/gtkviewport.c:
5923         Chain expose handler to parent class handler. Use
5924         gtk_container_propagate_expose() to propagate exposes.
5925
5926         * gtk/gtkclist.c (check_exposures):
5927         * gtk/gtktext.c (process_exposes):
5928         Use gtk_widget_send_expose instead of gtk_widget_event.
5929
5930 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5931
5932         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5933
5934 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5935
5936         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5937         unref the nodes.   Fixes bug #50058.
5938
5939         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5940         "::ref_iter" to "::ref_node".
5941         (gtk_tree_model_unref_node): change "::unref_iter" to
5942         "::unref_node". Fixes bug #50064.
5943
5944 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5945
5946         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5947         support for invisible cells.
5948          (gtk_tree_view_bin_expose): ditto
5949
5950 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5951
5952         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5953         on gobjects.
5954
5955         * tests/testtreefocus.c (main): New test file.
5956
5957         * tests/testtreeview.c: update to latest glib changes.
5958
5959         * tests/testtreecolumns.c: update to latest glib changes.
5960
5961 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5962
5963         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5964
5965 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5966
5967         * *.c: added accumulator data argument to g_signal_newc()
5968         functions.
5969
5970         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5971         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5972         * gtk/treestoretest.c (make_window):
5973         s/g_signal_connect/g_signal_connectc/.
5974
5975         * gtk/gtktextbuffer.c: completed signal arg fixups,
5976         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5977
5978 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5979
5980         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5981         G_CONST_RETURN.
5982
5983         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5984         ::hierarchy-changed signal when a widget changes
5985         from anchored to unanchored or vice versa.
5986         (anchored means 
5987          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5988         Use a private flag to keep track of this efficiently.
5989
5990 2001-03-07  Havoc Pennington  <hp@redhat.com>
5991
5992         * gtk/testgtk.c (create_spins): uglify so that size request gets
5993         tested.
5994
5995         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
5996         request on values for upper/lower, completes #6152
5997
5998 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
5999
6000         * Makefile.am: Remove gtk-config-2.0 again.
6001         (Grrrr, pkg-config. And stops make loops.)
6002
6003 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
6004
6005         * gtk/gtksignal.[hc]: removed old emission hook API.
6006         
6007         * docs/Changes-2.0.txt: fixed sections.
6008         
6009         * gtk/gtktextbuffer.c: signal arg fixups.
6010
6011 2001-03-07  Havoc Pennington  <hp@redhat.com>
6012
6013         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
6014
6015         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
6016         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
6017         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
6018         validation and the redraw which is higher priority than the
6019         validation.
6020
6021 2001-03-07  Havoc Pennington  <hp@redhat.com>
6022
6023         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
6024         (gtk_entry_set_property): remove trailer
6025
6026         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
6027         (gtk_entry_get_width_chars): new functions, to set size request to 
6028         a given number of characters
6029
6030         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
6031
6032         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
6033         (gtk_dialog_get_has_separator): new function
6034         (run_delete_handler): fix to not emit "response" signal
6035         because we already did in the delete event handler installed
6036         at dialog creation time.
6037         
6038         * gtk/gtkdialog.h: add a has_separator property,
6039         add GTK_DIALOG_NO_SEPARATOR flag
6040
6041 2001-03-07  Havoc Pennington  <hp@redhat.com>
6042
6043         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
6044         off decorations for a window.
6045
6046         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
6047         changes
6048
6049         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
6050         to get location of PangoLayout inside the label, closes #51198
6051
6052         * gtk/testgtk.c (create_bbox): fix up button box usage
6053
6054         * gtk/testcalendar.c (create_calendar): fix up button box usage
6055
6056         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
6057
6058         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
6059
6060         * gtk/gtkhbbox.h: deprecations
6061
6062         * gtk/gtkvbbox.h: deprecations
6063
6064         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
6065         emulate deprecated gtk_button_box_get_spacing
6066
6067         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
6068         the "set global default" functions
6069         (struct _GtkButtonBox): remove "spacing" field, use the one from 
6070         GtkBox base class
6071
6072         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
6073
6074         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
6075         render the icon, return the missing image icon.
6076
6077         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
6078         image icon if the load fails.   
6079
6080         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
6081         when no image is found; should be the Netscape "missing image"
6082         icon eventually but for now is a random image
6083
6084         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
6085         role for the session manager
6086
6087         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
6088
6089         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
6090         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
6091
6092         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
6093
6094 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
6095
6096         * gtk/*.c: marshaller fixes.
6097         
6098         * gtk/gtkmarshal.list: extreme cleanup.
6099
6100         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
6101         param spec for now.
6102
6103         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
6104         where appliable.
6105
6106         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
6107         special cased autogenerated boxed types from gtktypebuiltins_ids.c
6108         which are not reference counted:
6109         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
6110         PangoFontDescription, GtkTreeIter and GtkTreePath.
6111
6112 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
6113
6114         * gtk/gtktreeselection.h: 
6115         * gtk/gtktreemodel.c:
6116         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
6117         file should be included directly, and gobject/gmarshal.h
6118         as well as gtk/gtkmarshal.h even can't be included directly.
6119
6120         * Makefile.am: grr, install gtk-config-2.0.
6121
6122         * gtk/testgtk.c:
6123         * gtk/simple.c:
6124         * gtk/gtkmenu.c:
6125         * gtk/gtkitemfactory.c: use g_object_connect() instead of
6126         passing "*signal*::*" args to gtk_widget_set().
6127         
6128         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
6129         
6130         * gtk/*.c: removed trailer arg from property setters and getters.
6131         macro fixups.
6132
6133 2001-03-07  Alexander Larsson  <alexl@redhat.com>
6134
6135         * gtk/gtklabel.c (set_markup): Removed warning
6136
6137 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
6138
6139         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
6140         field to allow you to hide cell renderers.
6141
6142         * gtk/gtkcellrenderer.c: Add support for invisible cells.
6143
6144         * gtk/gtktreeview.c: Add support for invisible cells.
6145
6146 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
6147
6148         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
6149         Add "clicked" signal back to columns.
6150
6151         * ChangeLog: remove conflict markers.
6152
6153 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
6154
6155         * gtk/gtkbutton.c: Add animation of activation by, on 
6156         activate, pressing the button, and adding a timeout that 
6157         releases the button after 250ms or on key release and
6158         emits ::clicked. (#51501)
6159
6160         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
6161         action area, we connect to ::clicked instead of ::activate
6162         so the dialog stays up through the animation.
6163
6164 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
6165
6166         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
6167         check the ignore_enter flag for the menu shell that
6168         the item is actually a child of, not for attached
6169         submenus. (#51536)
6170
6171 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6172
6173         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6174         special key-press grab handling for widgets within
6175         GtkWindows. Otherwise, fall through to normal case.
6176
6177         This prevents key events being sent twice to GtkInvisible
6178         widgets, which can cause all sorts of mischief.
6179
6180 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6181
6182         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6183         widget is in effect, give the grab widget a first
6184         crack at KEY_PRESS/RELEASE events. (#424)
6185
6186 2001-03-06  James Henstridge  <james@daa.com.au>
6187
6188         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
6189         offset for the window_state_event to point at window_state_event
6190         rather than no_expose_event.
6191
6192 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
6193
6194         * gtk/gtkimmodule.h: fix busted /* comment */
6195
6196 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
6197
6198         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
6199         object properties.
6200
6201 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
6202
6203         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
6204         add object properties.
6205
6206         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
6207         to add object properties.
6208
6209         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
6210         object properties.
6211
6212         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
6213         add object properties.
6214
6215         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
6216         object properties.
6217
6218 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
6219
6220         * gtk/gtktreemodel.c: renamed "child_toggled" to
6221         "has_child_toggled".
6222
6223         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
6224         handle new signal name.
6225
6226         * gtk/gtktreestore.c: Updated to handle new signal name.
6227         * gtk/gtklisttore.c: Updated to handle new signal name.
6228         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
6229
6230 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6231
6232         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
6233         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
6234
6235 2001-03-05  Michael Natterer  <mitch@gimp.org>
6236
6237         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
6238         pixbuf-engine coincidentially also failed to make one of it's
6239         parent_class pointers static, causing overwriting of GtkLabel's
6240         parent_class pointer in pixbuf_style_class_init().
6241         (Will commit the fix to the pixbuf-engine too).
6242
6243 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6244
6245         * gdk/gdkwindow.h:
6246         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
6247         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
6248         gdk_window_set_icon_list for net wmspec functionality.
6249
6250         * gdk/x11/gdkwindow-x11.c:
6251         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
6252         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
6253         gdk_window_set_icon_list.
6254         Added gdk_wmspec_change_state helper function and used it in the code.
6255         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
6256
6257         * gtk/gtkdialog.c (gtk_dialog_init):
6258         Set GDK_WINDOW_TYPE_HINT_DIALOG.
6259
6260         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
6261         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
6262
6263         * gtk/gtkwindow.c:
6264         new function gtk_window_set_type_hint.
6265         On realize, set type hint and modal hint.
6266
6267         * gtk/gtkwindow.h:
6268         Added type_hint field and gtk_window_set_type_hint.
6269
6270 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6271
6272         * gtk/gtklabel.[ch]:
6273         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
6274         New function gtk_label_get_accel_keyval () to get the underline accelerator
6275         of the label. Setting the label pattern overrides other attributes.
6276
6277 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
6278
6279         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
6280         Added missing initializers to gtk_rc_style_init().
6281
6282 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
6283
6284         * gtk/gtktextview.c: fixed bug #51097 about setting 
6285         gtk_text_view_set_border_window_size() if the widget is 
6286         already realized.
6287
6288 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
6289
6290         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
6291
6292         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
6293         comment. Won't do to have duplicated doc comments between
6294         the platform subdirs.
6295
6296 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
6297
6298         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
6299           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
6300
6301         Detectable auto-repeat - make a repeating key generate
6302         press/press/press/release instead of press/release pairs.
6303
6304         If we have Xkb and XkbSetDectableAutoRepeat supports
6305         that, we do it that way. Otherwise, when we get
6306         a release event, we check ahead with XPending to see
6307         if the next key is a KeyPress with the same keycode
6308         and timestamp. (Not 100% reliable, but pretty close.)
6309           
6310 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6311         
6312         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6313         special key-press grab handling for widgets within
6314         GtkWindows. Otherwise, fall through to normal case.
6315  
6316         This prevents key events being sent twice to GtkInvisible
6317         widgets, which can cause all sorts of mischief.
6318  
6319 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6320  
6321         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6322         widget is in effect, give the grab widget a first
6323         crack at KEY_PRESS/RELEASE events. (#424)
6324  
6325 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
6326
6327         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
6328         to extend the selection. (Roughly based on patch
6329         from Jay Cox, #50939)
6330
6331         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
6332         to properly handle previous GDK_BUTTON_PRESS. 
6333         (Patch from Jay Cox, #50938)
6334
6335         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
6336         '\0' back along with the deleted text. (#51148)
6337
6338 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
6339
6340         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
6341         the group when extracting it from the X keyboard event.
6342
6343         * modules/input/Makefile.am modules/input/imipa.c: 
6344         Simple module for entering IPA. (Do we need a 
6345         gtk-stupid-input-tricks CVS module?)
6346
6347 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
6348
6349         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
6350         const.
6351
6352         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
6353
6354         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
6355         is no focus widget for the dialog currently, grab the focus as well
6356         as the default.
6357
6358         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
6359         the action area's children to iterate through, not the
6360         dialog's children.
6361
6362 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
6363
6364         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
6365         Add plug-socket tests. (Won't work worth a darn until I commit
6366         the rest of the plug-socket changes, but no reason these
6367         can't go into CVS now.)
6368
6369 2001-03-02  Havoc Pennington  <hp@redhat.com>
6370
6371         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
6372         _gdk_region_get_xrectangles()
6373
6374         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
6375
6376         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
6377
6378         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
6379         function, contributed by Ron Steinke    
6380
6381         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
6382         gdk_net_wm_supports
6383
6384         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
6385         New function, contributed by Ron Steinke
6386
6387         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
6388         used to line up the text in the entry when using the entry for
6389         editable sheet cell hacks
6390
6391         * gtk/testgtk.c (create_entry): test the activate_default setting
6392         on GtkEntry
6393
6394         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
6395         cause the entry to activate the default button for a dialog when 
6396         activated
6397         (gtk_entry_get_activates_default): new function
6398
6399 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
6400
6401         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
6402         Hwang to move call to sync_selection() up a few lines
6403         to before the row list is modified, to fix crash when
6404         removing rows in the undo_selection list.
6405
6406         (Test case provided by Daniel Elstner:
6407
6408         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
6409
6410 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
6411
6412         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
6413         of tree->root_tree in parent_set rather than _map(), 
6414         fixing #50892 in a bit better manner.
6415
6416 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
6417
6418         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
6419
6420 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
6421
6422         * gtk/gtkstyle.c : Remove duplicate fwd decl for
6423         gtk_default_draw_shadow.
6424
6425 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6426
6427         * gdk/gdkimage.c (gdk_image_new): Remove excess 
6428         warning, make warnings more verbose, treat a error
6429         in shmat as permanent, and don't try again.
6430         (#51163, Ed Randall.)
6431
6432 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
6433
6434         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
6435         delay for the first click before starting to scroll.
6436         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
6437
6438         * gtk/gtktext.c: GtkText should have I-beam cursor. 
6439         (based on gtk-enf-990513-1.patch, Eric Fisher.)
6440
6441 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
6442
6443         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
6444         cleanup to remove some references to unused
6445         ->xoffset, ->yoffset.
6446
6447 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
6448
6449         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
6450         mask. (#51039, fix from Martin Maierhofer)
6451
6452 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
6453
6454         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
6455         for unshifted + and shifted = for non-us keyboards.
6456         Make <Control>+ and <Control>- work as well as 
6457         <Control>KP_Plus, <Control>KP_Minus for recursive
6458         open/close.  (#2682, René Seindal)
6459
6460 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6461
6462         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6463         the active menu item before deactivating the menu,
6464         so gtk_menu_popdown doesn't change the history. (#50964)
6465         
6466 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6467
6468         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6469         draw lines with text_gc rather than black_gc.
6470         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6471
6472 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6473
6474         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6475         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6476         less interrelated then it was, but it still requires the
6477         GtkTreeView to map it.
6478
6479         * test/testtreecolumn.c: Now I can add a column to one view,
6480         remove it, add it to the another view, remove it, then re-add it
6481         to the first.  Nifty.
6482
6483 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6484
6485         * docs/tutorial/gtk-tut.sgml: Minor corrections
6486
6487 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6488
6489         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6490         GtkRowReference.
6491
6492 2001-02-28  Havoc Pennington  <hp@redhat.com>
6493
6494         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6495         draw_default
6496         (gtk_widget_draw_focus): remove this function; we could instead
6497         make it just gtk_widget_draw(), but in most cases I think the
6498         result would be broken user code, so think it's better to have
6499         that code not compile and get fixed
6500         (gtk_widget_draw_default): ditto
6501
6502         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
6503         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
6504         
6505         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
6506         widgets lose/get the default, instead of calling draw_default
6507         
6508         * docs/Changes-2.0.txt: note about all this
6509
6510         Then fixed every widget in GTK, I won't list all the filenames.
6511
6512 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
6513
6514         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
6515         _gtk_tree_row_reference_deleted.
6516         (inserted_callback): Proxy out to
6517         _gtk_tree_row_reference_inserted.
6518         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
6519         get around signal emission ordering problem.
6520
6521         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6522         fix to work with SINGLE 
6523         (_gtk_tree_selection_internal_select_node): Major sanitization on
6524         selections.  SINGLE now seems to work.
6525
6526         * tests/Makefile.am: add testtreecolumn.c:
6527
6528         * tests/testtreecolumn.c: New test.  Mostly points out selection
6529         bugs currently, but will test columns later.
6530
6531         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
6532         selection bug.  I hate touching this code -- it's scary.
6533
6534 2001-02-26  Havoc Pennington  <hp@redhat.com>
6535
6536         * gtk/testgtk.c: test the window state stuff
6537
6538         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
6539         window come to the user's attention as if it were just created
6540         (gtk_window_iconify): new function
6541         (gtk_window_deiconify): new function
6542         (gtk_window_stick): new function
6543         (gtk_window_unstick): new function
6544         (gtk_window_maximize): new function
6545         (gtk_window_unmaximize): new function
6546
6547         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
6548
6549         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
6550
6551         * gdk/x11/gdkevents-x11.c: create window state events when
6552         appropriate
6553         (gdk_wmspec_supported): new function
6554
6555         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
6556         iconification before showing the window
6557         (gdk_window_deiconify): new function
6558         (gdk_window_stick): new function
6559         (gdk_window_unstick): new function
6560         (gdk_window_maximize): new function
6561         (gdk_window_unmaximize): new function
6562
6563         * gdk/gdkwindow.c: store the window state in the window; 
6564         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
6565         window->mapped.
6566         (gdk_window_get_state): return the current window state
6567
6568         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
6569         (gdk_event_get_state): handle GDK_WINDOW_STATE
6570         (gdk_synthesize_window_state): function to create the window state
6571         events
6572
6573         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
6574         event, for changes to "window state" such as maximized, sticky, 
6575         etc.
6576         
6577         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
6578         focuses a window
6579
6580         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
6581         finds out if we support a given WM spec hint
6582
6583 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
6584
6585         * docs/faq/gtk-faq.sgml: New question re memory leaks.
6586
6587 2001-02-25  Hans Breuer  <hans@breuer.org>
6588
6589         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
6590         cause we want to loose those prototypes only in the latter case
6591
6592         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
6593         GdkPixmapImplWin32 because it itsn't derived from it. Use the
6594         impl member variable instead
6595
6596         * gtk/gtk.def : updated
6597
6598         * gtk/gtklist.c : 
6599         * gtk/gtkmenus.c : include <string.h> for memset ()
6600
6601         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
6602         for everthing built here, but for gtk-x.x.dll only. This solves
6603         problem of indifferent gtk type definitions
6604
6605 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
6606
6607         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
6608
6609 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
6610
6611         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
6612         column that is exposed.
6613
6614         (_gtk_tree_view_update_size): Changed name from set_size, and
6615         changed function to do more work, and not force people calling it
6616         to figure out the size.  Simplifies a lot of code elsewhere.
6617
6618 2001-02-23  Alexander Larsson  <alexl@redhat.com>
6619
6620         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
6621         return solid masks for xpms that have no transparent color.
6622         This makes the ..._create_from_xpm... API backwards
6623         compatible.
6624
6625 2001-02-23  Tor Lillqvist  <tml@iki.fi>
6626
6627         * README.win32: Update. Mention the gtk-1-3-win32-production
6628         branch.
6629
6630         * gdk/win32/bdfcursor.c: New file. A program that generates
6631         xcursors.h. Thanks to Stefan Ondrejicka.
6632
6633         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
6634         compact format.
6635
6636         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
6637
6638         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
6639         function, uses xcursors.h.
6640         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
6641         cursor from inline data instead of using LoadCursor() to generate
6642         it from a resource.
6643
6644         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
6645         event, must check the Windows message for mouse button state, as
6646         the GDK event state might not have been built if it is
6647         undelivered. Remove one goto.
6648
6649         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
6650         SetCursor() if the current cursor as returned by GetCursor() is
6651         the window's previous cursor. The ChildWindowFromPoint() test
6652         apparently didn't work correctly.
6653
6654         * gdk/win32/rc/*.cur: Remove.
6655
6656         * gdk/win32/rc/gdk.rc.in: Remove cursors.
6657
6658         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
6659
6660         * gtk/makefile.{mingw,msc}.in: Updates.
6661
6662 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
6663
6664         * gtk/gtktreemodel.h: add functions for signal emission.
6665
6666         * gtk/gtktreestore.c: move to use above functions instead of
6667         g_signal_emit.
6668
6669         * gtk/gtkliststore.c: ditto
6670
6671 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
6672
6673         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
6674         GObject instead of GtkObject.
6675
6676         * gtk/gtkliststore.c: ditto.
6677
6678         * gtk/gtktreemodelsort.c: ditto.
6679
6680         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
6681         GtkTreeModelIface, instead of in each model.
6682
6683 2001-02-21  Havoc Pennington  <hp@redhat.com>
6684
6685         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
6686         unbreak this function
6687
6688         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
6689         properties
6690
6691         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
6692         properties
6693
6694         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
6695         properties
6696
6697         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
6698         mean unset the max length
6699
6700 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
6701
6702         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
6703         Changed name to be set_cell_data_func to make it clear what
6704         the functino does.  Close bug #51069.
6705
6706 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
6707
6708         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
6709         have memory actually freed.  Keeps box running longer.
6710
6711 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6712         
6713         * gtk/gtkseparatormenuitem.[ch]:
6714         Added new menu separator item. The drawing and size handling
6715         is still done in GtkMenuItem, but the API is a bit more sane.
6716         
6717         * gtk/Makefile.am:
6718         Add gtkseparatormenuitem.[ch].
6719
6720         * gtk/gtk.h:
6721         Add gtkseparatormenuitem.h.
6722         
6723         * gtk/gtkentry.c:
6724         * gtk/gtkmenufactory.c:
6725         * gtk/gtktextview.c:
6726         Use the new API for menu separators.
6727         
6728         * demos/gtk-demo/menus.c (create_menu):
6729         Add some GtkSeparatorMenuItem demo code.
6730
6731 2001-02-20  Havoc Pennington  <hp@redhat.com>
6732
6733         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6734         Lee Mallabone
6735
6736         * gtk/gtkarrow.c: Convert to new property API, patch from 
6737         Lee Mallabone
6738
6739 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6740
6741         * tests/testtreeview.c (toggled_callback): fix to reflect change
6742         in GtkTreeModelStore.
6743
6744 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6745
6746         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6747         function to create an icon set from a pixbuf.
6748
6749 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6750
6751         * gtk/gtkcellrenderertext.[ch]:
6752         Add a "markup" property.
6753
6754         * gtk/treestoretest.c:
6755         Use the markup property, remove some leftover stuff from
6756         GtkTreeModelMapping.
6757
6758 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6759
6760         * gtk/gtklabel.c (gtk_label_set_selectable):
6761         Queue a redraw if the selectable setting was changed.
6762
6763 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6764
6765         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6766         Actually copy the whole gc, not just the public parts.
6767         
6768         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6769         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6770         labels.
6771
6772 2001-02-19  Havoc Pennington  <hp@pobox.com>
6773
6774         * gdk/gdkwindow.c: docs
6775
6776         * gdk/gdkrgb.c: docs
6777
6778         * gdk/gdkregion-generic.c: docs
6779
6780         * gdk/gdkgc.c (gdk_gc_set_values): docs
6781
6782         * gdk/gdkdraw.c: docs
6783
6784         * gdk/gdkdrawable.h: deprecate drawable get/set data
6785
6786 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6787
6788         * demos/gtk-demo/dialog.c: Add simple new demo.
6789
6790 2001-02-19  Havoc Pennington  <hp@redhat.com>
6791
6792         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6793         insert_child_anchor signal, bug #50245
6794
6795         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6796         from create_child_anchor, so the anchor is passed in
6797
6798         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6799         (_gtk_widget_segment_new): have the child anchor object passed in, 
6800         instead of creating it.
6801
6802         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6803         to gtk_text_buffer_get_modified
6804
6805 2001-02-19  Havoc Pennington  <hp@redhat.com>
6806
6807         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6808         changed GLib without fixing GTK
6809
6810         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6811         functions to have an underscore in front. Most of them should 
6812         probably just go away, but for starters don't export them.
6813         Bug #50482
6814
6815 2001-02-19  Havoc Pennington  <hp@redhat.com>
6816
6817         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6818         excluded by default
6819
6820         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6821         clean up the old code a bit
6822
6823         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6824         inconsistent state
6825
6826         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6827         draw inconsistent state
6828
6829         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6830         (create_menu): add inconsistent test
6831
6832         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6833         new function
6834         (gtk_check_menu_item_get_inconsistent): new function
6835         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6836         state (using etched in for now)
6837
6838         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6839         draw inconsistent state
6840
6841         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6842         function, used when the user has selected a range of stuff in
6843         different states
6844         (gtk_toggle_button_get_inconsistent): accessor for that
6845         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6846         don't know what else to do)
6847
6848 2001-02-19  Hans Breuer <hans@breuer.org>
6849
6850         * gtk/gtk.def : updated exported symbols
6851
6852         * gtk/makefile.msc.in : updated
6853
6854         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6855         a colormap, when invoked from testgtk::entry. I'm not sure where
6856         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6857         avoids immediate crashing ...
6858
6859         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6860         any objections ?
6861
6862         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6863         0 parameter. At least msvc doesn't like macros with var args. 
6864         I simply removed the extra 0, was it a feature or a typo ?
6865
6866         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6867         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6868         because the value assignment to the internal struct wasn't working.
6869         I'm not absolutely sure. The problem could have been resolved by
6870         changing the "func" declartion in the struct, but was the pointer
6871         to the function pointer intended ?
6872
6873         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6874
6875         * gdk/gdk.def : updated exported symbols
6876
6877         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6878         only use SetDIBitsToDevice if there is a palette at the drawable
6879         and the image is GDK_VISUAL_PSEUDO_COLOR
6880
6881         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6882
6883         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6884
6885         * gdk/*/makefile.msc : updated
6886
6887 2001-02-19  Havoc Pennington  <hp@redhat.com>
6888
6889         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6890         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6891
6892         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6893         (gdk_key_repeat_restore): nuke
6894
6895         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6896         (gdk_init_check): no atexit func
6897
6898         * gdk/gdkrgb.h: mark some stuff deprecated
6899
6900         * gdk/gdkcolor.h: mark some stuff deprecated
6901         
6902         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6903
6904         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6905
6906 2001-02-16  Havoc Pennington  <hp@redhat.com>
6907
6908         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6909         scroll steps.
6910
6911         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6912         steps, and add Ctrl-arrow shortcuts for paging visually as with
6913         HScale, since Page Up and Page Down move logically.
6914
6915         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6916         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6917         
6918         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6919         steps
6920         (gtk_range_scroll): handle the visual steps
6921
6922         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6923         scroll steps
6924
6925         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6926         steps, not the logical ones.
6927
6928         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6929         (scroll_vertical): handle up/down steps
6930
6931 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6932
6933         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6934         Copy data and free data with free().
6935
6936         * gdk-pixbuf/gdk-pixbuf.c:
6937         * gdk-pixbuf/io-jpeg.c:
6938         * gdk-pixbuf/io-png.c:
6939         Use g_try_malloc/g_free instead malloc/free.
6940         
6941         * gdk-pixbuf/test-gdk-pixbuf.c:
6942         Must... initialize... gobject...
6943         
6944         * gdk-pixbuf/pixops/timescale.c:
6945         * gtk/gtkcalendar.c:
6946         Use g_malloc instead of malloc.
6947         
6948 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6949
6950         * gtk/testgtkrc:
6951         Comment out property assignments, these don't work yet.
6952
6953 2001-02-17  Havoc Pennington  <hp@pobox.com>
6954
6955         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6956         bit.
6957
6958 2001-02-17  Havoc Pennington  <hp@pobox.com>
6959
6960         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6961         shadowed variables that had broken size request in some cases,
6962         leading to bogus tooltips (#50996)
6963
6964 2001-02-06  Jon K Hellan  <hellan@acm.org>
6965
6966         Implement fast browsing of tooltips, bug #50619
6967         
6968         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6969         and last_popdown
6970         
6971         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6972         use_sticky_delay and last_popdown.
6973         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6974         time of popdown.
6975         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6976         is NULL.
6977         (gtk_tooltips_recently_shown): New static function.  Return true
6978         if < sticky_delay has elapsed since last popdown.
6979         (gtk_tooltips_event_handler): Display window after sticky_delay
6980         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6981         since last popdown.
6982         
6983 2001-02-17  Havoc Pennington  <hp@pobox.com>
6984
6985         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6986         instead of (). #6394
6987
6988         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6989         G_CONST_RETURN, make it return by reference, #50473
6990         
6991 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6992
6993         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
6994         generated ENTER_NOTIFY event with 0, otherwise not explicitely
6995         setup fields contain garbage (e.g. subwindow, breaking
6996         gdk_drawable_ref() upon event copy).
6997         (gtk_menu_stop_navigating_submenu_cb): same here.
6998
6999         * gtk/gtklist.c (gtk_list_vertical_timeout): 
7000         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
7001         * gtk/gtkclist.c (vertical_timeout): 
7002         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
7003         default-zero-intialization for unions to memset(,0,), as unions are
7004         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
7005         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
7006
7007         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
7008         g_closure_sink() warning.
7009
7010         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
7011         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
7012         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
7013         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
7014         
7015 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
7016
7017         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
7018         gtk_*_store_get, and moved to GtkTreeModel.
7019
7020         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
7021
7022         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
7023
7024         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
7025
7026         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
7027         set the func.
7028
7029         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7030         freeze/thaw notify between setting all the properties for a cell.
7031
7032         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
7033
7034 2001-02-15  Havoc Pennington  <hp@redhat.com>
7035
7036         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
7037         the X coordinates so they're with respect to the line, rather than 
7038         with respect to the layout.
7039
7040         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
7041         Mallabone
7042
7043         * gtk/testgtk.c (create_range_controls): add vscale tests, 
7044         and inverted test
7045
7046         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
7047         #50806
7048
7049         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
7050
7051         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
7052         gtk_text_iter_is_end
7053
7054         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
7055         rename gtk_text_buffer_get_end_iter
7056
7057         * gtk/testgtk.c (create_labels): Add test for selectable
7058
7059         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
7060         the selection stuff. This code is kind of broken since it doesn't 
7061         use the theme engine.
7062
7063         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
7064         fix infinite loop and y offset problem
7065         (gdk_draw_layout_line_with_colors): fix foreground color handling
7066
7067         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
7068         that makes the label selectable.
7069         
7070         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
7071         layout when the style is set, since fonts etc. could have changed.      
7072
7073 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
7074
7075         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
7076
7077         * gtk/gtktreemodelsimple.[ch]: removed.
7078
7079 2001-02-16  Alexander Larsson  <alexl@redhat.com>
7080
7081         * gtk/gtktreemodelmapping.[ch]:
7082         New files. Implement GtkTreeModelMapping.
7083         
7084         * gtk/Makefile.am:
7085         Add gtktreemodelmapping.[ch].
7086         
7087         * gtk/gtk.h:
7088         Add gtktreemodelmapping.h
7089
7090         * gtk/treestoretest.c:
7091         Test the GtkTreeModelMapping
7092
7093 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
7094
7095         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
7096         have a demo, we might as well pass in real values.  Thanks to
7097         clahey for pointing this out.
7098
7099 2001-02-14  Havoc Pennington  <hp@pobox.com>
7100
7101         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
7102         "static" to a private function
7103         (gtk_image_menu_item_class_init): remove destroy handler,
7104         add "image" object property
7105
7106 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
7107
7108         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
7109         Add a shortcut if the window and the current clip_region doesn't
7110         overlap. This is needed when there are a lot of windows in a
7111         window. The layout test in testgtk is a good test.
7112
7113         * gdk/linux-fb/gdkwindow-fb.c:
7114         Whitespace fix.
7115
7116 2001-02-13  Sven Neumann  <sven@convergence.de>
7117
7118         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
7119
7120 2001-02-13  Alexander Larsson  <alexl@redhat.com>
7121
7122         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
7123         Don't reference last_cursor if it is null. Fixes crash when rotating
7124         the screen before having moved the mouse.
7125
7126         * gdk/linux-fb/gdkcc-fb.c: Zapp!
7127
7128         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
7129
7130         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
7131         when using 90 or 270 degrees rotation.
7132
7133 2001-02-12  Havoc Pennington  <hp@pobox.com>
7134
7135         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
7136         it always set the foreground, even if we were only using
7137         a stipple.
7138         (gdk_draw_layout_line_with_colors): new function, allow
7139         override colors
7140         (gdk_draw_layout_with_colors): new function, allow override
7141         colors
7142         (gdk_pango_layout_line_get_clip_region): function to get the clip
7143         region for a logical text range
7144         (gdk_pango_layout_get_clip_region): get the clip region for a
7145         logical text range
7146
7147         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
7148         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
7149         the right number of arguments.
7150
7151         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
7152         enhance the function to check that node data corresponds to a 
7153         view still belonging to the tree.
7154
7155         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
7156         GtkTreePath
7157         (gtk_tree_view_inserted): ditto
7158         (gtk_tree_view_child_toggled): ditto
7159
7160         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
7161         simplify this code.
7162
7163         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
7164         a PangoAttrList
7165
7166         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
7167
7168         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
7169
7170         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
7171         size in the size request 
7172         (gtk_menu_bar_size_allocate): consider toggle size here
7173
7174         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
7175         that displays a widget in the toggle slot
7176
7177         * gtk/testgtk.c: test GtkImageMenuItem
7178
7179         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
7180         
7181         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
7182         request and allocation
7183
7184         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
7185
7186         * gtk/gtkcheckmenuitem.c
7187         (gtk_check_menu_item_toggle_size_request): ditto
7188         
7189 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
7190
7191         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
7192         reference.
7193
7194         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
7195         and refuse to initialize GTK+ if they fail.
7196
7197 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
7198
7199         * configure.in: Add check for gtk-doc version.
7200
7201 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
7202
7203         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
7204         where the xpad/ypad was only being used on one side!
7205
7206 2001-02-11  Tor Lillqvist  <tml@iki.fi>
7207
7208         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
7209         function, copied from X11 version.
7210
7211         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
7212         DestroyCursor failures. The reason for the problem (despite the
7213         inconsistent messages from GetLastError()) was that
7214         DestroyCursor() cannot be called while a cursor is set in a
7215         window. Set the new cursor first and then destroy the old one.
7216         Thanks to jpe@archaeopteryx.com.
7217
7218         * gdk/win32/gdkcc-win32.c: Remove.
7219
7220         * gdk/win32/Makefile.am: Remove from here, too.
7221         
7222         * gdk/gdk.def
7223         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
7224
7225         * gtk/gtk.def
7226         * gtk/makefile.mingw.in: Updates.
7227
7228 2001-02-08  Havoc Pennington  <hp@redhat.com>
7229
7230         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
7231         add a widget to a bin that already has a child.
7232
7233         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
7234
7235         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
7236         
7237         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
7238
7239         * gdk/gdk.h: remove gdkcc.h
7240
7241         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
7242
7243         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
7244         GdkPixbuf, since the previous implementation was GdkColorContext
7245         dependent.
7246
7247         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
7248         
7249 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
7250
7251         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
7252         a sane value!
7253
7254 2001-02-08  Havoc Pennington  <hp@redhat.com>
7255
7256         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
7257         lighten them.
7258
7259 2001-02-08  Havoc Pennington  <hp@redhat.com>
7260
7261         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
7262         validation idle
7263
7264         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
7265         cell renderer
7266
7267         * demos/pixbuf-demo.c (timeout): remove deprecated
7268         gtk_widget_draw
7269
7270         * demos/testpixbuf-save.c (main): remove deprecated
7271         gtk_drawing_area_size
7272
7273         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
7274         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
7275         at the start of the allocation.
7276         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
7277         unsetup or NULL model.
7278
7279         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
7280         even/odd/sorted cells in the tree view.
7281
7282         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7283         bugfixes
7284
7285         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
7286         backgrounds with draw_flat_box using different detail for even/odd
7287         rows.
7288
7289         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
7290         row, so we can draw the alternating colors thing
7291
7292         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
7293         property from a synonym property, notify for the synonym.
7294         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
7295         (gtk_text_tag_get_property): Always return the font, even if
7296         all its fields aren't set
7297
7298         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
7299         store the attr list; it leaves us with no way to change attributes
7300         in _render according to the render flags, and no way to implement
7301         get_property. Instead store all the specific text attributes. 
7302         Separate whether an attribute is enabled from its value. Sync all
7303         properties with GtkTextTag, make them all consistent, etc.
7304
7305         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
7306         renderers can highlight the sort row/column     
7307
7308         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
7309         accessor functions to get values; this has the side effect of
7310         showing up which accessor functions were missing. Added those.
7311
7312         * gtk/gtktreeviewcolumn.h: Replace set_justification with
7313         set_alignment, to be consistent with GtkLabel, GtkMisc
7314
7315         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
7316         arrow.
7317
7318         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
7319
7320         * gtk/gtktreesortable.h: updates in here
7321
7322 2001-02-07  Sven Neumann  <sven@convergence.de>
7323
7324         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
7325         pango dimensions after painting the background. We used to draw
7326         gigantic flat boxes here.
7327
7328 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
7329
7330         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
7331         error introduced with earlier commit) (pointed out by
7332         Ollie Lho)
7333
7334 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
7335
7336         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
7337         which are no longer necessary.
7338
7339 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
7340
7341         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
7342
7343 2001-02-04  Tor Lillqvist  <tml@iki.fi>
7344
7345         * gdk/gdk.def
7346         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
7347         Provide dummy implementations.
7348
7349 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
7350
7351         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
7352
7353         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
7354         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
7355         deprecated this function.
7356
7357         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
7358         argument.
7359
7360 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
7361
7362         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
7363
7364 2001-02-03  Havoc Pennington  <hp@pobox.com>
7365
7366         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
7367         Mikael Hermansson with patch from Mikael (if there was a toggle
7368         start one after the first character in the range, this function
7369         was broken). Bug #50380
7370
7371 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
7372
7373         * configure.in: Remove confusing comment about X11.
7374
7375 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
7376
7377         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
7378         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
7379         
7380 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
7381
7382         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
7383         it breaks things on BSD. If you want to compile GTK+ with
7384         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
7385         when configuring, since GTK+ simply can't be "pure ANSI" 
7386         in the header files it uses. (#8170, Greg Hudson)
7387
7388 2001-02-02  Havoc Pennington  <hp@redhat.com>
7389
7390         * gtk/gtkwindow.c: docs
7391
7392         * gtk/gtkwidget.c: docs
7393         (gtk_widget_set_colormap): add a reference to the colormap
7394         (gtk_widget_get_default_colormap): add a reference to the colormap
7395
7396         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
7397
7398         * gtk/gtktextiter.c: docs
7399
7400         * gtk/gtkmain.c (gtk_propagate_event): docs
7401
7402         * gtk/gtkpaned.c (gtk_paned_get_position): docs
7403         (gtk_paned_set_position): docs
7404
7405         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
7406         sort interface, no implementation yet.
7407
7408         * demos/testpixbuf.c (new_testrgb_window): replace
7409         gtk_drawing_area_size() with gtk_widget_set_usize()
7410
7411         * demos/testpixbuf-drawable.c (main): ditto
7412         
7413         * gtk/testgtk.c: remove use of GtkStatusbarMsg
7414
7415         * gtk/gtktextbuffer.c: docs
7416
7417         * gtk/gtkstock.c: docs
7418
7419         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
7420
7421         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
7422
7423         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
7424         
7425         * gtk/gtkimage.c: add some docs in here
7426         (gtk_image_size_request): change name of
7427         gtk_widget_render_stock_icon
7428         (gtk_image_get_icon_set): don't dup returned string
7429         (gtk_image_get_icon_set): don't dup returned string
7430
7431         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
7432         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
7433         and gtkiconfactory.h functions
7434
7435         * gtk/gtkiconfactory.c: add some docs in here
7436
7437         * gtk/gtkmain.c (gtk_get_default_language): document
7438         (gtk_get_current_event): document
7439         (gtk_get_current_event_state): document
7440         (gtk_get_event_widget): document
7441
7442         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
7443
7444         * gtk/gtkcontainer.c: Add some documentation
7445         (gtk_container_add): give a more explanatory warning on adding an
7446         already-parented widget, this is kind of a FAQ and also a common
7447         typo that's easier to debug with a nice warning 
7448
7449         * gtk/gtkcellrenderertoggle.c
7450         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
7451         adding this, it's useless
7452         (gtk_cell_renderer_toggle_set_active): remove
7453         (gtk_cell_renderer_toggle_get_radio): add
7454
7455         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
7456         the NULL cell renderer, that doesn't make any sense to me. 
7457
7458         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7459         demo code should never use deprecated features.
7460
7461         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7462         code should never use deprecated features.
7463
7464         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7465         gtk_widget_queue_clear_area deprecated
7466
7467         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7468         deprecated
7469
7470         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7471
7472         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7473         a GdkImage deprecated, replaced by new consistently-named
7474         functions       
7475
7476         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7477
7478         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7479
7480         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7481         deprecated
7482
7483         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7484         so it won't appear in docs and confuse people.
7485
7486         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7487
7488         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7489         macros deprecated. (can't mark the type itself deprecated, since
7490         GtkProgressBar is not deprecated and we need the type decl to use
7491         GtkProgressBar)
7492
7493         * gtk/gtkpixmap.h: Mark deprecated
7494
7495         * gtk/gtkoldeditable.h: Mark deprecated
7496
7497         * gtk/gtklist.h: Mark deprecated
7498
7499         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
7500         for anything anymore.
7501
7502         * gtk/gtkctree.h: Mark deprecated
7503
7504         * gtk/gtkclist.h: Mark deprecated
7505
7506         * gtk/gtkpreview.h: Mark deprecated
7507
7508         * gtk/gtkpacker.h: Mark deprecated
7509
7510         * gtk/gtktipsquery.h: Mark deprecated
7511
7512         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
7513
7514         * gtk/gtkvruler.h: Add comment that it will move out of GTK
7515
7516         * gtk/gtkhruler.h: Add comment that it will move out of GTK
7517
7518         * gtk/gtkruler.h: Add comment that it will move out of GTK
7519
7520         * gtk/gtkgamma.h: Add comment that it will move out of GTK
7521
7522         * gtk/gtkcurve.h: Add comment that it will move out of GTK
7523
7524 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
7525
7526         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
7527         gdk_colormap_sync private since it was never exported
7528         in a header file.
7529
7530         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
7531         colormap->colors[] for StaticGray, StaticColor colormaps.
7532
7533         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
7534         was being used as if it was image->bits_per_pixel.
7535
7536         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
7537         for the image in the GdkImage structure since it isn't
7538         reconstructable, and we need it to handle packed types
7539
7540         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
7541         the assumption that on Win32 image->bits_per_pixel == image->depth,
7542         always.
7543
7544         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
7545
7546         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
7547         warning message if no converter can be found. 
7548
7549 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
7550
7551         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
7552         chars to isupper() / tolower(). (#567)
7553
7554         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
7555         to clear up 64-bit warnings. (#567)
7556
7557 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
7558
7559         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
7560         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
7561
7562         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
7563         since some people set $(libdir) separately. (#1290, David Kaelbling)
7564
7565 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
7566
7567         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
7568         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
7569         MAXPATHLEN, but the code here depends on a fixed value.)
7570         (#4524)
7571
7572 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
7573
7574         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
7575         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
7576
7577 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
7578
7579         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
7580         viewable there is no way that moving the node will cause the 
7581         focus row to become not viewable, so omit check on the visibility
7582         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
7583
7584 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
7585
7586         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
7587         selection before inserting new text.
7588
7589 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
7590
7591         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
7592         Make the sensitivity of the reparented child track that of
7593         the original parent menu item. (#34218, David Hodson)
7594
7595         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
7596         the case where the current item is destroyed properly.
7597
7598         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
7599         some edge cases with child-less menuitems.
7600         
7601 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
7602
7603         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
7604         key pop down window. (#12074, Jon K Hellan)
7605
7606 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
7607
7608         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
7609         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
7610         The solution here isn't perfect - you get an extraneous
7611         emission of "toggle", which could conceivably confuse an app,
7612         but better than the current situation. LXR search seems to
7613         indicate that no apps in GNOME CVS connect to "toggle".
7614
7615 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
7616
7617         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
7618         gtk_public_h_sources to directly here to avoid warning when
7619         building srcdir != builddir. (#9656)
7620
7621 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
7622
7623         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
7624         handlers in gtkrange.c return the proper values (TRUE == handled)
7625         (#10316).
7626
7627         This is just the tip of the iceberg, but gtkrange.c is the
7628         most common place where the propagation is problematical,
7629         and also a place where it is almost certainly safe to change
7630         this in the stable branch.
7631
7632         (You don't want right click popups on a range control or anything...)
7633
7634 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
7635
7636         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
7637         area on focus out, even if a background pixmap isn't set.
7638         (#13941)
7639         
7640 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
7641
7642         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
7643         to deal with setting the shape properly when scrolling arrows are
7644         turned on, but not visible because there is sufficient space.
7645         (#13432)
7646
7647 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
7648
7649         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
7650         items with submenus, destroy the item along with the submenu.
7651         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
7652         properly.
7653
7654         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
7655         later.
7656
7657 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
7658
7659         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
7660         the focus widget sometimes wasn't drawn with the default if there
7661         was no default widget.
7662
7663         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
7664         unreference pixmaps. 
7665
7666         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
7667         for some extra safety.
7668
7669 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
7670
7671         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
7672         the text of a cell to the old pointer value better, by
7673         copying the new text before freeing the old text. Some code
7674         cleanup. (#8079, Karl Nelson)
7675
7676 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
7677
7678         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
7679         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
7680
7681 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
7682
7683         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
7684         item from a menu, check to see if it matches 
7685         menu->old_active_menu_item, and if so, unref and clear
7686         old_active_menu_item (Patch from Pavel Cisler)
7687
7688         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
7689         menu_shell->active_menu_item, if it is the child being
7690         removed. (Patch based on that of Gene Ragan, #50337)
7691
7692 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
7693
7694         * gdk/linux-fb/gdkselection-fb.c: 
7695         * gdk/linux-fb/gdkcolor-fb.c: 
7696         * gdk/linux-fb/gdkdrawable-fb2.c: 
7697         * gdk/linux-fb/gdkfont-fb.c: 
7698         * gdk/linux-fb/gdkim-fb.c: 
7699         * gdk/linux-fb/gdkinput.c: 
7700         * gdk/linux-fb/gdkkeyboard-fb.c: 
7701         * gdk/linux-fb/gdkmain-fb.c: 
7702         * gdk/linux-fb/gdkrender-fb.c: 
7703         A bunch of whitespace cleanup.
7704         
7705 2001-01-30  Havoc Pennington  <hp@pobox.com>
7706
7707         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
7708         #ifdef GTK_ENABLE_BROKEN.
7709
7710         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7711         GTK_ENABLE_BROKEN just before including the broken headers.
7712         
7713         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7714         deprecated types registered.
7715
7716         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7717         we have to test the broken stuff.
7718
7719         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7720         
7721 2001-01-30  Havoc Pennington  <hp@redhat.com>
7722
7723         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7724         here where prev pointer was set to the wrong thing
7725
7726         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7727         (gtk_tree_path_is_descendant): new function
7728
7729         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7730         cached length
7731         (gtk_list_store_get_iter): don't modify iter if we can't get the
7732         path.
7733
7734         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7735         
7736         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7737         GtkTreeDragDest
7738
7739         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7740         was causing segfault
7741
7742         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7743         pointer to NULL
7744
7745         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7746
7747         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7748         on returning FALSE
7749         (gtk_list_store_iter_children): ditto
7750         (gtk_list_store_iter_nth_child): ditto
7751         (gtk_list_store_iter_nth_child): ditto
7752         (gtk_list_store_iter_parent): ditto
7753
7754         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7755         on iter->user_data != NULL instead of silently accepting it.
7756         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7757         we are returning TRUE.
7758         (gtk_tree_store_iter_children): ditto
7759         (gtk_tree_store_iter_nth_child): ditto
7760         (gtk_tree_store_iter_parent): ditto
7761         (gtk_tree_store_insert): remove handling of parent->user_data ==
7762         NULL, replace with parent == NULL       
7763
7764         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7765         and a comment explaining things
7766
7767         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7768         interface support to GtkTreeStore.
7769
7770         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7771         FALSE if no prev, fix
7772
7773         * gtk/gtktreeview.c (set_source_row): use a row reference
7774         (set_dest_row): use a row reference
7775
7776 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7777
7778         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7779         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7780         (gtk_tree_selection_select_iter): The same as above.
7781
7782 2001-01-26  Havoc Pennington  <hp@redhat.com>
7783
7784         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7785         which holds a handle to a specific row (particular set of values
7786         in the model, i.e. pointer-identity row).
7787
7788         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7789         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7790         Still need to use it for the src/dest row saved on the drag context.
7791
7792 2001-01-26  Havoc Pennington  <hp@redhat.com>
7793
7794         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7795
7796         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7797         not offset by TREE_VIEW_HEADER_HEIGHT
7798         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7799         TREE_VIEW_HEADER_HEIGHT
7800
7801         * configure.in (included_loaders): for me, --with-included-loaders
7802         generates the error "the specified loader yes does not exist",
7803         i.e. the arg defaults to "yes", so change test for value ""
7804         to test for value "yes", and include all loaders in that case.
7805
7806         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7807
7808         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7809         handle TREE_VIEW_VERTICAL_SEPARATOR
7810         (gtk_tree_view_bin_expose): fix to consider the row offset as
7811         pointing halfway into vertical separator.       
7812         (gtk_tree_view_draw_node_focus_rect): ditto
7813
7814         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7815         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7816         (TRUE) to be called.
7817
7818         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7819         debug mode where the invalid region is colored in on invalidate,
7820         so you can see the flicker and know whether your redraw code is 
7821         doing a good job.
7822
7823         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7824         tree window coordinates (clip rect is in tree window coords)
7825
7826         * gtk/Makefile.am: add gtktreednd.[hc]
7827
7828         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7829
7830         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7831         drag-and-drop data operations on a model (so we can set up tree
7832         drag-and-drop automatically)
7833
7834         * gtk/testgtk.c: Add a window to change sensitivity in the
7835         GtkLabel test; add a way to change the entry frame in GtkEntry
7836         test
7837
7838         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7839         (gtk_entry_get_has_frame): new functions to remove the frame
7840         around an entry
7841         (gtk_entry_size_request): shrink requisition if no frame
7842         (gtk_entry_draw_focus): don't draw frame if no frame
7843
7844         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7845         checks inside a cell renderer
7846         (gtk_default_draw_option): ditto for options
7847
7848         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7849         children from the alignment, not the button
7850         (gtk_tree_view_column_init): ref/sink the column, to emulate
7851         GObject refcounting.
7852
7853         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7854         
7855         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7856         Use theme functions to draw the toggles 
7857
7858         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7859
7860         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7861         GdkPangoAttrEmbossed to use in rendering insensitive text
7862
7863         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7864
7865         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7866         using new GDK features
7867         
7868 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7869
7870         * gtk/gtkimage.c:
7871         Splitted gtk_image_clear into gtk_image_clear() and
7872         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7873         to avoid leaks.
7874
7875         * gtk/gtklabel.c (set_markup):
7876         Don't leak text.
7877
7878         * gtk/gtktextlayout.c:
7879         Always free display->shaped_objects.
7880
7881         * gtk/testgtk.c (create_clist):
7882         Don't leak custom style.
7883
7884 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7885
7886         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7887         Don't leak image. Simplify using gdk_colormap_query_color().
7888         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7889
7890         * linux-fb/gdkcolor-fb.c:
7891         Implemented gdk_colormap_query_color.
7892
7893 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7894
7895         * linux-fb/gdkcursor-fb.c:
7896         Don't leak built-in cursors.
7897
7898         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7899         Don't leak tmp_points.
7900
7901         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7902         Don't modify desc. Don't leak font if the PangoFont
7903         isn't found.
7904         
7905         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7906         Free dash_list.
7907
7908         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7909         Don't leak string.
7910         
7911 2001-01-20  Havoc Pennington  <hp@pobox.com>
7912
7913         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7914         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7915         me, matches Pango
7916
7917 2001-01-22  Havoc Pennington  <hp@redhat.com>
7918
7919         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7920
7921         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7922
7923         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7924         Remove, move back to gdk-pixbuf
7925
7926         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7927         to all the word functions
7928
7929         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7930         before doing anything on NULL layout or if we don't have the focus
7931
7932         * gtk/testtext.c (fill_example_buffer): "justification"
7933
7934         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7935         to be called "justification" not "justify"
7936
7937         * demos/gtk-demo/textview.c (create_tags): "justification"
7938         
7939         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7940
7941 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7942
7943         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7944         Don't leak visible_region. Use visible_region instead of region.
7945         
7946         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7947         Don't do extra gdk_drawable_ref(). This is not X.
7948         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7949         gdk_fb_focused_window is ref:ed.
7950         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7951         windows.
7952
7953 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7954
7955         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7956         Don't leak the PangoFontDescriptor.
7957
7958 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7959
7960         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7961         when not realized.
7962         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7963         (gtk_tree_view_realize): add scroll_to support
7964         (gtk_tree_view_finalize): add a finalize method.  Populate.
7965         (gtk_tree_view_insert_column): ref and sink the column.
7966         (gtk_tree_view_append_column): ref and sink the column.
7967         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7968         individual nodes.  Should make the code much more efficient, if
7969         actually used.
7970
7971 2001-01-19  Havoc Pennington  <hp@redhat.com>
7972
7973         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7974         byte_offset variable was being used to mean both "offset into
7975         layout" and "offset into buffer line" which was no longer true
7976         with addition of preedit string; fix
7977
7978 2001-01-19  Havoc Pennington  <hp@redhat.com>
7979
7980         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7981
7982         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7983         function
7984
7985         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7986         implement
7987
7988         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7989         scroll_to_cell, matches TextView scroll functions better
7990         (gtk_tree_view_tree_to_widget_coords): new function
7991         (gtk_tree_view_widget_to_tree_coords): new function
7992         (gtk_tree_view_get_visible_rect): new function
7993         (gtk_tree_view_get_path_at_pos): accept negative coordinates
7994         (gtk_tree_view_draw_node_focus_rect): new function moved from
7995         draw_focus, also, use width of bin_window as width of the focus
7996         rect
7997         (gtk_tree_view_expand_row): fix bug where it didn't recognize
7998         already-expanded rows
7999         (gtk_tree_view_get_cell_rect): new function
8000         (gtk_tree_view_get_path_at_pos): return the click position
8001         relative to the passed-in cell
8002         (gtk_tree_view_set_expander_column): new function
8003
8004         * configure.in: remove gtk-config-2.0 chmod
8005
8006         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
8007         and properly handle drags with targets we don't understand
8008         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
8009         scrolling anyway
8010         (gtk_text_view_drag_drop): stop scrolling here though, and set the
8011         mark invisible
8012
8013         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
8014         function
8015         (gtk_drag_dest_get_target_list): new function
8016         (gtk_drag_dest_set_target_list): new function
8017         
8018         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
8019
8020         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
8021         related to drag-and-drop
8022
8023 2001-01-19  Alexander Larsson  <alexl@redhat.com>
8024
8025         * gdk/linux-fb/gdkprivate-fb.h:
8026         Define EMULATE_GDKFONT.
8027         Add extra pango_font stuff to GfkFontPrivate.
8028         
8029         * gdk/linux-fb/gdkdrawable-fb2.c:
8030         * gdk/linux-fb/gdkfont-fb.c:
8031         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
8032         emulation using PangoFont.
8033
8034 2001-01-17  Havoc Pennington  <hp@pobox.com>
8035
8036         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
8037         all the non-deprecated set_foo functions. Added missing object
8038         properties, and added g_object_notify() to setters. 
8039         Wrote docs.
8040         
8041 2001-01-18  Tor Lillqvist  <tml@iki.fi>
8042
8043         * gtk/gtkmain.c
8044         * gtk/gtkrc.c: (Win32) Use the new
8045         g_win32_get_package_installation_(sub)directory() functions.
8046
8047         * config.h.win32.in: New file.
8048         
8049         * config.h.win32: Removed.
8050
8051         * configure.in: Output config.h.win32.
8052
8053         * Makefile.am: Add it to EXTRA_DIST.
8054
8055         * gtk/gtk.def: Update.
8056
8057 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
8058
8059         * gtk/gtklabel.c (gtk_label_size_request): Set the
8060         attributes onto the PangoLayout even if they are newly
8061         created from label->pattern.
8062
8063 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
8064
8065         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
8066
8067         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
8068         structures in functions. Fixes bug where gtk_dataset_*
8069         was accidentally still being used in one place, causing
8070         every dest side event to be treated independently.
8071
8072         * gtk/gtkdnd.c: Remove last vestages of handling
8073         ::draw (fixes warning)
8074         
8075         * gtk/gtkentry.[ch]: Add drag and drop support.
8076
8077         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
8078         new function gtk_check_drag_threshhold() for checking
8079         to check if (dx,dy) has exceeded the threshhold for starting
8080         a drag and use it everywhere.
8081
8082 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
8083
8084         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
8085         add -I{includedir}/gtk-2.0.
8086
8087         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
8088         gdk/gdk-pixbuf.h: Doc fixups.
8089         
8090         * gtk/gtkobject.h: Remove trailing , from enum
8091
8092 2001-01-17 Alexander Larsson <alexl@redhat.com> 
8093
8094         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
8095         Doh! Mixed up x and y.
8096
8097         * gdk/linux-fb/gdkglobals-fb.c:
8098         Removed gdk_fb_pointer_grab_window_events,
8099         added _gdk_fb_pointer_grab_owner_events and
8100         _gdk_fb_keyboard_grab_owner_events.
8101
8102         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
8103         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
8104         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
8105         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
8106         Send crossing events after ungrab finished.
8107         (gdk_keyboard_grab): Set ..._owner_events
8108         (type_masks): Move out of function.
8109         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
8110         gdk_fb_keyboard_event_window): New functions, return the
8111         window an event should be targeted at. Handles grabs and
8112         event propagation. Can return NULL.
8113         (gdk_event_make): Remove event_mask checking. Now always
8114         returns an event.
8115                 
8116         * gdk/linux-fb/gdkkeyboard-fb.c:
8117         * gdk/linux-fb/gdkproperty-fb.c:
8118         * gdk/linux-fb/gdkselection-fb.c:
8119         Use new event_window/gdk_event_make() behaviour.
8120         
8121         * gdk/linux-fb/gdkmouse-fb.c:
8122         Use new event_window/gdk_event_make() behaviour.
8123         Only send motion events if in the same window.
8124         If grabbed, use cursor from window if sibling of grabbed
8125         window, and cursor from grabbed window otherwise.
8126
8127         * gdk/linux-fb/gdkprivate-fb.h:
8128         Update gdk_fb_window_send_crossing_events, gdk_event_make
8129         and grab varaible declarations. Add gdk_fb_*_event_window().
8130
8131         * gdk/linux-fb/gdkwindow-fb.c:
8132         Use new event_window/gdk_event_make() behaviour.
8133         Keep correct track of focus window.
8134         (gdk_window_set_events): Set all specific button motion masks
8135         if GDK_BUTTON_MOTION_MASK set.
8136
8137         * gtk/gtkdnd.c (gtk_drag_update):
8138         Free info->last_event if gdk_drag_motion returned FALSE.
8139
8140 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8141
8142         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
8143         Eliminate redraws when input-only windows are shown or
8144         hidden. Thanks to jpe@archaeopteryx.com.
8145
8146 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
8147
8148         * docs/faq/gtk-faq.sgml: FAQ update:
8149           - Update to bugzilla
8150           - Add GTK+ and security/SUID/SGID
8151           - Add DnD question
8152
8153 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
8154
8155         * gdk/linux-fb/gdkdnd-fb.c:
8156         Some cleanups.
8157         
8158 2001-01-15  Havoc Pennington  <hp@pobox.com>
8159
8160         * tests/testtreeview.c: add test stuff for CellRendererToggle
8161
8162         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
8163         accessor
8164
8165         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
8166         only toggle on button press (would do release like GtkButton, but
8167         we'd need implicit grab code for treeview cells)
8168
8169 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8170
8171         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
8172
8173         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
8174         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
8175
8176         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
8177         to g_{locale,filename}_{to,from}_utf8 to match current API.
8178
8179         * gtk/makefile.msc.in (gtk_OBJECTS)
8180         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
8181
8182         * gtk/gtk.def: Update.
8183
8184 2001-01-15  Tor Lillqvist  <tml@iki.fi>
8185
8186         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
8187         implementaion that more closely mimics the events that an X server
8188         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
8189         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
8190         with nested preview widgets, for instance, more responsive when
8191         you move the mouse quickly into them.
8192         (find_window_for_pointer_event): Make it actually compile.
8193         (gdk_event_translate): Set send_event to the value of
8194         InSendMessage (). This doesn't really mean the same as X11's
8195         send_event flag, but is close enough, says jpe@archaeopteryx.com
8196
8197 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8198
8199         * gdk/linux-fb/gdkdnd-fb.c:
8200         Implemented drag and drop.
8201         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
8202         when it tries to free and then copy the same event (info->last_event).
8203         I am not sure about why this happens, but will continue looking.
8204
8205 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8206
8207         * gdk/linux-fb/gdkwindow-fb.c:
8208         Use gdk_window_invalidate_rect instead of
8209         gdk_window_invalidate_rect_clear to minimise flashing.
8210         When hiding windows you need to clear the root window though.
8211
8212 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8213
8214         * gdk/linux-fb/gdkdrawable-fb2.c:
8215         For optization, add an full_shapes argument to gdk_fb_clip_region.
8216         If this is false, only the cliprects of the shapes are used.
8217
8218         * gdk/linux-fb/gdkprivate-fb.h:
8219         Export gdk_fb_window_peek_shape.
8220         Add full_shapes to gdk_fb_clip_region.
8221
8222         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8223         When moving a window, don't clear everything under the it, just the
8224         root window. Makes stuff faster and flash less.
8225         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
8226         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
8227         offset of the shape.
8228         
8229
8230 2001-01-12  Havoc Pennington  <hp@redhat.com>
8231
8232         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
8233         current invalid region, fixes redraw bug while scrolling the 
8234         text widget
8235
8236         * gtk/gtktextview.c, gtk/gtktextview.h:
8237         Rearrange the scrolling/validation/etc. code in a major way, 
8238         so it seems to make sense to me. Probably isn't genuinely that
8239         much better, but...
8240
8241         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
8242         notifies
8243
8244         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
8245
8246 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
8247
8248         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
8249         Hide mouse pointer while rotation. Show it afterwards.
8250
8251 2001-01-12  Alexander Larsson  <alexl@redhat.com>
8252
8253         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
8254         windows in consideration when generating clip region.
8255
8256         * gdk/linux-fb/gdkfb.h:
8257         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
8258
8259         * gdk/linux-fb/gdkprivate-fb.h:
8260         Add shape to GdkWindowFBDatat.
8261         exported gdk_fb_window_get_abs_shape().
8262         removed gdk_fb_draw_lines declaration.
8263
8264         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
8265         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
8266         send focus changes when there is a grabbed window.
8267         (gdk_window_get_pointer): Handle shaped windows.
8268         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
8269         (gdk_fb_window_peek_shape): Returns the shape for a window,
8270         handles GDK_FB_USE_CHILD_SHAPE.
8271         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
8272         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
8273         (gdk_window_shape_combine_mask): Implement.
8274
8275         * gtk/gtkwindow-decorate.c:
8276         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
8277         setting the shape of a window makes the window transparent.
8278
8279 2001-01-11  Havoc Pennington  <hp@redhat.com>
8280
8281         * gtk/gtktreemodelsimple.h: Oops, broke some macros
8282
8283 2001-01-10  Havoc Pennington  <hp@redhat.com>
8284
8285         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
8286         add this function, bug 40251
8287
8288         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
8289         of type macro   
8290
8291 2001-01-11  Alexander Larsson  <alexl@redhat.com>
8292
8293         * acconfig.h:
8294         Added ENABLE_SHADOW_FB
8295
8296         * configure.in:
8297         Added --disable-shadowfb
8298
8299         * gdk/linux-fb/gdkcursor-fb.c:
8300         Update shadowfb when updating cursor
8301
8302         * gdk/linux-fb/gdkdrawable-fb2.c:
8303         Added wrappers for shadowfb that calls  the normal drawable
8304         methods, but calls gdk_shadow_fb_update(bounding box) when
8305         GdkWindows are drawed to.
8306         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
8307         which also returns the bounding box.
8308
8309         * gdk/linux-fb/gdkfb.h:
8310         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
8311
8312         * gdk/linux-fb/gdkgeometry-fb.c:
8313         Update shadowfb when scrolling window.
8314
8315         * gdk/linux-fb/gdkglobals-fb.c:
8316         Add _gdk_fb_screen_angle.
8317         
8318         * gdk/linux-fb/gdkkeyboard-fb.c:
8319         Test code for screen rotation. Shift-F2 in the xlate driver
8320         rotates the screen.
8321
8322         * gdk/linux-fb/gdkmain-fb.c:
8323         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
8324
8325         * gdk/linux-fb/gdkmouse-fb.c:
8326         Use fb_width/height instead of modeinfo.xres/yres.
8327
8328         * gdk/linux-fb/gdkprivate-fb.h:
8329         Added fb_men, fb_width, fb_height & fb_stride. When using
8330         shadow fb these can differ from the framebuffer stuff.
8331         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
8332         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
8333         _gdk_fb_screen_angle. Removed CM, RP.
8334
8335         * gdk/linux-fb/gdkrender-fb.c:
8336         Added code for shadowfb handling and screen rotation using
8337         shadowfb.
8338
8339         * gdk/linux-fb/gdkwindow-fb.c:
8340         Use fb_mem, fb_stride, fb_width, fb_height.
8341         Added recompute_rowstride to reset the rowstride of all windows.
8342         Added gdk_fb_recompute_all() which recomputes rootwindow size,
8343         window abs positions and window rowstrides. Usefull when the
8344         rotation has changed.
8345
8346 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
8347
8348         * docs/faq/gtk-faq.sgml: update to make web site updating easier
8349
8350 2001-01-10  Havoc Pennington  <hp@redhat.com>
8351
8352         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
8353         where sibling == iter
8354         (gtk_tree_store_insert_after): handle sibling == iter
8355         (gtk_tree_store_prepend): remove stamp checks
8356         (gtk_tree_store_insert_before): ditto
8357         (gtk_tree_store_append): ditto
8358         (gtk_tree_store_get_path): ditto
8359         (gtk_tree_store_get_value): ditto
8360         (gtk_tree_store_iter_has_child): ditto
8361         (gtk_tree_store_iter_n_children): ditto
8362         (gtk_tree_store_iter_nth_child): ditto
8363         (gtk_tree_store_insert_after): ditto
8364         (gtk_tree_store_is_ancestor): ditto
8365         (gtk_tree_store_iter_depth): ditto
8366         (gtk_tree_store_insert_before): assert that sibling's parent is
8367         the same as the passed-in parent
8368         (gtk_tree_store_insert_after): assert that sibling's parent is
8369         the same as the passed-in parent
8370
8371         
8372         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
8373         function to get the first iterator in a model
8374         
8375         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
8376         conventionally the "root" in this sense is just NULL afaict.
8377
8378         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
8379         where sibling == iter
8380         (gtk_list_store_insert_after): handle case where sibling == iter
8381
8382         * tests/testtreeview.c (run_automated_tests): fairly lame basic
8383         automated tests for ListStore, TreeStore
8384
8385         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
8386         (gtk_list_store_insert): update tail pointer, and fix it to work
8387         (gtk_list_store_insert_before): update tail pointer, and fix it to work
8388         (gtk_list_store_append): use tail to be faster
8389         (gtk_list_store_prepend): fix it, update tail pointer
8390         (gtk_list_store_insert_after): fix it, update tail pointer
8391
8392         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
8393         the list
8394
8395 2001-01-09  Havoc Pennington  <hp@redhat.com>
8396
8397         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
8398         is NULL due to a pending resize
8399
8400         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
8401         column width to values less than 1
8402
8403         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
8404         width to be between min/max width, and still set the width 
8405         even if autosize is turned on, so the tree view can use this 
8406         function in order to autosize.
8407         (gtk_tree_view_column_init): set initial width to 1 not 0
8408
8409         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
8410         setter function to modify column width, so we get notification
8411         (gtk_tree_view_insert_iter_height): ditto
8412         (gtk_tree_view_calc_size): ditto
8413         (gtk_tree_view_check_dirty): ditto
8414
8415         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
8416         properties to change all the interesting attributes of the tree
8417         view column.
8418         (gtk_tree_view_column_set_header_clickable): rename set_clickable
8419         (gtk_tree_view_column_get_clickable): add
8420         (gtk_tree_view_column_set_cell_renderer): don't unset the current
8421         attributes; assume a cell renderer with equivalent object
8422         properties has been swapped in. Do g_object_notify().
8423         (gtk_tree_view_column_set_visible): g_object_notify
8424         (gtk_tree_view_column_get_sizing): rename from get_col_type
8425         (gtk_tree_view_column_set_sizing): g_object_notify
8426         (gtk_tree_view_column_set_width): add g_object_notify
8427         (gtk_tree_view_column_set_min_width): ditto
8428         (gtk_tree_view_column_set_max_width): ditto
8429         (gtk_tree_view_column_set_title): ditto
8430         (gtk_tree_view_column_set_clickable): ditto
8431         (gtk_tree_view_column_set_widget): ditto
8432         (gtk_tree_view_column_set_justification): ditto
8433
8434 2001-01-09  Havoc Pennington  <hp@redhat.com>
8435
8436         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
8437         there are no rows in the model
8438
8439         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
8440         NULL, then return the start of the list
8441
8442         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
8443         if we can't get any rows from an empty model 
8444
8445         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
8446         extraneous * after function pointer typedef usage
8447
8448         * Makefile.am: don't specify full path to cp and rm
8449
8450         * gtk/gtkcellrenderertextpixbuf.c
8451         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
8452         NULL before dereferencing, fixes a segfault that happened from
8453         time to time
8454
8455         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8456         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
8457         and reindent the function
8458         (gtk_cell_renderer_pixbuf_get_size): indentation
8459
8460         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8461         we quit it
8462         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8463         (gtk_dialog_set_default_response): New function, to set default
8464         button
8465         (gtk_dialog_set_response_sensitive): New function, to set 
8466         sensitivity of buttons
8467
8468         * gtk/gtkcellrendererpixbuf.c
8469         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8470         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8471
8472         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8473         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8474         also boxed types.
8475         (_gtk_tree_data_list_value_to_node): ditto
8476
8477         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8478         --gtk-debug=tree
8479
8480         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8481
8482         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8483
8484 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8485
8486         * gdk/win32/gdkevents-win32.c: Implement better mouse
8487         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8488         (find_window_for_pointer_event): New function.
8489         (gdk_event_translate): Use it when handling mouse events.
8490
8491 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8492
8493         * configure.in:
8494         Added --with-included-loaders option
8495
8496         * gdk-pixbuf/Makefile.am:
8497         * gdk-pixbuf/gdk-pixbuf-io.c:
8498         Add support for including selected gdk-pixbuf loaders only.
8499
8500         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
8501         gtk_window_set_has_frame):
8502         Added inline documentation.
8503
8504         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
8505         * docs/reference/gdk/tmpl/windows.sgml:
8506         Added inline documentation.
8507
8508 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
8509
8510         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
8511         realizing buttons that have already been realized.
8512
8513 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
8514
8515         * tests/testtreeview.c (main): Show menu items before adding to
8516         option menu.
8517
8518         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
8519         around if we kill them.
8520
8521         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8522         Return if we pass in a NULL model.
8523
8524 2001-01-08  Havoc Pennington  <hp@redhat.com>
8525
8526         * tests/testtreeview.c: hack on this some
8527
8528         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
8529         gtk_tree_store_set_valist, v is for arrays, valist for varargs
8530         list
8531         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
8532
8533         * gtk/gtkliststore.h: Add varargs set() and get() convenience
8534         functions
8535
8536 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8537
8538         * gtk/gtkwindow-decorate.[hc]:
8539         * gtk/Makefile.am:
8540         New files. Contains an implementation of a minimal WM for
8541         linux-fb.
8542
8543         * gtk/gtkwindow.h:
8544         Add the possibility for GtkWindows to specify a frame. This
8545         is used for the window decoration code, but could concievably
8546         be used for X programs too (xmms style windows).
8547         GtkWindow->frame is the toplevel window if the window is framed.
8548         The signal frame_event gets all events that are targeted to
8549         GtkWindow->frame.
8550         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
8551         
8552         * gtk/gtkwindow.c:
8553         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
8554         Call out to gtkwindow-decorate.c for WM support in linx-fb.
8555
8556 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8557
8558         * docs/README.linux-fb:
8559         Correct filename ~/.pangoft2_aliases
8560
8561         * gdk/gdkwindow.h:
8562         Added new function gdk_window_get_decorations.
8563
8564         * gdk/linux-fb/gdkfb.h:
8565         Removed _gdk_window_get_decorations declaration.
8566         Renamed _gdk_window_set_child_handler to
8567         gdk_fb_window_set_child_handler.
8568
8569         * gdk/linux-fb/gdkwindow-fb.c:
8570         Renamed _gdk_window_set_child_handler to
8571         gdk_fb_window_set_child_handler.
8572
8573         * gdk/x11/gdkwindow-x11.c:
8574         New function gdk_window_get_mwm_hints().
8575         Implemented gdk_window_get_decorations.
8576
8577         * docs/reference/gdk/tmpl/windows.sgml:
8578         * docs/reference/gdk/gdk-sections.txt:
8579         Added gdk_window_get_decorations docs.
8580         
8581 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
8582
8583         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
8584         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
8585         gdk_fb_window_send_crossing_events):
8586         Possibly send focus events when the mouse moves from one
8587         window to another.
8588
8589 2001-01-07  Tor Lillqvist  <tml@iki.fi>
8590
8591         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
8592         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
8593         to match current API.
8594
8595         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
8596         environment variable is set, don't call g_error when on a
8597         palettized (PseudoColor) display. Some people want to use GTK+ 
8598         in 256-colour mode even though works only partially.
8599
8600         * gdk/gdk.def
8601         * gtk/gtk.def
8602         * gtk/makefile.mingw.in: Update.
8603
8604 2001-01-05  Havoc Pennington  <hp@redhat.com>
8605
8606         * tests/testtreeview.c: hack on this a bit
8607
8608         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
8609         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
8610
8611         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
8612         was spelled incorrectly
8613         (GTK_IS_TREE_MODEL_SIMPLE): ditto
8614
8615         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
8616         from gtk_tree_view_set_headers_active   
8617
8618         * gtk/gtktexttag.c:
8619         (gtk_text_tag_get_property): handle PROP_DIRECTION
8620         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
8621         properties, bug 40235
8622
8623         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
8624         forward_to_line_end
8625
8626 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
8627
8628         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
8629         modules/input/gtkimcontextxim.c: Adapt to new prototypes
8630         for unicode,locale,filename conversion functions.
8631
8632 2001-01-05  Havoc Pennington  <hp@redhat.com>
8633
8634         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
8635         broken if called on the first position in the buffer.
8636
8637         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
8638         forward_to_delimiters to be called only if we aren't already at
8639         the delimiters.
8640
8641 2001-01-05  Havoc Pennington  <hp@redhat.com>
8642
8643         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
8644
8645 2001-01-05  Alexander Larsson  <alexl@redhat.com>
8646
8647         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
8648         colormap in here. Sync from X port.
8649         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
8650         Sync from X port.
8651         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
8652         This happens now and then, and i don't think it is a bug.
8653         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
8654         != endpoint.
8655         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
8656         GDK_LINE_SOLID.
8657
8658         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
8659         some of the fields filled in at least.
8660
8661         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
8662         miLineArcD is no more, remove it from the function definition.
8663
8664 2001-01-04  Havoc Pennington  <hp@redhat.com>
8665
8666         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
8667         this
8668
8669         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
8670         user_data instead of tree_node
8671
8672         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
8673         TREE_VIEW_COLUMN_SIZE
8674
8675         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
8676         "size" field to "width" finishes bug 40061
8677
8678         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
8679         for bitfields, bug 40268
8680
8681 2001-01-04  Havoc Pennington  <hp@redhat.com>
8682
8683         Rename some stuff:
8684         
8685         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
8686
8687         s/GtkModelSimple/GtkTreeModelSimple/g;
8688         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
8689         s/gtk_model_simple/gtk_tree_model_simple/g;
8690         s/gtkmodelsimple/gtktreemodelsimple/g;
8691
8692         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
8693
8694         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
8695         s/column_set_col_type/column_set_sizing/g;
8696
8697         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
8698         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
8699
8700         s/GtkCellRendererType/GtkCellRendererState/g;
8701         
8702         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
8703         (gtk_cell_renderer_toggle_class_init): change "state" property to
8704         "active", to match GtkToggleButton
8705         (gtk_cell_renderer_toggle_get_active): new function, bug
8706         40269
8707         (gtk_cell_renderer_toggle_set_active): new function
8708         (gtk_cell_renderer_toggle_set_property): route changes to toggle
8709         state through gtk_cell_renderer_set_active
8710
8711 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8712
8713         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8714         temporarily until they work again.  Brought up to date with
8715         changes in the model.
8716         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8717         model.
8718
8719 2001-01-04  Havoc Pennington  <hp@redhat.com>
8720
8721         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8722         equal to the line length, then position iterator before paragraph 
8723         separators. Fixes crash reported by Mikael Hermansson when
8724         pressing left arrow from the start of a line.   
8725
8726         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8727         about byte indexes off the end
8728         (iter_set_from_char_offset): add g_error about char offsets
8729         off the end
8730
8731 2001-01-03  Havoc Pennington  <hp@redhat.com>
8732
8733         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8734
8735         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8736         of private functions; remove inclusion of private headers.
8737
8738         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8739         function, so we don't need private functions in gtktextdisplay.c
8740
8741         * gtk/gtktextiterprivate.h: underscore-ification
8742
8743         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8744         to instead say "only useful to implement widgets"
8745
8746         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8747         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8748         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8749
8750         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8751         This function was completely broken
8752
8753         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8754
8755         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8756
8757         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8758
8759         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8760
8761         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8762
8763         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8764
8765         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8766         gtk_paint_layout
8767
8768         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8769         gtk_paint_layout
8770
8771         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8772         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8773         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8774         which were not implemented.     
8775
8776         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8777         insert_pixbuf signal. Rename delete_text to delete_range since it
8778         also deletes pixbufs and child anchors. This almost closes bug
8779         40245 (still need to deal with child anchors)
8780
8781         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8782         insert_pixbuf, change signal names as appropriate, change types of
8783         signals taking marks/tags to have the specific type, not just
8784         G_TYPE_OBJECT
8785         
8786         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8787         closes bug 40051
8788
8789         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8790         unnecessary remove_contents() call
8791         (gtk_option_menu_class_init): add a "changed" signal, closes
8792         bug 40039
8793         (gtk_option_menu_update_contents): emit "changed" if the 
8794         active menu item changes
8795
8796         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8797         cast to GtkObject, reported by Jonas Borgstrom
8798         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8799         we can't do stuff with side effects in finalize. Instead, spew a
8800         warning if the loader isn't closed.
8801
8802         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8803         colormap in here, non-X ports probably need to sync to this change
8804
8805         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8806         assertion that colormap != NULL, you can set the colormap to NULL
8807         if you like.
8808         
8809         * Makefile.am: remove gtk-config-2.0
8810
8811         * configure.in: Use pkg-config to locate GLib. Remove
8812         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8813         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8814         Use pkg-config to locate Pango. Output correct Pango libs to
8815         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8816
8817         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8818         files
8819         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8820         X11 pc files
8821
8822         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8823         unref from here
8824
8825 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8826
8827         * configure.in:
8828         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8829
8830 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8831
8832         * gtk/gtktextlayout.c
8833         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8834         variable when moving back onto a single line.
8835
8836 2001-01-01  Havoc Pennington  <hp@redhat.com>
8837
8838         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8839
8840         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8841
8842         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8843         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8844
8845 2001-01-01  Havoc Pennington  <hp@redhat.com>
8846
8847         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8848
8849         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8850         GtkTextAttributes
8851
8852         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8853         #40246
8854         (gtk_text_attributes_copy_values): rename from 
8855         gtk_text_attributes_copy
8856         (gtk_text_attributes_copy): a more standard GTK copy function, 
8857         which returns a new object
8858
8859 2001-01-01  Havoc Pennington  <hp@redhat.com>
8860
8861         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8862         
8863         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8864         don't fill in tree_view->priv->selection, kind of an unexpected
8865         side effect
8866
8867         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8868         gtkintl.h
8869         
8870         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8871         gtkintl.h
8872         (gtk_cell_renderer_get_property): remove calls to g_value_init
8873
8874         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8875         gtkintl.h
8876
8877         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8878         and include gtkintl.h
8879         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8880         property names
8881
8882         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8883         GtkTreeSelection
8884         (_gtk_tree_selection_new_from_with_view): rename, return
8885         GtkTreeSelection
8886         (_gtk_tree_selection_set_tree_view): rename with uscore
8887         (gtk_tree_selection_get_selected): fill in the "model" out param
8888         first, so it gets filled in even if we return at the top of the 
8889         function
8890         (gtk_tree_selection_real_select_all): add a comment and an else{}
8891         to clarify this a bit
8892         (gtk_tree_selection_real_unselect_all): add the same else{}
8893
8894         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8895         set_tree_view to have underscore prefixes, move them to the
8896         private header, fix return type of new_with_tree_view
8897         (struct _GtkTreeSelection): mark struct
8898         fields private  
8899
8900         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8901         GtkTreeModelFlags, not a guint
8902         (gtk_tree_path_prev): return gboolean not gint
8903         (gtk_tree_path_up): return gboolean not gint
8904
8905         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8906         return GtkTreeModelFlags, not a guint
8907
8908         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8909         that child model is non-null before unrefing it
8910         (g_value_int_compare_func): make this a qsort compare func, not 
8911         a boolean predicate
8912
8913         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8914         (add -umn to the end), and mark it unimplemented
8915         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8916         I don't see what it's for - doesn't the model always sort itself?
8917         (gtk_tree_model_sort_set_compare): this had the wrong signature
8918
8919         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8920         Fix the docs to say that it destructively replaces existing
8921         attributes (previously said that it added attributes).
8922         (gtk_tree_view_column_set_visible): canonicalize bool before
8923         equality testing. Also, check for realization before
8924         hiding/showing the tree_column->window; if this window could exist
8925         before realization, then it's busted and needs fixing, we can't 
8926         create GDK resources pre-realization. Also, remove
8927         superfluous queue_resize(), since set_size() does that for us.
8928         (gtk_tree_view_column_set_col_type): check realization before 
8929         using tree_column->window
8930
8931         * gtk/gtktreedatalist.c: fix filename in copyright notice
8932
8933 2000-12-31  Havoc Pennington  <hp@pobox.com>
8934
8935         * gtk/gtktextview.c: Rearrange all the
8936         scroll-while-dragging-or-selecting code to be different, not
8937         necessarily better. ;-)
8938         (gtk_text_view_scroll_to_mark): Change this
8939         function to take within_margin as a fraction instead of a pixel
8940         value, and to take alignment arguments (indicating where to align 
8941         the mark inside the visible area)
8942         
8943         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8944         to GtkObject
8945
8946         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8947         behavior so that offsets past the end of the line are not 
8948         allowed, and an offset equal to the line length moves the iterator
8949         to the next line
8950         (gtk_text_iter_set_line_index): make parallel change
8951         (gtk_text_iter_get_bytes_in_line): add this function
8952         
8953         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8954         of byte indexes off the end of the line; byte index at the end of
8955         the line now returns FALSE and doesn't fill in the requested
8956         values, byte index past the end of the line is an error.  Also,
8957         don't allow -1 offset anymore, since its meaning is unclear.
8958
8959         This change exposes some bug in visual cursor motion, where we
8960         end up with a huge invalid byte index; needs fixing. Symptom of 
8961         bug is a crash when you hit up arrow.
8962         
8963         (_gtk_text_line_char_locate): match the change to byte_locate
8964
8965         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8966         from start of line properly. fixes bug reported by Mikael
8967         Hermansson where backspace would delete all text before the
8968         cursor.
8969
8970 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8971
8972         * gdk/win32/gdkwindow-win32.c
8973         (gdk_window_impl_win32_get_visible_region): New function, as in
8974         the X11 backend.
8975         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8976         instead of duplicating the same code here.
8977
8978         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8979         GDK_COLORMAP macro.
8980
8981         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8982         destroy function.
8983         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8984         access that.
8985
8986         * gtk/gtk.def: Update.
8987
8988         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8989
8990 2000-12-30  Havoc Pennington  <hp@pobox.com>
8991
8992         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
8993         colormap on input only windows, to avoid special cases all over
8994         the code for these windows.
8995
8996 2000-12-26  Tor Lillqvist  <tml@iki.fi>
8997
8998         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
8999         we are on a palettized display ("PseudoColor" in X11), as the code
9000         for that doesn't work anyway, and never has.
9001
9002 2000-12-22  Alexander Larsson  <alexl@redhat.com>
9003
9004         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
9005         Don't use isprint() for chars > 255.
9006
9007 2000-12-21  Havoc Pennington  <hp@redhat.com>
9008
9009         * tests/testtreeview.c: more work
9010
9011 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9012
9013         * docs/README.linux-fb:
9014         Update the docs to the new pangoft2 way.
9015
9016 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9017
9018         * configure.in:
9019         For linux-fb get the pangoft2 cflags and libs. This needs a recent
9020         pango version.
9021         Remove modules/linux-fb/Makefile.
9022
9023         * gdk/linux-fb/gdkdrawable-fb2.c:
9024         Render glyphs using freetype.
9025
9026         * gdk/linux-fb/gdkfb.h:
9027         Add new fb-specific functions needed for managing windows.
9028
9029         * gdk/linux-fb/gdkmain-fb.c:
9030         Remove gdk_font_init/fini() calls.
9031
9032         * gdk/linux-fb/gdkpango-fb.c:
9033         Remove old implementation. Use pangoft2 instead.
9034
9035         * gdk/linux-fb/gdkprivate-fb.h:
9036         Remove PangoFBFont and related stuff.
9037
9038         * gdk/linux-fb/gdkwindow-fb.c:
9039         Implement drawable->get_visible_region.
9040         Implement support for _gdk_window_set_child_handler () and
9041         _gdk_window_get_decorations().
9042
9043         * modules/Makefile.am:
9044         Remove linux-fb subdir.
9045
9046         * modules/linux-fb/*:
9047         Removed all.
9048         
9049 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
9050
9051         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
9052         calls, as they are no longer needed.
9053
9054         * gtk/gtktreemodelsort.c: Fix up the comparison code.
9055         
9056         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
9057         figure out how to emit a signal on an interface.
9058
9059 2000-12-20  Havoc Pennington  <hp@redhat.com>
9060
9061         * tests: new directory to contain tests, gtk/test* should move
9062         here sometime (with appropriate on-cvs-server hackery)
9063
9064         * tests/testtreeview.c, tests/Makefile.am: a test
9065         
9066         * configure.in (AC_OUTPUT): add tests/Makefile
9067
9068         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
9069         and "invisible_set" which were missing
9070
9071         * gtk/gtkrbtree.h: some cheesy indentation fix
9072         
9073 2000-12-20  Alexander Larsson  <alexl@redhat.com>
9074
9075         * gtk/gtkinvisible.c (gtk_invisible_realize):
9076         Attach the style to the window so that the style it is not
9077         leaked when unrealizing the window.
9078
9079 2000-12-18  Havoc Pennington  <hp@redhat.com>
9080
9081         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
9082         begin/end user action where appropriate
9083         (gtk_text_view_commit_handler): add begin/end user action
9084
9085         * gtk/gtktextbuffer.c: add begin/end user action signals, and
9086         bracket interactive operations with begin/end user action pair.
9087         
9088         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
9089         "interactive" arg from insert_text and delete_text signals.
9090         Add begin_user_action, end_user_action signals
9091         (gtk_text_buffer_begin_user_action): 
9092         (gtk_text_buffer_end_user_action): New functions to delimit 
9093         a user-visible action
9094
9095         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
9096         signals.
9097         
9098 2000-12-18  Havoc Pennington  <hp@redhat.com>
9099
9100         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
9101         was pretty non-working.
9102
9103         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
9104         by passing the length to g_utf8_validate().
9105
9106 2000-12-16  Havoc Pennington  <hp@pobox.com>
9107
9108         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
9109         Port to GObject, can go back in gdk-pixbuf after setting up 
9110         a gdk-pixbuf-marshal.h header over there.
9111
9112         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
9113         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
9114         args
9115         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
9116         set
9117         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
9118         here, do it when we create the buttons later
9119         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
9120         (gtk_tree_view_map): paranoia checks that column->button is shown 
9121         and unmapped
9122         (gtk_tree_view_size_request): only request visible children.
9123         Move header size calculation in here, for cleanliness, and 
9124         to maintain invariants for child widgets if we eventually 
9125         let users set different children inside the buttons
9126         (gtk_tree_view_map_buttons): factor out code to map buttons,
9127         since it was being called several times
9128         (gtk_tree_view_size_allocate_buttons): move_resize the drag
9129         windows instead of just moving them; their height may change 
9130         if we allow random widgets in there, or the theme changes.
9131         (gtk_tree_view_size_allocate): move button size allocation 
9132         above emitting the scroll signals, to ensure a sane state when we
9133         hit user code
9134         (gtk_tree_view_button_release): remove queue_resize after
9135         tree_view_set_size(), set_size() will handle any resize queuing
9136         that's needed
9137         (gtk_tree_view_focus_in): just queue a draw, don't fool with
9138         draw_focus goo
9139         (gtk_tree_view_focus): use gtk_get_current_event() and
9140         gdk_event_get_state()
9141         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
9142         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
9143         semicolon
9144         (gtk_tree_view_create_button): show the button here
9145         (gtk_tree_view_button_clicked): actually emit the clicked signal
9146         on the column
9147         (_gtk_tree_view_set_size): return right away if the size is
9148         unchanged, as a cheesy optimization
9149         (gtk_tree_view_setup_model): rename set_model_realized to 
9150         setup_model to match the flag that indicates whether we've 
9151         called it
9152         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
9153         exist, because set_scroll_adjustment does that and it shouldn't
9154         matter what order you call these in
9155         (gtk_tree_view_get_vadjustment): ditto
9156         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
9157         for paranoia
9158         (gtk_tree_view_set_headers_visible): call
9159         gtk_tree_view_map_buttons() instead of using cut-and-paste code
9160         (gtk_tree_view_append_column): clarify whether the return value
9161         is the count of columns before or after, and do the increment 
9162         separately from the return statement so you can tell from the code.
9163         (gtk_tree_view_remove_column): ditto
9164         (gtk_tree_view_insert_column): ditto
9165         (gtk_tree_view_get_column): remove g_return_if_fail for columns
9166         outside the existing range, the docs say that outside-range
9167         columns are allowed, so we handle them as documented. (Presumably
9168         this allows a nice loop with column != NULL as test.)
9169         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
9170         mean (left/right/center etc.).
9171         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
9172         (gtk_tree_view_expand_row): add docs
9173         (gtk_tree_view_collapse_row): add docs
9174
9175         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
9176         function to emit the clicked signal on a column
9177         
9178         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
9179         state of an event
9180         (gdk_event_get_time): don't treat GDK_SCROLL 
9181         as a button event, remove default case from switch so gcc 
9182         will whine if we don't explicitly handle all event types
9183
9184         * gtk/gtktreeselection.h: added some FIXME 
9185         
9186         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
9187         "columns" to "n_columns" and "column" to "columns" for clarity
9188
9189 2000-12-16  Havoc Pennington  <hp@pobox.com>
9190         
9191         * gtk/gtktextiter.c: General cleanup of the log attr iteration
9192         stuff. This should make e.g. the delete key work again in the
9193         text widget...
9194         (gtk_text_iter_forward_cursor_positions): handle negative count
9195         (gtk_text_iter_backward_cursor_positions): handle negative count
9196         (gtk_text_iter_forward_word_ends): handle negative count
9197         (gtk_text_iter_backward_word_starts): handle negative count
9198
9199         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
9200         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
9201         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
9202         GObject. No doubt will cause breakage.
9203
9204         * demos/gtk-demo/textview.c: remove hacks around
9205         non-GObject-ification of the text objects
9206
9207         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
9208         the text tag
9209         
9210 2000-12-14  Havoc Pennington  <hp@pobox.com>
9211
9212         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
9213         that we have Xrender
9214
9215 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
9216
9217         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
9218         Add two virtualized functions gdk_drawable_get_clip_region - to
9219         get the clip region when drawing.
9220         
9221         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
9222         use invalidate_region.
9223
9224         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
9225         region.
9226
9227         * acconfig.h configure.in: Check for Xft. For now, assume
9228         that if Xft is found, Pango was compiled with Xft support
9229         as well.
9230
9231         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
9232         gdk_colormap_query_color().
9233         
9234         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
9235         with Xft if appropriate.
9236
9237         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
9238         a pangoxft context if we have XFT and the environment
9239         variable GD_USE_XFT is set.
9240         
9241         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
9242         and also possibly an XftDraw structure.
9243
9244         * gtk/gtkfontsel.c: Handle the case where the font from the
9245         style doesn't match any of the fonts a bit better.
9246         
9247         * gtk/testgtk.c: Add tabs between directional segments for
9248         hebrew/arabic test. (Not really necessary, just a little
9249         prettier.)
9250
9251 2000-12-14  Havoc Pennington  <hp@redhat.com>
9252
9253         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
9254         reading a file
9255
9256 2000-12-14  Havoc Pennington  <hp@redhat.com>
9257
9258         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
9259         unused call to get_last_line()
9260
9261         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
9262         here until boxed is working (and maybe after that - we should
9263         really not gratuitously break old code)
9264
9265         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
9266         specific types for font_desc and tabs args, move them to
9267         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
9268         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
9269
9270         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
9271         use GTK_TYPE_POINTER for signal signatures as a hack-around
9272
9273         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
9274         PangoTabArray
9275
9276         * gtk/gtktextlayout.c (line_display_iter_to_index): 
9277         make static
9278         (line_display_index_to_iter): make static
9279
9280         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9281         to marshal a string not a boxed
9282
9283         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
9284
9285         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
9286         since the UTF-8 isn't validated yet
9287
9288         * gtk/gtktextsegment.c (char_segment_check_func): don't require
9289         lines to end in '\n'
9290         
9291         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
9292         forward_to_delimiters, and grapheme boundaries
9293         (gtk_text_view_delete_from_cursor): properly handle non-newline
9294         delimiters, and grapheme boundaries
9295
9296         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
9297         to gtk_text_iter_forward_to_delimiters, and make it work properly
9298         if empty lines end with a character other than '\n'
9299
9300         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
9301         position
9302
9303 2000-12-15  Tor Lillqvist  <tml@iki.fi>
9304
9305         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
9306
9307         * gtk/gtk.def
9308         * gdk/gdk.def: Update.
9309
9310         * gdk/win32/gdkmain-win32.c
9311         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
9312         gdkmain-win32.c here.
9313
9314         * gdk/win32/makefile.mingw.in (all): No need to make
9315         gdk-win32res.o here, the makefile one step up will call us to make
9316         it.
9317
9318         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
9319         gdkkeys-win32.
9320
9321         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
9322
9323         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
9324         call to g_source_add().
9325
9326         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
9327         leak. Thanks to Andreas Kemnade.
9328
9329 2000-12-13  Havoc Pennington  <hp@pobox.com>
9330
9331         * gtk/gtktextbtree.h: Remove double _ in front of some functions
9332
9333         * gtk/gtktext*.[hc]: update accordingly
9334         
9335 2000-12-13  Havoc Pennington  <hp@pobox.com>
9336
9337         * gtk/gtktextbtree.h: Put _ in front of every function in this 
9338         header file
9339
9340         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
9341
9342 2000-12-13  Alex Larsson  <alexl@redhat.com>
9343
9344         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
9345         Add support for ps2 intellimouse.
9346
9347         * gdkkeyboard-fb.c:
9348         Move shift-F1 repaint handling to xlate handler only.
9349         
9350         * docs/README.linux-fb:
9351         Add imps2 to docs.
9352         Document the new refresh keys.
9353         
9354 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
9355
9356         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
9357
9358         * gtk/gtkbox.c: change property types from (u)long to (u)int for
9359         ::position and ::padding.
9360
9361         * gtk/gtkcontainer.c: make ::border_width an INT property.
9362
9363         * gtk/gtkpacker.c: make ::position an INT property.
9364
9365         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
9366         guard against NULL h/v scrollbars, since this is used at construction
9367         time.
9368
9369         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
9370         internal gtk_clist_constructor().
9371
9372         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
9373         gtk_ctree_constructor().
9374
9375         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
9376         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
9377
9378         * docs/reference/Makefile.am: fun stuff, disabled docs generation
9379         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
9380
9381         * gtk/gtkwidget.[hc]:
9382         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
9383         and gtk_widget_get().
9384         (gtk_widget_new): use g_object_new_valist().
9385         (gtk_widget_set): use g_object_set_valist().
9386
9387         * gtk/gtkobject.[hc]:
9388         removed gtk_object_arg_get_info(), gtk_object_getv(),
9389         gtk_object_query_args(), gtk_object_newv(),
9390         gtk_object_class_add_signals(),
9391         gtk_object_class_user_signal_new(),
9392         gtk_object_class_user_signal_newv(),
9393         gtk_object_arg_set(), gtk_object_arg_get(),
9394         gtk_object_args_collect(),
9395         gtk_object_default_construct(),
9396         gtk_object_constructed(),
9397         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
9398         removed nsignals, signals and n_args members from GtkObjectClass.
9399         (gtk_object_new): use g_object_new_valist().
9400         (gtk_object_set): use g_object_set_valist().
9401         (gtk_object_get): use g_object_get_valist().
9402         
9403         * gtk/gtkcompat.h: define gtk_object_default_construct().
9404         
9405         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
9406         g_object_new().
9407
9408         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
9409         fucntions, cleaned up method assignments (make sure your structures
9410         are setup properly before calling out). removed all GTK_CONSTRUCTED
9411         hacks ;)
9412
9413 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
9414
9415         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
9416         off-by-one error in checks. (Dave Lambert)
9417
9418 2000-12-12  Alexander Larsson  <alexl@redhat.com>
9419
9420         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
9421         Don't free gdk_fb_keyboard twice.
9422
9423 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
9424
9425         * gtk/testgtk.c:
9426         (create_tooltips): 
9427         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
9428         use GObject swapped_signal:: properties instead.
9429
9430         * gtk/gtkcellrenderertoggle.c: 
9431         * gtk/gtkcellrenderertextpixbuf.c: 
9432         * gtk/gtkcellrenderertext.c: 
9433         * gtk/gtkcellrendererpixbuf.c: 
9434         * gtk/gtkcellrenderer.c:
9435         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
9436         missing warnings for invalid property ids, install properties
9437         with g_object_class_install_property() now.
9438         
9439         * gtk/gtksignal.c:
9440         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
9441         
9442 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
9443         
9444         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
9445         to determine if a window is the focus widget within
9446         its toplevel.
9447
9448         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
9449         to be boolean.
9450
9451         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
9452         of the case where the container CAN_FOCUS to here instead
9453         of having it in each individual move-the-focus place.
9454
9455         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
9456         focusing to be geometric in a much more obvious sense. Arrowing
9457         around is still non-intuitive because it isn't perfect and
9458         because entries, etc, grab the arrow keys, but it at least
9459         usually will do what you expect now.
9460         
9461         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9462         file.
9463
9464         * gtk/gtknotebook.c: Change tabs to be a single item in
9465         the focus chain. Make movement of focus on tabs with arrow
9466         keys wrap around.
9467         
9468         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9469         CHECK_FIND_CHILD macro to give informative error messages
9470         instead of silent returns.
9471
9472         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9473         flag since we handle GdkReturn on the tabs.
9474
9475         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9476         windows rather than sending expose events directly.
9477
9478         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9479         definition for GtkNotebookPage into .c file, since it is private.
9480
9481         * gtk/testgtk.c (create_notebook): Add option for 
9482         testing borderless notebook.
9483
9484         * gtk/testgtk.c (page_switch): Removed egregious poking
9485         around in GTK+ internals.
9486
9487         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9488
9489         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9490         properly through gtk_clist_focus. Make the title headers a
9491         single item in the tab-focus chain, and make left-right wrap
9492         around.
9493
9494         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9495         focus method so that wrapping around works properly.
9496
9497         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9498         that is handled for the widget now. 
9499
9500 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
9501
9502         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
9503         widgets as TOPLEVEL.
9504
9505         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
9506         TOPLEVEL widgets are containers.
9507
9508         * gtk/gtkinvisible.h: Remove useless include.
9509
9510 2000-12-11  Havoc Pennington  <hp@redhat.com>
9511
9512         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
9513         Handle chopping off \r\n and 0x2029 in addition to \n before
9514         passing to PangoLayout
9515
9516         * gtk/gtkimcontextsimple.c
9517         (gtk_im_context_simple_get_preedit_string): 
9518         return an empty string if no match is pending
9519
9520         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
9521         assertion that the returned preedit string was sane
9522
9523         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
9524         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
9525         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
9526
9527 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
9528
9529         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
9530         Fix up finalizer to chain to its parent.
9531
9532 2000-12-11  Alexander Larsson  <alexl@redhat.com>
9533
9534         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
9535         Clearified the difference between the keyboard types. Wrote a note
9536         about the magic sysrq key to get out of raw mode.
9537
9538 2000-12-09  James Henstridge  <james@daa.com.au>
9539
9540         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
9541         member to hold masks for detecting the start of a protocol packet.
9542         (mouse_devs): add packet start masks for ps2 and ms device types.
9543         Left the mask for fidmour blank, as I have no idea what it should
9544         be.
9545         (handle_mouse_io): skip bytes until we get to the start of a
9546         packet.  My Logitech mouse seems to be passing an extra NULL pad
9547         byte, and GPM does a similar thing here.
9548         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
9549         this is the ms mouse driver.
9550         (gdk_fb_mouse_ms_packet): fix up button handling, which was
9551         completely broken except for button1.  It was checking the wrong
9552         bit in the packet for the status of the right mouse button, and
9553         wrongly assuming right == button2 rather than 3.  I fixed that and
9554         also added support for middle button (button2).
9555
9556 2000-12-08  Havoc Pennington  <hp@redhat.com>
9557
9558         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
9559         that cause a segfault on text insertion
9560
9561         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
9562         warning
9563
9564         * gtk/gtktextiter.c (test_log_attrs): use
9565         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
9566
9567         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
9568         Get log attrs for a line, using a cache stored on the buffer
9569         
9570         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
9571         reported by Jeff Franks
9572
9573 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9574
9575         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
9576         /dev/ttyS0 -> /dev/mouse
9577
9578 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9579
9580         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
9581         Added dummy gdk_fontset_load.
9582
9583 2000-12-08  Alexander Larsson  <alexl@redhat.com>
9584
9585         * docs/README.linux-fb:
9586         * docs/Makefile.am:
9587         Initial GtkFB docs.
9588         
9589         * gdk/linux-fb/Makefile.am:
9590         Define GDK_DATA_PREFIX.
9591
9592         * gdk/linux-fb/gdkmain-fb.c:
9593         Fix typo.
9594         Change default display to /dev/fb0.
9595
9596         * gdk/linux-fb/gdkpango-fb.c:
9597         Add $(prefix)/share/fonts/ to font path.
9598         
9599 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9600
9601         * gdk/linux-fb/gdkkeyboard-fb.c:
9602         New file containing the abstracted keyboard driver. Most code
9603         taken from gdkinput-ps2.c
9604
9605         * gdk/linux-fb/gdkinput-ps2.c:
9606         Removed file.
9607         
9608         * gdk/linux-fb/Makefile.am:
9609         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
9610
9611         * gdk/linux-fb/gdkcolor-fb.c:
9612         display->fb was renamed to display->fb_fd.
9613
9614         * gdk/linux-fb/gdkcursor-fb.c:
9615         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9616
9617         * gdk/linux-fb/gdkinput.c:
9618         Moved gdk_input_init here from gdkinput-ps2.c
9619
9620         * gdk/linux-fb/gdkmain-fb.c:
9621         display->fb was renamed to display->fb_fd.
9622         Now the tty and the console is opened here instead
9623         of in the keyboard driver. Also check GDK_VT to see what
9624         tty to open.
9625         Move gdk_beep () here from gdkinput-ps2.c
9626         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9627
9628         * gdk/linux-fb/gdkmouse-fb.c:
9629         Add header.
9630         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9631         Return correct keyboard modifiers.
9632         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
9633
9634         * gdk/linux-fb/gdkprivate-fb.h:
9635         Add tty and vt info to display.
9636         Add orignal modeinfo storage to display
9637         Update global functions
9638
9639         * gdk/linux-fb/gdkwindow-fb.c:
9640         Added gdk_fb_window_find_focus().
9641         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9642
9643 2000-12-07  Havoc Pennington  <hp@pobox.com>
9644
9645         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
9646         function, noticed by Alex
9647
9648 2000-12-06  Elliot Lee  <sopwith@redhat.com>
9649
9650         * configure.in: Detect freetype properly
9651
9652         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
9653         above.
9654
9655 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9656
9657         * gdk/linux-fb/Makefile.am:
9658         Add gdkmouse-fb.c
9659         
9660         * gdk/linux-fb/gdkmouse-fb.c:
9661         New file. Abstracted the mouse drivers a bit.
9662
9663         * gdk/linux-fb/gdkcursor-fb.c:
9664         The cursor hide/show functions was moved here from gdkinput-ps2.c.
9665
9666         * gdk/linux-fb/gdkinput-ps2.c:
9667         Removed old mouse handling code. Moved cursor handling code
9668         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
9669         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
9670         gdk_mouse_get_info.
9671
9672         * gdk/linux-fb/gdkmain-fb.c:
9673         Pass NULL pointers for x,y in gdk_mouse_get_info call.
9674
9675         * gdk/linux-fb/gdkprivate-fb.h:
9676         Removed public gdk_fb_find_common_ancestor, added and renamed
9677         functions for the new mouse handling code.
9678
9679         * gdk/linux-fb/gdkwindow-fb.c:
9680         Moved gdk_fb_window_send_crossing_events here. added global
9681         variable gdk_fb_window_containing_pointer. made
9682         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
9683         renamed to gdk_mouse_get_info.
9684
9685 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9686
9687         * gdk/linux-fb/gdkevents-fb.c:
9688         Update to match latest gmain/gsource changes.
9689
9690         * gdk/linux-fb/gdkinput-ps2.c:
9691         Bogus gdk_keymap_get_entries_for_keycode implementation so that
9692         it links. Will be implemented later.
9693
9694 2000-12-03  Havoc Pennington  <hp@pobox.com>
9695
9696         * gdk/Makefile.am: add gdkkeys.[hc]
9697
9698         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
9699         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
9700
9701         * acconfig.h, configure.in: add checks and command line options
9702         for XKB
9703
9704         * gdk/x11/gdkkeys-x11.c: Implement the above functions
9705         
9706         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
9707         and group in the key event
9708
9709         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
9710         field with the low-level hardware key code, and a group
9711         field with the keyboard group
9712
9713         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9714         and declare a couple globals used for keymap handling
9715         
9716         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9717         hold down Shift-Control and type a hex number to get a Unicode 
9718         character corresponding to the hex number
9719         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9720         (return bytes not chars)
9721
9722 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9723
9724         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9725         to avoid waste on 64-bit platforms.
9726
9727 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9728
9729         * INSTALL: Fix link to PNG home, remove reference
9730         to fribidi.
9731
9732         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9733         
9734         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9735         tested.)
9736
9737         * gtk/gtkcheckmenuitem.c: Permanently turn on
9738         always_show_toggle.
9739
9740         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9741         be NULL. (Vladimir Klebanov, #26545)
9742
9743         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9744         some signed/unsigned comparison problems. (#6510,
9745         David Kaelbling)
9746
9747         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9748         return type to boolean (Oskar Liljeblad, #18648)
9749
9750 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9751
9752         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9753         Remove bogus colormap setting.
9754
9755 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9756
9757         * gdk/linux-fb/gdkcolor-fb.c:
9758         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9759
9760         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9761         Must set colormap.
9762         
9763 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9764
9765         * docs/tutorial/gtk-tut.sgml: DND updates
9766
9767 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9768
9769         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9770         Remove old debug g_warning().
9771         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9772         or an implementation, just pass the implementation to draw_drawable_2.
9773         
9774         * gdk/linux-fb/gdkprivate-fb.h:
9775         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9776
9777         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9778         clear and invalidate area when window is destroyed.
9779         (send_map_events): Remove old commented out code.
9780
9781 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9782
9783         * gdk/linux-fb/gdkpango-fb.c:
9784         Use italic instead of oblique in font aliases.
9785         
9786         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9787         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9788         other unsupported functions.
9789
9790 2000-12-04  Havoc Pennington  <hp@redhat.com>
9791
9792         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9793
9794         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9795
9796         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9797
9798         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9799         hack to avoid infinite loops (synthetic expose event) - 
9800         Owen has more appropriate fixes in a branch he'll check in later.
9801
9802         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9803         separator, CR, and CRLF as line ends
9804
9805         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9806         into lines using pango_find_paragraph_boundary(); other bits of
9807         the widget are still going to be broken if the boundary isn't '\n'
9808         though
9809
9810 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9811
9812         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9813         multiply.
9814
9815         * gdk/linux-fb/gdkpango-fb.c:
9816         Copied some 26.6 scaling macros from pango to clean up the rounding.
9817         (pango_fb_font_get_glyph_info): Correct sign on x value.
9818
9819         * gdk/linux-fb/gdkprivate-fb.h:
9820         Removed unreferenced external functions.
9821
9822         * modules/linux-fb/Makefile.am: Use ` instead of '.
9823
9824         * modules/linux-fb/basic.c:
9825         Remove dead code. In particular the dummy lang engine which broke all
9826         pango layouts in GtkFB. Don't include tables-big.i anymore.
9827
9828         * modules/linux-fb/tables-big.i:
9829         Upgrade to latest version from pango. Left for reference, basic_ranges
9830         moved to basic.c.
9831         
9832 2000-12-04  Havoc Pennington  <hp@redhat.com>
9833
9834         Fix bugs Alex found:
9835         
9836         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9837         to "draw"
9838
9839         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9840
9841         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9842
9843         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9844         implementation in here, apparently the expose() implementation was
9845         dead code.
9846
9847 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9848
9849         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9850         Return positive descent.
9851
9852 2000-12-02  Havoc Pennington  <hp@pobox.com>
9853
9854         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9855         method and signal
9856         
9857         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9858         calls gdk_window_process_updates() to push the exposes through
9859         (gtk_widget_class_init): No more draw signal, no
9860         gtk_widget_real_draw()  
9861         
9862         * gtk/gtkbin.c (gtk_bin_draw): remove
9863
9864         * gtk/gtkbox.c (gtk_box_draw): remove
9865
9866         * gtk/gtkbutton.c (gtk_button_draw): remove
9867
9868         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9869
9870         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9871
9872         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9873
9874         * gtk/gtkclist.c (gtk_clist_draw): remove
9875
9876         * gtk/gtkentry.c (gtk_entry_draw): remove
9877
9878         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9879
9880         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9881
9882         * gtk/gtkframe.c (gtk_frame_draw): remove
9883
9884         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9885
9886         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9887
9888         * gtk/gtklayout.c (gtk_layout_draw): remove
9889
9890         * gtk/gtklist.c (gtk_list_draw): remove
9891
9892         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9893
9894         * gtk/gtkmenu.c (gtk_menu_draw): remove
9895
9896         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9897
9898         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9899
9900         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9901
9902         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9903
9904         * gtk/gtkpacker.c (gtk_packer_draw): remove
9905
9906         * gtk/gtkrange.c (gtk_range_draw): remove
9907
9908         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9909
9910         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9911
9912         * gtk/gtktable.c (gtk_table_draw): remove
9913
9914         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9915
9916         * gtk/gtktext.c (gtk_text_draw): remove
9917
9918         * gtk/gtktextview.c (gtk_text_view_draw): remove
9919
9920         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9921
9922         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9923
9924         * gtk/gtktree.c (gtk_tree_draw): remove
9925
9926         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9927
9928         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9929
9930         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9931
9932         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9933
9934         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9935
9936         * gtk/gtkwindow.c (gtk_window_draw): remove
9937
9938 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9939
9940         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9941         a GtkToggleButton is both insensitive and active, it was being
9942         drawn by the GtkButton draw handler which doesn't check the
9943         state. Now it's calling gtk_toggle_button_paint instead.
9944         
9945 2000-12-01  Havoc Pennington  <hp@redhat.com>
9946
9947         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9948         dangling pointers to the appearance attributes from the 
9949         line display
9950
9951         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9952         width/height to mean "full width/height of drawable"
9953
9954         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9955         click to select word/line
9956         
9957         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9958         when getting log attrs. Get a slice, so that pixmaps and stuff
9959         are properly handled.
9960
9961         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9962         paste into the selection (replaces selection now, previously
9963         crashed or added to selection). Reveals longstanding btree bug -
9964         select multiple lines, middle-click on the selection, boom. This
9965         isn't related to my changes though.
9966
9967         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9968         PangoLogAttrs changes
9969         (gtk_entry_move_backward_word): ditto
9970
9971         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9972         functions return bool whether the iter moved onto a
9973         dereferenceable position.
9974  
9975         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9976         functions for motion in terms of display lines.
9977
9978         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9979         get the buffer a mark is inside
9980         
9981 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9982
9983         * gdk/linux-fb/Makefile.am:
9984         * modules/linux-fb/Makefile.am:
9985         Freetype 2 final uses freetype-config
9986
9987         * gdk/linux-fb/gdkpango-fb.c:
9988         Upgrade to use Freetype 2 final.
9989         More flexible support for font aliases, this also fixes a bug with
9990         GtkFontSelector, as the aliases must be visible in the font/family list,
9991         or GtkFontSelector reads uninitialized memory.
9992
9993 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
9994
9995         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
9996         XGetIMValues to properly terminate variable argument list, and do
9997         NULL return check for ic_values and xim_styles.
9998
9999         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
10000         Restore preedit state after XmbResetIC().
10001         
10002         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
10003         XvaCreateNestedList() should take XvaNestedList, but not
10004         XvaNestedList*.
10005
10006         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
10007         preedit_draw_callback, preedit_caret_callback): Match
10008         "preedit-changed" signal name to "preedit_changed" to be
10009         consistent to the spec.
10010
10011         * gtk/gtkimcontextsimple.c (check_table):
10012         Match "preedit-changed" to "preedit_changed" to be consistent
10013         to the spec.
10014
10015 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
10016
10017         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
10018         gc->clip_region == NULL>
10019
10020 2000-11-30  Tor Lillqvist  <tml@iki.fi>
10021
10022         Changes by Hans Breuer:
10023         
10024         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
10025         Dont't use negative width and height as max_hints. This fixes
10026         Owen's recent testgtk changes for win32.
10027
10028         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
10029         gdk_win32_hdc_release): These are exported and may be called with
10030         other drawable types than our GdkDrawableImplWin32 (?).
10031
10032         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
10033         so always #define USE_BACKING_STORE.
10034
10035         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
10036         of printf for debugging output.
10037
10038         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
10039         
10040         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
10041
10042         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
10043         declaration.
10044
10045         * gtk/gtktexttypes.h: Ditto.
10046
10047         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
10048         (GDK_VoidSymbol) also if in case of arg check failure.
10049
10050         * gtk/gtkimcontextsimple.c
10051         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
10052         position to the pointer, but to the variable it points to.
10053
10054         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
10055
10056         * gtk/gtk.def: Updates.
10057
10058 2000-11-29  Elliot Lee  <sopwith@redhat.com>
10059
10060         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
10061         GTK_TYPE_TREE_MODEL.
10062
10063 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10064
10065         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
10066         Set the size of the font from the description.
10067         (gdk_text_width): Gross hack that calculates the width
10068         of text by text_length * size/2. This is necessary because
10069         GtkLabel does some ugly gtk_string_width call to calculate
10070         an good size.
10071         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
10072
10073 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
10074
10075         * docs/tutorial/gtk-tut.sgml: DND updates
10076
10077 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10078
10079         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
10080         If you pass width or height == 0 to gdk_window_clear_area they
10081         should be calculated from the window size.
10082
10083 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10084
10085         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
10086         a grab, but no grab-cursor, use the cursor from the grabbed
10087         window. (gdk_fb_window_send_crossing_events): Send normal
10088         enter/leave notifications if grab and owner_events == TRUE.
10089
10090 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10091
10092         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10093         Do implicit button grabs, even if the window doesn't
10094         want the event.
10095         (gdk_fb_window_send_crossing_events): If there is a
10096         grab, only the grabbed window gets normal enter/leave
10097         notifications. On ungrab go from grabbed window to current.
10098         Don't send any notification to b when propagating from c -> b.
10099         If setting a grab on window, don't set prev_window.
10100         (handle_mouse_input): Send enter/leave events to the window the
10101         mouse is over, not the grabbed one.
10102         
10103 2000-11-28  Elliot Lee  <sopwith@redhat.com>
10104
10105         * gdk/gdkregion-generic.c: Zap warning.
10106         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
10107         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
10108
10109 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
10110
10111         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10112         The cursor should be hidden if it is part of either the
10113         source or destination region. Not only if it is in both.
10114         (gdk_window_set_transient_for): Silence warnings.
10115
10116 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10117
10118         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
10119         The default mode in X is Pie Arcs, therefore that is
10120         what Gtk+ uses.
10121
10122 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10123
10124         * gdk/linux-fb/gdkinput-ps2.c:
10125         Implement correct EnterNotify/LeaveNotify:
10126         (gdk_fb_window_send_crossing_events): New function that sends
10127         all GdkCrossingEvents from the last mouse-window to the specified
10128         destination.
10129         (gdk_fb_window_visibility_crossing): Removed function.
10130         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
10131         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
10132         instead of gdk_window_get_pointer() for better readability.
10133
10134         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
10135         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
10136
10137         * gdk/linux-fb/gdkprivate-fb.h:
10138         removed gdk_fb_window_visibility_crossing, added
10139         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
10140
10141         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
10142         New function that finds the least common ancestor of two windows.
10143         (gdk_window_show, gdk_window_hide):
10144         Use gdk_fb_window_send_crossing_events.
10145         (gdk_fb_window_move_resize): Send configure events to toplevel
10146         windows. Use gdk_fb_window_send_crossing_events.
10147
10148 2000-11-27  Havoc Pennington  <hp@redhat.com>
10149
10150         * gtk/gtkprivate.h (enum): Remove a trailing comma
10151
10152 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
10153
10154         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
10155         the "changed" callback of the adjustment.  We need to redraw the
10156         spin button's arrows when the adjustment's range changes.
10157         (adjustment_changed_cb): Draw the arrows.
10158         (gtk_spin_button_value_changed): Draw the arrows.
10159
10160 2000-11-23  Alexander Larsson  <alexl@redhat.com>
10161
10162         * gdk/linux-fb/gdkselection-fb.c:
10163         Initial selection implementation.
10164
10165         * gtk/gtkselection.c:
10166         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
10167         requestor in gtk_selection_request.
10168         
10169         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
10170         Added gdk_selection_property atom.
10171
10172         * gdk/linux-fb/gdkprivate-fb.h:
10173         Export _gdk_selection_window_destroyed.
10174         Removed mask_off_x/y from GdkCursorPrivateFB.
10175         Removed hbearing, added top, left to PangoFBGlyphInfo.
10176
10177         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10178         Call _gdk_selection_window_destroyed
10179         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
10180         the root window has been created.
10181         (static_dx_hack, static_dy_hack, compare_draw_rects,
10182         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
10183         in region. They are already sorted. Instead just traverse them in
10184         reverse if draw_direction < 0.
10185         
10186         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10187         Double-clicks must be sent after the normal button_press.
10188         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
10189         
10190         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
10191         Pass _gdk_fb_screen_gc instead of NULL.
10192
10193         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
10194         Initialize gdk_selection_property.
10195         (gdk_event_make): Remove unused code.
10196
10197         * gdk/linux-fb/gdkcursor-fb.c:
10198         Make the pixmap for the cursor the same size as the mask. Also remove
10199         the mask_off_x/y fields in GdkCursorPrivateFB and combine
10200         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
10201         Now the whole cursor is visible.
10202
10203         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10204         Fix bug where xdest+height instead of ydest+height was used
10205         to calculate if the source and dest overlapped. This fixes the
10206         redraw bug when the main window in testgtk was scrolled when
10207         partially covered by a tall window.
10208         Copy rectangles in region in order depending on draw_direction.
10209         Also moved the draw_direction flipping of start_y and end_y into
10210         the gc functions, as this might not be what all of them want.
10211         (gdk_fb_draw_lines): Support dashed lines.
10212         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
10213         so that the text is positioned correctly (was 1 pixel high).
10214
10215         gdk/linux-fb/gdkgc-fb.c:
10216         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
10217         all lines were drawn a pixel to short. Also checked the default of
10218         the rest of the values, and they're the same as X now.
10219
10220         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
10221         Clean up pixel positioning of the glyphs. Just use bgy->top and
10222         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
10223         to all divisions to get correct rounding behaviour.
10224
10225         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
10226         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
10227         Moved start_y/end_y flip into draw_drawable implementations.
10228         Flip also x rendering when draw_direction < 0.
10229         Remove unneccesary multiply with draw_direction.
10230
10231 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
10232
10233         * docs/tutorial/gtk-tut.sgml:
10234           - get rid of gtk_toggle_button_toggled FUD
10235           - start DND section - needs work - based on:
10236                 http://wolfpack.twu.net/docs/gtkdnd/
10237
10238 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10239
10240         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10241         Correct calculation of font metrics. Now GtkEntrys have sane
10242         size.
10243
10244 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10245
10246         * gdk/gdktypes.h:
10247         Add new type GdkSpan
10248         
10249         * docs/reference/gdk/gdk-sections.txt,
10250         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
10251         gdk/gdkregion.h:
10252         Implement and document gdk_region_spans_intersect_foreach.
10253
10254         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
10255         Add new file gdkrender-fb.c which contains all core
10256         rendering code.
10257         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
10258         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
10259         (optimized rectangle fillers).
10260
10261         * gdk/linux-fb/gdkdrawable-fb2.c:
10262         Move all rendering code to gdkrender-fb.c.
10263         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
10264         Use the new span intersection functions in gdk_fb_fill_spans.
10265         gdk_fb_draw_rectangle() clips filled rectangles and calls
10266         gc->fill_rectangle with the result.
10267         gdk_fb_fill_spans() gets extra argument "sorted".
10268
10269         * gdk/linux-fb/gdkevents-fb.c:
10270         Remove unused includes and defines.
10271         New function gdk_fb_get_time() to get correct time for events.
10272
10273         * gdk/linux-fb/gdkinput-ps2.c:
10274         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
10275         Make sure to set the time of all events.
10276
10277         * gdk/linux-fb/gdkmain-fb.c:
10278         Use gdk_fb_get_time ().
10279
10280         * gdk/linux-fb/gdkprivate-fb.h:
10281         New virtual GC calls: fill_span & fill_rectangle.
10282         Export gdk_fb_get_time().
10283         gdk_fb_fill_spans() gets extra argument "sorted".
10284
10285         * gdk/linux-fb/mi*.c:
10286         Use GdkSpan instead of GdkRectangle.
10287         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
10288         from XFree 4 source)
10289         
10290 2000-11-22    <jrb@redhat.com>
10291
10292         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
10293         reversing the order in an if statement will do.  Doing so managed
10294         to make the treemodelsort half work.  Other half will follow after
10295         I get the insert function fully fixed.
10296
10297 2000-11-21  Elliot Lee  <sopwith@redhat.com>
10298         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
10299         more than 2 bits. Besides, I need to implement an evil hack. :)
10300
10301 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
10302
10303         * docs/tutorial/gtk-tut.sgml: minor corrections
10304
10305 2000-11-20  Jonathan Blandford <jrb@redhat.com>
10306         * gtk/gtktreemodelsort.h: Add convertion functions to let you
10307           convert to and from relative path's and iters.
10308
10309         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
10310           testing sorting functions a bit better.  Currently broken -- will
10311           fix in morning.
10312
10313 2000-11-20  Havoc Pennington  <hp@redhat.com>
10314
10315         * gtk/gtkwidget.c: Documented a bunch of functions in here
10316         (gtk_widget_realize): Warn if you try to realize
10317         a widget with no parent that isn't a toplevel
10318         (gtk_widget_intersect): return a gboolean
10319
10320 2000-11-20  Havoc Pennington  <hp@redhat.com>
10321
10322         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
10323         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
10324         scrolling to be implemented in GDK to finish. Also, right now
10325         we just size_allocate all children on every layout change,
10326         which is pretty lame. Test commented out of testtext.c, 
10327         until it works better.
10328
10329 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
10330
10331         * gdk/linux-fb/gdkdrawable-fb2.c:
10332         Removed unused arguments from gdk_fb_drawable_get_pixel().
10333
10334         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
10335         Renamed fidur specific mouse packet data in MouseDevice to
10336         generic. Used it in ps2 mouse handling code to avoid blocking
10337         reads.
10338
10339 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
10340
10341         * demos/gtk-demo/main.c: Changed to have the list become
10342         non-italic when the demo window is destroyed through an external
10343         event (like a close button).  Doing so found three bugs in the
10344         widget.
10345
10346         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
10347
10348         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
10349         we actually set the cell.
10350
10351         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
10352
10353         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
10354         free a leaked path.  Thanks memprof.
10355
10356 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
10357
10358         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
10359         off-by-one error when destroying allocated segments
10360         on failure. (Elliot)
10361
10362 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
10363
10364         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
10365         memleaks found by Evan Martin.
10366
10367 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
10368
10369         * Released 1.3.2
10370         
10371         * NEWS: Updates for 1.3.2
10372
10373 2000-11-17  Tor Lillqvist  <tml@iki.fi>
10374
10375         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
10376         but in general for window system specific events.
10377
10378         * gtk/gtk.def
10379         * gtk/makefile.mingw.in
10380         * gtk/makefile.msc.in: Update.
10381         
10382         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
10383
10384 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
10385
10386         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
10387         distribute gtk.immodules.
10388
10389         * gtk/Makefile.am (install-data-local): Don't install the
10390         gtk.immodules file created for the uninstalled modules;
10391         instead run gtk-query-immodules after install
10392
10393 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10394
10395         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
10396         -rpath to the right install location.
10397
10398         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
10399         -export-dynamic.
10400
10401         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10402         properly.
10403
10404 2000-11-15  Havoc Pennington  <hp@pobox.com>
10405
10406         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
10407         patch from Mikael Hermansson to temporarily stop blinking while
10408         the user is using the keyboard to type or navigate. 
10409
10410         Also, when blinking, stay on for longer than we stay off. Also,
10411         return from start_cursor_blink if !cursor_visible, to save
10412         checking that flag all over the place before we call
10413         start_cursor_blink.
10414
10415 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
10416
10417         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
10418         only contain a "fontset" line, which is now ignored.
10419
10420         * gtk/gtkentry.c (gtk_entry_button_release): Make 
10421         double-click-to-select-word work.
10422         
10423 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
10424
10425         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
10426         Don't move back one char when we are actually at the end of the 
10427         paragraph.
10428
10429 2000-11-15  Robert Brady  <robert@suse.co.uk>
10430
10431         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
10432         'o' < 'p'.
10433         
10434         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
10435         bind_textdomain_codeset.
10436
10437         (gtk_init_check): Make the warning about translating default:LTR
10438         sterner.
10439         
10440 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
10441
10442         * **/Makefile.am : remove unecessary rules for win32-specific
10443         config-substituted targets. If you want these rules, use
10444         --enable-maintainer-mode (called automatically by autogen.sh).
10445         Stops a lot of unneccessary make-time warnings.
10446
10447         * gtk/gtktext{layout,display}.c: Factor in total width as
10448         well as screen when figuring alignment for word-wrap as well as
10449         no wrap; this is necessary to handle lines that cannot be wrapped
10450         at all.
10451
10452 2000-11-15  Havoc Pennington  <hp@redhat.com>
10453
10454         * gtk/testtext.c: Implement essential color cycling feature
10455
10456 2000-11-15  Havoc Pennington  <hp@redhat.com>
10457
10458         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10459         when we invalidate the main window.
10460
10461         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10462         GtkTextView will now invalidate the side windows for us when text
10463         changes.
10464
10465 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10466
10467         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10468         unconditionally, since we may need to update the horizontal
10469         scrollbars even if the height didn't change.
10470
10471         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10472         the extra attrs, since some of them affect size.
10473
10474         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10475         x_offset correctly.
10476
10477 2000-11-15  Havoc Pennington  <hp@redhat.com>
10478
10479         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10480         don't move the first line out into the margin, instead move the
10481         whole paragraph in order to make space for the first line within 
10482         the margin
10483
10484 2000-11-15  Havoc Pennington  <hp@redhat.com>
10485
10486         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10487         xoffset in addition to yoffset, so horizontal scrolling doesn't
10488         break redraws
10489
10490 2000-11-15  Havoc Pennington  <hp@redhat.com>
10491
10492         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10493         from the cursor
10494         (render_layout_line): fix reversed test that caused weird
10495         underlines to get drawn
10496
10497 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10498
10499         * gdk/linux-fb/gdkprivate-fb.h:
10500         Fix debug macros.
10501         
10502 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10503
10504         * gdk/linux-fb/gdkprivate-fb.h:
10505         Added virtual functions set_pixel, get_color,
10506         fill_span and draw_drawable to the GC.
10507         Added global _gdk_fb_screen_gc to use instead of
10508         NULL when drawing to the screen.
10509         Added _gdk_fb_gc_calc_state() prototype.
10510
10511         * gdk/linux-fb/gdkgc-fb.c:
10512         Call _gdk_fb_gc_calc_state() on any gc state change.
10513
10514         * gdk/linux-fb/gdkglobals-fb.c:
10515         Add _gdk_fb_screen_gc
10516                 
10517         * gdk/linux-fb/gdkdrawable-fb2.c:
10518         _gdk_fb_gc_calc_state() calculates best functions
10519         for the GC state and depth.
10520         Moved bpp specialized code to separate functions.
10521         Added optimized 24 bpp AA draw_drawable.
10522
10523         * gdk/linux-fb/gdkevents-fb.c:
10524         Silence gcc warning.
10525
10526         * gdk/linux-fb/gdkimage-fb.c:
10527         Use _gdk_fb_screen_gc
10528
10529         * gdk/linux-fb/gdkwindow-fb.c:
10530         Init and use _gdk_fb_screen_gc
10531
10532         * gdk/linux-fb/mitypes.h:
10533         Remove unused types.
10534
10535 2000-11-14  Havoc Pennington  <hp@pobox.com>
10536
10537         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
10538         to pixels
10539
10540 2000-11-14  Havoc Pennington  <hp@pobox.com>
10541
10542         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
10543
10544         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
10545         unknown char, no real reason we were using a variable. 
10546         Remove gtk_text_unknown_char variable. Fix all the text widget
10547         files accordingly.
10548
10549         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
10550         since the Unicode spec seems to prefer that character for our
10551         purposes.
10552
10553 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
10554
10555         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
10556         value of g_getenv() isn't freeable, so g_strdup it.
10557
10558         * modules/input/inuktitut.c: Inuktitut input method.
10559
10560         * modules/input/Makefile.am: Build this.
10561         
10562 2000-11-14  Elliot Lee  <sopwith@redhat.com>
10563
10564         * gtk/Makefile.am: Install gtk.immodules, needed for operation
10565         of gtk programs.
10566
10567 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
10568
10569         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
10570         reversed > that was causing Home to go to end of previous line.
10571
10572         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
10573         modified-keypresses (leave for bindings.)
10574
10575         * modules/input/Makefile.am: Remove useless -export-dynamic
10576         from module LDFLAGS.
10577
10578 2000-11-14  Havoc Pennington  <hp@redhat.com>
10579
10580         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
10581         higher.
10582
10583         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
10584         account. Also, render rise, underline, background, etc. for
10585         pixbufs as well as text. Also, draw underlines one pixel higher.
10586
10587         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
10588         PangoAttribute for the rise, so it gets drawn properly. Also,
10589         add the GtkTextAppearance attribute for pixbuf/widget segments
10590         as well; we should go ahead and have rise, underline, background,
10591         stipple work for those
10592
10593         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
10594         Pango
10595
10596 2000-11-15  Tor Lillqvist  <tml@iki.fi>
10597
10598         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
10599
10600         * gtk/gtk.def: Update.
10601
10602         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
10603         included.
10604         (gtk_rc_get_im_module_file): Use run-time installation directory
10605         on Win32.
10606
10607         * gdk/win32/rc/gdk.rc: Remove.
10608         * gdk/win32/rc/gdk.rc.in: New file.
10609         * gdk/win32/rc/Makefile.am: New file
10610         * gdk/win32/Makefile.am: Corresponding changes.
10611
10612         * gtk/gtk.rc: Remove.
10613         * gtk/gtk-win32.rc.in: New file.
10614         * gtk/Makefile.am: Corresponding changes.
10615
10616         * configure.in: Corresponding changes.
10617
10618         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
10619         has a built gtkcompat.h. Developers using CVS code on Win32 can
10620         hand-edit it from gtkcompat.h.in.
10621
10622         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
10623         gtkcompat.h from gtkcompat.h.win32.
10624
10625 2000-11-14  Havoc Pennington  <hp@redhat.com>
10626
10627         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
10628         to default to GDK_ACTION_MOVE if the drag is within a single
10629         widget. Defaults to GDK_ACTION_COPY between widgets.
10630
10631 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
10632
10633         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
10634
10635         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
10636
10637         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
10638         srcdir != builddir
10639
10640         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
10641
10642         * configure.in (GTK_VERSION): Up to 1.3.2
10643
10644         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
10645         gtkimcontextxim.h
10646
10647         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
10648         missing doc comment.
10649
10650 2000-11-14  Alexander Larsson  <alexl@redhat.com>
10651
10652         * modules/linux-fb/basic.c:
10653         Use the glib iconv wrappers.
10654
10655 2000-11-13  Havoc Pennington  <hp@pobox.com>
10656
10657         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
10658         still more bugs.
10659
10660         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
10661         scroll the GdkWindows before realization.
10662
10663 2000-11-13  Havoc Pennington  <hp@redhat.com>
10664
10665         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
10666         where GC didn't always get updated properly
10667
10668         * demos/gtk-demo/textview.c (create_tags): Use subattributes
10669         of fonts instead of setting the entire font
10670
10671         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
10672         setting entire font
10673
10674         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
10675
10676         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
10677         a bunch of individually-settable font attributes. You can still 
10678         use the "font" and "font_desc" args, they just set all the font
10679         attributes at once.
10680
10681 2000-11-13 Elliot Lee <sopwith@redhat.com>
10682
10683         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
10684
10685 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
10686
10687         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
10688         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
10689
10690         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
10691         work better.
10692
10693 2000-11-13  Havoc Pennington  <hp@redhat.com>
10694
10695         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
10696         the module file.
10697
10698         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
10699         dest->language
10700
10701         * gtk/testtext.c: Test pixels above/below/inside paragraphs
10702         settings
10703
10704         * gtk/gtktextview.c: Implement object args and setters/getters for
10705         all the aspects of the GtkTextAttributes that are not set from
10706         GtkWidget attributes. This is spacing, justification, margins,
10707         etc.
10708
10709         (gtk_text_view_set_arg)
10710         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10711         args
10712         (gtk_text_view_class_init): Add args for justify, left_margin,
10713         right_margin, indent, and tabs
10714         
10715
10716         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10717         attribute properly
10718
10719         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10720         replace with indent attribute
10721
10722         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10723         PANGO_SCALE
10724
10725         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10726         rearranging code to do that
10727         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10728         i.e. don't subtract the top_margin first, just to keep
10729         all margin-futzing in one place.
10730
10731         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10732
10733         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10734         special case of last line, Pango now handles this itself.
10735         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10736         Y coordinate
10737         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10738         (find_display_line_above): wasn't moving the byte index as it
10739         iterated over lines, so always returned byte 0. Also, port to use
10740         PangoLayoutIter.
10741         (find_display_line_below): same problem as
10742         find_display_line_above. Also, port to use PangoLayoutIter.
10743
10744 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10745
10746         * gdk/linux-fb/*.[ch]:
10747         Massive reindent to gtk+ standard. My hands hurt.
10748
10749         * gdk/linux-fb/gdkcolor-fb.c:
10750         Move GdkColorPrivateFB from inherited to windowing_data
10751
10752         * gdk/linux-fb/gdkcursor-fb.c:
10753         _gdk_cursor_new_from_pixmap made static
10754
10755         * gdk/linux-fb/gdkdnd-fb.c:
10756         GdkDragContextPrivate moved to windowing_data
10757
10758         * gdk/linux-fb/gdkdrawable-fb2.c:
10759         Removed endian.h, use glib endianness macros instead
10760         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10761         and GDK_DRAWABLE_IMPL_FBDATA
10762
10763         * gdk/linux-fb/gdkfont-fb.c:
10764         Add empty gdk_font_load(). Needed for linking of Gtk+.
10765
10766         * gdk/linux-fb/gdkimage-fb.c:
10767         Removed endian.h, use glib endianness macros instead
10768         Moved GdkImagePrivateFB to windowing_data
10769         gdk_image_new_bitmap didn't always allocate enough
10770         memory.
10771
10772         * gdk/linux-fb/gdkinput-ps2.c:
10773         Added semi-working support for MS serial mice.
10774
10775         * gdk/linux-fb/gdkprivate-fb.h:
10776         s/GdkWindowPrivate/GdkWindowObject/
10777         Removed GdkWindowPrivate typedef
10778         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10779         Removed GDK_DRAWABLE_P
10780         Move GdkColorPrivateFB from inherited to windowing_data
10781         Moved GdkImagePrivateFB to windowing_data
10782
10783         * gdk/linux-fb/gdkvisual-fb.c:
10784         Removed some unused debug code.
10785
10786         * gdk/linux-fb/gdkwindow-fb.c:
10787         Use stock cursors instead of including X headers.
10788         s/GdkWindowPrivate/GdkWindowObject/
10789
10790         * gdk/linux-fb/mitypes.h:
10791         Removed unused types.
10792
10793         * modules/linux-fb/basic.c:
10794         Use the pango fribidi wrappers.
10795
10796 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10797
10798         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10799         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10800         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10801         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10802         GEqualFunc where applicable.
10803         
10804         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10805         pango_font_description_equal as changed in pango.
10806         
10807         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10808
10809         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10810
10811         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10812
10813         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10814
10815         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10816
10817         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10818
10819         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10820         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10821
10822         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10823         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10824
10825 2000-11-12  Havoc Pennington  <hp@pobox.com>
10826
10827         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10828         dir to datadir/gtk+-2.0/demo
10829
10830         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10831         sorts of text widget and Pango font bugs. Urgh.
10832
10833         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10834
10835         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10836         tree that you should double click to see the demo. Fix 
10837         types of variables to reflect changed return values from 
10838         GtkTreeStore and GtkTreeViewColumn constructors.
10839
10840         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10841         newly-created buffer to prepare for GObject semantics
10842
10843         * gtk/testtext.c: don't leak the buffer with GObject semantics
10844
10845         * gtk/testtextbuffer.c: ditto
10846         
10847 2000-11-12  Havoc Pennington  <hp@pobox.com>
10848
10849         Rename this testgtk to gtk-demo to avoid confusion, and 
10850         install it so people can use it as a supplement to 
10851         the documentation.
10852         
10853         * demos/gtk-demo: Moved from demos/testgtk
10854
10855         * demos/testgtk: Removed
10856
10857         * configure.in: make Makefile in gtk-demo
10858         
10859         * demos/gtk-demo/Makefile.am: Install sample source to 
10860         datadir/gtk-demo (maybe there's a better place?), and 
10861         rename the binary to gtk-demo
10862         
10863         * demos/gtk-demo/main.c (load_file): Load installed sample
10864         source if source isn't found in pwd.
10865
10866 2000-11-09  Havoc Pennington  <hp@pobox.com>
10867
10868         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10869         argument to set the char displayed when visibility == FALSE
10870         (gtk_entry_create_layout): If !entry->visible, replace 
10871         all chars with the "invisible char"
10872
10873         * gtk/testgtk.c: Test the invisible_char deal
10874         
10875 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10876
10877         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10878         can't get a native font in the right encoding.
10879
10880 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10881
10882         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10883         respectively.
10884
10885 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10886
10887         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10888         Fix warning when moving between paragraphs.
10889
10890         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10891         delete => delete_from_cursor, insert => insert_at_cursor
10892
10893 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10894
10895         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10896
10897         * modules/input/imthai-broken.c: A Thai input method for use if
10898         Thai keys are really generating Latin1 keysyms.
10899
10900         * modules/input/Makefile.am: Build these.
10901
10902 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10903
10904         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10905         g_filename_{to,from}_utf8 now takes an extra parameter.
10906
10907         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10908         strftime into UTF-8.
10909
10910         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10911         calendars.
10912
10913         (gtk_calendar_paint_day_names): Draw day names in the right 
10914         place.
10915         
10916 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10917
10918         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10919         problem with using result of g_get_charset() backwards -
10920         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10921
10922         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10923         negative min_width/height and max_width/height to
10924         mean "requisition"; this allows setting a window
10925         to be user-resizable in only one direction easily.
10926
10927         * gtk/testgtk.c (create_main_window): Remove hard-coded
10928         usize - set a default size in the vertical direction.
10929
10930 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10931
10932         * gtk/gtkrange.c: Add some missing casts. Support 
10933         2 and 3 button clicks on the arrows to mean 
10934         "move by pages" and "jump to end". (Like gtkspinbutton)
10935
10936 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10937
10938         * gdk/win32/makefile.msc : reflect build module changes
10939
10940         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10941         from GdkPixmap*, cast implementation member instead.
10942
10943         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10944         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10945         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10946         more Gdi functions return value checking. 
10947         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10948         GdkImagePrivateWin32 *.
10949
10950         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10951         menus useable again. Add #pragma message to keep reminded on this issue.
10952         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10953         windows. This allows to enable backing store on Win32!
10954
10955         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10956         in drawable is of impl type. Correct specific type checks appropriate.
10957  
10958         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10959         GDK_WINDOW_DESTROYED before allocating new resources.
10960
10961         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10962
10963         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10964         (gdk_window_foreign_new) initialize parent handle.
10965         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10966
10967         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10968         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10969         problems (e.g. main buttons in testgtk). 
10970
10971 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10972
10973         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10974         gtk_widget_activate for GDK_Return.
10975
10976         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10977         of preedit cursor position.
10978
10979 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10980
10981         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10982         static.
10983
10984 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10985
10986         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10987         out support for multiple locales; that simple doesn't
10988         work reliably with current Xlib
10989
10990         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10991         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10992         Add support for positioning the cursor within the preedit string.
10993
10994 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
10995
10996         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
10997         at XIM input method module.
10998
10999         * gtk/gtktextview.c: Check for bindings after passing
11000         events to im context filter.
11001
11002 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
11003
11004         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
11005         empty attribute lists properly.
11006
11007 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
11008
11009         * gtk/queryimmodules.c (main): Return non-zero exit
11010         status if errors were encountered querying any
11011         modules.
11012
11013         * modules/input/Makefile.am (moduledir): remove
11014         leftover bin program target.
11015
11016         * docs/make-todo: Fix typo in error message.
11017
11018 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
11019
11020         * configure.in: Add modules/input/Makefile
11021
11022 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
11023
11024         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
11025         don't include gtkthemes.h.
11026
11027         * gtk/testgtk.c gtk/testtext.c: Set environment variables
11028         to point
11029
11030         * gtk/Makefile.am: Add new .c and .h files, build 
11031         gtk-query-immodules and use it to create a gtk.immodules
11032         file for use of test programs.
11033
11034         * gtk/gtkpreview.c: remove extra blank line.
11035
11036 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
11037
11038         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
11039         Add the ability to add extra tables beyond the default
11040         one, and also the ability to have compose sequences 
11041         that are prefixes of other compose sequences. 
11042
11043         * gtk/gtkimcontextsimple.c: Export a preedit string which
11044         consists of possible candidates for keystrokes that have
11045         been entered but not yet committed.
11046
11047         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
11048         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
11049
11050         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
11051         Add a function to add input-method switching menu items
11052         to a menu.
11053
11054         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
11055         when switching input methods.
11056
11057         * gtk/gtkimcontextsimple.[ch]: Change the format of
11058         the compose table to allow compose tables of different
11059         lengths / sequence.
11060
11061 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
11062
11063         * gtk/gtkimmodule.[ch]: Support routines for loading
11064         GtkIMContext implementations dynamically at runtime.
11065
11066         * modules/input/imcyrillic-translit.c: A sample input
11067         method (based on GtkIMContextSimple with an extra table),
11068         which demonstrates preedit strings and the module
11069         system for input modules
11070
11071         * gtk/queryimmodules.c: Program to query the available
11072         input modules and write the results into a file.
11073          
11074         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
11075         extra config options "im_module_file" (cache file for
11076         input method modules), and "im_module_path" - path
11077         to look for modules when generating cache file.
11078
11079         This doesn't scale.
11080
11081 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
11082
11083         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
11084         generic code from gtkthemes into a new abstraction
11085         GtkModule which has the logic for implementing
11086         a loadable module which implements a number of 
11087         GObject types.
11088
11089 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
11090
11091         * gtk/gtkeditable.[ch]: Convert GtkEditable from
11092         a class into an interface  
11093         
11094         * gtk/gtkoldeditable.[ch]: Move the old editable
11095         implementation into here, so legacy widgets can
11096         still rely on the implemenation. GtkOldEditable
11097         exports GtkEditable. Make selection handling
11098         code use new text conversion functions (and
11099         handle UTF-8 as a side-effect). Use GtkClipboard
11100         for CLIPBOARD.
11101
11102         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
11103         Adopt to match above changes.
11104
11105         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
11106         avoid GtkOldEditable implementation. Restructure
11107         to reduce number of places that modify state directly.
11108         Move to GtkBindingSet. Display the preedit string.
11109         Queue recomputation of PangoLayout and scroll position
11110         to improve effiency of doing complex changes naively.
11111         Add a menu with cut/copy/paste and input method selection.
11112
11113 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
11114
11115         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
11116         to set preedit string and attributes; display preedit string by
11117         inserting string and attributes at cursor when creating the
11118         GtkTextLineDisplay.
11119
11120         * gtk/gtktextlayout.c: Move all conversions between byte
11121         positions in PangoLayout and GtkTextIter into new functions
11122         line_display_iter_to_index/index_to_iter that properly
11123         handle the preedit string.
11124
11125         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
11126         it to return const char * (eventually will end up
11127         as GCONST char *, most likely.)
11128
11129         * gtk/gtktextview.[ch]: Handle the preedit string, call
11130         gtk_im_context_reset() as necessary, add a menu to switch
11131         input methods.
11132         
11133         * gtk/gtktextlayout.[ch]: Remove useless
11134         gtk_text_layout_get_log_attrs() function.
11135
11136 2000-11-11  Tor Lillqvist  <tml@iki.fi>
11137
11138         * gdk/gdk.def
11139         * gtk/gtk.def: Update.
11140
11141         * gdk/win32/*.c: Add last argument to g_type_register_static()
11142         calls.
11143
11144         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
11145
11146         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
11147         generated by older wheel mouse drivers. Get the correct y
11148         coordinate from WM_MOUSEWHEEL messages.
11149
11150         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
11151         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
11152         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
11153         Debugging functions.
11154
11155         * gdk/win32/gdkprivate-win32.h: Declare them.
11156
11157         * gdk/win32/gdkinput-win32.h: Add declaration for
11158         gdk_input_window_destroy().
11159
11160         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
11161
11162 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
11163
11164         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
11165         function to help handle keeping things in sync.
11166
11167 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
11168
11169         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
11170         BOXED marshallers.
11171
11172         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
11173         (gtk_list_store_class_init): use the new BOXED marshallers.
11174
11175         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
11176         new_with_values to new_with_types.
11177         (gtk_tree_store_get_column_type): add this.
11178         (gtk_tree_store_class_init): use the new BOXED marshallers.
11179
11180         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
11181         mirror some POINTER marshallers.
11182
11183 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
11184
11185         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
11186         allow more interesting iterators.  Also, made the lifecycle of
11187         iterators more explicit.
11188
11189         * gtk/gtktreemodelsort.[ch]: New model for sorting.
11190
11191         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
11192         types.
11193
11194 2000-11-09  Alexander Larsson  <alexl@redhat.com>
11195
11196         * demos/testgtk/menus.c:
11197         Changes to make the new testgtk compile after
11198         gtk_menu_append was removed.
11199
11200         * gdk/linux-fb/gdkdrawable-fb2.c
11201         (gdk_fb_get_depth, gdk_fb_get_visual,
11202         gdk_drawable_impl_fb_class_init): Implement
11203         these drawable functions. Now GtkImages work again.
11204
11205         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
11206
11207         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
11208         
11209         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
11210         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
11211         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
11212         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
11213
11214 2000-11-08  Havoc Pennington  <hp@pobox.com>
11215
11216         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
11217         visible_set args, don't know where these had gone, I thought they
11218         used to be there
11219
11220         * gtk/testtext.c: Add a menu item to apply invisibility tag;
11221         now we can test the feature and see that it's totally broken.
11222
11223 2000-11-08  Havoc Pennington  <hp@pobox.com>
11224
11225         Make DND copy pixbufs and tags when source and target share a 
11226         tag table.
11227         
11228         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
11229         in-process GTK_TEXT_BUFFER_CONTENTS target
11230         (gtk_text_view_drag_data_received): Paste from
11231         GTK_TEXT_BUFFER_CONTENTS if we receive it.
11232
11233 2000-11-08  Alexander Larsson  <alexl@redhat.com>
11234
11235         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
11236         API changes.
11237
11238         * gtk/gtkmenu.c: Add support for scrolling menus.
11239         Remove gtk_menu_append/prepend/insert, these have been moved to
11240         gtkcompat.h as #defines.
11241
11242         * gtk/gtkcompat.h.in:
11243         Add compatibility #defines for gtk_menu_append/prepend/insert
11244
11245         * gtk/gtkmenu.h: Add data needed for scrolling menus.
11246         GtkMenuPositionFunc gets an extra argument push_in.
11247         gtk_menu_append/prepend/insert removed.
11248         
11249         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
11250         positioning behaviour to fit to scrolling menus.
11251
11252         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
11253         into menuitem->submeny. That is wrong, and broke torn
11254         off submenus of torn off menus, since they were unrealized
11255         when the first menu was unrealized.
11256
11257         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
11258         gtk_menu_shell_select_item() since these need to be overridden in
11259         GtkMenu.
11260
11261         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
11262         positioning behaviour to fit to scrolling menus.
11263         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
11264         the current item so that it is prelighted when the menu pops up.
11265         This is a workaround to the fact that the menu doesn't get the
11266         initial enter event (due to grabs).
11267
11268         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
11269         s/gtk_menu_append/gtk_menu_shell_append/
11270
11271         * gtk/gtknotebook.c:
11272         s/gtk_menu_insert/gtk_menu_shell_insert/
11273
11274         * gtk/testgtk.c (create_menu, create_menus):
11275         Create the first menu with 50 items so that menu scrolling
11276         can be tested.
11277         
11278         
11279         Patch from Jonathan Blandford  <jrb@redhat.com>
11280
11281         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
11282         system to handle size requests.  First, we ask what the size of
11283         the toggle is.  Then, when allocating the size, we allocate the
11284         toggle_size first.  This way we can have multiple menu-item
11285         classes w/o needing a seperate class for each.
11286
11287         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
11288         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
11289
11290         * gtk/gtkcheckmenuitem.c
11291         (gtk_check_menu_item_toggle_size_request): New function to handle
11292         the toggle size-request.
11293
11294 2000-11-07  Havoc Pennington  <hp@redhat.com>
11295
11296         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
11297         Half-ass somewhat fix this function, so that scrolling to the
11298         insertion point works. Pango hacking is in the future to really
11299         fix it.
11300
11301         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
11302         length of data, no longer used.
11303
11304         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
11305         method contents in here, get rid of destroy method
11306         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
11307         that were backward. Remove debug spew.
11308         (cut_or_copy): Make the clipboard work with insert_range to
11309         preserve tags and pixbufs, not just the primary selection.
11310
11311 2000-11-07  Havoc Pennington  <hp@redhat.com>
11312
11313         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
11314         to gtk_text_mark_get_visible
11315
11316         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
11317         bug that was generating an invalid iterator
11318
11319         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
11320         ensure_char_offsets() in front of code placing the iter in an
11321         invalid state.
11322
11323         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
11324         make override_location arg const
11325         (paste): Replace the selection if we paste into the 
11326         current selection
11327
11328         * gtk/gtkselection.h: Remove "GtkSelectioData"
11329         (struct _GtkSelectionData): move the definition here.
11330
11331         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
11332         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
11333
11334         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
11335
11336         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
11337         (gtk_text_buffer_insert_range_interactive): implement
11338         (gtk_text_buffer_get_tags): Remove, replaced by
11339         gtk_text_iter_get_tags()
11340
11341         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
11342         limit parameter, to avoid infinite linear scan.
11343         (gtk_text_iter_backward_search): Add search limit
11344         (gtk_text_iter_forward_find_char): Add search limit
11345         (gtk_text_iter_backward_find_char): Add search limit
11346
11347 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
11348
11349         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11350         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
11351         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
11352         gdk/linux-fb/gdkwindow-fb.c:
11353         use g_object_new() instead of g_type_create_instance() which
11354         is a private function for fundamental type implementations.
11355
11356         * gdk/linux-fb/gdkinput-ps2.c:
11357         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
11358         instead just store the current modifier state. Add a (somewhat broken)
11359         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
11360         Rename exported function gdk_input_ps2_get_mouseinfo to
11361         gdk_input_get_mouseinfo.
11362
11363         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
11364         gdk/linux-fb/gdkwindow-fb.c:
11365         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
11366         
11367
11368 2000-11-02  Havoc Pennington  <hp@redhat.com>
11369
11370         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
11371         use stock buttons. Should be 100% source compatible, appropriate
11372         filesel fields now point to dialog->vbox and dialog->action_area.
11373         On the bizarre side, dialog->action_area and filesel->action_area
11374         are not the same widget.
11375         (gtk_file_selection_init): Put some padding around the selection
11376         entry, so it isn't touching the GtkDialog separator.    
11377
11378         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
11379         use stock buttons, etc. Should also be source compatible.
11380         Set the dialog default title in _init not _new().
11381         
11382         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
11383         Use stock buttons; don't put a button box inside the existing
11384         dialog button box. Don't bother with push/pop colormap anymore.
11385
11386         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
11387         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
11388         for message dialog, and necessary for the font selection and color
11389         selection with help and apply buttons.
11390         
11391         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
11392         to the created button widget. Set GTK_CAN_DEFAULT on the button.
11393         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
11394         between buttons, put less padding around the action area.
11395         (gtk_dialog_run): Exit on unmap rather than on destroy. 
11396         This will also exit the loop if the widget is hidden.
11397         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
11398         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
11399         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
11400         special-case delete event.
11401
11402         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
11403         formatting
11404         
11405 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
11406
11407         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
11408         button to temporarily disable position recording in the
11409         "saved position" test.
11410
11411 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
11412
11413         * gtk/gtkthemes.c: added compat code that temporarily implements
11414         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
11415         going to be revamped by owen's upcoming GtkModule patches, but
11416         untill then people want gtk to build, right? ;)
11417
11418 2000-11-04  Havoc Pennington  <hp@pobox.com>
11419
11420         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
11421         list
11422
11423         * docs/Changes-2.0.txt: Add note about
11424         gtk_container_get_toplevels()
11425
11426         * gtk/gtktextview.h: formatting
11427         
11428         * gtk/gtktextview.c: don't start descriptions with "Returns",
11429         confuses gtk-doc
11430
11431 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
11432
11433         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
11434         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
11435
11436 2000-11-03  Havoc Pennington  <hp@redhat.com>
11437
11438         * gtk/gtktexttagtable.c: Docs
11439         (gtk_text_tag_table_size): return a signed int
11440
11441         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
11442         (gtk_text_tag_event): make the event_object a GObject
11443
11444         * gtk/gtktextview.c: Write API docs for all functions.
11445
11446         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
11447         for gtk_text_view_get_window_type() called on one of the private
11448         windows.
11449
11450         * gtk/gtktextview.c: Instead of accessing text_view->buffer
11451         directly, call get_buffer() which demand-creates a default
11452         buffer. So gtk_text_view_new() can be used to create a view with a
11453         default buffer in it, if you just want an empty text box users can
11454         put data in. Useful for GUI builders also.
11455
11456 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
11457
11458         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11459         the charset encodign portion MUST be in lowercase.
11460         * gtk/gtkrc.az: added file for Azeri language
11461
11462 2000-11-03  Havoc Pennington  <hp@redhat.com>
11463
11464         Get widgets working on the btree/buffer side. Display of them 
11465         still doesn't work.
11466         
11467         * gtk/gtktextview.c: start implementing child widget stuff
11468
11469         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11470
11471         * gtk/gtktextlayout.c: handle embedded widgets
11472
11473         * gtk/gtktextdisplay.c: handle embedded widgets
11474
11475         * gtk/gtktextchild.c: Implement all the child anchor goo
11476
11477         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11478         function
11479
11480         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11481         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11482         creating a child anchor or a pixbuf segment.
11483         (gtk_text_btree_create_child_anchor): new function
11484         (gtk_text_btree_unregister_child_anchor): new function
11485
11486         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11487         allocate_child signal on GtkTextLayout
11488
11489         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11490         values
11491         (gtk_text_iter_get_child_anchor): new function
11492
11493         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11494         default handler for the changed signal, which calls
11495         gtk_text_buffer_set_modified(), instead of just always emitting
11496         changed then calling set_modified() manually. I guess this is
11497         maybe more flexible. It seems logical.
11498
11499 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
11500
11501         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
11502         now.
11503
11504         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
11505
11506 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
11507
11508         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
11509         been marked static.
11510
11511 2000-11-02  Havoc Pennington  <hp@redhat.com>
11512
11513         * gtk/testgtk.c (create_labels): had a test backward
11514
11515         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
11516         fields, so the dest GC ends up with the correct clip origin, 
11517         etc. Fixes a bug where colored labels didn't redraw 
11518         properly.
11519
11520 2000-11-02  Alexander Larsson  <alexl@redhat.com>
11521
11522         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11523         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
11524         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
11525         Add last argument to t_type_register_static call.
11526         
11527         * gdk/linux-fb/gdkdrawable-fb2.c:
11528         Add last argument to t_type_register_static call.
11529         export the get_image drawable virtual function.
11530
11531         * gdk/linux-fb/gdkimage-fb.c:
11532         Add last argument to t_type_register_static call.
11533         rename gtk_image_get to _gdk_fb_get_image and
11534         export it for use by gdkdrawable-fb2.
11535
11536         * gdk/linux-fb/gdkprivate-fb.h:
11537         export _gdk_fb_get_image.
11538
11539         * gdk/linux-fb/gdkselection-fb.c:
11540         Add new api call stubs.
11541
11542         * gtk/Makefile.am:
11543         Missing ( in linux-fb part.
11544
11545         * modules/linux-fb/Makefile.am:
11546         Must link with gdk_pixbuf or get unresolved symbol.
11547
11548 2000-11-01  Havoc Pennington  <hp@pobox.com>
11549
11550         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
11551         GTK_TYPE_TEXT_ITER and BOXED marshallers
11552
11553         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
11554
11555         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
11556         
11557         * gtk/gtk-boxed.defs: add GtkTextIter
11558
11559         * gtk/gtkmarshal.list: Add marshallers for text widget that 
11560         properly use OBJECT and BOXED
11561
11562 2000-11-01  Havoc Pennington  <hp@redhat.com>
11563
11564         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
11565
11566         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
11567         before returning it. 
11568         
11569 2000-11-01  Havoc Pennington  <hp@redhat.com>
11570
11571         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11572         Clip the rectangle to be rendered to the drawable, since
11573         get_from_drawable() requires a region within the drawable
11574
11575 2000-11-01  Havoc Pennington  <hp@redhat.com>
11576
11577         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
11578         from coordinates.
11579
11580 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
11581
11582         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
11583         it isn't NULL.
11584
11585 2000-11-01  Havoc Pennington  <hp@pobox.com>
11586
11587         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
11588         on a label
11589         (gtk_label_finalize): unref the attr list if any.
11590
11591         * gtk/testgtk.c (create_get_image): close test on second click
11592         (make_message_dialog): close dialog if it exists
11593
11594         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
11595
11596         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
11597         gdk-pixbuf
11598
11599         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
11600         from Pango markup format
11601         (gtk_label_set_markup_with_accel): ditto but with accelerator
11602         parsing
11603
11604         * gtk/gtkimage.c (gtk_image_expose): reformatting.
11605
11606         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
11607         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
11608         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
11609         call gdk_window_get_origin().
11610
11611         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11612         implement GDK_PIXBUF_ALPHA_FULL
11613         
11614 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
11615
11616         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
11617         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
11618         g_signal_handlers_disconnect_matched to block/unblock and disconnect
11619         multiple handlers respectively, instead of only treating the
11620         first handler found (bug reported by owen).
11621
11622 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
11623
11624         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
11625
11626         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
11627
11628         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
11629         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
11630         gtk/gtktreeviewcolumn.h: Fixed inline docs.
11631
11632         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
11633         widget.  Needs writing someday.
11634
11635         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
11636         the docs.
11637
11638 2000-10-30  Havoc Pennington  <hp@redhat.com>
11639
11640         * gtk/gtktextview.h, gtk/gtktextview.c:
11641         Rename delete_at_cursor delete_from_cursor, and 
11642         move to move_cursor.
11643
11644 2000-10-30  Havoc Pennington  <hp@redhat.com>
11645
11646         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
11647         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
11648         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
11649         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
11650         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
11651         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
11652         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
11653         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
11654         gtktexttypes.h, gtktextview.c, gtktextview.h:
11655
11656         Massive reindentation and reformatting. Arg alignment and comments
11657         still need fixing in various places.
11658
11659 2000-10-30  Havoc Pennington  <hp@redhat.com>
11660
11661         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
11662         to be named insert_at_cursor and delete_at_cursor so C++ can
11663         handle them.
11664
11665 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11666
11667         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
11668         to get a double directory separator in case the home directory
11669         ends with one. This would cause trouble especially on Windows,
11670         where the path will be confused with the syntax for an an UNC
11671         (network share) path \\server\share\path.
11672         (gtk_rc_add_initial_default_files): Ditto.
11673
11674 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
11675
11676         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
11677
11678         * gtk/gtktextview.c: Use correct marshallers.
11679
11680 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
11681
11682         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
11683         use new iter stuff, and added all the appropriate signals et al.
11684
11685         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
11686         code is internal to gtk only.
11687
11688 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11689
11690         * gtk/gtk.def
11691         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
11692         glib-genmarshal etc.
11693
11694 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
11695
11696         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
11697         parallel builds.
11698
11699 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
11700
11701         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
11702
11703 2000-10-27  Robert Brady  <robert@suse.co.uk>
11704
11705         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
11706         en_GB (British), ia (Interlingua).
11707
11708 2000-10-26  Havoc Pennington  <hp@redhat.com>
11709
11710         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11711
11712         Fixed output of:
11713         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11714         
11715         * gtk/gtktextsegment.c (char_segment_new): rename
11716         (_char_segment_new_from_two_strings): rename
11717         (_toggle_segment_new): rename
11718         
11719         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11720         (make_clipboard_widget): make it static
11721         (text_get_func): static
11722         (text_clear_func): static
11723
11724         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11725         static
11726         (hex_changed): make it static
11727         (hsv_changed): make it static
11728         (opacity_entry_changed): make it static
11729
11730         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11731         (toggle_segment_check_func): rename with _gtk
11732
11733         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11734         (_widget_segment_new): rename
11735         (_widget_segment_add): rename
11736         (_widget_segment_remove): rename
11737         (_widget_segment_ref): rename
11738         (_widget_segment_unref): rename
11739
11740         * gtk/gtktextmark.c (_mark_segment_new): Rename
11741         _gtk_mark_segment_new   
11742
11743 2000-10-26  Havoc Pennington  <hp@redhat.com>
11744
11745         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11746         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11747         types
11748
11749         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11750         marshaller types
11751
11752         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11753         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11754         license on these files.
11755
11756         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11757         work.
11758
11759         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11760         runtime random number different for each tree, instead of 
11761         a constant I made up.
11762
11763 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11764
11765         * gtk/Makefile.am: buncha cleanups, kludged build sources
11766         dependencies with a Makefile: oldest-source-stamp dependancy
11767         for the moment. automake is really fighting us here, with
11768         intentionally not allowing user-defined rules or dependancies
11769         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11770
11771         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11772         to public headers. tehy have a comment stating that they are
11773         "semi-public" aren't included by gtk.h and if enums popup there,
11774         they can be /*< skip >*/-ed.
11775
11776         * gtk/gtktextlayout.h: 
11777         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11778         added LGPL... <SIGH>
11779
11780 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11781
11782         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11783         GtkTreeIter.  Added iterators everywhere.
11784
11785         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11786
11787         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11788
11789         * gtk/gtktreestore.c: Changed to use the iterators.
11790
11791         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11792         iterators tomorrow.
11793
11794         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11795         iterators tomorrow.
11796
11797         * gtk/treestoretest.c: Changed to use iterators.
11798
11799         * demos/testgtk/main.c: Moved to use the new iterator system.
11800
11801 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11802
11803         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11804         localization misbehaviour.
11805
11806         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11807         a useless type without copy/free.
11808
11809         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11810         of GTK_TYPE_CTREE_NODE.
11811
11812 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11813
11814         * gtk/gtksignal.c:
11815         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11816         applicable.
11817
11818         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11819         gtk_selection_data_copy and gtk_selection_data_free
11820         do GtkSelectionData work as params in signals.
11821
11822 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11823
11824         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11825         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11826         couldn't they at least give it a non-standard name?
11827         
11828         * gtk/gtktextlayout.c: arg! yet another implementation of
11829         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11830
11831         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11832         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11833         home. now i know this _is_ a conspiracy.
11834
11835         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11836         ::state-changed.
11837
11838         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11839         (gtk_accel_group_create_add): marshaller signature fixups.
11840
11841         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11842         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11843
11844         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11845         anymore.
11846
11847 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11848
11849         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11850         due to the signal system changes, it wouldn't build currently. to
11851         be fixed soon.
11852
11853         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11854
11855         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11856         so it needs gtk_marshal_VOID__ENUM() instead of
11857         gtk_marshal_NONE__UINT().
11858
11859         * gdk/gdk*.c: adapted type registration functions.
11860
11861         * gtk/gtkbindings.c:
11862         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11863         gone.
11864
11865         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11866
11867         * gtk/gtkobject.c:
11868         (gtk_object_destroy):
11869         (gtk_object_shutdown): fixed recursion guards. basically we have to
11870         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11871         is called during ::destroy, and avoid recursion there.
11872
11873         * gtk/gtktypeutils.c:
11874         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11875         boxed_copy/boxed_free. this needs a more general solution based on a
11876         publically installed code-generator utility.
11877
11878         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11879         glib's gobject has support for that now.
11880         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11881
11882 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11883
11884         * gtk/gtksignal.[hc]:
11885         * gtk/gtkmarshal.[hc]:
11886         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11887         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11888         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11889         care of that.
11890
11891         * *.c: marshaller name fixups.
11892
11893         * gtk/gtkmarshal.list: added a comment briefing the format.
11894
11895 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11896
11897         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11898         compatibility macros here now. more specifically, most of
11899         the API is preserved (yes, _most_, nonwithstanding the
11900         following exceptions listed, the API is stil lHUGE ;)
11901         things that got removed completely:
11902         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11903         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11904         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11905         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11906         gtk_signal_remove_emission_hook().
11907         non-functional functions variants:
11908         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11909         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11910         not supported anymore.
11911         (gtk_signal_compat_matched): new internal function to aid
11912         implementation of the compatibility macros, it  provides
11913         functionality to block/unblock/disconnect handlers based
11914         on func/data.
11915
11916         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11917
11918         * *.c: adaptions to new type registration API signatures.
11919
11920 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11921
11922         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11923
11924 2000-10-25  Robert Brady  <robert@suse.co.uk>
11925
11926         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11927         gdk_property_delete): If window == NULL, assume the root window.
11928         (restoring the behaviour that was in 1.2).
11929         
11930         * gtk/testtext.c (save_buffer): Allow creation of new files when
11931         saving.
11932
11933         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11934         calls to read().
11935
11936 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11937
11938         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11939
11940         * gdk/win32/gdkdrawable-win32.c
11941         * gdk/win32/gdkimage-win32.c
11942         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11943         X11 backend.
11944
11945         * gdk/win32/gdkcc-win32.c
11946         * gdk/win32/gdkcolor-win32.c
11947         * gdk/win32/gdkfont-win32.c
11948         * gdk/win32/gdkinput-win32.c
11949         * gdk/win32/gdkmain-win32.c
11950         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11951
11952 2000-10-24  Havoc Pennington  <hp@redhat.com>
11953
11954         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11955         it a static function
11956
11957         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11958         redraw text when a tag is applied to it.
11959
11960         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11961         (gtk_text_tag_affects_nonsize_appearance): private functions to
11962         see if a tag requires various kinds of redraw/layout to be queued
11963         up.
11964
11965         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11966
11967         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11968         at the start of the buffer, so search works by default
11969
11970         * gtk/gtktextiter.c (lines_match): init match_start always
11971
11972         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11973         function, get iter at a line + a byte index
11974
11975         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11976         to set byte position within a line
11977         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11978
11979 2000-10-23  Havoc Pennington  <hp@redhat.com>
11980
11981         * gtk/testtext.c: Re-enable the "find" dialog
11982
11983         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11984         
11985         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11986         the arguments to gdk_draw_drawable were in the wrong order
11987         (gdk_window_paint_init_bg): This function was ignoring the
11988         init_region, instead of clipping to it, so the entire backing
11989         pixmap was cleared on every begin_paint()
11990         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11991         was in here again, the loop kept using the same GtkWindowPaint
11992         over and over.
11993         (gdk_window_begin_paint_region): Fix a bug where we had two
11994         x_offset instead of x_offset and y_offset
11995
11996         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
11997         before we get the image.
11998         (gdk_draw_drawable): get the composite before we draw the drawable.
11999         (gdk_drawable_real_get_composite_drawable): default
12000         get_composite_drawable implementation that returns the drawable 
12001         itself
12002
12003         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
12004         get_composite_drawable virtual function
12005
12006         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
12007         list-walking bug
12008
12009         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
12010         make this work if the source drawable is a GdkDrawableImplX11
12011         instead of a public drawable type. This is really broken; the
12012         problem is that GdkDrawable needs a virtual method get_xid(), but
12013         of course that doesn't work in practice. Enter RTTI.
12014
12015         Also, improve mismatched depth message.
12016
12017         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
12018         GdkPixmap
12019
12020         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
12021         install _gdk_x11_get_image as our implementation of get_image
12022         
12023         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
12024         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
12025
12026         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
12027         gdk_drawable_get_image
12028
12029         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
12030
12031         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
12032         get_image
12033
12034         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
12035         trailing semicolon after for loop
12036
12037 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
12038
12039         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
12040         where font_desc for widget's context lagged widget's font_desc by
12041         one step.
12042
12043 2000-10-22  Tor Lillqvist  <tml@iki.fi>
12044
12045         * gdk/win32/gdkgc-win32.c
12046         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
12047
12048         * gtk/makefile.mingw.in
12049         * gtk/gtk.def: Updates.
12050
12051         * gtk/testgtk.c: sleep() is called _sleep in MS's C
12052         library.
12053
12054         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
12055
12056         * gtk/makefile.msc: Remove
12057
12058         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
12059
12060         * gtk/Makefile.am: Add it.
12061
12062         * configure.in: Generate it.
12063
12064         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
12065         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
12066         something even if not implemented, to satisfy picky MSVC.
12067
12068         Patches by Hans Breuer:
12069         
12070         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
12071         SetBkMode() and SetTextAlign() before calling
12072         pango_win32_render().
12073
12074         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
12075         Set hcliprgn to NULL after destroying it.
12076         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
12077
12078         * gdk/win32/gdkgeometry-win32.c
12079         (_gdk_windowing_window_queue_antiexpose): More effective
12080         implementation.
12081
12082         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
12083         depth as default, not the visual's.
12084
12085         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
12086         against empty title.
12087
12088         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
12089         IMAGE_PRIVATE_DATA.
12090
12091         * gdk/win32/gdkimage-win32.c: Use it.
12092
12093 2000-10-22  Robert Brady  <robert@suse.co.uk>
12094
12095         * configure.in: Check for bind_textdomain_codeset
12096
12097         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
12098         present, make use of it.
12099
12100         Add a translatable string "default:LTR" which, if translated
12101         to "default:RTL", will cause the default direction to be
12102         Right-to-Left.
12103
12104         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
12105         direction if marked as flippable.
12106
12107         * gtk/gtkhscale.c: Mark widget as flippable.
12108         
12109 2000-10-04  Havoc Pennington  <hp@redhat.com>
12110
12111         * gtk/testgtk.c (create_buttons): create some stock buttons
12112         with the default accel group
12113         (create_image): test some new GtkImage features
12114         (make_message_dialog): test GtkMessageDialog
12115         (create_modal_window): fix someone's bizzarro indentation
12116
12117         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
12118         GTK_WIN_POS_CENTER_ON_PARENT. 
12119         Add "destroy with parent" setting, which means the window goes
12120         away with its transient parent.
12121         (gtk_window_get_default_accel_group): get the default accel group
12122         for the window.
12123         (gtk_window_set_destroy_with_parent): set/unset destroy with
12124         parent flag
12125         (gtk_window_read_rcfiles): invalidate icon set caches
12126         after reloading rcfiles 
12127
12128         * gtk/gtkenums.h (GtkWindowPosition): add
12129         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
12130         on its parent window when the dialog is mapped for the first time.
12131
12132         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
12133         a simple message dialog class
12134         
12135         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
12136         handler to emit response signal, and maybe later it would
12137         honor a hide_on_delete flag - though that isn't there yet.
12138         Set border width on the vbox to 2, so we get some padding.      
12139         Use a button box for the action area.
12140         (gtk_dialog_key_press): synthesize a delete event if Esc
12141         is pressed and the GtkWidget key press handler didn't 
12142         handle the escape key.
12143         (gtk_dialog_new_with_buttons): new function creates a dialog
12144         with some default buttons in it.
12145         (gtk_dialog_add_action_widget): add an activatable widget
12146         as a button in the dialog - you can also add a non-activatable
12147         widget by accessing the action area directly.
12148         (gtk_dialog_add_button): add a simple button - stock ID or 
12149         label - to the action area
12150         (gtk_dialog_response): emit response signal
12151         (gtk_dialog_run): block waiting for the dialog, return 
12152         the response. Override normal delete_event behavior, so that 
12153         delete_event does nothing inside gtk_dialog_run().
12154
12155         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
12156         emitted when an action widget is clicked or the dialog gets
12157         delete_event
12158
12159         * gtk/gtk.h: add gtkmessagedialog.h
12160
12161         * gtk/Makefile.am: add gtkmessagedialog.[hc]
12162
12163 2000-10-18  Havoc Pennington  <hp@redhat.com>
12164
12165         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
12166         where any number of empty lines would get skipped
12167
12168         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
12169         edge.
12170
12171         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
12172         warning about invalid iterators (explain more thoroughly)
12173         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
12174
12175         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
12176         big
12177
12178         * demos/*.c: Add error handling
12179
12180         * gtk/gtktextbuffer.c: don't modify const iterators
12181
12182         * gtk/gdk-pixbuf-loader.c: Add full error handling here
12183
12184         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
12185         on file load
12186
12187         * gtk/gtkiconfactory.c: Update to reflect addition of error
12188         handling to gdk-pixbuf loaders
12189
12190 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
12191
12192         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
12193         move to new modularized testgtk.
12194
12195 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
12196
12197         * gtk/gtktreeview.c: Draw the arrows correctly.
12198
12199         * gtk/gtktreemodel.c: Added user docs.
12200
12201         * gtk/gtk.h: remove gtktreedatalist.h.
12202
12203         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
12204         parent when generating my type.
12205
12206         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
12207         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
12208
12209 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12210
12211         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
12212         GtkTreeModel from object to interface.
12213
12214 2000-10-16  Havoc Pennington  <hp@redhat.com>
12215
12216         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
12217         compilation
12218
12219 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12220
12221         * gtk/gtktreeselection.c: Add API documentation to all public
12222         functions.
12223
12224         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
12225         functions.
12226
12227 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
12228
12229         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
12230         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
12231         docs to all public functions.
12232
12233         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
12234         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
12235         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
12236         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
12237         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
12238         issue.
12239
12240 2000-10-14  Robert Brady  <robert@suse.co.uk>
12241
12242         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
12243
12244 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
12245
12246         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
12247         values other then G_TYPE_STRING.
12248         * gtk/gtktreeselection.c: Minor commenting updates.
12249         * gtk/gtktreeview.c: Format updates.
12250
12251 2000-10-09  Tor Lillqvist  <tml@iki.fi>
12252
12253         * README.win32: Update.
12254
12255         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
12256         lines that had been deleted by mistake (?).
12257
12258         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
12259         also the case fg==white and bg==black (but still not randomly
12260         coloured cursors). Thanks to Wolfgang Sourdeau.
12261
12262         * gdk/win32/*.c: Silence gcc -Wall.
12263
12264         * gtk/gtk.def: Add missing entry points.
12265
12266         Fixes by Hans Breuer:
12267
12268         * gdk/makefile.msc
12269         * gdk/win32/makefile.msc: Update.
12270
12271         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
12272         some MSVC thing, presumably), cause breakpoint on failures. Add
12273         GDK_NOR case. Call g_log_set_always_fatal.
12274
12275         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
12276         should be pased by reference.
12277         
12278         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
12279         
12280         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
12281
12282         * gdk/win32/gdkevents-win32.c
12283         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
12284
12285         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
12286         implementation object.
12287
12288         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
12289         not just windows.
12290         
12291         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
12292         Use the wrapper object.
12293         
12294 2000-10-06  Havoc Pennington  <hp@redhat.com>
12295
12296         * Makefile.am (SRC_SUBDIRS): contrib subdir
12297
12298         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
12299         so it can be used in Xlib version
12300
12301         * demos/testpixbuf.c (update_timeout): error checking from 1.0
12302         tree
12303
12304         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
12305         change from 1.0 tree that returns first frame of animation
12306         if the loaded file is an animation.
12307
12308         * contrib: add new directory to hold stuff that comes with GTK+
12309         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
12310         
12311         * configure.in: add contrib/*
12312
12313 2000-10-05  Havoc Pennington  <hp@redhat.com>
12314
12315         * demos/testpixbuf-save.c: add pixbuf save test
12316
12317         * demos/Makefile.am: add testpixbuf-save.c
12318
12319 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
12320
12321         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
12322         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
12323         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
12324         * gtk/gtktreeselection.[ch]: Replaced
12325         "node_selected"/"node_unselected" signal with "selection_changed"
12326         signal.
12327
12328 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12329
12330         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
12331         tree widget.
12332
12333 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12334
12335         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
12336         drawing.
12337
12338 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
12339
12340         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
12341         Move list pointer forwards before removing item from
12342         list. (Crash reported by Salmaso Raffaele)
12343
12344         * gdk/gdkwindow.h: Remove spurious trailing ,
12345
12346         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
12347         dependencies on uninstalled libraries, sorry folks.
12348
12349 2000-10-04  Havoc Pennington  <hp@redhat.com>
12350
12351         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
12352         gtk/gtkiconfactory.c: Fix copyrights    
12353
12354         * demos/testpixbuf.c: add inline pixbuf test
12355         
12356 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
12357
12358         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
12359         Add gdk_window_iconify.
12360
12361         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
12362         (gdk_window_set_geometry_hints): Add win_gravity
12363         to geometry structure.
12364
12365         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
12366         Implement _NET_WM_PING.
12367
12368         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
12369         Set _NET_WM_PID on the client leader.
12370
12371         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
12372         Handle UTF-8 better.
12373
12374         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
12375         UTF-8 better, set _NET_WM_NAME as well. Only set
12376         icon name if it hasn't previously been explicitely 
12377         set.
12378
12379 2000-10-03  Havoc Pennington  <hp@redhat.com>
12380
12381         * gtk/testtextbuffer.c: clean up trailing whitespace,
12382         add extensive tests for tag toggle iteration.
12383         
12384         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
12385         distance
12386
12387         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12388         optimize case where the tag root is on level 1
12389         (gtk_text_line_previous_could_contain_tag): attempt to implement
12390         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
12391         functionality
12392
12393         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
12394         Implement this, though not very efficiently.
12395
12396         * gtk/gtktextiterprivate.h: reformat
12397
12398         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
12399         iterator
12400
12401         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
12402         this to properly revalidate the iterators.
12403
12404         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
12405         properly at the end of the line (and therefore on empty lines)
12406
12407         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
12408         maybe we should return a value...
12409
12410 2000-10-03  Tor Lillqvist  <tml@iki.fi>
12411
12412         * config.h.win32: Guard definition of alloca(). glib.h now handles
12413         that.
12414
12415         * gdk/gdk.def
12416         * gtk/gtk.def: Add new entry points.
12417
12418         Changes just to make GTK+ build without errors on Win32. No hope
12419         of it working in its current state, though...:
12420         
12421         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
12422         some functions from the X11 backend, just to make GTK+ build.
12423
12424         * gdk/makefile.mingw.in
12425         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
12426         number. Add new object files.
12427
12428         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
12429         GetMessageTime to get timestamp (where on X11 uses
12430         gdk_x11_get_server_time()).
12431
12432 2000-10-02  Havoc Pennington  <hp@pobox.com>
12433
12434         * gtk/gtktextview.c: text_window_* weren't static and should have
12435         been.
12436         Start work on child widgets; not yet complete, syncing to 
12437         office computer.
12438
12439         * gtk/gtktextchild.h: change this to contain a public interface,
12440         starting work on child interfaces.
12441         * gtk/gtktextchildprivate.h: move private interfaces here
12442
12443         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
12444
12445         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
12446         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
12447         gtk/gtktextmark.c: copyright notices
12448
12449         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
12450         internal functions      
12451
12452         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
12453         internal function
12454
12455         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
12456         Reformatting    
12457
12458 2000-09-30  Havoc Pennington  <hp@pobox.com>
12459
12460         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12461         NULL start/end pointers
12462
12463         * gtk/gtktextbuffer.c: Write some docs
12464         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12465         NULL, so you can just check whether there's a selection.        
12466
12467         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12468         cleanup_line or segments_changed ourselves, it gets done 
12469         in unlink_segment
12470
12471         * gtk/gtktextmark.h:
12472         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12473         
12474         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12475
12476         * gtk/gtktextmark.c: delete some more old Tk cruft
12477
12478         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12479         mark before removing it, so we can emit MARK_DELETED with a valid
12480         pointer.
12481         (gtk_text_buffer_mark_set): hold ref across signal emission
12482
12483         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12484         whining about attempts to delete special marks
12485
12486         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12487         underscore, since it's internal.
12488
12489         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12490         now implemented in terms of iterators in gtktextiter.h
12491
12492         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12493         New function, destructively sets contents of buffer. Also 
12494         a convenient way to clear the buffer by setting text to ""
12495
12496         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12497         multiline string literal
12498
12499         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
12500         text changes.
12501
12502         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
12503         is not dereferenceable
12504         (gtk_text_iter_forward_lines): fix return value
12505
12506 2000-09-29  Havoc Pennington  <hp@redhat.com>
12507
12508         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
12509
12510         * gtk/gtktextview.c: Implement drag thresholding; change functions 
12511         that set border window size to have nicer name
12512         (gtk_text_view_mark_set_handler):  Fix this to have the 
12513         right signature.
12514
12515         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
12516
12517         * gtk/testtext.c: Update with API changes, put line numbers on 
12518         both sides.
12519         
12520         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
12521         with this
12522
12523         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
12524         pixbuf; delete a big block of #if 0 Tk code
12525
12526         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
12527         insert_pixmap with insert_pixbuf
12528
12529 2000-09-29  Martin Baulig  <baulig@suse.de>
12530
12531         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
12532         confusion with the GdkPixbuf of the GNOME 1.x platform.
12533
12534 2000-09-29  Havoc Pennington  <hp@pobox.com>
12535
12536         * gtk/gtktextview.c: Implement the side windows.
12537
12538         * gtk/testtext.c: Implement simple line numbering in the 
12539         left side window; seems to make scrolling sloooow. Oops.
12540         Also, cursor blink is for some reason causing redraws
12541         of the line numbers. Should investigate...
12542
12543 2000-09-28  Havoc Pennington  <hp@redhat.com>
12544
12545         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
12546         scrolling child windows, and draw focus rectangle properly.
12547         
12548         (gtk_text_view_buffer_to_window_coords):
12549         Coordinate transformation to deal with all these freaking windows
12550         and offsets
12551         (gtk_text_view_window_to_buffer_coords): transform the other way
12552
12553         * gtk/testtext.c (create_buffer): Update to match Pango API change
12554
12555         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
12556         anonymous tags
12557         (foreach_unref): don't emit remove signal from finalize, just
12558         set tag's parent to NULL
12559
12560 2000-09-26  Havoc Pennington  <hp@redhat.com>
12561
12562         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
12563         Fix some warnings       
12564
12565 2000-09-26  Havoc Pennington  <hp@redhat.com>
12566
12567         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
12568         headers into the private header list
12569
12570         * Makefile.am (pkgconfig_DATA): install pkg-config files
12571
12572         * configure.in: add pkg-config files
12573
12574         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
12575
12576         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
12577         outstanding icon caches on theme change.
12578
12579         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
12580         important types:
12581
12582         (GtkIconSource): Specification for creating a pixbuf 
12583         appropriate for a direction/state/size triplet from 
12584         a source pixbuf or filename
12585
12586         (GtkIconSet): List of GtkIconSource objects that are used to
12587         create the "same" icon (e.g. an OK button icon), and cache for
12588         rendered icons
12589
12590         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
12591         up the icon set for a given stock ID.  GTK maintains a stack of
12592         GtkIconFactory to search, and applications or libraries can add
12593         additional icon factories on top of the stack
12594         
12595         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
12596         the set of GtkIconSource specified for a given stock ID into 
12597         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
12598         RcStyle, under the specified stock ID.
12599
12600         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
12601         render_icon used to derive a GdkPixbuf from a GtkIconSource.
12602         This allows people to theme how prelight, insensitive, etc. are
12603         done.
12604
12605         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
12606         icon factories for a style, and return the resulting 
12607         icon set if any.
12608
12609         (gtk_style_render_icon): Render an icon using the render_icon 
12610         method in the GtkStyleClass.
12611
12612         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
12613         Use the style for a given widget to look up a stock ID, get the
12614         icon set, and render an icon using the render_icon method 
12615         of the style
12616
12617         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
12618         (contains information about a stock item), the built-in stock item
12619         IDs, and functions to add/lookup stock items.
12620
12621         * gtk/stock-icons/*: Stock icons that come with GTK
12622
12623         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
12624         a button based on a GtkStockItem
12625         (gtk_button_new_accel): Takes a uline string and accel group, and
12626         installs the accelerator.
12627
12628         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
12629         image-display widget.
12630
12631 2000-09-25  Havoc Pennington  <hp@redhat.com>
12632
12633         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
12634
12635         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
12636         Fix a bug when removing node data, we didn't properly 
12637         re-splice the linked list after removing the data.
12638
12639         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
12640         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
12641
12642         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
12643
12644         * gtk/gtktextlayout.c (set_para_values): Set tab array 
12645         for the layout from the GtkTextTag.
12646
12647         * gtk/gtktexttypes.h: delete tab and search cruft, 
12648         remove g_convert() in favor of GLib version
12649
12650         * gtk/gtktexttypes.c: remove tab implementation from here,
12651         move to Pango
12652
12653         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
12654         tab stuff using new PangoTabArray from Pango
12655
12656         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
12657         unused border_width stuff
12658
12659 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
12660
12661         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
12662         glib) and now useless utf_to_latin1() latin1_to_utf()
12663
12664         * gtk/gtktextview.[ch]: Change ::move_insert and
12665         ::delete_text action signals to ::move and ::delete;
12666         create the signals with the right enumeration type,
12667         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
12668         C-v bindings, change Home, End to move to beginning/end
12669         of line, Add C-Home C-End to move to beginning/end
12670         of buffer. Change ::cut_text to ::cut_clipboard, etc;
12671         combine ::scroll_text into ::move; use new GtkSelectionData
12672         functions to simplify DND text handling.
12673         
12674         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
12675         deletion enumerations here, rename enumeration values to 
12676         be consistently plural.
12677
12678         * gtk/gtktextbuffer.c: Use new clipboard interfaces
12679         for cut/copy/paste and primary selection.
12680
12681         * gtk/gtktextbuffer.[ch]: Remove excess time and
12682         'interactive' arguments from cut/copy/paste;
12683         rename cut to cut_clipboard, etc; remove
12684         gtk_text_buffer_get_clipboard_contents().
12685
12686         * gtk/gtktextlayout.[ch]: Add 
12687         gtk_text_layout_move_iter_to_line_end() to move the iter to 
12688         line ends.
12689
12690         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
12691         Functions to set or get a UTF-8 string on the selection
12692         data.
12693
12694         * gtk/gtkclipboard.[ch]: New, simplified selection handling
12695         interfaces.
12696
12697         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
12698         created widgets - one of these is useless if we don't.
12699
12700         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
12701         a public function clear all targets registered for the
12702         widget.
12703
12704         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
12705         Never call gtk_widget_realize() - that was just asking
12706         for bizarre side-effects.
12707
12708         * gtk/gtkselection.c (gtk_selection_owner_set): Call
12709         gdk_selection_owner_set even if the widget is the
12710         same so that we reliably update the timestamp on
12711         the server.
12712
12713         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12714         gdk_x11_get_server_time() function.
12715         
12716         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12717         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12718         Add some tricky filtering on serial numbers for
12719         selection clear events to fix up long-standard
12720         race condition FIXME's in gtkselection.c.
12721
12722         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12723         routines to convert from utf8 to compound text or
12724         STRING and from a text property to UTF-8.
12725
12726         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12727         a convenience function gdk_get_current_event_time().
12728
12729         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12730         and free selection_data->data properly
12731
12732 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12733
12734         * gtk/gtkthemes.c: Remove some unecessary includes.
12735
12736 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12737
12738         * gtk/gtktextdisplay.c
12739         * gtk/gtktextlayout.c
12740         * gtk/gtktexttag.c
12741         * gtk/gtktexttag.h
12742         * gtk/testtext.c: Change the overstrike property to strikethrough,
12743         to closer match pango.
12744
12745 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12746
12747         * gtk/gtktextview.c: Fix up visibility so that focus,
12748         cursor_visible and blink interact properly.  Reenable cursor blink
12749         which had been roughly disabled. Make blink and focus
12750         properly per-view.
12751
12752         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12753         Add a flag for whether to display insertion cursor and
12754         a function to set the flag.
12755
12756         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12757         get_line_y() to get_line_yrange(), to be a bit more generally
12758         useful.
12759
12760 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12761
12762         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12763           do stop_navigating_submenu, to clear last timeout properly.
12764           Also in gtk_menu_motion_notify move ignore_enter above
12765           the conditional to make it always happen as suggested by Owen
12766
12767 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12768
12769         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12770
12771         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12772         w32api headers.
12773
12774         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12775         declarations.
12776
12777         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12778         (gdk_win32_get_colormap): A line had been deleted by mistake.
12779
12780         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12781         (gdk_event_translate): Handle more virtual keycodes to be able to
12782         generate GDK events for Control-comma, Control-period, etc.
12783
12784         * gtk/gtk.def: Add some missing entry points.
12785
12786 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12787
12788         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12789         Doc comment fixing. (Mostly non-matching parameter names.)
12790
12791         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12792         comments a little to avoid looking like a doc comment.
12793
12794         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12795         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12796         conversions be changed to GError?)
12797
12798         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12799         Move private #defines into .c file.
12800
12801         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12802         order of argument addition, remove duplicates.
12803
12804         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12805         parent class is FrameClass, not BinClass.
12806
12807         * gtk/gtk.h: Add gtkinvisible, which was missing.
12808         (It's occasionalyl useful for client apps, if seldom.)
12809
12810         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12811         #define.
12812
12813 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12814
12815         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12816         coordinates when creating window, instead of GDK-space
12817         coordinates. (Avoid BadValue on too large windows.)
12818
12819 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12820
12821         * configure.in (use_mmx_asm): Remove conftest* after use along the
12822         lines of AC_TRY_COMPILE.        
12823         
12824         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12825         of g_dirname, which is deprecated.
12826         (gtk_rc_parse_any): Removed calls to
12827         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12828
12829         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12830         Removed calls to g_hash_table_{freeze,thaw}, as they are
12831         deprecated now.
12832
12833         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12834         instead of g_basename.
12835         
12836 2000-09-04 Elliot Lee <sopwith@redhat.com>
12837         
12838         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12839         ANSI warning.
12840
12841 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12842
12843         * gtk/gtkwidget.h:  Add some documenting comments about 
12844           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12845           just as owen said on irc.
12846
12847         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12848           set HAS_DEFAULT.  Only set it if there isn't another window
12849           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12850           it if the widget is not the focused window with RECEIVES_DEFAULT.
12851           This fixes weird double default bugs in dialogs which has things
12852           call gtk_window_set_default at times.
12853
12854 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12855
12856         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12857         Nils Barth and David Santiago to improve submenu
12858         navigation. The patch does this by creating a triangular
12859         region from the point where the pointer leaves the
12860         menu to the submenu.  While the pointer is in
12861         that region and a timeout has not expired, events 
12862         that would cause the active submenu to change are
12863         ignored.
12864
12865 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12866
12867         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12868         moving a toplevel window immediately after sizing it would
12869         result in it being sized back to the old size since 
12870         impl->width, impl->height aren't updated until we hear
12871         back from the server. There is still a (longstanding) bug
12872         here that gdk_window_get_size() will give the wrong size
12873         until we do hear back.
12874
12875 2000-08-31  Havoc Pennington  <hp@redhat.com>
12876
12877         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12878         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12879         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12880         Rename GtkTextStyleValues to GtkTextAttributes
12881
12882 2000-08-31  Havoc Pennington  <hp@pobox.com>
12883
12884         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12885         for rapid testing whether an iterator is the end iterator
12886         (gtk_text_btree_new): init end line cache
12887         (gtk_text_line_is_last): use fast cached line to 
12888         see if we're the last line.
12889         (get_last_line): use cached line here too, should 
12890         speed up some random unrelated code.
12891         
12892 2000-08-30  Havoc Pennington  <hp@pobox.com>
12893
12894         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12895         signals.
12896
12897         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12898         delete_text signals. This allows the signals to be used for
12899         implementing undo.
12900
12901         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12902         provide "interactive" argument when emitting insert_text or
12903         delete_text signal.
12904         
12905 2000-08-30  Havoc Pennington  <hp@pobox.com>
12906
12907         * gtk/gtktextbuffer.c: Docs
12908
12909 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12910
12911         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12912         from switch statements, since Tor removed the enumeration
12913         value.
12914         
12915         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12916         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12917
12918 2000-08-29 Elliot Lee <sopwith@redhat.com>
12919         * */*.h: Use G_GNUC_CONST.
12920
12921 2000-08-27  Havoc Pennington  <hp@pobox.com>
12922
12923         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12924         minor indentation fixes, inserted some FIXME about stuff I
12925         realized was broken while documenting it.
12926         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12927         GTK convention  
12928
12929 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12930
12931         * gtk/testgtk.c (create_styles): Fix double free of
12932         font desc.
12933
12934 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12935
12936         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12937         
12938         * gtk/testgtk.c (create_styles): Add a test for modifying
12939         the style through gtk_widget_modify_*.
12940
12941         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12942         a function to get the current modifier style.
12943
12944         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12945         of the passed in GtkRcStyle instead of ref'ing it.
12946
12947         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12948
12949 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12950
12951         * gdk/gdkimage.h
12952         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12953         shared memory image+pixmap GdkImage type, or
12954         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12955         I am dropping that.
12956
12957         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12958         actually call gtk_init_abi_check(), passing also
12959         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12960
12961         * gtk/gtk.def
12962         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12963         New functions, used to check that the GTK+-using code has been
12964         compiled using the correct compiler and switches. In particular,
12965         with gcc one has to use the -fnative-struct switch as GTK+ is
12966         compiled with that.
12967
12968 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12969
12970         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12971         ->prev fields when merging lists. (Found simultaneously
12972         by Pawel Salek and Jakub Jelinek)
12973
12974 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12975
12976         * gdk/gdk.def
12977         * gtk/gtk.def: Add missing entries.
12978
12979         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12980         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12981
12982         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12983         function. Dummy implementation at this point.
12984
12985         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12986         rules. Undefine GTK_COMPILATION when compiling the test programs.
12987         
12988         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12989
12990 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12991
12992         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
12993         to convert back and forth from UTF-8 and the "system" (or "current
12994         locale") charset when necessary. Indentation/spacing cleanup.
12995
12996 2000-08-10  Havoc Pennington  <hp@redhat.com>
12997
12998         * Makefile.am (snapshot): Change the format of the snapshot
12999         version to match glib
13000
13001         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
13002         from EXTRA_DIST since it doesn't seem to exist
13003
13004 2000-08-10  Tor Lillqvist  <tml@iki.fi>
13005
13006         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
13007         version of the directory name (not the UTF-8 one) when building
13008         the path name to stat().
13009
13010 2000-08-03  Elliot Lee  <sopwith@redhat.com>
13011
13012         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
13013         PANGO_ATTR_SHAPE set.
13014
13015 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
13016
13017         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
13018         Peter Osterlund to simplify the code while keeping the
13019         functionality the same.
13020
13021 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
13022
13023         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
13024         is_viewable() test further inside the function, since removing the 
13025         window from the redraw list without clearing ->update_area
13026         was also very broken.
13027
13028 2000-08-02  Tor Lillqvist  <tml@iki.fi>
13029
13030         * configure.in: Check for <unistd.h>.
13031
13032 2000-08-01  Martin Baulig  <baulig@suse.de>
13033
13034         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
13035         to display the message that this is a development version of GTK+.
13036
13037 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
13038
13039         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
13040         was depending on widget->allocation instead of the width of text_area,
13041         which was incorrect for subclasses like GtkSpinButton.
13042
13043         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
13044         with width == 1 tests that should be width == -1.
13045
13046 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
13047
13048         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
13049         (broken, Elliot, every single window blank on X) custom code with call
13050         to gdk_window_is_viewable() which a) prevents code duplicate and
13051         b) works. 
13052
13053 2000-07-31  Elliot Lee  <sopwith@redhat.com>
13054
13055         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
13056         to get the GDK_PARENT_ROOT() macro to work.
13057         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
13058         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
13059         of, windows that aren't shown.
13060         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
13061         pointer grab stuff.
13062
13063 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
13064
13065         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
13066           s/gtk_main_iteration/g_main_iteration/
13067
13068           Did this already in change:
13069                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13070           don't know how it got reverted.
13071
13072 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
13073
13074         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
13075         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
13076
13077         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
13078         not gdk_pixbuf.
13079
13080 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
13081
13082         * configure.in,po/{sp,sr}.po: Added Serbian files
13083
13084 2000-07-30  Tor Lillqvist  <tml@iki.fi>
13085
13086         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
13087
13088         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
13089         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
13090         GIOChannel implementation.
13091
13092         * gdk/win32/gdkinput.c
13093         * gdk/win32/gdkpango-win32.c: Update license name here, too.
13094
13095         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
13096         definition to match prototype.
13097
13098         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
13099
13100 2000-07-27  Elliot Lee  <sopwith@redhat.com>
13101
13102         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
13103         function, to allow handling image formats that cannot be detected
13104         by looking at content alone.
13105
13106 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
13107
13108         * docs/tutorial/*.gif *.jpg *.eps
13109           Update these to the same look-n-feel.
13110           Why does including images in DocBook suck so badly?
13111
13112 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
13113
13114         * gtk/gtktable.c: applied patch from Phil Thompson
13115         <phil@river-bank.demon.co.uk> that enables space settings for
13116         the last row/columns as well.
13117
13118 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
13119
13120         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
13121         updates the license headers to the GNU Lesser General Public License,
13122         as well as updating the copyright year to 2000.
13123
13124 2000-07-26  Robert Brady  <rwb197@zepler.org>
13125
13126         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
13127           and po/Makefile, was installing and looking for them under gtk20
13128           and gtk2 respectively.
13129
13130 2000-07-25  Havoc Pennington  <hp@redhat.com>
13131
13132         * gtk/testtext.c: Comment out some stuff that depends on the rest
13133         of my patches.
13134
13135 2000-07-25  Havoc Pennington  <hp@redhat.com>
13136
13137         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
13138         buffer
13139
13140 2000-07-25  Havoc Pennington  <hp@redhat.com>
13141
13142         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
13143         widget changes.
13144
13145         * gtk/gtktextview.h: To be consistent with usage of "line"
13146         throughout the API to mean "newline-terminated thingy", change
13147         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
13148         to MOVEMENT_LINE.
13149
13150         (GtkTextView): Add flags for default editability, and whether to
13151         show the cursor. Add functions to get/set that. Add 
13152
13153         (gtk_text_view_get_iter_location): new function
13154
13155         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
13156         gtktextlayout.h
13157         (g_convert): Add g_convert temporarily, will go in glib in a bit
13158         
13159         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
13160         GtkTextTagTableForeach instead of brokenly using GHFunc.
13161         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
13162
13163         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
13164         moved to public header.
13165
13166         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
13167         "invisible", since "elide" was a bad name.
13168         (gtk_text_tag_get_priority): Added
13169
13170         (GtkTextStyleValues): put this in public header, along with
13171         functions to use it.
13172
13173         * gtk/gtktextmarkprivate.h: Include more headers, since we no
13174         longer include gtktextbtree.h.
13175
13176         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
13177         gtk_text_mark_deleted
13178
13179         * gtk/gtktextlayout.h: Don't include the "really private" headers,
13180         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
13181         to make this possible. Now we only need to install
13182         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
13183         (However the Makefile.am isn't changed yet because of the
13184         logistics of merging gtk-hp-patches piecemeal)
13185
13186         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
13187         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
13188         gtk_text_iter_get_line is now used in the public API for a
13189         different purpose.
13190
13191         * gtk/gtktextiter.h: Clean up function names to be more
13192         consistent. Always call char offset "offset" and byte index
13193         "index". A "line" is always a line number. 
13194
13195         (gtk_text_iter_is_last): new function, more efficient than 
13196         the existing way to check
13197         (gtk_text_iter_is_first): new function, also more efficient
13198
13199         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
13200
13201         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
13202         gtk_text_iter_forward_char, etc.
13203
13204         (gtk_text_iter_forward_to_tag_toggle): Renamed from
13205         forward_find_tag_toggle, since this isn't a linear search
13206
13207         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
13208
13209         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
13210         New functions, search for a buffer substring.
13211
13212         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
13213         interactive and default editable (since we need to store that info
13214         until we receive the selection data).
13215
13216         Remove all the _at_char and at_line etc. versions of functions;
13217         only have iterator versions.
13218
13219         Add _interactive() versions of functions, that consider the
13220         editability of text. (FIXME add interactive flag to the 
13221         insert/delete signals per Darin's suggestion)
13222
13223         (gtk_text_buffer_get_tag_table): new function, demand-creates the
13224         tag table if necessary
13225
13226         Remove declaration of gtk_text_buffer_get_iter_from_string
13227
13228         (_gtk_text_buffer_get_btree): private/internal function, added.
13229         
13230
13231         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
13232         (gtk_text_line_is_last): new function
13233
13234 2000-07-25  Havoc Pennington  <hp@redhat.com>
13235
13236         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
13237         using GtkProgressBar. See Changes-2.0.txt for details.
13238
13239         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
13240         "pulse_step" which are the equivalent of
13241         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
13242         Implement new API.
13243         
13244         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
13245         (use_text_format) to mark whether text set on the progress bar is
13246         a format string. Deprecate entire GtkProgress interface.
13247
13248         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
13249         (gtk_progress_build_string): make this a no-op if use_text_format
13250         is FALSE
13251
13252         * docs/Changes-2.0.txt: Describe progress bar changes.
13253
13254 2000-07-25  Tor Lillqvist  <tml@iki.fi>
13255
13256         * Makefile.am: Include the build directory.
13257
13258         * configure.in: Generate build/Makefile, build/win32/Makefile,
13259         gdk/, gdk/win32/, and gtk/makefile.mingw.
13260
13261         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
13262         Add GETTEXT_PACKAGE.
13263         
13264         * gdk/gdk.def
13265         * gtk/gtk.def: Updates.
13266
13267         * gdk/gdkfont.h
13268         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
13269         need them any longer.
13270
13271         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
13272
13273         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
13274         PANGOWIN32_LIBS and gdk_pixbuf.
13275
13276         * gdk/win32: Compiles, but no doubt doesn't work at all.
13277
13278         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
13279
13280         * gdk/win32/gdkinput.c: New file, temporarily.
13281         
13282         * gdk/win32/gdkinput-win32.h: New file
13283
13284         * gdk/win32/gdkinputprivate.h: Remove.
13285
13286         * gdk/win32/gdkpango-win32.c: New file.
13287
13288         * gtk/makefile.mingw.in: New file
13289
13290         * gtk/makefile.cygwin: Removed
13291         
13292         * gtk/Makefile.am: Update accordingly.
13293
13294         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
13295         made externally visible.
13296
13297         * gtk/gtkmain.c: Use it.
13298         
13299         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
13300         is enough.
13301
13302         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
13303
13304 2000-07-24 Elliot Lee <sopwith@redhat.com>
13305         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
13306         individual backends already.
13307         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
13308         again. Yes, there really is a good reason for this, if you are using the gdkregion
13309         internals, and if you're not, why do you care?
13310         * gdk/gdkwindow.c: Fix inverted condition
13311         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
13312         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
13313         * gtk/gtkrange.c: Redraw trough when moving.
13314         * gtk/gtktypeutils.c: Fix warning by adding const cast.
13315         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
13316
13317 2000-07-23  Tor Lillqvist  <tml@iki.fi>
13318
13319         * configure.in: Check for mkstemp and sigsetjmp. Output
13320         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
13321
13322         More work on GDK for Win32. Still in an intermediate state.
13323
13324         * gdk/makefile.cygwin
13325         * gdk/win32/makefile.cygwin: Removed.
13326         
13327         * gdk/makefile.mingw.in
13328         * gdk/win32/makefile.mingw.in: New files.
13329
13330         * gdk/Makefile.am
13331         * gdk/win32/Makefile.am: Generate and distribute them.
13332
13333         * gdk/win32/gdkwindow-win32.h
13334         * gdk/win32/gdkdrawable-win32.h
13335         * gdk/win32/gdkpixmap-win32.h: New files.
13336
13337         * gdk/win32/gdkcolor-win32.c
13338         * gdk/win32/gdkcursor-win32.c
13339         * gdk/win32/gdkdrawable-win32.c
13340         * gdk/win32/gdkgc-win32.c
13341         * gdk/win32/gdkimage-win32.c
13342         * gdk/win32/gdkprivate-win32.h
13343         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
13344         Rename fields and variables called xcursor, xid, etc (these names
13345         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
13346
13347 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
13348
13349         * gtk/gtkentry.[ch]: Fix some problems with vertical
13350         alignment.
13351
13352         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
13353         char/byte confusion.
13354
13355 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
13356
13357         * gtk/gtktextview.c (changed_handler): Fix bug where
13358         redraw wasn't being done properly when height of
13359         dirty region changed.
13360
13361         * demos/Makefile.am: Remove various references to
13362         -lgmodule
13363
13364 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
13365
13366         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
13367         PangoAttrShape to reserve space for pixmaps, add 
13368         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
13369         in the display functions.
13370         
13371         * gtk/testgtk.c (create_layout): Set some more exotic
13372         scrolled window options
13373
13374         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
13375         Add function to set the shadow type of a window, to allow
13376         putting a shadow around widgets such as GtkLayout or GnomeCanvas
13377         which don't draw their own frame.
13378
13379 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
13380
13381         * docs/tutorial/package-db-tutorial.sh: New file for
13382           packaging DocBook format tutorial
13383
13384 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
13385
13386         * docs/tutorial/gtk-tut.sgml: Minor updates
13387
13388         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
13389
13390 2000-07-19  Tor Lillqvist  <tml@iki.fi>
13391
13392         * gtk/gtksignal.c: Fix C++ comment.
13393
13394         * gtk/gtkimmulticontext.c
13395         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
13396         don't return value from void functions.
13397
13398         * gtk/gtk.def: Add gtk_rc_style_unref.
13399
13400 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13401
13402         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
13403         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
13404         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
13405         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
13406         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
13407         gtk/gtktypeutils.h: Include files outside of the extern "C"
13408         block. Makes some C++ compiler happy. Reported by Denis Vakatov
13409         <vakatov@peony.nlm.nih.gov>.
13410
13411 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
13412
13413         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
13414           Completes first pass. Hurrah!
13415
13416 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
13417
13418         * docs/tutorial/gtk-tut.sgml: More clean ups.
13419
13420 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
13421
13422         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
13423         paint the background of the text area which was accidentally
13424         removed at some point.
13425
13426         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
13427           
13428          - Move most of the functionality from the theme vtable
13429            into GtkRcStyleClass and GtkStyleClass. The moved
13430            vtable functions were changed a bit in the move to
13431            work better in their new home.
13432
13433          - Get rid of the engine and engine_data fields from
13434            GtkRcStyle and GtkStyle; instead the theme
13435            engine derives theme-specific subclasses of GtkRcStyle
13436            and GtkStyle
13437
13438          - Add extra dlsym() found entry point to themes,
13439            theme_create_rc_style().
13440
13441         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
13442         in gtk_style_real_copy.
13443
13444         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
13445         to register a type associated with an engine. (The engine
13446         won't be unloaded as there is an instance of the type.)
13447
13448
13449 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
13450
13451         * docs/tutorial/gtk-tut.sgml: Clean ups.
13452
13453 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
13454
13455         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
13456           of cleaning up to do.
13457
13458 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13459
13460         * gdk/testgdk.c: New file, quick hack to test backends for
13461         pixel-by-pixel correctness of the most simple graphic operations.
13462
13463 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13464
13465         * Really release 1.3.1
13466         
13467         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13468         include structure.
13469
13470 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13471
13472         * Released 1.3.1
13473
13474 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13475
13476         * gtk/gtktextlayout.c: use FALSE for size_only most
13477         of the time when calling gtk_text_layout_get_line_display()
13478         to avoid causing double reshapes when a redraw follows
13479         immediately after.
13480
13481 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13482
13483         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13484         appropriate region and gdk_window_process_updates() so trough
13485         updating doesn't lag behind the window being scrolled.
13486
13487         * gdk/gdkgc.c: Make parent_class pointer static.
13488          
13489 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13490
13491         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13492         include <string.h>.
13493          
13494         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13495         cut-and-paste error in computing memory offset for 4 channels.
13496
13497 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13498
13499         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
13500         gtk_rc_append_default_pixmap_path(), since it wasn't
13501         adding an interesting path and we don't have a meaningful
13502         default for this value.
13503
13504 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
13505
13506         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
13507         gtk-config to gtk-config-2.0 move gtk_.m4 to
13508         gtk-2.0.m4
13509
13510         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13511         gdk/Makefile.am demos/Makefile.am: Change 
13512         library names to libgtk-1.3.la, etc, so that we
13513         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
13514
13515         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13516         gdk/Makefile.am gdk/x11/Makfile.am
13517         Move include files into /usr/include/gtk-2.0, 
13518         /usr/lib/gtk-2.0/include/
13519          
13520         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
13521         gtk/gtkintl.h: Change package for gettext from 
13522         gtk+ to gtk20. Put hack in autogen.sh to modify
13523         po/Makefile.in.in after gettextize to make this
13524         possible.
13525
13526         * gtk+.spec: Some updates, not tested.
13527
13528         * gdk-pixbuf/Makefile.am: Move loaders into
13529         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
13530
13531         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
13532         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
13533         to THEMENAME/gtk-2.0/. Move engine directory  to
13534         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
13535         
13536 2000-07-12  Tor Lillqvist  <tml@iki.fi>
13537
13538         Win32 changes, still doesn't build though.
13539
13540         * gdk/makefile.cygwin
13541         * gdk/win32/makefile.cygwin
13542         * gtk/makefile.cygwin: Updates.
13543
13544         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
13545         default values for fg and bg pixel as X11 does (0 and 1), not
13546         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
13547         Use 0 for pen width by default (treated as 1 anyway later, but for
13548         apps that might check the value in the GdkGC).
13549         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
13550         interface to gdk_gc_predraw and _postdraw.
13551
13552         * gdk/win32/gdkwin32.h
13553         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
13554
13555         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
13556         extraneous semicolon.
13557
13558         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
13559
13560         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
13561         not the Win32 bitspixel value.
13562
13563         * gdk/win32/gdkcc-win32.c:
13564         * gdk/win32/gdkcolor-win32.c 
13565         * gdk/win32/gdkprivate-win32.h
13566         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
13567         GDK object structure.
13568
13569 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
13570
13571         * docs/tutorial/gtk_tut_12.es.sgml (name): 
13572         * docs/tutorial/gtk_tut_it.sgml (name): 
13573         * docs/tutorial/gtk_tut_fr.sgml (name): 
13574         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
13575         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
13576
13577 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
13578
13579         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
13580           small changes.
13581
13582 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
13583
13584         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
13585         a bug here, never been here and never fixed anything ;(
13586         (don't segfault if tree->root_tree is NULL, which happens prior
13587         to widget realization, but puke instead).
13588
13589 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
13590
13591         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
13592         add the necessary tokens.
13593
13594         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
13595         (gtk_rc_style_to_style): copy thicknesses.
13596         (gtk_rc_init_style): apply thicknesses.
13597         (gtk_rc_parse_style): parse xthickness and ythickness.
13598
13599         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
13600
13601         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
13602         (gdk_window_new): 
13603         (_gdk_windowing_window_init): 
13604         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
13605         (gdk_pixmap_create_from_data): 
13606         (gdk_bitmap_create_from_data): 
13607         (gdk_pixmap_new): 
13608         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13609         (gdk_image_new): 
13610         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
13611         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
13612         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
13613         (gdk_colormap_get_system): 
13614         (gdk_colormap_new): 
13615         * gdk/gdkwindow.c (gdk_window_init): 
13616         * gtk/gtkstyle.c (gtk_style_new):
13617         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
13618         * gdk/gdkpixmap.c (gdk_pixmap_init): 
13619         * gtk/gtkrc.c (gtk_rc_style_new):
13620         use g_object_new() instead of g_type_create_instance() which
13621         is a private function for fundamental type implementations.
13622
13623 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
13624
13625         * configure.in: Add check for db2html
13626
13627 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
13628
13629         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
13630         hack to set glib_debug_objects based on gtk_debug_flags.
13631
13632 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
13633
13634         * INSTALL.in: Update the Prerequisites section.
13635
13636         * Makefile.am demos/Makefile.am docs/Makefile.am
13637         docs/tutorial/Makefile.am gdk/x11/Makefile.am
13638         gdk/linux-fb/Makefile.am: Dist fixes
13639
13640 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
13641
13642         * NEWS: 10,000 foot view of 1.3.1 changes.
13643
13644 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
13645
13646         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
13647         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
13648         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
13649         gdk/x11/gdkmain-x11.c: 
13650
13651         Patch from George Lebl to add a GdkGrabStatus enumeration to use
13652         as a return value of gdk_*_grab(). Previously, we just
13653         returned the X11 values directly.
13654
13655 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
13656
13657         * gdk/x11/Makefile.am: Patch from George Lebl to 
13658         install all the headers in the right place.
13659
13660 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
13661
13662         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
13663           initial conversion to DocBook.
13664
13665 2000-07-04  Tor Lillqvist  <tml@iki.fi>
13666
13667         * README.win32: Improve a bit.
13668
13669         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
13670         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
13671         Alt+0nnn on the numpad (used to enter characters by numeric code
13672         from current DOS or ANSI codepage) working correctly, as in other
13673         Windows apps.
13674
13675         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
13676         same argument validity tests as in X11 version.
13677         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
13678
13679         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
13680         definitions in case missing from headers.
13681
13682         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
13683         destroy the window-specific cursor.
13684         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
13685         calling GetModuleHandle(NULL).
13686         (gdk_window_set_cursor): Reworked to always copy the passed cursor
13687         with CopyCursor before setting it as the window-specific
13688         cursor. It is OK for the caller to destroy the GdkCursor (and thus
13689         also its Windows cursor) after calling this function. Destroy any
13690         previous window-specific cursor.
13691
13692 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
13693
13694         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
13695         font charset is iso8859-1, not iso-8859-1.
13696
13697 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
13698
13699         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
13700         Use g_get_charset() instead of g_get_codeset().
13701
13702         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
13703         Comment out some strdup'ing functions to keep timj
13704         happy until we finish fighting this out.
13705
13706 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
13707
13708         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
13709         <= width or height.
13710
13711         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13712         from 1.2 for parent/child states.
13713
13714         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13715         of typos.
13716
13717         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13718         event structures, replace with a generic axes field. Replace 
13719         deviceid/sourec with GdkDevice *device.
13720
13721         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13722         to extract particular axis use value from event. (Also
13723         can be used for normal X/Y.)
13724
13725         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13726         allow for arbitrary number of axes, namespace everything
13727         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13728         everywhere.
13729
13730         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13731         Get rid of the gdk_input_vtable setup if favor of simply
13732         defining the functions in gdkinput-none/gxi/xfree.c in
13733         a similar fashion to the way that the port structure is 
13734         done.
13735
13736         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13737         for new event structures. 
13738
13739         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13740         new device interfaces.
13741
13742 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13743
13744         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13745         set the initial text.
13746
13747         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13748         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13749         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13750         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
13751
13752         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13753         pango_layout_set_font_description to simplify.
13754
13755 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13756
13757         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13758         pango_layout_set_font_description to simplify.
13759
13760 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13761
13762         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13763         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13764         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13765
13766         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13767         PANGO_PIXELS() macro.
13768
13769 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13770
13771         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13772         that returns a PangoContext owned by the widget and updated to
13773         match future changes in the widget. Also, make 
13774         gtk_widget_create_pango_layout() use this context. If we ever
13775         add a ::changed signal to PangoContext, this will make things
13776         much more convenient. 
13777
13778         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13779         in the appropriate places instead of destroying the layouts and
13780         creating new ones.
13781
13782         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13783         in a few strategic places.
13784
13785 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13786
13787         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13788         gtk_widget_size_request() on reparented child, if one. Otherwise,
13789         queue_resize() on the child never results in it getting size-requested
13790         at all.
13791
13792         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13793         in option menus, so that (with luck) people won't copy it into
13794         their apps in the future.
13795
13796         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13797         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13798         a lot of problems with changing the size of the menu's menu
13799         items after adding it to the option menu.
13800
13801         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13802
13803         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13804         the text direction for a widget changes.
13805
13806         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13807         ::direction_changed to get rid of various hacks.
13808
13809 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13810
13811         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13812         name.
13813
13814 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13815
13816         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13817         flag to the structure. Do not call XFreePixmap on pixmaps created
13818         by gdk_pixmap_foreign_new().
13819
13820 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13821
13822         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13823         value using GdkRGB functionality given GdkColormap and GdkColor.
13824         (name not final, waiting for inspiration.)
13825         
13826         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13827         set the foreground/background of a GC using the GC's colormap
13828         and GdkRGB. (name not final, waiting for inspiration.)
13829
13830         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13831         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13832
13833         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13834         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13835         purely a function of the corresponding colormap. Make
13836         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13837
13838         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13839         gdk_pixbuf_*create_from_xpm_* in terms of
13840         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13841         code.
13842
13843         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13844         advantage of the new draw_rgb_32_image_dithalign.
13845
13846         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13847
13848         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13849         on each created GC.
13850
13851         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13852
13853         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13854         which we initialize from the drawable when the GC is created,
13855         if the drawable has a colormap.
13856
13857         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13858
13859         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13860
13861         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13862
13863 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13864
13865         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13866         actually returning expose events, make sure to set
13867         the count field properly.
13868
13869         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13870         accidentally reintroced bug which always cleared
13871         the graphics_exposures value. 
13872
13873 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13874
13875         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13876
13877 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13878
13879         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13880
13881 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13882
13883         * docs/faq/gtk-faq.sgml: Start of Section 6.
13884
13885 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13886
13887         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13888         
13889         (Fixes problem with drawing childless frames. Pointed out
13890         by and a first patch from Anders)
13891         
13892         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13893         compute a child_allocation, even if we don't have a child.
13894
13895         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13896         Always chain to the parent's impl, even if we don't have a child.
13897
13898 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13899
13900         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13901         use multiple parts of it instead of creating a bunch of separate
13902         segments, since the maximum number of segments per system is not
13903         large. (This might be worth backporting to GTK+-1.2.x if we make a
13904         new release )
13905
13906         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13907         structure in preparation for per-colormap GdkRGB.
13908
13909         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13910         to False when we get EINVAL from shmget so that the caller of
13911         gdk_image_new can retry with a smaller segment size.
13912
13913 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13914
13915         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13916
13917 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13918
13919         * configure.in: make the current version number 1.3.1 (binary age 0,
13920         interface age 0).
13921         
13922         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13923         gtkcompat.h is all we want.
13924
13925         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13926         GLib primitive types. fixed g_type_register_fundamental() argument
13927         ordering.
13928
13929         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13930         compiles.
13931
13932         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13933         object code cleanup, comment trigraph fixes, etc...
13934
13935 2000-06-23  Havoc Pennington  <hp@redhat.com>
13936
13937         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13938         instead of making up a bogus name for first_para_mark
13939
13940         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13941         0 as a context ID
13942
13943 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13944
13945         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13946
13947 2000-06-21  Havoc Pennington  <hp@pobox.com>
13948
13949         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13950         we didn't check window->bg_pixmap != GDK_NO_BG.
13951
13952         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13953         gdk-pixbuf
13954
13955 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13956
13957         * docs/faq/gtk-faq.sgm: Move file to here.
13958           TODO: Update Makfile.am 
13959
13960 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13961
13962         * docs/gtk-faq.sgm: Add Section 2
13963
13964 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13965
13966         * docs/gtk-faq.sgm: New file. Start of DocBook
13967           version of the FAQ.
13968
13969 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13970
13971         * configure.in (GDK_PIXBUF_MAJOR): Define version
13972         numbers for GDK_PIXBUF_*, as they get substituted
13973         into a header file. Need to consider versioning
13974         for gdk-pixbuf more carefully later.
13975
13976 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13977
13978         Work with srcdir != builddir.   
13979         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13980         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13981         * demos/testpixbuf.c: Likewise.
13982         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13983         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13984         <gdk/x11/gdkx.h>.
13985         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13986         "gdk-pixbuf.h".
13987         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13988
13989 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13990
13991         * TODO.xml: Change 1.4 version numbers to 2.0.
13992
13993 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
13994
13995         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
13996         fixups to GTK+ standard.
13997
13998 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
13999
14000         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
14001         gdk-pixbuf.
14002
14003         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
14004         fixups for GObject.
14005
14006         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
14007         gdk-pixbuf with GDK dependencies moved into GDK.
14008         
14009         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
14010         move gdk-pixbuf-loader here until GObject has signals.
14011
14012         * demos/: New directory of demos. Move demos from
14013         gdk-pixbuf here.
14014
14015         * demos/pixbuf-init.c: Small bit of code to check for
14016         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
14017         set GDK_PIXBUF_MODULEDIR appropriately.
14018
14019         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
14020         define which no longer makes sense.
14021
14022 2000-06-21  Havoc Pennington  <hp@redhat.com>
14023
14024         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
14025         gtk_get_default_language
14026
14027         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
14028         new function to get the default language
14029
14030         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
14031         s/gtk_text_view_style_values/gtk_text_style_values/
14032
14033         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
14034         Add a "language" field to tags.
14035
14036         (gtk_text_tag_set_arg): Fix bug in setting
14037         "bg_full_height_set" tag.
14038
14039 2000-06-21  Havoc Pennington  <hp@redhat.com>
14040
14041         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
14042         in the interfaces
14043
14044         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
14045         stuff instead when possible.
14046
14047         * gtk/gtktexttypes.h: Delete some unused constants
14048
14049         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
14050         testtextbuffer.c: use glib instead of custom unicode routines
14051
14052 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
14053
14054         * docs/es/: Removed mistakenly added generated sgml
14055
14056         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
14057         Remove outdated info files.
14058
14059         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
14060         Moved tutorial files into subdir
14061
14062         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
14063         subdir.
14064
14065         * docs/man/gtk_button.pod: Remove. (contents will be
14066         integrated into gtk-reference button page.)
14067
14068         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
14069         docs/faq/Makefile.am: Adjust for new organization
14070
14071 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
14072
14073         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
14074         not $(MKINSTALLDIRS)
14075
14076 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
14077
14078         * gtk/testgtk.c (create_text): Finish the job Elliot started
14079         of removing font setting test for text widget. (Since text widget
14080         and GdkFont are not deprecated, and cause portability problems.)
14081
14082 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
14083
14084         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
14085         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
14086         Remove use of libunicode in favor of new GLib functions.
14087
14088         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
14089         nano-x, framebuffer. The X11 include is just a hack until we get
14090         the necessary functions in gdkcolor.h, so there is no reason to
14091         add other includes of platforms.
14092
14093         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
14094         window bigger than the screen change.
14095
14096         * gtk/testgtk.c: Revert some random changes from Elliot
14097         that had no particular point and were causing testgtkrc
14098         not to function correctly.
14099         
14100         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
14101         because GdkSegment and GdkRegionBox have the same fields,
14102         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
14103         results in clearer code.
14104
14105         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
14106         gdk_input_translate_coordinates): Fix missed GdkObjectification
14107
14108 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14109
14110         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
14111         * gtk/gtk{plug,socket}.h: Missed commits from previous.
14112
14113 2000-06-20  Havoc Pennington  <hp@redhat.com>
14114
14115         * modules/linux-fb/Makefile.am: Make this compile
14116         without framebuffer enabled
14117
14118         * gdk/linux-fb/Makefile.am: Add conditional to not build
14119         framebuffer unless specified in configure
14120
14121         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
14122         the size of the target instead of source if -1 was passed for
14123         width/height
14124
14125         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
14126         width/height confusion.
14127
14128 2000-06-19  Havoc Pennington  <hp@redhat.com>
14129
14130         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
14131         GDK_DRAWABLE_XID. In the future, we probably want to make it
14132         faster with G_DISABLE_CHECKS turned on.
14133
14134 2000-06-14  Havoc Pennington  <hp@redhat.com>
14135
14136         * gdk/Makefile.am: add gdkpixmap.c
14137
14138         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
14139         s/gdk_image_init/_gdk_windowing_image_init
14140
14141         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
14142         ref/unref
14143
14144         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
14145
14146         * gdk/gdkcompat.h: remove GdkWindowType compat, since
14147         GdkWindowType is now non-deprecated; 
14148         change gdk_window_get_type() compat to be
14149         gdk_window_get_window_type().
14150
14151         * gdk/gdkdnd.h: make GdkDragContext a GObject.
14152
14153         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
14154         virtual GObject. Make all functions call into the vtable.
14155         Move gdk_image_put() guts in here. Remove GdkDrawableType
14156         and gdk_drawable_get_type(), these are now GdkWindow-specific.
14157         draw_image, get_depth, get_size, set_colormap, get_colormap,
14158         get_visual added to the vtable.
14159         
14160         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
14161         GObject. Virtualize everything. 
14162         (gdk_gc_new_with_values): remove check for destroyed window,
14163         because now GdkWindow::create_gc will check this.
14164         (gdk_gc_set_values): New function to set GC values, this 
14165         was already implemented but wasn't in the header
14166
14167         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
14168
14169         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
14170         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
14171         remove _gdk_window_class; add _gdk_window_impl_get_type() and
14172         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
14173         _gdk_windowing_window_init, rename gdk_image_init to
14174         _gdk_windowing_image_init.
14175         
14176         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
14177         (gdk_draw_layout): Remove check for destroyed window, 
14178         because all the drawable methods already check it.
14179         
14180         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
14181         Add gdkpixmap.c which contains implementation of GdkDrawable
14182         virtual table (by chaining to a platform-specific implementation
14183         object).
14184         
14185         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
14186         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
14187         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
14188         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
14189         GdkColormapPrivate. 
14190
14191         * gdk/gdktypes.h: #include <glib-object.h>
14192
14193         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
14194         Move most functionality to platform-specific implementation
14195         object. GdkWindow itself now handles the backing store, then
14196         chains to the platform-specific implementation.
14197         (gdk_window_get_window_type): return GdkWindowType of the window.
14198         (gdk_window_peek_children): New routine, returns the children of 
14199         a GdkWindow
14200         (gdk_window_get_children): Was in X11-specific code and did 
14201         XQueryTree. Changed to simply return a copy of window->children; 
14202         so it can go in cross-platform code.
14203         
14204         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
14205
14206         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
14207         GdkColormap; just changed to use the new private data instead
14208         of casting to GdkColormapPrivate.
14209
14210         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
14211         gdk_cursor_new().
14212
14213         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
14214         (private data member in the GObject). 
14215         (xdnd_manager_source_filter): Function had broken 
14216         error handling, fix it (use gdk_error_trap_push).
14217
14218         * gdk/x11/gdkdrawable-x11.c: This file now implements
14219         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
14220         base class is purely for the convenience of the X port,
14221         and not part of the interface to cross-platform GDK.
14222
14223         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
14224         
14225         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
14226         specific to X, and returned by the create_gc virtual method
14227         of GdkDrawableImplX11. 
14228         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
14229         rather than gchar, this was also changed in the GdkGC vtable.
14230         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
14231         mask is 0, return immediately, instead of checking every flag.
14232         This is faster, and keeps us from segfaulting if values is NULL
14233         and the mask contains some nonzero flags.
14234
14235         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
14236         GdkWindow.
14237
14238         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
14239         GdkWindowPrivate is gone.
14240
14241         * gdk/x11/gdkim-x11.c: rename things that got renamed.
14242
14243         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
14244         remove the image_put stuff that got transferred to GdkDrawable.
14245         
14246         * gdk/x11/gdkinput.c: renamings
14247
14248         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
14249
14250         * gdk/x11/gdkpixmap-x11.c: GObject conversion
14251
14252         * gdk/x11/gdkprivate-x11.h: indentation fixes
14253
14254         * gdk/x11/gdkproperty-x11.c: renamings
14255
14256         * gdk/x11/gdkselection-x11.c: renamings
14257
14258         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
14259         implements the platform-specific "impl" object.
14260         Moved gdk_window_get_children to gdk/gdkwindow.c
14261
14262         * gdk/x11/gdkx.h: Remove all the private structs and private datas
14263         that no longer exist. Add declaration of GdkGCX11 object here.
14264         Fix all the macros to still work. 
14265
14266         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
14267         GdkDragContext from the boxed types since they are now GObjects.
14268
14269         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
14270         moved xthickness/ythickness into the instance. GtkStyleClass
14271         functions are now in the standard vtable for GtkStyle, so you have
14272         to create a GObject subclass to write a theme engine.
14273         (gtk_style_copy): fixed a leaked PangoFontDescription
14274         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
14275         can be the standard GObject function.
14276         
14277         * Throughout GTK:
14278         s/style->klass->[xy]thickness/style->[xy]thickness
14279         s/pango_layout_unref/g_object_unref/
14280
14281         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
14282         
14283         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
14284         accessing GDK internals.
14285
14286         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
14287         accessing GDK internals.
14288
14289 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14290
14291         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
14292
14293         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
14294         problem by calculating event position relative to the trough
14295         rather than the slider.
14296         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
14297
14298         * gdk/gdkgc.h: Add GDK_NOR.
14299
14300         * configure.in, Makefile.am: Add modules top level dir
14301         * configure.in: Only use pangox library if building x11 target.
14302         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
14303
14304 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14305
14306         * gtk/gtkcolorsel.c: Change private class member to be named
14307         private_data throughout the file.
14308
14309         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
14310         private_data to avoid clashing with keyword.
14311
14312 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14313
14314         * gdk/gdkdnd.h: Add comment to remove warning.
14315
14316 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
14317
14318         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
14319         Byelorussian language; changed the Makefile and file names 
14320         to reflect that.
14321
14322 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
14323
14324         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
14325         rather than gdk_window_hide; this makes things work
14326         correctly if the window is programmatically hidden while
14327         iconified.
14328
14329 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
14330
14331         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
14332         cut and paste typo where wrong pixmap was being
14333         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
14334
14335 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
14336
14337         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
14338         Add helper function to compute format / bytes 
14339         relationship. Use in a couple places to fix up
14340         errors which assume 8 * format.
14341
14342         * gtk/gtkselection.c (gtk_selection_request): Use 32
14343         rather than 8 * sizeof (GdkAtom), to work correctly
14344         on Alpha.
14345
14346 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
14347
14348         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
14349         libgtk.la
14350         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
14351         versions
14352
14353         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
14354         checking macros return NULL since the function has a return value.
14355
14356 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
14357
14358         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
14359         GTK+ from building at all.
14360
14361         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
14362
14363 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
14364
14365         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
14366         gtk/Makefile.am: make it possible to configure gtk for different
14367         targets on the same platform. The library name is now 
14368         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
14369         flag. Only the x11 target compiles right now.
14370         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
14371         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
14372         * gdk/nanox/gdk*generic*: delete generic region code.
14373         * gdk/linux-fb/gdk*generic*: delete generic region code.
14374         * README.nanox: update information.
14375         
14376 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
14377
14378         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
14379         prepend not append. (Pointed out by Brett Hall.)
14380
14381 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
14382
14383         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
14384
14385 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
14386
14387         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
14388         need this later, and this makes sure that the atexit for
14389         glib gets called after that for GDK, so atexits are
14390         properly ordered for object leak checking.
14391
14392         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
14393
14394         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
14395         pango_x_shutdown_display()
14396
14397         * gtk/simple.c (main): Close window on destroy.
14398
14399 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
14400
14401         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
14402         to treat initial creation different from setting with 
14403         regards to the graphics-exposures parameter, so add a parameter
14404         indicating whether this is initial or not.
14405
14406 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
14407
14408         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
14409         to sort of work by adding an extra return_exposes arg
14410         to gdk_event_translate() - it might be better to simply
14411         deprecate the function altogether and force people to rewrite
14412         without it. gdk_window_scroll() handles most of it, and where
14413         gdk_window_scroll() doesn't work, simply redrawing more does.
14414
14415         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
14416         assertion.
14417
14418         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
14419
14420         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
14421         bunch of pretty much useless /* Print debugging info */ comments 
14422         which had drifted away from the code they were commenting.
14423
14424 2000-06-02  Havoc Pennington  <hp@pobox.com>
14425
14426         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
14427         is in working order.
14428         
14429         * gtk/testtext.c: Change to reflect anonymous mark API
14430
14431         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
14432
14433         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
14434         field, which was unused.
14435
14436         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
14437         saves some typing.
14438
14439         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
14440
14441         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
14442         flag on the insertion point and selection bound
14443
14444         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
14445         make mark-manipulation functions take a GtkTextMark* instead of a
14446         mark name.
14447         
14448         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
14449         GtkTextMarkBody; will be used to detect attempts to delete
14450         the permanent marks (insert and selection bound)
14451
14452         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
14453
14454 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
14455
14456         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
14457         flag to on.
14458
14459         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14460         Honor DOUBLE_BUFFRED_FLAG
14461
14462         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14463         function to set the DOUBLE_BUFFERED flag.
14464
14465         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14466         or not exposes done on the widget should be double-buffered.
14467
14468         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14469         to be what would be expected. (Fixes problem with a
14470         g_return_if_fail() validating a TextDirection enumeration)
14471
14472 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14473
14474         * gtk/gtkwidget.c: Remove all references to 
14475         offscreen flag which was no longer used.
14476
14477         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14478
14479         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14480         for non-null label_widget->parent.
14481
14482         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14483         which no longer was used.
14484
14485         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14486
14487         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14488         for null arguments.
14489
14490         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14491         check for destroyed windows.
14492
14493 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14494
14495         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14496         the slave context there.
14497
14498         * gtk/gtkinvisible.[ch]: Make reference counting behavior
14499         identical to GtkWindow.
14500
14501 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
14502
14503         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
14504         pangox to here, so we can write them independent of rendering
14505         system, using GDK primitives.
14506
14507         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
14508         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
14509         since we have a rendering-system independent implementation in
14510         terms of draw_glyphs().
14511         
14512         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
14513         function to render a single line.
14514
14515         * gdk/x11/gdkpango.c: Move the guts of this file mostly
14516         into ../gdkpango.c, which simplifies things, since we
14517         don't have to deal with raw X gc's.
14518
14519 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
14520
14521         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
14522         get the logical attributes for a given GtkTextLine.
14523
14524 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
14525
14526         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
14527         g_locale_get_codeset() to g_get_codeset() change.
14528
14529 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
14530
14531         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
14532         descriptions.
14533
14534         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
14535         the entry.
14536
14537         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
14538         redoing (vastly simplifying) for Pango. Still needs quite
14539         a bit of work. (Size selection is currently poor. List of 
14540         predefined sizes is not a good idea, since all of these
14541         sizes won't necessarily be distinct.)
14542
14543 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
14544
14545         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
14546         CODESET results for LANG=C.
14547
14548 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
14549
14550         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
14551         which takes a stringized pango font description;
14552         ignore the older 'font' and 'fontset' declarations.
14553
14554         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
14555         field with a GdkFont derived via gdk_font_from_description(),
14556         for compatibility. (Should we just remove it entirely?
14557         Probably too much compatibility breakage, but people
14558         should be migrating to the new Pango stuff as quickly
14559         as possible.)
14560
14561 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
14562
14563         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
14564
14565 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
14566
14567         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
14568         redoing; there are some bugs in size allocation right
14569         now, the semi-existant distinction between header / day
14570         fonts was removed, but, with Pango, could actually
14571         be made functional in a nice way.
14572         
14573         * gtk/testcalender: Move calender from examples into this
14574         directory as a test program. (We really need to restrcture
14575         testgtk into a whole directory full of tests for every
14576         widget or functionality group, separated into multiple .c
14577         files.)
14578
14579 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
14580
14581         * gtk/testgtk.c (file_exists): Fix stupid typo that
14582         was keeping RC file from being loaded.
14583
14584         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
14585         RC file font code.
14586
14587 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
14588
14589         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
14590         Add function to load a GdkFont from a PangoFontDescription.
14591
14592 2000-05-29  Tor Lillqvist  <tml@iki.fi>
14593
14594         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
14595         variable should be of type GdkEventPrivate.
14596
14597 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
14598
14599         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
14600         to have any widget for the label, use a GtkLabel widget
14601         to display the text. (Based partially on a patch from
14602         Anders Carlson.)
14603
14604         (Quite a bit of code reorganization - strip 90% of the
14605         guts out of gtkaspectframe and add a single virtual
14606         func to GtkFrameClass - compute_child_allocation.)
14607
14608 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
14609
14610         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
14611         (Removed clist->row_center_offset field because caching
14612         it wasn't saving time or code, added private function
14613         _gtk_clist_create_cell_layout()).
14614
14615 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
14616
14617         * gtk/gtkaccellabel.c: Pangoized.
14618
14619         * gtk/[hv]ruler.c: Pangoized
14620
14621 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
14622
14623         * gtk/gtkfilesel.c (gtk_file_selection_init):
14624         Use gtk_clist_set_column_auto_resize() to remove need
14625         need for manual column width computations.
14626
14627 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
14628
14629         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
14630         ensuring Pango correctness, and considerably simplifying the
14631         code.
14632         
14633         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
14634
14635         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
14636         getting of numbers of lines.
14637
14638         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
14639         to the actual requested width of the lable, not to the wrap
14640         width we set.
14641
14642         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
14643
14644         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
14645           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
14646
14647         * gtk/gtktextview.c: Fix structure inheritance.
14648
14649         * gtk/gtkprogressbar.c: Pangoize.
14650
14651 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
14652
14653         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
14654         in a function.
14655
14656         * gtk/gtktextlayout.c (find_display_line_above): Fixed
14657         bug with computing line tops.
14658
14659         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
14660
14661 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14662
14663         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
14664         and y_offset coordinates to do what we need now. (The offset between
14665         buffer and layout coordinates has been reintroduced, but is a 
14666         bit different than before.)
14667
14668         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
14669         handle the adjustments ourselves, and scroll as necessary using
14670         the new gdk_window_scroll().
14671         
14672         The advantage of this is that when we are incrementally revalidating,
14673         we are essentially rearranging things around the visible portion
14674         of the screen. With the old setup, the visible portion of the
14675         screen was moved around in the layout, so scrolling and redrawing
14676         to track that caused jumping of the display. Since we now
14677         control the scrolling ourselves, we can suppress this and
14678         only redraw when things actually change.
14679
14680 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
14681
14682         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
14683         the region not just redisplay it after-all, since we store the
14684         cursors in the LineDisplay. (Ugly interactions here between
14685         GtkLayout and GtkTextBTree here.)
14686         
14687         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
14688
14689 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14690
14691         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
14692         Added function to scroll contents of a window while keeping the
14693         window constant. Works by XCopyArea or guffaw-scrolling depending
14694         on the details of how the window is set up. (guffaw-scrolling
14695         still needs to be filled in.)
14696
14697 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
14698
14699         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
14700         move the debugging that was tied to a global variable
14701         to that.
14702
14703         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
14704
14705         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
14706         validated flag, in line data instead of setting height/width to
14707         -1. This allows us to perform operations with partially invalid
14708         buffer (using the old size for invalid lines) and thus to do
14709         incremental vaidation. Keep height/width aggregates up to date
14710         when deleting text and rebalancing the tree.
14711
14712         * gtk/gtktextbtree.[ch]: Add functions validate a line
14713         (gtk_text_btree_validate_line), and to validate up
14714         to a number of pixels (gtk_text_btree_validate).
14715
14716         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14717         that indicates that something is changed and a revalidation
14718         pass is needed. Change ::need_repaint to ::changed, and
14719         make it take old and new yranges instead of a rectangle.
14720
14721         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14722         the line_data_destroy() function from 
14723         gtk_text_btree_add_view() to a virtual function in 
14724         GtkTextLayout
14725
14726         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14727         since we are handling partial repaints in a different fashion
14728         now.
14729
14730         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14731         of the selection instead of queueing a repaint on the
14732         entire widget.
14733
14734         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14735         get_selection_bounds() down to btree, make the function
14736         in buffer a wrapper around the btree function.
14737
14738         * gtk/gtktextlayout.[ch]: Add functions to check if the
14739         layout is valid and to recompute either a range of pixels
14740         aroudn a line or a certain total number of pixels.
14741
14742         * gtk/gtktextlayout.[ch]: Cache a single line display;
14743         now that we only redraw the needed portions, the hit rate
14744         for this cache is quite high.
14745         
14746         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14747         on the screen so that when re-laying-out the buffer, we can
14748         keep the same place. This requires connecting to ::value_changed
14749         on the adjustments
14750
14751         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14752         the buffer after we receive an ::invalidated signal.
14753         
14754 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14755
14756         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14757         to max of allocation and layout size, not just to the
14758         layout size.
14759
14760         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14761         Invalidate window so it gets redrawn properly.
14762
14763         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14764         to mean the entire window.
14765
14766         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14767         into public header.
14768
14769 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14770
14771         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14772         to get the name of a mark.
14773
14774         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14775         to find the paragraph from a y position.
14776
14777 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14778
14779         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14780         nodes have width/height >= 0, not > 0.
14781
14782 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14783
14784         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14785         Add a size_only flag, so when we only need the size, we don't create
14786         useless appearance attributes.
14787
14788         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14789         duplicate setting of font description.
14790
14791         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14792
14793 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14794
14795         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14796         EXTRA_DIST. It does not work well when the file that
14797         everything depends on is not in the tarball.
14798
14799 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14800
14801         * gtk/testgtk.c: Some hacks and fixes so that it basically
14802         works when not sitting in the GTK+ build tree.
14803
14804 2000-05-03  Havoc Pennington  <hp@redhat.com>
14805
14806         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14807         Properly determine the ordering of the tag root and the current
14808         line within the tree. Previous algorithm only worked if the tag
14809         root's immediate parent was the common root of both the current
14810         line and the tag root.
14811
14812 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14813
14814         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14815         alignment.
14816
14817         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14818         the widget text directional dynamically.
14819
14820         * gtk/gtktextview.[ch]: Added functions to get and set default
14821         wrap mode.
14822
14823 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14824
14825         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14826         in cursor location computation.
14827
14828 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14829
14830         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14831         vadjusment values properly when layout gets smaller.
14832
14833         * gtk/gtktextview.c (need_repaint_handler): Areas being
14834         passed in are far completely inaccurate, and sometimes
14835         too small, so, for now, just queue a redraw on the
14836         whole visible region.
14837
14838 2000-04-25  Havoc Pennington  <hp@redhat.com>
14839
14840         * gtk/gtktextbtree.c (summary_destroy): new function to 
14841         destroy tag summary nodes
14842         (gtk_text_line_next_could_contain_tag): this function was 
14843         totally broken if the line passed in wasn't below the tag
14844         root. Fix it.
14845         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14846         "wildcard" case, we have to do a linear scan. Blah.
14847         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14848         we have to do the linear scan
14849         (tag_removed_cb): When a tag is removed from the tag table, 
14850         remove the GtkTextTagInfo node from the btree.
14851         (gtk_text_btree_spew): Implement the spew function, for 
14852         our debugging pleasure.
14853
14854 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14855
14856         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14857         a problem with referring to the wrong buffer.
14858
14859         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14860
14861         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14862         font description to gtk_style_new() - otherwise things
14863         don't work without a .gtkrc file.
14864
14865         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14866         tags table if we create it ourself, too.
14867
14868         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14869         it was conflicting with XKB modifiers.
14870
14871         * gtk/gtktextview.[ch]: Add simple support for 
14872         GtkIMContext.
14873
14874 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14875
14876         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14877         with deletion from last commit.
14878
14879 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14880
14881         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14882         in the context from the current locale.
14883         
14884         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14885         context, not hardcoded value.
14886
14887         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14888         not logical.
14889
14890 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14891
14892         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14893         attributes - that doesn't handle partial-glyph selection
14894         properly. Instead use new pango_layout_line_get_x_ranges()
14895         functionality to draw the selection.
14896
14897         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14898         now properly handles out-of-range coordinates.
14899
14900         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14901
14902         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14903         public.
14904
14905         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14906         for paragraphs opposite to the base direction of the widget.
14907
14908         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14909
14910         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14911         causes Arabic words to reshape as you cursor through.
14912
14913         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14914         cursor position when moving vertically with the arrow keys and
14915         scrolling with page-up/page-down. (Arrow keys save only the X,
14916         scrolling saves both X and Y.)
14917
14918         This means you can line-up / line-down or page-up / page-down
14919         without losing your place, and also that moving vertically
14920         with the cursor keys keeps the same X position, not the same
14921         character count:
14922
14923         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14924         arrow keys move by display lines, not paragraphs.
14925
14926 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14927
14928         * gtk/gtklayout.c: Make sure that the bin window is at least
14929         as big as the allocation. (Should we also make sure that the
14930         bin window is big enough to completely cover widget->window?)
14931
14932         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14933         function to get the onscreen rectangle.
14934
14935         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14936         for offsets in window coordinates.
14937
14938 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14939
14940         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14941         confusion.
14942
14943         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14944         from the widget direction.
14945
14946         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14947         Add a "direction" attribute.
14948
14949         * gtk/gtktextview.c: global s/tkxt/text_view/.
14950
14951         * gtk/testtext.c: Added long block of text in Arabic, to test out
14952         the direction attributes. (Some problems with the shaping system
14953         for arabic become obvious - like the fact the cursor splits words
14954         into unjoined pieces.)
14955
14956 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14957
14958         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14959
14960         * gtk/gtktextlayout.c: Fix up alignment.
14961
14962         * gtk/testtext.c: Add some tests for centering, wrapping.
14963
14964 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14965
14966         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14967         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14968         If we wrote GTK+-specific layout-render function this could just replace
14969         the draw_layout() operation in the vtable.
14970
14971         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14972         pango_layout_get_cursor_pos() and use that function.
14973
14974         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14975         is a non-static symbol.
14976
14977         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14978         with gtk_text_btree_find_line_by_y()
14979
14980         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14981         renderer that handles GtkTextAppearance attributes.
14982
14983         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14984
14985           - Move the values in the style that don't affect geometry into a
14986             GtkTextAppearance structure.
14987           - Change underline to take a PangoUnderline and "font" a string
14988             representation of a font description
14989           - Add a "font_desc" attribute which takes a FontDescription structure.
14990
14991         * gtk/gtktextlayout.[ch]:
14992
14993           - Get rid of the display-line list per each line. Instead, we
14994             generate, on demand, a GtkTextLineDisplay structure which]
14995             contains a PangoLayout * and other necesary information
14996             (offsets, cursor locations) for displaying a paragraph.
14997           - Get rid of the code to wrap lines, create display chunks,
14998             etc. Instead, we just go through a paragraph and convert
14999             it into the necessary inputs to a PangoLayout.
15000           - Implement a new attribute type, GtkTextAttrAppearance. This
15001             holds a GtkTextAppearance, and is used to pass colors, 
15002             stipple, etc, through from the layout to the display without
15003             having to use lots and lots of individual attributes.
15004           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
15005             in terms of PangoLayout functions.
15006         
15007         * gtk/gtktextview.c: 
15008          
15009           - Handle passing the necessary PangoContext to the layout
15010           - Some fixups in painting to deal with the automatic backing store
15011             and offsetting of GTK+-1.4
15012           - Add a style_set handler so that the default style reacts
15013             properly to theme changes.
15014         
15015         * gtk/gtktext?*.[ch]: Random code-style fixes.
15016
15017         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
15018
15019 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
15020
15021         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
15022         in original form preparatory to Pango-ization and gdkimcontext-ization.
15023
15024 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
15025
15026         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
15027         so that we can derive from gtkimcontext in language bindings properly.
15028
15029 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
15030
15031         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
15032         Add a compose table including (almost) all the compose combinations
15033         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
15034         data in the XIM implementation.
15035
15036         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
15037         Moved functions to convert keyvalues from and to unicode here from
15038         the win32 port and made them public.
15039
15040 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15041
15042         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
15043
15044 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
15045
15046         * gtk/gtkimcontext.[ch]: Base class for new input context system
15047
15048         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
15049         the real input context implementation to be loaded from modules
15050         and switched on the fly.
15051
15052         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
15053         context that just does direct keysymbol => unicode translation.
15054
15055         * gtk/gtkentry.[ch]: Start switching editing over to using
15056         GtkInputContext. (No handling of preedit yet.)
15057
15058 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
15059
15060         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
15061         many substitutions. (klass should not be subsituted.)
15062
15063 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
15064
15065         * configure.in: Add checks for Pango
15066
15067         * configure.in docs/Makefile.am: Add test for sgml2html
15068         and allow 'make dist' without building html, but print out
15069         warnings in that case. (For making snapshots)
15070
15071         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
15072         Add Pango libraries and C flags
15073
15074         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15075         Add function (gdk_draw_layout) to draw a pango layout.
15076
15077         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
15078         for getting Pango contexts for GDK.
15079
15080         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
15081
15082         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
15083         editing.
15084
15085         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
15086         keysym => unicode translations. More languages can be added
15087         here, but real input-method support is needed.
15088
15089         * docs/Changes-1.4.txt: Added note about entry behavior.
15090         
15091         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
15092         to set the reading direction for a widget and the global direction.
15093         Add test which allows toggling the global direction. Two private
15094         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
15095
15096         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
15097           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
15098
15099         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
15100
15101         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
15102         underlining now handled by Pango.
15103
15104         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
15105         to RCStyle and Style. (Having both this and the old font name and GdkFont 
15106         is temporary.)
15107
15108         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
15109         convenience functions for creating contexts and layouts for widgets.
15110
15111         * gtk/testgtk.c: Enhance label tests with multilingual labels.
15112
15113 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
15114
15115         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
15116         titles to be active, even if they aren't visible.
15117         (gtk_clist_column_titles_passive):  Ditto.
15118
15119 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
15120
15121         * gtkmenu.c:
15122         * gtkmenu.h:
15123         * gtktypeutils.h: Spelling/grammar fixes in comments.
15124
15125 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
15126
15127         * gdk/nanox/*.h: add missing header files.
15128
15129 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
15130
15131         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
15132         send_event to TRUE.
15133         (gtk_drawing_area_size): queue a resize.
15134
15135 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
15136
15137         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
15138         the handlers, also invalidate them. bug nailed down by Karl Nelson
15139         <kenelson@ece.ucdavis.edu>.
15140
15141 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
15142
15143         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
15144         "(nil)" foundries, patch from Grigorios Magklis.
15145
15146         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
15147         on non-available fonts, based on a patch by Grigorios Magklis
15148         <maglis@cs.rochester.edu>.
15149
15150 2000-05-18  Elliot Lee  <sopwith@redhat.com>
15151
15152         * gdk/x11/gdkregion-generic.c: If a region does not have any
15153         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
15154         instead of GDK_OVERLAP_RECTANGLE_IN.
15155
15156 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
15157
15158         * gtk/gtklayout.c (gtk_layout_map): Remove references to
15159         OFFSCREEN, as it is no longer necessary.
15160
15161 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
15162
15163         * gtk/gtkcolorsel.c: Patch from David Santiago
15164         <mrcooger@cyberverse.com> to change things so that the 
15165         indicator of the active palette entry is done independently,
15166         not via the focus, since it should always be visible.
15167
15168 2000-05-17  Tor Lillqvist  <tml@iki.fi>
15169
15170         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
15171         refcount leaks as in the X11 backend.
15172
15173         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
15174         cosmetics.
15175
15176         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
15177         backend. Add _gdk_windowing_window_destroy().
15178
15179         * gtk/gtkcolorsel.c: Include correct backend-specific header.
15180         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
15181         either, but these probably do exist on nanox?)
15182         
15183         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
15184         which isn't necessarily defined by <math.h>.
15185
15186         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
15187         ancestry past GtkObject.
15188
15189         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
15190         from DLL on Win32.
15191
15192         * gtk/gtk.def: Update corresponding to recent changes.
15193
15194         * gtk/makefile.{cygwin,msc}: Updates.
15195
15196 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
15197
15198         * docs/Changes-1.4.txt: A bit of editing.
15199
15200         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
15201         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
15202         to clear the update area for the window, and clear it
15203         when hiding a window.
15204
15205         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
15206         if window destroyed.
15207
15208         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
15209
15210         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
15211         gdk_window_destroy() to the generic code, since there was a lot of 
15212         window-system-independent logic it in. Add a function:
15213         
15214          _gdk_window_destroy() 
15215
15216         to the internal API to destroy a window without unreferencing it.
15217         Add a function:
15218
15219          _gdk_windowing_window_destroy()
15220
15221         That does the windowing-system-dependent part of destroying 
15222         the window.
15223
15224 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
15225
15226         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
15227
15228 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
15229
15230         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
15231         Make gtk_widget_shape_combine_mask() keep a reference count on
15232         the pixmap since it keeps it around.
15233
15234 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
15235
15236         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
15237         leak.
15238
15239         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
15240         leak with event filters.
15241
15242 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
15243
15244         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
15245         signal handlers with the right data arguments. (Fixes
15246         some warnings when a widget was repeatedly set as a drag
15247         destination.)
15248
15249         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
15250         window so we can avoid avoid setting the DND properties on the
15251         toplevel window repeatedly.
15252
15253 2000-05-13  Tor Lillqvist  <tml@iki.fi>
15254
15255         * gdk/win32/gdkwin32.h: Define more message types missing from
15256         mingw headers.
15257
15258         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
15259         call gdk_window_destroy_notify(). It was never called. This
15260         probably meant that the GdkWindow was never freed. Thanks Owen for
15261         noticing (!).
15262
15263         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
15264         window as destroyed before calling DestroyWindow(). DestroyWindow()
15265         causes a call to the window procedure (gdk_WindowProc), which
15266         calls gdk_event_translate(), which calls
15267         gdk_window_destroy_notify(), which gets confused unless the window
15268         is set as destroyed.
15269
15270         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
15271         this function to indicate it's win32 only. Put inside #ifdef
15272         G_ENABLE_DEBUG.
15273
15274         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
15275         debugging function. (gdk_event_translate:) Add a default branch
15276         that uses the above function to print debug messages with all
15277         Windows messages symbolically.
15278
15279         * gdk/win32/gdkprivate-win32.h: Declare it, and
15280         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
15281
15282 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
15283
15284         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
15285         public header file.
15286
15287 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
15288
15289         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
15290
15291         * gtk/gtktext.c: made the adjustments no-construct args, simply
15292         provide default adjustments.
15293         (gtk_text_destroy): release adjustments.
15294
15295         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
15296         adjustment argument non-construct.
15297
15298         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
15299         instead of in finalize.
15300         (gtk_progress_get_text_from_value): 
15301         (gtk_progress_get_current_text): 
15302         (gtk_progress_set_value): 
15303         (gtk_progress_get_percentage_from_value): 
15304         (gtk_progress_get_current_percentage): 
15305         (gtk_progress_set_percentage): 
15306         (gtk_progress_configure): ensure an adjustment is present.
15307
15308 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
15309
15310         * gtk/gtkcolorsel.[hc]:
15311         * gtk/gtkcolorseldialog.[hc]:
15312         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
15313         their parent implementation, use bit fields for boolean values, don't
15314         create unused widgets, usage of glib types, braces go on their own
15315         lines, function argument alignment, #include directives etc. etc. etc..
15316
15317         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
15318
15319 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
15320
15321         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
15322
15323         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
15324         of NULL.
15325
15326         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
15327         to freed data.
15328         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
15329
15330         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
15331         to NULL when the toplevel is getting destroyed.
15332         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
15333         (gtk_menu_destroy): 
15334         (gtk_menu_init): store the information of whether we have to
15335         readd the initial child ref_count during destruction in a new
15336         GtkMenu field needs_destruction_ref_count.
15337
15338         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
15339         here, those reading: learn from my mistake! ;)
15340         in order for set_?adjustment to support a default adjustemnt if
15341         invoked with an adjustment pointer of NULL, the code read (pseudo):
15342         if (v->adjustment) unref (v->adjustment);
15343         if (!adjustment) adjustment = adjustment_new ();
15344         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
15345         now imagine the first unref to actually free the old adjustment and
15346         adjustment_new() creating a new adjustment from the very same memory
15347         portion. here, the latter comparision will unintendedly fail, and
15348         all hell breaks loose.
15349         (gtk_viewport_set_hadjustment):
15350         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
15351         after unreferencing it.
15352
15353         * gtk/gtkcontainer.[hc]: removed toplevel registration
15354         functions: gtk_container_register_toplevel(),
15355         gtk_container_unregister_toplevel() and
15356         gtk_container_get_toplevels() which had wrong semantics
15357         anyways: it didn't reference and copy the list.
15358
15359         * gtk/gtkwindow.c: we take over the container toplevel registration
15360         bussiness now. windows are registered across multiple destructions,
15361         untill they are finalized. the initial implicit reference count
15362         users are holding on windows is removed with the first destruction
15363         though.
15364         (gtk_window_init): ref & sink and set has_user_ref_count, got
15365         rid of gtk_container_register_toplevel() call. add window to
15366         toplevel_list.
15367         (gtk_window_destroy): unref the window if has_user_ref_count
15368         is still set, got rid of call to
15369         gtk_container_unregister_toplevel().
15370         (gtk_window_finalize): remove window from toplevel list.
15371         (gtk_window_list_toplevels): new function to return a newly
15372         created list with referenced toplevels.
15373         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
15374
15375         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
15376         adjustment a non-construct arg.
15377         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
15378         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
15379         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
15380
15381         * gtk/gtkrange.c: added some realized checks.
15382         (gtk_range_destroy): get rid of the h/v adjustments in the
15383         destroy handler instead of finalize. remove timer.
15384         (gtk_range_get_adjustment): demand create adjustment.
15385
15386         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
15387         we simply create them on demand now and get rid of them in
15388         the destroy handler.
15389         (gtk_viewport_destroy): get rid of the h/v adjustments in the
15390         destroy handler instead of finalize.
15391         (gtk_viewport_get_hadjustment): 
15392         (gtk_viewport_get_vadjustment): 
15393         (gtk_viewport_size_allocate): demand create h/v adjustment
15394         if required.
15395
15396         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
15397         gtk_widget_real_destroy () functionality.
15398         (gtk_widget_real_destroy): reinitialize with a new style, instead
15399         of setting widget->style to NULL.
15400
15401 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
15402
15403         * gtk/gtkcalendar.c:
15404         * gtk/gtkbutton.c: ported _get_type() implementation over to
15405         GType, either to preserve memchunks allocation facilities,
15406         or because Gtk+ 1.0 GtkTypeInfo was still being used.
15407
15408         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
15409         over. prepare for ::destroy to be emitted multiple times.
15410         removed reference tracer magic. chain into GObjectClass.shutdown()
15411         to emit ::destroy signal.
15412
15413         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
15414         fundamental.
15415
15416         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
15417         cludge.
15418
15419         * gtk/gtksocket.c:
15420         * gtk/gtkplug.c:
15421         * gtk/gtklayout.c:
15422         * gtk/gtklabel.c:
15423         * gtk/gtkargcollector.c:
15424         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
15425         not being a fundamental anymore, and to work with the new
15426         type system (nuked fundamental type varargs clutter).
15427
15428         * gtk/*.c: install finalize handlers in the GObjectClass
15429         part of the class structure.
15430         changed direct GTK_OBJECT()->klass accesses to
15431         GTK_*_GET_CLASS().
15432         changed direct object_class->type accesses to GTK_CLASS_TYPE().
15433
15434         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
15435         GType. made most of the GTK_*() type macros and Gtk* typedefs
15436         simple wrappers around macros and types provided by GType.
15437         most notably, a significant portion of the old API vanished:
15438         GTK_TYPE_MAKE(),
15439         GTK_TYPE_SEQNO(),
15440         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
15441         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
15442         GTK_TYPE_ARGS,
15443         GTK_TYPE_CALLBACK,
15444         GTK_TYPE_C_CALLBACK,
15445         GTK_TYPE_FOREIGN,
15446         GtkTypeQuery,
15447         gtk_type_query(),
15448         gtk_type_set_varargs_type(),
15449         gtk_type_get_varargs_type(),
15450         gtk_type_check_object_cast(),
15451         gtk_type_check_class_cast(),
15452         gtk_type_describe_tree(),
15453         gtk_type_describe_heritage(),
15454         gtk_type_free(),
15455         gtk_type_children_types(),
15456         gtk_type_set_chunk_alloc(),
15457         gtk_type_register_enum(),
15458         gtk_type_register_flags(),
15459         gtk_type_parent_class().
15460         replacements, where available are described in ../docs/Changes-1.4.txt.
15461         implemented compatibility functions for the remaining API.
15462
15463         * configure.in: depend on glib 1.3.1, use gobject module.
15464
15465 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15466
15467         * TODO.xml: Various updates to current status.
15468
15469 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15470
15471         * gtk.m4: Print out version when test succeeds.
15472
15473 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15474
15475         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15476         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15477         
15478         (Original triangle color selector from Simon Budig
15479         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15480         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15481         Santiago <mrcooger@cyberverse.com>)
15482
15483         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15484         out into a separate widget.
15485
15486         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15487         and opacity controls.
15488
15489 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15490
15491         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15492         snuck in prematurely.
15493
15494 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15495
15496         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15497         had deleted a ! operator by mistake, which caused
15498         GDK_SELECTION_CLEAR events never to be generated, which caused
15499         only the first copy to the clipboard from an gtkeditable to
15500         actually cause a copy to the Windows clipboard.
15501
15502 2000-05-06  Tor Lillqvist  <tml@iki.fi>
15503
15504         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
15505         compilation, too. Current mingw gcc distributions include the
15506         necessary headers. Also the necessary IIDs are now in mingw
15507         headers/libraries, and own definitions unnecessary.
15508
15509         More hacking on OLE2 DND, still doesn't work though, and thus
15510         ifdeffed out.
15511
15512         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
15513         here, too.
15514
15515 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
15516
15517         * gdk/nanox/*: nano-X port work in progress.
15518         * gdk/simple.c: simple test for Gdk.
15519         * README.nanox: notes about the port: read this first!
15520         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
15521         with nano-X.
15522
15523 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
15524
15525         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
15526         gdk_window_clear() into common code, implement in terms of
15527         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
15528         not redirected to the backing rectangle.
15529
15530 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15531
15532         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15533         EXTRA_DIST. It does not work well when the file that
15534         everything depends on is not in the tarball.
15535
15536 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
15537
15538         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
15539         with recursion where process_updates() is called from
15540         an expose handler. (GtkTextView is highly broken in
15541         doing this, but it should work, so it is a nice test
15542         case.)
15543
15544 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15545
15546         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
15547         handle the case where updates are queued during processing of
15548         updates.
15549
15550 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15551
15552         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
15553         window is on gdk_display - use that instead of segfaulting.
15554
15555 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
15556
15557         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
15558         broken and require an empty arg, give it to them.
15559
15560 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
15561
15562         * gtk/gtklabel.h: indentation fixes.
15563
15564 2000-05-02  Tor Lillqvist  <tml@iki.fi>
15565
15566         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
15567         draw too narrow or too low arcs, they seem to fail, at least with
15568         some display drivers.
15569
15570         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
15571
15572         Large changes to the Win32 backend, partially made necessary by
15573         the changes to the backend-independent internal
15574         structures. Attempts to implement similar backing store stuff as
15575         on X11. The current (CVS) version of the Win32 backend is *not* as
15576         stable as it was before the no-flicker branch was merged. A
15577         zipfile with that version is available from
15578         http://www.gimp.org/win32/. That should be use by "production"
15579         code until this CVS version is usable. (But note, the Win32
15580         backend has never been claimed to be "production quality".)
15581
15582         * README.win32: Add the above comment about versions.
15583
15584         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
15585
15586         * gdk/gdk.def: Update.
15587
15588         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
15589         presumably be replaced by some more better mechanism as 1.4 gets
15590         closer to release shape.
15591
15592         * gdk/makefile.{cygwin,msc}: Update.
15593
15594         * gdk/win32/*.c: Correct inclusions of the backend-specific and
15595         internal headers. Change code according to changes in these. Use
15596         gdk_drawable_*, not gdk_window_* where necessary.
15597
15598         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
15599         our old DND.
15600
15601         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
15602         to interpret single characters as UTF-8. Thanks to Hans Breuer.
15603         Use correct function name in warning messages.
15604
15605         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
15606         GSourceFuncs gdk_event_prepare and gdk_event_check.
15607         (gdk_event_get_graphics_expose): Do implement, use
15608         PeekMessage. Thanks to Hans Breuer.
15609         (event_mask_string): Debugging function to print an GdkEventMask.
15610         (gdk_pointer_grab): Use it.
15611
15612         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
15613         (old) book I used claimed was Hangul actually is CJK Unified
15614         Ideographs Extension A. Also, Hangul Syllables were missing.
15615         Improve logging.
15616
15617         * gdk/win32/gdkgc-win32.c: Largish changes.
15618
15619         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
15620         g_win32_getlocale() from GLib, and not setlocale() to get current
15621         locale name.
15622
15623         * gdk/win32/gdkprivate-win32.h
15624         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
15625         gdkwin32.h, similarily as in the X11 backend.
15626
15627         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
15628         assignment was used instead of equals in if test. Thanks to Hans
15629         Breuer.
15630
15631         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
15632         the X11 version.
15633
15634         * gdk/win32/makefile.{cygwin,msc}
15635         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
15636         path to the Win32 headers that works also with the mingw compiler.
15637
15638         * gtk/gtkstyle.c: Include <string.h>.
15639
15640 2000-04-26  Havoc Pennington  <hp@redhat.com>
15641
15642         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
15643         replacing the broken gtk_label_get ()
15644
15645 2000-04-15  Havoc Pennington  <hp@pobox.com>
15646
15647         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
15648         this keeps scanner scripts from getting confused.
15649
15650         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
15651         data, rather than void
15652
15653 2000-04-15  Tor Lillqvist  <tml@iki.fi>
15654
15655         * gtk/gtkclist.c (gtk_clist_motion)
15656         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
15657         with is_hint FALSE, get x and y from the event. They used to be
15658         used uninitialised. The Win32 backend never sends motion events
15659         marked as hints. This for instance fixes the annoying file and
15660         font selector behaviour in the Win32 version.
15661
15662 2000-04-14  Tor Lillqvist  <tml@iki.fi>
15663
15664         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
15665         gtk_private_n_signals variables, they are used by some software,
15666         sigh.
15667
15668         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
15669         installation directory from the Registry, where the installer
15670         should have put it.
15671
15672 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
15673
15674         * gdk/x11/Makefile.am: Fix problem with installation directory for
15675         gdkx.h
15676
15677         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
15678         <mrcooger@cyberverse.com> so that when selecting menus with the
15679         mouse, the first item will not be selected, but when selecting
15680         with an accelerator, or navigating left-right on a menubar with
15681         the menus popped up, the first item will be selected.
15682
15683 2000-04-05  Dan Damian  <dand@dnttm.ro>
15684
15685         * configure.in: Added "ro" to ALL_LINGUAS.
15686
15687 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
15688
15689         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
15690         indentation.
15691
15692         * Makefile.am (EXTRA_DIST): Fix typo.
15693
15694         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
15695         to catch gdkconfig.h
15696
15697         * gtk/gtkitemfactory.c: Added FIXME.
15698
15699 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
15700
15701         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
15702         s/return_if_fail/return_val_if_fail/g and add a return value.
15703
15704 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15705
15706         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
15707         merge slipup.
15708
15709         * gdk/gdkinput.h: Fix missing line from merge.
15710
15711 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15712
15713         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15714         instead of gdkprivate.h.
15715
15716 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15717
15718         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15719         parent class to correctly be GtkDialogClass.
15720
15721 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15722
15723         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15724         toplevel windows and their immediate children by their parents,
15725         since the size of toplevel windows is out of our immediate
15726         control and we don't get any real benefit from trying to track
15727         this size for clipping.
15728
15729         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15730         for input_only windows.
15731
15732         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15733         to fix some hacks and make sure that we don't try to set the
15734         background of input only windows.
15735
15736 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15737
15738         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15739         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15740         stuff that we've traditionally exposed.
15741
15742         * gdk/**.c: Use gdkinternals.h where appropriate.
15743
15744         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15745         not include gdkprivate-x11.h, move all stuff of conceivable public
15746         interest into gdkx.h; keep all really private stuff in
15747         uninstalled header gdkprivate-x11.h.
15748
15749         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15750         image->image_put on windows through a new function _gdk_window_draw_image()
15751         to allow us to do backing store for images. (Sort of ugly)
15752
15753         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15754         contexts locally so that we can offset them properly when drawing 
15755         onto backing pixmaps.
15756
15757         * gdk/gdkinput.h: Reindented
15758
15759         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15760         pixmap or color for the window, so we can properly initialize
15761         our double-buffer pixmaps, and also so that we temporarily set
15762         a background of None while scrolling.
15763
15764         * gdk/gdkregion.h: Revise region boolean operators to have an
15765         interface that is actually convenient - switch from creating new
15766         regions on every op, to "methods" that modify existing regions
15767         (A = A OP B). 3 argument forms which allow dest == src, would also
15768         be possible, but the current interfaces seem to map nicely
15769         onto what needs to be done. (There is quite a lot of region
15770         code in GDK now.)
15771
15772         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15773         operator.
15774
15775         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15776         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15777         to 32 bit coordinates, modify it to be mostly GTK+ style
15778         and to have interfaces that match gdkregion.h.
15779
15780         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15781         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15782         create a backing pixmap and redirect all drawing to
15783         that backing pixmap until a matching gdk_window_end_paint().
15784
15785         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15786         Create a special drawable class for GtkWindow's that 
15787         redirects the drawing to the backing pixmap as necessary
15788         and then calls the real operations in _gdk_windowing_window_class.
15789
15790         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15791         Store invalid region for each window. Generate expose events for invalid
15792         region in an idle. This replaces both the expose compression
15793         and the redrawing queuing in GTK+. It is both more efficient and
15794         simpler than either one individually and far more so then the
15795         combination.
15796
15797         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15798         Emulate 32 bit coordinates for windows with 16 bit coordinates
15799         by offsetting drawing, guffaw scrolling techniques and
15800         mapping/unmapping child windows as necessary.
15801
15802         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15803         where, when invalid regions are processed, the region is stored,
15804         and if expose events come in that are detectably duplicate
15805         the processed exposes (by comparison of event serial numbers),
15806         the stored region is subtracted out of those exposes.
15807
15808         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15809         regions newly exposed when scrolling or resizing windows.
15810         This, combined with forcing processesing of queued invalidated
15811         regions, gives nice flicker-free scrolling.
15812
15813         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15814         invalidated regions after every scroll.
15815
15816         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15817         emulation in GDK. Its, for all practical purposes just a
15818         GtkViewport/GtkFixed hybrid now.
15819
15820         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15821         (16-bit) structures as necessary instead of just casting.
15822
15823         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15824         in terms of the structures from gdkregion-generic.c, using appropriate
15825         offsets from GDK to X11 coordinates. Cache clip mask and
15826         origin and ts origin locally and only flush to the server
15827         when drawing, to avoid constantly setting and resetting these
15828         values when offsetting GC's for scrolling and backing pixmaps.
15829
15830         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15831
15832         * gtk/gtkcontainer.c: Call process_all_updates at end
15833         of resizing to reduce flicker. (Avoids having redraw
15834         lag arbitrarily behind resize under some circumstances)
15835
15836         * gtk/gtkentry.c: Remove old backing store code, and simply take
15837         advantage of the new backing store capabilities of GDK.
15838
15839         * gtk/gtkmain.c: Simple implementation of widget backing
15840         store - simply push a paint while handling each expose.
15841         (Should really be configurable widget for widget.)
15842         
15843         * gtk/gtkwidget.c: Remove all the old complicated redraw
15844         code, and simply invalidate the GDK windows from
15845         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15846         debugged complexity ... gone to the winds.)
15847
15848         Remove all the code for suppressing expose events while
15849         resizes are pending; this isn't needed since the invalid
15850         areas won't be processed until after the resizes are
15851         processed, since they are in a lower priority idle.
15852
15853 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15854
15855         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15856         and height of dest rectangle for non-intersecting rectangles.
15857
15858 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15859
15860         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15861         for GdkRectangle.
15862
15863 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15864
15865         * gdk/gdk{events,image,private,types,window}.h
15866          gdk/x11/gdkinputprivate.h: Change all coordinates
15867          from int16 to int. Also, Change width and height from
15868          unsigned to signed to avoid all the stupid C 
15869          signedness bugs.
15870
15871 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15872
15873         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15874         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15875         Add some more detailed checking.
15876
15877         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15878         New function to retrieve the depth of a drawable.
15879
15880         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15881         field, reorder fields to save memory. 
15882
15883 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15884
15885         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15886         of the background image instead of scaling the background down to
15887         a line.
15888
15889         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15890         which temporarily set slider to wrong size.
15891
15892         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15893         queue_clear().
15894
15895 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15896
15897 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15898
15899         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15900
15901 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15902
15903         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15904         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15905
15906         * gdk/win32/gdkfont-win32.c
15907         * gdk/win32/gdkproperty-win32.c
15908         * gdk/win32/gdkselection-win32.c
15909         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15910         now declared such.
15911
15912 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15913
15914         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15915
15916 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15917
15918         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15919         is called without trapping X errors.
15920
15921 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15922
15923         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15924         way into the fontset lists.
15925
15926 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15927
15928         * gtk/gtkthemes.h: add extern "C" scope.
15929
15930 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15931
15932         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15933         to make appends to the list constant. (gtk-guy-990901-0.patch)
15934
15935 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15936
15937         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15938         for the typename hash table.
15939
15940 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15941
15942         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15943         to make sure we never divide by zero. 
15944         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15945
15946 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15947
15948         * gtk/gtkfontsel.c: Apply patch from
15949         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15950         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15951
15952         Also, some cleanups in atom handling.
15953
15954 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15955
15956         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15957         not GtkWidget.
15958
15959 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15960
15961         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15962         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15963         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15964         more guint wrap-around bugs before going to bed.
15965
15966 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15967
15968         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15969         guint wrap arounds in allocation.width.
15970
15971         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15972         process untill we fit the allocation given.
15973
15974 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15975
15976         * gtk/gtkwidget.c:
15977         (gtk_widget_unrealize): guard widget access with ref/unref
15978         around signal emission.
15979         (gtk_widget_hide): same here, but also check its destroyed
15980         state before queueing a resize.
15981
15982 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15983
15984         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15985         of gtk_default_insensitive_bg as insensitive base color.
15986
15987         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15988         to the widget's state.
15989         (gtk_text_realize): same here.
15990         (gtk_text_state_changed): same here.
15991         (draw_bg_rect): compare background color against base[] from
15992         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
15993
15994 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
15995
15996         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
15997         grabs are active, unless a delete event is send to the toplevel
15998         of the currently grab holding widget.
15999
16000 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
16001
16002         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
16003         debugging g_print's.
16004
16005 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
16006
16007         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
16008         ever make the scrolled-window requisition ever depend on the 
16009         visibility state of the scrollbars for the AUTOMATIC policy. 
16010         This breaks the GTK+ requisition model, and causes loops.
16011
16012 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
16013
16014         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
16015         the default font to avoid problems with XFree86-4.0 where the
16016         default charset is iso10646-1, not iso8859-1.
16017
16018 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
16019
16020         * acinclude.m4
16021         * config.guess
16022         * config.sub
16023         * ltconfig
16024         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
16025
16026         * gtk/Makefile.am: minor cosmetic consistency tweak
16027
16028 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
16029
16030         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
16031         the activate_time to 0, so that we handle a quick
16032         press/release press/release properly and don't suppress
16033         the second release. (Red Hat bug #7545)
16034
16035 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
16036
16037         * gtk/gtkctree.c (row_delete):
16038         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
16039         bugs with destruction notifier, *always* update internal
16040         structures *before* calling user code.
16041
16042 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
16043
16044         A few more fixes for bug #5487, #2051, #2677.
16045         * gtk/gtkclist.c : 
16046         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
16047         not GDK_BUTTON_PRESS.
16048         (resync_selection): resync only if selection_mode is
16049         GTK_SELECTION_EXTENDED
16050         * gtk/gtkctree.c (resync_selection): same here
16051
16052 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
16053
16054         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
16055         gdk_drag_get_selection() and gtk_menu_detach().
16056
16057         [ From Jeroen Ruigrok/Asmodai ]
16058
16059 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
16060
16061         * gtk/gtknotebook.c (gtk_notebook_size_request): 
16062         page->tab_label can be NULL.
16063
16064 2000-01-25  Havoc Pennington  <hp@pobox.com>
16065         
16066         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
16067         arg is boolean
16068
16069         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
16070
16071         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
16072
16073         * gdk/gdkproperty.c (gdk_property_get): return boolean
16074
16075         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
16076
16077         * gdk/gdkim.c (gdk_im_ready): return boolean
16078
16079         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
16080
16081         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
16082         glib clash, should fix glib)
16083
16084         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
16085         (gdk_get_show_events): return gboolean, and canonicalize 
16086         to TRUE/FALSE
16087
16088         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
16089         colormap is private
16090         (gdk_colors_alloc): gboolean whether to be contiguous
16091         (gdk_color_equal): return gboolean since we are a predicate
16092         and not a qsort() (this looks semi-wrong due to glib breakage,
16093         IMO glib should be fixed)
16094         
16095         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
16096         (gdk_get_use_xshm): return gboolean
16097         (gdk_pointer_is_grabbed): return gboolean
16098
16099         * gdk/gdk.h: Change prototypes to match all the above changes,
16100         and re-run egtk-format-protos as required.
16101
16102 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
16103
16104         * gtk/gtkctree.c (resync_selection): 
16105         * gtk/gtkclist.c (resync_selection):
16106
16107         Return immediately if clist->drag_pos < 0. This is a workaround
16108         for the corrupt state that the clist gets into when a
16109         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
16110
16111         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
16112         
16113         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
16114         variable from recent commit.
16115
16116 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
16117
16118         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
16119
16120 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
16121
16122         * gtk/Makefile.am: prefix all autogenerated source that get build in
16123         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
16124         in builddir. since we subsequently cd into srcdir for autogeneration,
16125         the paths have to be stripped from the target file names, thusly we
16126         use $(@F) as target names now.
16127         put a comment about configure.in's --disable-rebuilds option,
16128         which can be used for non-writable source directories, for development
16129         setups though, srcdir has to be *writable*.
16130
16131 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
16132
16133         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
16134           Finish the job of allowing event to be NULL.
16135           (Fixes bug #4283, reported by Chris Blizzard)
16136
16137         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
16138           things so that the cursor appears on screen, properly
16139           take into account INNER_BORDER.
16140           (Fixes bug #4754, reported by Antonio Campos)
16141
16142 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
16143
16144         * gtk/gtknotebook.c (gtk_notebook_map): Don't
16145           show the tab_label unless it itself is visible.
16146
16147           gtk/gtknotebook.c (gtk_notebook_size_request):
16148           Do a better job of making sure that the visibility
16149           of the tab label corresponds to whether it should
16150           be mapped or not.
16151
16152 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
16153
16154         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
16155           Use the requisition, not the allocation, since the
16156           allocation has not necessarily been computed yet.
16157           (Pointed out by Eugene Osintsev)
16158
16159 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
16160
16161         * gtk/gtkstyle.c (gtk_style_new): Dont' set
16162           style/base[GTK_STATE_INSENSITIVE] both to
16163           gtk_default_insensitive_bg!
16164           (Bug #2187, reported by Jonathan Blandford)
16165
16166         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
16167           Add Alt_L, Alt_R to list of invalid accelerators.
16168           (Bug #3736, reported by Vlad Harchev)
16169
16170 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
16171
16172         * gtk/gtkfilesel.c (open_ref_dir): Fix several
16173         bugs which occured after an attempt to open 
16174         invalid home directory left cmpl_state->reference_dir == NULL.
16175
16176          - completion on files in home directory didn't work
16177          - completion on an empty string caused  segfault
16178
16179          (Bug #3678, reported by Steve Ratcliffe)
16180
16181         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
16182         cut and paste error that was causing scales to
16183         be incorrectly positioned.
16184         (Bug #2956,
16185          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
16186
16187 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
16188
16189         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
16190         when checking for dcgettext, if we've found we needed
16191         it for dgettext.
16192 +
16193 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
16194
16195         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16196         queue_clear on NO_WINDOW widgets during a reparent,
16197         since at that point the window and widget heirarchies
16198         are out of sync. This stops crashing in some cases
16199         (the scrolled window reparent test, for instance), and
16200         _probably_ won't cause drawing errors.
16201
16202         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
16203         test do what it was supposed to do and be robust against
16204         window closings, etc. (Bug #2443)
16205
16206 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
16207
16208         * gtk/gtkentry.c: Fix return values on mouse events.
16209         (Bug #2686, Sky <seb_sky@yahoo.com>)
16210
16211         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
16212         (pointed out by George Lebl)
16213
16214         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
16215         (From Ettore Perazzoli  <ettore@helixcode.com>)
16216  
16217 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
16218
16219         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
16220         clicks between rows or outside calender area correctly.
16221         (Patch from Damon Chaplin)
16222
16223         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
16224         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
16225           Call destroy function when overwriting existing data. 
16226           (Pointed out by Damon Chaplin)
16227
16228 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
16229
16230         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
16231           which was causing problems on various systems with Xmu.
16232           This hasn't been needed for a very long time.
16233           (Fixes #1185 3167)
16234
16235 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
16236
16237         * gdk/gdki18n.h: Include <ctype.h> when defining
16238           gdk_isw* in terms of is* as a fallback.
16239           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
16240
16241 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
16242
16243         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
16244           realize the widget when it is size allocated!
16245           (old, old bug)
16246
16247         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
16248           Removed unused call to gdk_window_get_size() that
16249           showed up when the above was fixed.
16250
16251 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
16252
16253         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
16254           fix up widget->window when the widget is a
16255           NO_WINDOW container widget.
16256
16257 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
16258
16259         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
16260           to account for the fact that feof() does _not_ 
16261           return TRUE on errors, and thus avoid infinite loops
16262           when trying to use gdk_pixmap_create_from_xpm()
16263           on unreadable values.
16264
16265 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
16266
16267         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
16268
16269 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
16270
16271         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
16272           gdk_gc_set_dashes to take gint8 instead of gchar to
16273           make it clearer that it is _not_ a NULL terminated string.
16274
16275         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
16276           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
16277           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
16278           arguments.
16279
16280 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
16281
16282         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
16283         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
16284         background size relative to our allocation, guard against small
16285         allocations, we may have not yet been size allocated.
16286
16287 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
16288
16289         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
16290         not just version == 3. We implement all 3 + most of 4 - 
16291         (we don't support matching text/plain;charset=iso-8859-1
16292         to a dest that expects text/plain). We'll still advertise
16293         3 to be safe, but any client implementing version >= 3
16294         must interoperate with 3.
16295         
16296 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16297
16298         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
16299         background and gc members, add a warning in gtk_tooltips_set_color()
16300         indicating that this function is deprecated.
16301
16302 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
16303
16304         * docs/gtkfaq.sgml: FAQ Update:
16305           - Minor cleanups (Emmanuel, me)
16306           - New questions:
16307                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
16308                 How can I retrieve the text from a GtkMenuItem? (timj)
16309                 How do I validate/limit/filter the input to a GtkEntry? (me)
16310                 Memory does not seem to be released when I free the list
16311                         nodes I've allocated (timj)
16312
16313 2000-03-07  Tor Lillqvist  <tml@iki.fi>
16314
16315         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
16316         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
16317         for which it is no use to call GetLastError onWin9x.
16318         (gdk_other_api_failed) New function, for general error
16319         reporting without calling GetLastError.
16320         (gdk_win32_api_failed) OTOH, this function always calls
16321         GetLastError. (gdk_win32_last_error_string) Remove this function,
16322         GLib has the equivalent now.
16323
16324         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
16325         call them with function name, file name and line number in the
16326         arguments.
16327
16328         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
16329         functions.
16330         
16331         * gtk/gtk.def: Add some missing entry points.
16332
16333         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16334         gtk_paned_set_gutter_size, which don't exist any longer, as void.
16335         
16336         Fixes by Hans Breuer:
16337
16338         * gdk/makefile.msc: Update for debugging.
16339
16340         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
16341         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
16342         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
16343         in the dash_list.
16344
16345         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
16346         the x11 backend.
16347
16348         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
16349
16350         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
16351
16352 2000-03-04  Tor Lillqvist  <tml@iki.fi>
16353
16354         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
16355         just pixel value of background colour.
16356
16357         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
16358         containing code snippet previously duplicated in a couple of
16359         places.
16360         
16361         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
16362         gdk_colormap_color.
16363
16364         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
16365         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
16366         events for autorepeated Shift, Control and Alt keys. Use
16367         gdk_colormap_color.
16368
16369         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
16370         pointer is inside the window the cursor of which we are setting,
16371         call SetCursor immediately.
16372
16373         * gdk/win32/makefile.cygwin
16374         * gtk/makefile.cygwin: If we don't have the build number stamp
16375         file, use zero.
16376
16377         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16378         gtk_paned_set_gutter_size as empty.
16379
16380         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
16381         
16382 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
16383
16384         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
16385           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
16386           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
16387           docs/gtk_tut.sgml docs/gtk.texi TODO:
16388
16389           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
16390
16391 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
16392
16393         * gtk/gtkcalendar.c: Implement num_marked_dates,
16394           and don't emit mutiple day_selected signals on
16395           month_prev.
16396
16397 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
16398
16399         * docs/make-todo (lineno): let title and logo be configurable so
16400         that GNOME can use this script too.
16401
16402         * TODO.xml: added logourl and a title
16403
16404 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
16405
16406         * TODO.xml: Added some UI items, and an explanatory
16407         comment at the top of the file.
16408
16409 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
16410
16411         * TODO.xml: some updates, added abunch of new entries.
16412         a note for those fiddeling with this file, when done
16413         with it, invoke:
16414         $ ./docs/make-todo TODO.xml >/dev/null
16415         and correct output errors before comitting changes.
16416
16417 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
16418
16419         * TODO.xml: Added XML-structured TODO file.
16420         * docs/make-todo: python script to turn TODO.xml into
16421           pretty XML output. 
16422
16423 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
16424
16425         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
16426         the function to let it draw the seven dots, instead of the old,
16427         much maligned, method.
16428         (draw_dot): New function to draw a dot.
16429
16430         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
16431         to draw the handle inside the border width as opposed to outside.
16432         Use paint function instead of gdk_draw_point.
16433
16434         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
16435         to draw the handle inside the border width as opposed to outside.
16436         Use paint function instead of gdk_draw_point.
16437
16438         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
16439         Change indenting to be more GTK like.
16440
16441 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
16442
16443         * docs/gtk_tut.sgml: New section on GtkCalendar
16444         * examples/calendar: Update example code
16445
16446 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
16447
16448         * docs/gtkfaq.sgml: FAQ Update
16449
16450 2000-02-19  Anders Carlsson  <andersca@gnu.org>
16451
16452         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
16453         to prevent the scroll event to be propagated upwards.
16454
16455 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16456
16457         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16458         OwnerGrabButtonMask from button entries for
16459         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16460
16461         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16462         to the event mask (which will result in button/press release
16463         being added to the event mask on Unix) so scrolling works
16464         for layouts in scroll windows.
16465
16466         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16467
16468         Patch from Anders Carlsson  <andersca@gnu.org> to add
16469         a scroll event.
16470
16471         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16472         scrolling to the "Test Scrolling" part of testgtk.
16473  
16474         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16475  
16476         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16477         it against GDK_SCROLL.
16478  
16479         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16480         way of mouse wheel scrolling.
16481  
16482         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16483  
16484         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16485  
16486         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16487  
16488         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16489         gdk_event_mask_table.
16490  
16491         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16492         GdkEventScroll handler.
16493  
16494         * gdk/gdkevents.h: Added GdkEventScroll structure.
16495  
16496 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16497
16498         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
16499         and Anders Carlsson to change the Paned widgets so that they
16500         can be dragged from anywhere along the length. Also change
16501         the way that this is drawn to make this apparent.
16502
16503         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
16504         from George Lebl to check that option_menu->menu is present
16505         before getting history.
16506
16507 2000-02-14  Tor Lillqvist  <tml@iki.fi>
16508
16509         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
16510         before the assertion for non-NULL segment list.
16511
16512         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
16513         Seems that pattern brushes *must* be 8x8 pixels! At least on my
16514         machine, but it might be display driver dependent. Sigh, so make
16515         sure the stipple is that size. Does Windows suck or what?
16516
16517         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
16518         places.
16519
16520 2000-02-13  Havoc Pennington  <hp@pobox.com>
16521
16522         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
16523         refcount to 1
16524         (gdk_cursor_new): init refcount to 1
16525
16526         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
16527
16528 2000-02-13  Tor Lillqvist  <tml@iki.fi>
16529
16530         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
16531         so that we don't have to do unnecessary settings to the HDC.
16532
16533         * gdk/win32/gdkdrawable-win32.c
16534         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
16535         gdk_gc_predraw.
16536
16537         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
16538         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
16539         GDI paths, call WidenPath to get the outline of the stroken path,
16540         and then fill the outline (with the brush that was built from the
16541         stipple).
16542
16543         * gdk/win32/gdkgc-win32.c: Factor out common code from
16544         _gdk_win32_gc_new and gdk_win32_gc_set_values into
16545         gdk_win32_gc_values_to_win32values. Use correct colour for
16546         SetBkColor() (Until now the code actually used a random colour in
16547         the call to SetBkColor()... but that didn't show up as not many
16548         GDI APIs use the background colour. Pattern (opaque stippled)
16549         brushes do.)
16550
16551         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
16552         gdk_win32_api_failed): New functions for error logging.
16553
16554         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
16555         WIN32_API_FAILED to call them, passing function or file name and
16556         line number.
16557
16558         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
16559
16560         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
16561         GdkColor for foreground and background in GdkGCWin32Data.
16562
16563         * gdk/makefile.cygwin: Link in the resource object separately.
16564
16565         * gdk/win32/rc/gdk.rc
16566         * gtk/gtk.rc (New file)
16567         * gdk/win32/makefile.cygwin
16568         * gtk/makefile.cygwin: Update build number in DLLs automatically,
16569         as in GLib.
16570
16571 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
16572
16573         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
16574         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
16575         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
16576         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
16577         parameters given and cursor->ref_count. coding style fixups.
16578
16579         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16580         not GtkWidget.
16581         
16582         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
16583         fix up widget macros and add _GET_CLASS() variant.
16584         
16585         * gtk/*.c: some GtkType fixups.
16586
16587 2000-02-09  Tor Lillqvist  <tml@iki.fi>
16588
16589         * gdk/win32/gdkproperty-win32.c
16590         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
16591         were reversed.
16592
16593 2000-02-04  Tor Lillqvist  <tml@iki.fi>
16594
16595         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
16596         g_filename_to_utf8 to convert the font names Windows gives us from
16597         whatever is the default codepage to UTF-8.
16598         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
16599         in the other direction.
16600
16601         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
16602         error in debugging output.
16603
16604 2000-02-02  Tor Lillqvist  <tml@iki.fi>
16605
16606         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
16607         and height parameters to gdk_window_clear_area(). Not minus one.
16608
16609 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
16610
16611         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
16612         checks if the widget passed to gtk_drag_get_data() was not the
16613         dest widget.
16614
16615 2000-02-01  Tor Lillqvist  <tml@iki.fi>
16616
16617         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
16618         g_filename_from_utf8 functions (which were added a moment ago to
16619         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
16620         size buffers.
16621
16622         gtk_file_selection_get_filename returns the filename in the C
16623         runtime encoding. It calls g_filename_from_utf8, but copies the
16624         returned string to a static buffer, which is returned. I think
16625         this is better than returning the result from g_filename_from_utf8
16626         directly, which would mean all apps that use it would have to free
16627         the return value. Or should this function care about this issue at
16628         all? Maybe a new function with clearly defined semantics.
16629
16630         * gtk/gtkfilesel.h: Add comment about
16631         gtk_file_selection_get_filename returning the filename in the C
16632         runtime's encoding.
16633
16634         * README.win32
16635         * gdk/gdk.def
16636         * gdk/makefile.{cygwin,msc}
16637         * gtk/gtk.def: Updates.
16638
16639         * gdk/gdkcursor-win32.c: Initialise refcount.
16640
16641 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
16642
16643         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
16644
16645 2000-01-30  Havoc Pennington  <hp@pobox.com>
16646
16647         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
16648         destroy
16649
16650         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
16651
16652         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
16653         implemented in platform-specific code
16654
16655         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
16656
16657         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
16658         underscore in front
16659
16660         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
16661         put an underscore in front
16662
16663         * gdk/gdkcursor.c: new file, implements
16664         gdk_cursor_ref/gdk_cursor_unref
16665
16666         * gdk/gdkcursor.h: Refcount GdkCursor
16667
16668         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
16669
16670 2000-01-29  Tor Lillqvist  <tml@iki.fi>
16671
16672         * gdk/gdkwindow.h
16673         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
16674
16675 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16676
16677         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
16678         structures to properly inherit from GtkWidget not GtkBin.
16679
16680 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
16681
16682         * gtk+.spec.in: Added lib/gtk+/include/* to %files
16683         (bug #5178 - Peter Wainright)
16684         
16685         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
16686         so that it will be installed.
16687         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
16688
16689 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
16690
16691         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
16692         for the GtkStyleClass vtable const.
16693
16694         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
16695         take a const string argument like GtkTranslateFunc. This will
16696         require changes in use code.
16697
16698 2000-01-19  Tor Lillqvist  <tml@iki.fi>
16699
16700         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
16701         semantics (to mimic the X11 backend, which just calls XClearArea)
16702         is to check for zero width (and height), and in that case use the
16703         window's width minus x (height minus y). This fixes for instance
16704         some redraw problems with gtkclist, which were easily noticeable
16705         in the gtk file selection widget.
16706
16707         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
16708         windows.
16709
16710 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16711
16712         * configure.in
16713         * gdk/Makefile.am
16714         * gdk/x11/Makefile.am
16715         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16716         (bug #5177).
16717         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16718         out later.
16719
16720 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16721
16722         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16723         WM_MOVE for iconified or invisible windows. This fixes various
16724         problems when minimising windows. Thanks to Bernd Herd.
16725
16726 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16727
16728         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16729         backend's draw_lines method, not draw_points.
16730
16731 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16732
16733         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16734         before Owen's reorganisation: Don't have queued_events and
16735         queued_tail statics in this file, but use gdk_queued_events and
16736         gdk_queued_tail. This makes exposure event compression work again.
16737
16738         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16739         seem to be needed?
16740
16741 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16742
16743         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16744         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16745         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16746         doesn't do anything.
16747
16748         * gdk/gdk.def: Add gdk_xid_table_insert.
16749
16750         * gdk/win32/gdkprivate-win32.h
16751         * gdk/win32/gdkevents-win32.c
16752         * gdk/win32/gdkinput-win32.c
16753         
16754         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16755         extension_events field in the GdkWindowWin32Data struct. Use only
16756         the extension_events field in GdkWindowPrivate. Previously one was
16757         set, and the other one tested, which broke tablet
16758         functionality. Thanks to Keishi Suenaga for pointing this out.
16759
16760 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16761
16762         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16763         When handling a single character (text length == 1), don't handle
16764         it as if it was UTF-8.
16765
16766 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16767
16768         * Makefile.am: Distribute README.win32.
16769         
16770         * gdk/Makefile.am
16771         * gdk/win32/Makefile.am: Distribute Win32 files.
16772
16773         * gdk/makefile.msc: New file.
16774
16775         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16776         after label).
16777
16778         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16779         gdk_error_code as GDKVAR, as they are referred outside GDK.
16780
16781         * gdk/win32/makefile.msc: Update.
16782
16783         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16784         tweaks. Check only if at least one of those Unicode subrange bits
16785         we care for is set. If no code page bits are set, guess (wildly)
16786         based on the charset.
16787
16788         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16789
16790         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16791         non-NULL.
16792
16793         * gtk/gtkdnd.c
16794         * gtk/gtklayout.c
16795         * gtk/gtkplug.c
16796         * gtk/gtkselection.c
16797         * gtk/gtksocket.c
16798         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16799         appropriate. There must be a cleaner way to handle this?
16800
16801         * gtk/gtkrc.c: Must include windows.h on Win32.
16802
16803         * gtk/testgtk.c: No need to include gdkx.h.
16804
16805         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16806
16807 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16808
16809         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16810         the rbearing is set to the same as the width, but this should be
16811         fixed.
16812
16813 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16814
16815         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16816         function. If Windows doesn't tell us what Unicode subranges a font
16817         covers, guesstimate based on the codepages it covers. This will
16818         hopefully help those Windows versions or fonts that don't give us
16819         any useful Unicode subrange information with GetTextCharsetInfo.
16820         Call this function in gdk_font_load_internal.
16821
16822         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16823         minor changes.
16824
16825 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16826
16827         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16828         New function, long needed.
16829
16830 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16831
16832         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16833         only_if_exists argument of gdk_atom_intern to
16834         bool.
16835
16836 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16837
16838         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16839         Fix two copy&paste errors.
16840
16841         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16842         win32 has changed.
16843
16844         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16845         GdkWin32SingleFont struct.
16846
16847         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16848         subranges of loaded fonts. Clear font signature first, in case
16849         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16850         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16851
16852         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16853         Unoffset clip region.
16854
16855 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16856
16857         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16858         event->any.window before calling filter functions.
16859
16860 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16861
16862         * gtk/gtkgamma.h: Adapt cast macros to standard.
16863
16864 [ Merges from 1.2 ]
16865
16866 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16867
16868         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16869         If translation does not include a '/', use entire
16870         translation instead of crashing.
16871
16872 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16873
16874         * docs/gtk_tut.sgml:
16875         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16876
16877 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16878
16879         * gtk/gtkselection.c (gtk_target_list_remove): Use
16880         g_list_remove_link, not g_list_remove.
16881
16882         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16883         
16884 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16885
16886         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16887         statement upon unselection (how the heck did that slip in?).
16888
16889 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16890
16891         * gtk/gtktext.c (gtk_text_freeze): 
16892         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16893         in frozen state (and aparently crashes). patch provided by Anders
16894         Melchiorsen <and@kampsax.dtu.dk>.
16895
16896 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16897
16898         * fix insensitive default/focus widget activation,
16899         reported by Matt Goodall <mgg@isotek.co.uk>.
16900
16901         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16902         (gtk_window_activate_default):
16903         (gtk_window_activate_focus):
16904         return handled=FALSE for actiavtion of insensitive default
16905         widgets. return handled=TRUE for activation of insensitive
16906         focus widgets. don't activate in either case.
16907
16908 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16909
16910         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16911         and $glib_cflags to match library order and in the
16912         theory that an old version of GLib is more likely to
16913         be in the include directory for X then vice-versa.
16914         (Bug #2776)
16915
16916 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16917
16918         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16919         to determine the locale for fontsets, not LC_MESSAGES;
16920         the user may want English messages with a handling
16921         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16922         will still be broken) (Bug #2891)
16923
16924 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16925
16926         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16927
16928 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16929
16930         * gtk/gtkrc.ko: Changed the Korean default fontset.
16931
16932 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16933
16934         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16935         where when scrolling to the left or top double exposes
16936         were done, causing major slowdowns.
16937
16938 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16939
16940         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16941         names to lowercase and alphanumeric, before looking
16942         them up.
16943
16944         * gtk/Makefile.am: Install codeset variant gtkrc files
16945         with normalized names.
16946
16947 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16948
16949         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16950         popup menus when the menu is already visible, but its parent
16951         is still hidden, (happens after tornoff window got hidden).
16952
16953 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16954
16955         * gtk/Makefile.am (install-data-local): Fix
16956         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16957         deleted, causing error messages on install.
16958
16959 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16960
16961         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16962         the handle as well, since we now sometimes ignore
16963         exposes on the handle while resizing.
16964
16965 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16966
16967         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16968         extra g_free introduced in one of the last one or two 
16969         commits.
16970
16971 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16972
16973         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16974         consistent, put each style that a gtkrc.* file creates
16975         in a unique namespace, remove old files before installing.
16976
16977 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16978
16979         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16980         gtk_rc_init is called multiple times. (Yes, people who
16981         do that have bugs in their code.)
16982
16983 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16984
16985         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16986         Remove it since it's generated by the Makefile anyway
16987
16988 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16989
16990         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16991         device->info.axes for core pointer.
16992
16993 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
16994
16995         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
16996         idle_id, to deal with obsolete, broken C libraries.
16997
16998 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
16999
17000         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
17001         allocation->x/y twice!
17002
17003         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
17004         consistent with gtk_vscale_pos_trough().
17005
17006 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
17007
17008         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
17009         be queueing a resize on a toplevel container between
17010         the time we show it and when we map it. So, we need
17011         to test GTK_WIDGET_VISIBLE() for toplevels, and only
17012         use GTK_WIDGET_DRAWABLE() for child windows.
17013
17014 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
17015
17016         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
17017         (fixes bug #2144)
17018
17019 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
17020
17021         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
17022         container DRAWABLE (instead of VISIBLE), so we don't queue
17023         resizes on non-toplevel containers.
17024
17025 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
17026
17027         * gtk/gtkselection.[ch]: Make the data argument
17028         const guchar *.
17029
17030 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
17031
17032         * gtk/gtkwindow.c: Try to behave sensibly if 
17033         the focus widget is the window itself. (Should
17034         we allow this at all?)
17035
17036 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17037
17038         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
17039         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
17040         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
17041         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
17042         in prototypes and implementations consistent (Tomas Ogren).
17043
17044         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
17045         before the widget is unparented (reported by damon).
17046
17047         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
17048         since we provide unsigned data anyways.
17049
17050 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
17051
17052         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
17053         the call to gtk_tooltips_layout_text() until later.
17054
17055         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
17056         Call gtk_widget_ensure_style() before using the style.
17057
17058 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
17059
17060         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
17061         for old widgets that don't propagate draws to all
17062         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
17063
17064 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
17065
17066         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
17067         for a redraw but just the widget that requested the resize.
17068
17069 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
17070
17071         * gtk/gtkcontainer.c: added new widget level method
17072         gtk_container_set_reallocate_redraws() and a GtkContainer flag
17073         reallocate_redraws : 1 to reflect the setting, exported this through
17074         the argument system as a boolean ::reallocate_redraws.
17075
17076         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
17077         on the widget because the allocation changes, do so as well for
17078         widget->parent if the parent has reallocate_redraws set to TRUE.
17079         with that containers requesting reallocation redraws get automatically
17080         redrawn if their children changed allocation (this unfortunately
17081         affects also other children that didn't change allocation, but we
17082         cannot work around that before 1.3).
17083
17084 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17085
17086         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
17087         _and_ height are >0 (not _or_).
17088
17089         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
17090         instead of gtk_container_queue_resize(), which is a core gtk internal
17091         function (must have been on crack when i queued that).
17092
17093         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
17094         we can check more reliably if we want to discard expose events.
17095         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
17096         flag.
17097         
17098         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
17099         we simply trust these events. for deciding whether to discard exposes,
17100         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
17101         
17102 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
17103
17104         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17105         queues of areas that are completely off screen.
17106
17107         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
17108         logic for handleboxes.
17109
17110         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
17111         check on width/height.
17112
17113 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
17114
17115         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
17116         we are fine with using $@ the way we do (if we actually encounter
17117         brokeness with $@ in VPATH builds because of additional path prefixes,
17118         we need to use $(@F) actually).
17119
17120 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
17121
17122         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
17123         short lived bugs, that would allow language bindings to do surgeries
17124         to our guts.
17125
17126 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
17127
17128         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
17129         where comparison was being done against an uninitialized
17130         value causing intermittant results depending on
17131         compiler flags. Also make it clearer that we aren't
17132         ever initializing the child as 0x0 (though this will
17133         be caught in gtk_widget_size_allocate())
17134
17135 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
17136
17137         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
17138         gtk_window_unset_transient_for() call after we do checks
17139         involving the old transient parent.
17140         [ From Lance Capser <lmc@cyberhighway.net> ]
17141
17142 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
17143
17144         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
17145         an empty file.
17146
17147 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
17148
17149         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
17150         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
17151
17152 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
17153
17154         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
17155         `$@' is valid only in the build dir, not after we've done 
17156         `cd $srcdir'.  Also use `test -f' instead of less portable
17157         `test -e'.
17158
17159 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
17160
17161         * gtk/gtktext.c (correct_cache_insert): Rewrite
17162          for simplicity, and hopefully correctness.
17163          (Fixes bug #1322, which was a segfault when
17164           on some insertions with the properties around
17165           the insertion set up just wrong.)
17166
17167         * gtk/gtktext.c (gtk_text_adjustment): When we receive
17168          a "changed" signal, clamp the new value to the adjustment
17169          bounds to avoid segfaulting if someone tries to change
17170          the adjustment to a bogus value. (Bug #1795)
17171
17172 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17173
17174         * gtk/gtkmain.c: Ignore unexpected destroy notifies
17175         for children, for toplevel windows handle them
17176         like delete_event.
17177
17178         * gtk/gtkplug.c: Add an unrealize handler so that
17179         we unref plug->socket_window when we are done
17180         with it.
17181
17182 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
17183
17184         * gtk/gtktext.c (clear_area): Fix stupid signedness
17185          problem that was causing background to sometimes
17186          be misaligned.
17187
17188 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
17189
17190         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
17191         
17192         * gtk/gtkmenu.c (gtk_menu_position): Make
17193          sure we never position menus with negative x, y,
17194          since gtk_widget_set_uposition() can't handle that.
17195
17196         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
17197          Modify the positioning code a bit so that we always
17198          put the top-left corner onscreen. (This is for
17199          UI reasons, gtk_menu_position() now takes care of
17200          gtk_widet_set_uposition() brokeness.)
17201
17202 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
17203
17204         * gtk/Makefile.am: fixed up things for -jx, x > 1.
17205
17206 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
17207
17208         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
17209           RC style that is passed in. The lack of the ref
17210           before was a bug. If people worked around this
17211           bug, this will introduce a slight memory leak
17212           in their code. The code should typically look like:
17213
17214             rc_style = gtk_rc_style_new ();
17215             [...]
17216             gtk_widget_modify_style (widget, rc_style);
17217             gtk_rc_style_unref (rc_style);
17218
17219         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
17220           the style if it was already set.
17221
17222         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
17223           style if it was set before.
17224
17225 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17226
17227         * gtk/testgtk.c (main): Add a check to see if we
17228           are being run from the correct directory and
17229           to quit nicely if we are not.
17230
17231         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
17232           static.
17233
17234 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
17235
17236         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
17237
17238         * gtk/gtkwindow.c:
17239         queue resizes unconditionally (gtk_widget_queue_resize will figure
17240         what to do if the window is not realized).
17241         (gtk_window_move_resize): only recenter the window
17242         for GTK_WIN_POS_CENTER_ALWAYS.
17243         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
17244         the same way as GTK_WIN_POS_CENTER.
17245
17246 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
17247
17248         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
17249         with (!(info->last_flags & GDK_HINT_POS)) instead of
17250         (!info->last_flags & GDK_HINT_POS).
17251
17252         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
17253         new_height unconditionally, because we use these values even if
17254         !default_size_changed && !hints_changed.
17255         comented the (default_size_changed || hints_changed) case with
17256         respect to resize rejects from the window manager.
17257
17258         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
17259         in the zvt condition hack, since this includes the window hints, set
17260         the hints after the handling_resize case.
17261
17262         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
17263         window is initially shown with to the geometry.
17264
17265 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
17266
17267         * gtk/gtkwindow.c (gtk_window_move_resize):
17268         s/size_changed/default_size_changed/g so i know what's
17269         really going on (frying brain on smaller flame now).
17270
17271 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
17272
17273         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
17274         we have size_changed upon handling_resize. this is a gross
17275         workaround for the broken zvt widget and should be removed in
17276         1.3 again (search for FIXME).
17277         Owen provided an accurate comment for this:
17278
17279         /* We could be here for two reasons
17280          *  1) We coincidentally got a resize while handling
17281          *     another resize.
17282          *  2) Our computation of size_changed was completely
17283          *     screwed up, probably because one of our children
17284          *     is broken. It's probably a zvt widget.
17285          *
17286          * For 1), we could just go ahead and ask for the
17287          * new size right now, but doing that for 2)
17288          * might well be fighting the user (and can even
17289          * trigger a loop). Since we really don't want to
17290          * do that, we requeue a resize in hopes that
17291          * by the time it gets handled, the child has seen
17292          * the light and is willing to go along with the
17293          * new size. (this happens for the zvt widget, since
17294          * the size_allocate() above will have stored the
17295          * requisition corresponding to the new size in the
17296          * zvt widget)
17297          *
17298          * This doesn't buy us anything for 1), but it shouldn't
17299          * hurt us too badly, since it is what would have
17300          * happened if we had gotten the configure event before
17301          * the new size had been set.
17302          */
17303
17304 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
17305
17306         * gtk/gtkrc.c: deal properly with the fact that RC
17307           style lists may include rc styles more than once.
17308
17309         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
17310           unused static function.
17311
17312         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
17313           stack of directories of RC files currently being
17314           parsed and implicitely add them to pixmap path.
17315           
17316           This fixes a bug where the directory would get
17317           appended then overwritten by pixmap_path declarations.
17318
17319           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
17320
17321         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
17322           theme's exit function. (Patch from Peter Wainwright,
17323           bug #1454)
17324
17325         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
17326           Add a destroy() handler to take care of removing
17327           group for menu item. (Fixes bug #1197)
17328
17329         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
17330           in warning message.
17331
17332 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
17333
17334         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
17335         roundtrip to figure window's width and height, since we know that
17336         anyways from widget->allocation.
17337
17338 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
17339
17340         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
17341           the hints after we request the new size.
17342
17343 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
17344
17345         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
17346           GTK_WIDGET_REALIZED() assertion - we can compute the
17347           hints before we are realized.
17348
17349         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
17350           hint changing so that we have a value of hints_changed
17351           when we decide whether to constrain the window size.
17352
17353         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
17354
17355         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
17356         change back to G_MAXINT.
17357
17358 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
17359
17360         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
17361         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
17362         contain uncluttered values.
17363         (gtk_window_compute_hints): simply assert that window is realized
17364         and that geometry_info is valid, since we rely on this anyways.
17365         (gtk_window_constrain_size): major cleanups to the code.
17366         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
17367         for the base size, instead of the minimums. use 32767 as max width
17368         and height (like in gtkwindow.c) instead of G_MAXINT.
17369
17370 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
17371
17372         * cleaned up the GtkContainer.need_resize flag handling mess, we
17373         only need to force resize requests when we were prematurely
17374         realized, or our widget tree was modified when we were temporarily
17375         hidden. handling these cases directly upon showing the window (i.e.
17376         while the GdkWindow is still unmapped) avoids the need to wait for
17377         a configure event response and therefore makes the GUI more snappier
17378         and avoids blank windows during the roundtrip.
17379
17380         * gtk/gtkwidget.c:
17381         (gtk_widget_hide): 
17382         (gtk_widget_show): don't queue resizes on toplevels, they know how
17383         to deal with matters.
17384
17385         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
17386         flag directly for not visible resize containers and spare us unecessary
17387         signal emissions.
17388
17389         * gtk/gtkwindow.c:
17390         (gtk_window_realize): if we need to enforce premature size allocation,
17391         queue a container resize so we are correctly resized later on.
17392         (gtk_window_init):
17393         (gtk_window_size_request):
17394         don't freak around with the ->need_resize flag,
17395         gtk_container_queue_resize() will care about that.
17396         (gtk_window_show):
17397         handle initial resizing issues here, we can handle matters better in
17398         this place, especially since we know that our GdkWindow is still
17399         unmapped.
17400         (gtk_window_move_resize):
17401         don't care about ->need_resize at all.
17402         handle size changes properly that occoured while we waited for a
17403         configure event.
17404
17405 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
17406
17407         * gtk/gtkwidget.c (gtk_widget_set_uposition):
17408         * gtk/gtkwindow.[hc] (gtk_window_reposition):
17409         Move the hint setting code from gtk_widget_set_uposition
17410         to here; set the hints so that we respect any previously
17411         set geometry hints.
17412
17413         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
17414         change the window hints here or move the window here,
17415         let that happen in gtk_window_move_resize().
17416
17417 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
17418
17419         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
17420         to already queued resizes (and therefore redraws) on a widget, check
17421         its anchestry as well.
17422
17423         * gtk/gtkcontainer.c:
17424         (gtk_container_queue_resize): clear resize widgets for resize
17425         containers before aborting prematurely. this is especially important
17426         for toplevels which may need imemdiate processing or their resize
17427         handler to be queued.
17428         (gtk_container_dequeue_resize_handler): added new internal function for
17429         gtkwindow.c.
17430
17431         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
17432         configure event, take possible changes in window position into account
17433         as well.
17434         if we request a new window size, queue up a resize handler that will
17435         last until the configure event response arrives.
17436         combined the ->need_resize case (initial show) with the general size
17437         (hints) changed case and added even more comments.
17438         if !auto_shrink, only revert to the old allocation if the new size
17439         is smaller than the current allocation.
17440
17441 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
17442
17443         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
17444                            gtk_window_set_geometry_hints
17445                            gtk_window_set_default_size):
17446         When hints are set, queue a resize so that the hints will
17447         be eventually reset on the toplevel.
17448
17449         * gtk/gtkwindow.c (gtk_window_show): Use
17450         gtk_window_compute_default_size(). Clear the need_resize flag
17451         on the initail map so that we don't unnecessarily trigger the
17452         resize code.
17453
17454         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
17455         into separate functions. Compare the hints we are setting
17456         with what we set last time so that we can accurately
17457         tell when we need to reset the hints.
17458
17459         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17460         function to figure out the size from requisition
17461         and default_size.
17462
17463         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17464         from fvwm to constrain a size to the geometry hints.
17465
17466         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17467         to compare two sets of geometry hints.
17468
17469         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17470         from gtk_window_set_hints(), just compute the hints,
17471         don't set them.
17472
17473         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17474         code from gtk_window_move_resize() to separate function,
17475         rationalize a bit.
17476
17477 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17478
17479         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17480         structure into a new private structure.
17481
17482         * gtkrc.c: Split GtkRcStyle into public/private.
17483         In the private part, add a list of pointers to the
17484         RcStyle lists this RcStyle participates in.
17485
17486         * gtkrc.c: When a RcStyle is free, remove all
17487         lists referencing it from the 
17488         realized_style_ht hash, and free those lists.
17489         
17490         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17491         gtk_rc_init(), since that adds the default styles
17492         to the list of parsed RC files again.
17493
17494         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17495         
17496 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17497
17498         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
17499         checks that ensure that a widget's allocation is at least 1 in width
17500         and height. (GNOME note: this doesn't affect old panel code anymore,
17501         because GtkSocket will request width and height of at least 1 since
17502         Fri Jul 23).
17503
17504         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
17505         allocated yet (happens if the user realizes the window prematurely),
17506         size request and allocate it.
17507         (gtk_window_size_allocate): guard against guint underflows.
17508
17509 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
17510
17511         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
17512         in gtk_built_sources, so gtk.defs gets built prior to all other
17513         sources.
17514
17515 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17516
17517         * gtk/Makefile.am:
17518         invoke indent on gtkmarshal.*. 
17519         rewrote source generation rules, use COPYING as oldest source tag for
17520         a piggyback rule to generate all sources from (don't touch it ;).
17521         major cleanups, strip spaces on build rules for GNU Make.
17522
17523         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
17524         source and target files from commandline arguments. don't invoke indent.
17525
17526 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17527
17528         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17529         notebook after switch to avoid drawing problems.
17530         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17531         
17532         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17533         show them instead. 
17534         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17535
17536 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17537
17538         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17539         notebook after switch to avoid drawing problems.
17540         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17541         
17542         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17543         show them instead. 
17544         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17545
17546 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
17547
17548         * gtk/gtkwindow.c:
17549         we use window->need_resize from configure_event now, to indicate that
17550         the gtkwindow should keep its allocation (e.g. because the user resized
17551         the window through window manager handles). resize_count is now reliably
17552         used to figure whether we got the allocation we requested from the
17553         window manager.
17554         configure events get queued as resizes now, the real stuff (size
17555         computation and allocation) now only goes on in gtk_window_move_resize().
17556         GtkWindow's requisition now contains its *real* requisition (like all
17557         other widgets), *not* taking usize into account.
17558         geometry_info->last_{width|height} is now updated from set_hints() only
17559         so it always contains the last hints we set for the window manager.
17560         made some event handlers return TRUE instead of FALSE.
17561         the overall code should be much more straight forward now, and the
17562         significant code portions are accompanied by comments now.
17563         (gtk_window_set_hints):
17564         removed requisition argument and made it
17565         fetch the requisition through gtk_widget_get_child_requisition.
17566         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
17567         does that now.
17568         (gtk_window_show):
17569         ensure that the widget is realized before calling 
17570         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
17571         ensure that we got properly size requested and allocated before
17572         realization.
17573         (gtk_window_configure_event):
17574         ignore plain window moves, or reallocate the widget tree through the
17575         resize queue otherwise.
17576         (gtk_window_move_resize):
17577         mostly rewrote this function to figure window manager hints more
17578         reliably, coalesce window moves and resizes to reduce configure events
17579         and do actuall size allocations.
17580
17581 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17582
17583         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
17584         that have a resize pending, because a redraw is already queued for them.
17585
17586         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
17587         hack to clear resize_widgets.
17588
17589         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
17590         for resize containers prior to size allocation. (this is also a bit
17591         ugly, but avoids side effects for stopped emissions and is thus more
17592         reliable).
17593         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
17594
17595         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
17596         function from gtk_tooltips_expose, as we connect to ::expose_event
17597         *and* ::draw now.
17598
17599 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17600
17601         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
17602         checks.
17603         (gtk_target_list_unref): Likewise.
17604
17605         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
17606
17607 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
17608
17609         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
17610         guard against division by zero. (Fixes bug #1339)
17611
17612 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
17613
17614         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
17615         Prevent the trivial leak of information of allowing
17616         word motion when the entry is not visible.
17617
17618 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
17619
17620         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
17621         modality to error dialog as well as confirmation dialogs.
17622         (Bug #1803, reported by Rosanna Wing Sze Yuen)
17623
17624 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17625
17626         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
17627         tree->view_lines.
17628         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
17629
17630         * gtk/Makefile.am (install-data-local): Solaris apparently
17631         has various troubles with ln -f; use rm first instead.
17632         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
17633
17634 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
17635
17636         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
17637         use `cp' followed by `rm' (the `rm' was already there).
17638
17639 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17640         
17641         * configure.in: Fix autoconf warnings about cross compilation by
17642         trying to provide sane defaults for AC_TRY_RUN.
17643         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
17644         put them into $(srcdir) when generated. Also add a dependency of
17645         gtksignal.h on gtkmarshal.h for -j builds. 
17646         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
17647
17648 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
17649
17650         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
17651         GDK_THREADS_{LEAVE,ENTER} pair.
17652         (From Paul Fisher <pnfisher@redhat.com>)
17653
17654 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
17655
17656         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
17657         width and height are always >0 (owen).
17658
17659 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
17660
17661         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
17662         change that assured that a widget's allocated with and height are
17663         always >1, since this breaks *buggy* panel code. unfortunately this
17664         back-breaks the gimp's color selector.
17665
17666         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
17667         allocation is always >0 in width and height, before sending the
17668         configure event; this is a *gross* hack to get the gimp back to work.
17669         
17670         * marked both cases with TODO-1.3
17671
17672 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
17673
17674         * gtk/gtktext.c: Don't display wrap indicators when
17675         text is not editable and word wrap is on.
17676
17677 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
17678
17679         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
17680         option menus here as they are not derived from menu shell, assure that
17681         the option menu has a menu we can add items to.
17682
17683 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
17684
17685         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
17686         width/height to (gint) before calculations and check against < 0 to
17687         avoid guint wraparounds.
17688
17689 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
17690
17691         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
17692         width and height is never zero. sanity check both dimensions against
17693         32767 and issue a warning if the allocation is greater than that.
17694
17695 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
17696
17697         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
17698         to g_main_pending() as well.
17699
17700 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
17701
17702         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
17703         call to g_main_iteration() - since that will regrab
17704         GTK+ lock to process events.
17705
17706 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
17707
17708         * gtk/gtkwindow.c
17709         - Regularize with the rest of GTK+ by making widget->requisition
17710           not reflect the set_usize()
17711         - Always recompute geometry hints, then check if they
17712           changed before sending them to the X server. The
17713           previous checks for changes would fail in a number
17714           of circumstances. 
17715
17716 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17717
17718         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17719
17720 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17721
17722         * gtk/gtkdnd.c:
17723         - Code cleanups
17724         - Instantaneously update on modifier key presses
17725         - Allow cancellation of the drag with Escape.
17726
17727 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17728
17729         * gtk/testgtk.c (create_handle_box): Set the policy
17730         to auto_shrink - otherwise the appearance is rather
17731         strange when flipping between horizontal and vertical.
17732
17733 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17734
17735         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17736         (gtk_window_set_default_size): don't change a value if it's < 0.
17737         queue a resize.
17738
17739 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17740
17741         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17742
17743 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17744
17745         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17746         add an extra "/" when concating "/" + filename.
17747         (From Matt Grossman <mattg@oz.net>)
17748
17749 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17750
17751         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17752         for fg_gc if we set it for drawing pixmap.
17753
17754 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17755
17756         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17757         
17758         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17759         already set, call old engine's destroy function and
17760         unref the old engine.
17761
17762 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17763
17764         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17765
17766 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17767
17768         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17769
17770 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17771
17772         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17773         expand behaviour changed.
17774
17775         * gtk/gtklabel.c (gtk_label_set_pattern):
17776         (gtk_label_set_justify):
17777         (gtk_label_set_line_wrap):
17778         don't bother invoking queue_clear, the reallocation does
17779         that for us, always free_words so the upcoming resize will
17780         relayout the label's contents.
17781
17782 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17783
17784         * applied argument implementation patches from Elena Devdariani
17785         <elena@cogent.ca>.
17786
17787         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17788         ::space_style, ::relief
17789         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17790         * gtk/gtkpreview.c: ::expand
17791         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17792         * gtk/gtknotebook.c: ::homogeneous
17793         * gtk/gtklabel.c: ::wrap
17794         * gtk/gtklist.c: ::selection_mode
17795         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17796         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17797         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17798         * gtk/gtkclist.c: ::sort_type
17799         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17800         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17801
17802 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17803
17804         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17805         comment.
17806
17807 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17808
17809         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17810         counting right when we have to attach a new style
17811         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17812
17813         * gtk/gtkstyle.c: Documented the refcounting
17814         peculularities of gtk_style_attach.
17815
17816 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17817
17818         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17819         window types.
17820
17821         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17822         of GTK_TOPLEVEL for creating the window.
17823
17824 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17825
17826         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17827         the last argument (reported by Per Winkvist).
17828         
17829 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17830
17831         Fixes for invisible XOR lines (Frank Loemker
17832         <floemker@TechFak.Uni-Bielefeld.DE>)
17833         
17834         * gtk/gtkclist.c (gtk_clist_realize): Always use
17835         a non-zero pixel for GDK_XOR.
17836
17837         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17838         Use GDK_INVERT instead of GDK_XOR.
17839
17840 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17841
17842         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17843         signals if h/voffsets differ from adjustment values.
17844         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17845
17846 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17847
17848         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17849         ::selection-done emissions up to the topmost menu shell.
17850
17851 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17852
17853         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17854         the user data on the window before destroying it.
17855
17856         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17857         unrealize handler to take care of destroying 
17858         notebook->panel properly. 
17859         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17860
17861         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17862         of g_new and g_realloc to stop memory leak. (Actually,
17863         we could just use g_realloc(), but I'm not 100% sure
17864         that is portable).
17865         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17866
17867 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17868
17869         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17870
17871         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17872         for fontsets.
17873
17874         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17875         with bin/button confusion.
17876
17877 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17878
17879         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17880         and show how preselection of radio items is done.
17881
17882 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17883
17884         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17885         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17886         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17887         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17888         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17889         * gtk/gtktable.c (gtk_table_attach): 
17890         * gtk/gtklist.c (gtk_list_insert_items): 
17891         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17892         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17893         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17894         * gtk/gtkbin.c (gtk_bin_add): 
17895         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17896         * gtk/gtkfixed.c (gtk_fixed_put): 
17897         * gtk/gtklayout.c (gtk_layout_put):
17898         general fixups to container_add logic. always realize child if
17899         child->parent is realized, only map the child and queue a resize
17900         if child and child->parent are both visible.
17901
17902 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17903
17904         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17905         instead of gtk_container_foreach to walk and unrealize children, so
17906         composite children get also unrealized.
17907         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17908         (gtk_widget_map): assert that the widget is visible (basic constrain).
17909         (gtk_widget_real_map): assert that the widget is realized (basic
17910         constrain).
17911
17912 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17913
17914         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17915
17916 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17917
17918         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17919         file for iso-8859-2 locales.
17920
17921         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17922
17923 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17924
17925         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17926          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17927          Remove some suspicious and useless lines. 
17928
17929 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17930
17931         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17932         width,height = 0, 0 to mean - here to edge of window,
17933         instead of -1, -1, since the former is all we support.
17934
17935 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17936
17937         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17938         when removing from quit_functions list.
17939
17940 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17941
17942         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17943
17944 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17945
17946         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17947          When redrawing characters on non-visible entry, use appropriate
17948          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17949
17950 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17951
17952         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17953         from drag coordinates.
17954         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17955         use drag_dest_cell.
17956
17957         * gtk/gtktree (drag_dest_cell)
17958         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17959         (Bug #1129)
17960
17961 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17962
17963         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17964         translate_* fields.
17965         (gtk_item_factory_finalize): invoke translate_notify independant from
17966         translate_data.
17967         (gtk_item_factory_set_translate_func): likewise.
17968         (gtk_item_factory_destroy): only remove ifactory pointer from those
17969         widgets that belong to us (stupid me).
17970
17971 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17972
17973         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17974         rc_style list when lookup succeeeds.
17975
17976 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17977
17978         * gtk/gtkctree.c (resync_selection): 
17979         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17980         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17981         bug.
17982
17983 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17984
17985         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17986         Add some missing GDK_THREADS_ENTER()/LEAVE around
17987         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17988
17989 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17990
17991         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17992         rather than emit_by_name.
17993
17994         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
17995         on the widget across multiple signal emissions.
17996         (gtk_editable_delete_text): same here.
17997         (gtk_editable_class_init): set widget_class->activate_signal after
17998         editable_signals[ACTIVATE] has been created.
17999
18000 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
18001
18002         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
18003         position here prematurely -- we might not have the
18004         right ->min_position and ->max_position yet.
18005
18006 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18007
18008         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
18009         Add error traps so if the other end of the connection
18010         dies, we survive.
18011
18012         * gtk/gtkselection.c (gtk_selection_notify): Clean
18013         up properly when selection property retrieval fails.
18014         
18015         * gtk/gtkselection.c (gtk_selection_request): Correctly
18016         reject SelectionRequest notifies where the handler
18017         returns no data.
18018
18019 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18020
18021         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
18022         when we've previously highlighted.
18023
18024         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
18025         emit two "drag_leave" signals for Motif drops.
18026
18027         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
18028         back the correct status messages when dropping from
18029         Motif onto a proxy window that is rejecting the
18030         drop.
18031
18032 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
18033
18034         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
18035         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
18036         to compare two argument values. added gtk_arg_to_valueloc() to set a
18037         variable from an arg through its location (pointer).
18038
18039         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
18040         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
18041         as gfloat*, uchars are collected as guchar*, ints are collected as
18042         gint*, etc...
18043
18044 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
18045
18046         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
18047         Include <string.h> instead of <strings.h>.
18048
18049         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
18050         (actually, a lot more duplicate includes occur if
18051          you trace through the sequence of #include's)
18052         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
18053         
18054 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18055
18056         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18057         gtk-a-higuti-990322-[0-3]
18058
18059         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18060         that was causing -DX_LOCALE not to work.
18061
18062         * gtk/gtkrc.c (gtk_rc_init):
18063         X_LOCALE will never have LC_MESSAGES defined
18064
18065 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
18066
18067         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
18068         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
18069
18070         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
18071         left/right as well (gtk-michael-980726-0.patch.gz).
18072
18073         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
18074         for pointer values, use gchar instead of char. fixed uline allocation
18075         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
18076         chunks instead of G_ALLOC_ONLY.
18077         (gtk_label_size_request): always alter requisition as passed and leave
18078         widget->requisition alone.
18079         (gtk_label_set_text): allow NULL strings.
18080         (gtk_label_new): likewise.
18081
18082 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
18083
18084         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
18085
18086 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
18087
18088         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
18089         *and* mapped (i.e. drawable).
18090         (gtk_bin_expose): only send exposes to drawable children.
18091
18092         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
18093         (gtk_box_expose): only send exposes to drawable children.
18094
18095         * gtk/gtkhscale.c (gtk_hscale_draw): 
18096         * gtk/gtkvscale.c (gtk_vscale_draw):
18097         hm, this is an ugly one. we first compute the size of our trough area
18098         here (window relative) and then check intersection with the draw_area
18099         which is parent relative because we're a NO_WINDOW widget, so we need
18100         to offset the trough area by allocation.x and allocation.y before the
18101         check. (this must not be done for the background area though, since
18102         that's already computed parent relative).
18103
18104 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
18105
18106         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
18107         unrealize title buttons.
18108
18109 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
18110
18111         * gtk/gtkclist.c (gtk_clist_column_title_passive)
18112         (gtk_clist_column_title_active): 
18113         only connect/disconnect to GtkWidgetClass::event to block mouse events.
18114
18115         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
18116         zero initialize event, removed superfluous gdk_window_get_pointer call
18117
18118         * gtk/gtklist.c (gtk_list_vertical_timeout)
18119         (gtk_list_horizontal_timeout): removed superfluous
18120         gdk_window_get_pointer call
18121
18122 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18123
18124         * plugging problems reported by "Bruce Mitchener, Jr."
18125         <bruce@puremagic.com> due to a purify session.
18126
18127         * gtk/gtkstyle.c:
18128         (gtk_style_ref): 
18129         (gtk_style_unref): assert ref_count to be > 0.
18130
18131         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
18132         the requisition.
18133         (gtk_clist_set_shift): likewise.
18134
18135         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
18136         adjustments.
18137
18138         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
18139         event before sending it and set send_event to TRUE (which needs to
18140         be done for *all* synthesized events).
18141         (gtk_list_vertical_timeout): likewise.
18142
18143         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
18144         leaks.
18145
18146         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
18147         to TRUE when synthesizing events.
18148
18149 [ *** end of merges from 1.2 *** ]      
18150         
18151 1999-11-21  Tor Lillqvist  <tml@iki.fi>
18152
18153         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
18154         (or copied from gdkconfig.h.win32 on Win32, sigh).
18155
18156         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
18157
18158         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
18159
18160         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
18161
18162         * gdk/gdkconfig.h.win32: New file.
18163
18164         * gdk/win32/makefile.cygwin: Build just a static archive here.
18165
18166         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
18167         for the DLL from the static archive built above.
18168
18169         * gdk/gdk.def: Moved here from the win32 subdirectory.
18170
18171         * gdk/win32/*: Adapt for the changed private struct organisation.
18172
18173         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
18174
18175 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
18176
18177         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
18178         for wheel mice (buttons 4 and 5).
18179
18180 1999-11-18  Tor Lillqvist  <tml@iki.fi>
18181
18182         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
18183         drawables use just the pixel field in the foreground and
18184         background GdkColor of the GdkGC.
18185
18186         gdk_gc_set_{fore,back}ground() are called in the GIMP with
18187         GdkColors containing uninitialized (red,green,blue) fields, and
18188         just the pixel field filled in, and furthermore in the
18189         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
18190         It thus turns out that we really don't need to have the full
18191         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
18192         it later to have just the pixel values.
18193
18194 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
18195
18196         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
18197
18198 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
18199
18200         * docs/gtkfaq.sgml: threads example from Erik Mouw.
18201         New question on GtkLabel background colors.
18202
18203         * docs/gtk_tut.sgml:
18204           - Correct the example code callback
18205             function definitions.
18206           - Update the gtkdial example code, from Frans van Schaik.
18207           - Update setselection.c to current API.
18208
18209         * examples/Makefile examples/*/*.c: Update to code
18210         listed in tutorial.
18211
18212 1999-11-10  Tor Lillqvist  <tml@iki.fi>
18213
18214         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
18215         subrange table (from the "Developing International Software for
18216         WIndows 95 and Windows NT" book) was missing the Hangul syllable
18217         block... Get the loaded font's charset correctly.
18218
18219         (Note that this, and the other *-win32.c files, still really are
18220         the old ones, the win32 subdirectory is not ready for compilation
18221         yet after the reorg.)
18222
18223 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
18224
18225         * gtk/gtkclist.c: Fix off-by-one bug in parameter
18226         check.
18227
18228 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
18229
18230         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
18231         on results of XQueryDeviceState().
18232
18233 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
18234
18235         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
18236         we need to accesss only ->children. We need an accessor
18237         for the children.
18238
18239         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
18240         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
18241         to get rid of gdkx.h include.
18242         
18243         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
18244         and random references to 'None'.
18245
18246         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
18247         Get rid of unused #include <gdk/gdkx.h>
18248
18249         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
18250         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
18251         gdkconfig.h.
18252
18253 1999-11-08  Tor Lillqvist  <tml@iki.fi>
18254
18255         * gdk/win32/gdkdraw.c
18256         * gdk/win32/gdkfont.c
18257         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
18258         following yesterday's changes. (Unrelated to Owen's reorg.)
18259
18260 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
18261
18262         * gdk/x11/gdkinput-gxi.c: Add missing include,
18263           fix GdkWindowPrivate => GdkDrawablePrivate.
18264
18265         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
18266
18267         * gdk/x11/Makefile.am (xinput_sources): Add missing
18268         backslash to fix building with --with-xinput=none
18269
18270 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
18271
18272         Move all X specific code into the x11/ directory.
18273         Aside from shuffling things around, did the following:
18274
18275        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
18276          gdk_arg_context_* - a simple argument parsing system
18277          in the style of popt.
18278
18279        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
18280          gdk/x11/gdkprivate-x11.h:
18281          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
18282          add ->klass and ->klass_data fields. The klass_data
18283          field points to an auxilliary structure that is
18284          windowing system dependent.
18285
18286        * gdk/gdkfont.c: Make most of the measurement functions
18287          simply wrappers around gdk_text_extents().
18288
18289        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
18290          _gdk_font_strlen() function that hides the weird
18291          behavior in gtk+-1.[02] where a string is interpreted
18292          differently for 8-bit and 16-bit fonts.
18293
18294        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
18295          to store common code for synthesizing double/triple
18296          press events.
18297         
18298        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
18299          Make all the function that modify an existing GC
18300          simply wrappers around gdk_gc_set_values().
18301          
18302        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
18303          for throwing out later.
18304
18305        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
18306          GdkImagePrivate and GdkColormapPrivate to have a
18307          windowing system dependent part (GdkFontPrivateX etc.)
18308          that "derives" from the system-independent part.
18309
18310        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
18311          Got rid of the included-source-files for XInput in
18312          favor of automake conditionals. (Which didn't exist
18313          when XInput support was originally added.)
18314
18315        * gdk/gdkrgb.c: Remove the visual id from the debugging
18316          statements since that is X11 specific; print out
18317          type/depth info instead.
18318          
18319
18320 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
18321
18322         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
18323         loading duplicates of hashed fonts.
18324
18325         * gdk/gdk.c (gdk_keysym_convert_case): rename
18326         gdk_XConvertCase to gdk_keysym_convert_case, allow
18327         results to be NULL in the GTK+ style.
18328
18329         * gdk/gdkcompat.h: Started compatibility header
18330         for renames.
18331
18332 1999-11-07  Tor Lillqvist  <tml@iki.fi>
18333
18334         * gdk/win32/gdkprivate.h: New font private structures, related to
18335         fontsets.
18336
18337         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
18338         gdk_font_list_free(). On X11, will just be wrappers to
18339         XListFonts() and XFreeFontNames(). On Win32, the code previously
18340         in gtkfontsel.c is now here.
18341
18342         New function gdk_font_xlfd_create(). On X11 will get the FONT
18343         property of the font (for GDK_FONT_FONTs), or call
18344         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
18345         builds a XLFD style name from the font information in the LOGFONT
18346         struct(s).
18347
18348         New function gdk_font_xlfd_free(), which correspondingly frees the
18349         string returned by gdk_font_xlfd_create().
18350
18351         Implement fontsets on Win32. Add a function that iterates over a
18352         wide char string and calls a callback function for each substring
18353         of wide chars from the same Unicode subrange (and thus probably
18354         available in the same real font).
18355
18356         Improve the XLFD emulation a bit.
18357
18358         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
18359
18360         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
18361         Beta3, WM_IME_CHAR messages don't seem to contain the composed
18362         multi-byte char as with the Active IMM on Win9x. Oh well, handle
18363         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
18364         ImmGetCompositionStringW() to get the composed Unicode chars.
18365
18366         * gdk/win32/gdkgc.c
18367         * gdk/win32/gdkdraw.c: Changes needed because of the font private
18368         struct changes.
18369
18370         * gdk/win32/gdk.def: Add the new functions.
18371
18372 1999-11-04  Tor Lillqvist  <tml@iki.fi>
18373
18374         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
18375         get the Platform SDK to get <dimm.h>.
18376
18377         * gdk/win32/gdkevents.c: More event handling fixes and
18378         simplification. Never generate motion events with is_hint true. We
18379         used to do that on bogus grounds earlier. Windows sends
18380         WM_MOUSEMOVE messages on button events even if the mouse hasn't
18381         moved, ignore these.
18382
18383         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
18384
18385         * gdk/win32/gdkglobals.c
18386         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
18387         the TrackMouseEvent function, and use it.
18388
18389         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
18390         char before calling WideCharToMultiByte in order to get a string
18391         for the window title.
18392
18393         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
18394
18395         * gdk/win32/gdk.def: Remove obsolete functions.
18396
18397         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
18398         /nodefaultlib and /defaultlib switches.
18399
18400         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
18401
18402 1999-10-31  Tor Lillqvist  <tml@iki.fi>
18403
18404         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
18405         EuroSign).
18406
18407         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
18408         same type as GdkWChar, especially on Win32.
18409
18410         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
18411
18412         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
18413         before passing to Windows GDI for drawing etc. Convert to the
18414         system default codepage before passing to Windows as window
18415         titles.
18416
18417         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
18418         support changing input locale on the fly.
18419
18420         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
18421         on-the-fly changes. Convert incoming characters from the current
18422         codepage to Unicode (and then to a UTF-8 multi-byte string) based
18423         on the current input language. Use keysym<->Unicode mapping tables
18424         and functions borrowed from xterm sources.
18425
18426         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
18427         editions of Win9x, use the ActiveX-based Active IMM (Input Method
18428         Manager) if available. IMEs and the Active IMM are available under
18429         the disguise of Chinese, Korean and Japanese support for IE and
18430         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
18431         support is present in all editions (as long as you install it).
18432
18433         Call DispatchMessage from gdk_events_queue() (and thus
18434         gdk_WindowProc()), instead of duplicating the code in
18435         gdk_WindowProc().
18436
18437         Reworked the grab handling and propagation code, factored out
18438         duplicated code snippets into separate functions. Other cleanups,
18439         too.
18440
18441         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
18442         the <dimm.h> header describing the Active IMM.
18443
18444         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
18445         just do the same as for "single" fonts.
18446
18447         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
18448         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
18449         the new keysyms from gdkkeysyms.h.
18450
18451         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
18452         fontset, so that gtkentry uses wide characters.
18453
18454         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
18455         GTk+'s system directory "gtk+", not "gtk".
18456
18457 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18458
18459         * docs/gtkfaq.sgml: FAQ update
18460
18461 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18462
18463         * gdk/win32/gdkprivate.h: Add more font private data.
18464
18465         * gdk/win32/gdkfont.c
18466         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18467         fonts and strings. Now works much better. You still have to
18468         have a correct font selected, though. No fontset emulation yet.
18469
18470 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18471
18472         * gtk/maketypes.awk: Use G_OS_WIN32.
18473
18474         * gtk/gtk.def: Add some missing entry points. Also some non-public
18475         ones, but PyGTK porter claims to need them.
18476
18477         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18478         built-in type generation.
18479
18480 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18481
18482         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18483         GDK_FONT_FONT fonts (which is all we have for now, we don't
18484         emulate fontsets). The X11 version uses plain XDrawString in that
18485         case, too. The string passed to gdk_draw_text_wc seems to be in
18486         fact (at least, when used by gtkentry and gtktext) either in a
18487         single-byte charset, or a DBCS. Not Unicode.
18488
18489         This fixes the problem in gtkfontsel, where even if you had
18490         selected a font with a non-Latin1 charset (windows-greek, for
18491         instance), the preview still used Latin-1 glyphs.
18492
18493         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18494         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18495         (gdk_font_load): Recognize the demibold etc weights, even if we
18496         don't have the corresponding constants in the headers.
18497         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18498         version. Should save font resources a bit, when we don't have
18499         multiple HFONTs for the same font.
18500
18501         * gdk/win32/gdkprivate.h: Add the names field as in the X11
18502         version.
18503
18504 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
18505
18506         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
18507         X values
18508
18509 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
18510
18511         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
18512         layout support (as mentioned on
18513         http://www.jcinteractive.com/gnome-ui/software/widgets/)
18514
18515 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
18516
18517         * gtk/fnmatch.c
18518         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
18519
18520 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
18521
18522         * configure.in (ALL_LINGUAS): Added Galician (gl)
18523
18524 1999-10-05  Tor Lillqvist  <tml@iki.fi>
18525
18526         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
18527
18528         * gdk/win32/gdkcompat.c: New file, actually provide an
18529         implementation for the deprecated functions. (Just temporarily.)
18530
18531         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
18532
18533         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
18534
18535         * gdk/win32/gdk.def gtk/gtk.def: Updates.
18536
18537 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
18538
18539         * configure.in: Added "uk" to ALL_LINGUAS.
18540         
18541 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
18542
18543         * configure.in: correct checking for BeOS check
18544
18545         * gdk/gdktypes.h
18546         * gtk/fnmatch.c
18547         * gtk/gtkfilesel.c
18548         * gtk/gtkitemfactory.c
18549         * gtk/gtkmain.[ch]
18550         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
18551
18552 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18553
18554         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
18555         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
18556         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
18557         by Bulgarian). 
18558
18559 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
18560
18561         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
18562         Fix a reference to window_private->destroyed.   
18563
18564         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
18565         (ugly) setting of an internal GdkWindow member to use
18566         a _slightly_ cleaner macro.
18567
18568         * gdk/gdkprivate.h: Split GdkWindowPrivate into
18569         GdkDrawablePrivate and GdkWindowPrivate.
18570         Add extra macros for accessing GDK_DRAWABLE_ components.
18571
18572         * *.[ch]: Massive adjustments for the above, use the
18573         new macros in a lot of places.
18574
18575 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
18576
18577         * gdk/gdktypes.h: Make GdkDrawable the base type,
18578         not GdkWindow.
18579
18580 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
18581
18582         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
18583
18584 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
18585
18586         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
18587
18588 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
18589
18590         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
18591         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
18592
18593         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
18594
18595         * docs/gtk-config.1: Now autogenerated.
18596         * docs/Changes-1.4.txt: started
18597         
18598 1999-10-03  Tor Lillqvist  <tml@iki.fi>
18599
18600         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
18601         to #ifdef also here.
18602
18603         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
18604         Owen did to the X11 backend.
18605
18606         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
18607         ScrollWindowEx when blitting inside a window, it can't be correct
18608         in the general case.
18609
18610         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
18611         WM_GETMINMAXINFO is easier.
18612
18613         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
18614         depth equal to the bitspixel value, not the visual's depth.
18615
18616         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
18617         to 24 even if the bitspixel value is 32.
18618
18619         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
18620         need to check for depth==32 when bpp==32, depth will always be 24.
18621
18622 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
18623
18624         * docs/Changes-1.4.txt: Started
18625         
18626         * gtk/Makefile.am (gdk_headers): Include all the new headers.
18627
18628         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
18629         
18630         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
18631         into C file.
18632         
18633         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
18634         header to gdkinputprivate.h.
18635
18636         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
18637         unused since before 1.2.
18638
18639 1999-09-30  Tor Lillqvist  <tml@iki.fi>
18640
18641         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
18642         expand possible hex escapes in the font family (put there by
18643         logfont_to_xlfd if the font name isn't a legal XLFD font family,
18644         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
18645         On Win32, add hex escapes here, too.
18646
18647 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
18648
18649         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
18650         to #ifdef GDK_WINDOWING_X11.
18651
18652 [ Merges from gtk-1-2 ]
18653
18654 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
18655
18656         * configure.in: fixed "GNU Make" check to pass with new make version
18657         3.77.95.
18658
18659 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
18660
18661         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
18662         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
18663         AM_PATH_GTK() macros don't get confused by the -pre1.
18664
18665 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18666
18667         * configure.in (REBUILD): Change check for perl5
18668           to check explicitely for v >= 5.002. (5.001
18669           does not work with our scripts.)
18670
18671 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
18672
18673         * configure.in: evaluate $PERL for the perl version check. added
18674         --disable-rebuilds to give the user an option to completely disable
18675         any source autogeneration rules.
18676
18677 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
18678
18679         * configure.in: evaluate $ac_make when checking for GNU Make.
18680
18681 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18682
18683         * docs/Makefile.am: added generation.txt.
18684
18685         * Makefile.am: require automake 1.4, build README from README.in and
18686         INSTALL from INSTALL.in in dist-hook.
18687         
18688         * README.in:
18689         * INSTALL.in: new files to autogenerate README and INSTALL from.
18690
18691         * configure.in: figure whether we have GNU Make
18692
18693         * docs/generation.txt: minor additions/corrections.
18694
18695 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18696
18697         * docs/gtkfaq.sgml: FAQ Update
18698
18699 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18700         
18701         * configure.in: Fix autoconf warnings about cross compilation by
18702         trying to provide sane defaults for AC_TRY_RUN.
18703
18704 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
18705
18706         * ltconfig
18707         * ltmain.sh: upgrade to libtool 1.3.3
18708
18709 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
18710
18711         * INSTALL: Indicate that the --with-glib= configure
18712         time flag is unsupported.
18713
18714 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18715
18716         * docs/generation.txt: Added a file that gives
18717         documenation about the autogeneration process for
18718         various autogenerated files.
18719         
18720 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18721
18722         * configure.in (LIBS): Look for libgmodule in the
18723         right location.
18724
18725 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18726
18727         * docs/gtk_tut.sgml: Removed references to
18728         code examples in my directory on gtk.org as
18729         they should all be in the tutorial now.
18730
18731         * docs/gtk_tut.sgml: Added sources for dial-test
18732         and scribble-xinput programs that were previously
18733         missing.
18734
18735 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18736
18737         * TODO: Added entry about menu keyboard navigation, removed
18738         some finished items.
18739
18740 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18741
18742         * acinclude.m4: Standardize on func_dgettext
18743         not func_gettext, so that the checks for dgettext
18744         actually are paid attention to.
18745
18746 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18747
18748         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18749         directly, rather than repeating the checks for
18750         gettext.
18751
18752         * INSTALL: Added information about gettext and
18753         NLS support.
18754
18755         * acinclude.m4 (LIBM): Check for dgettext, not
18756         just gettext. This should hopefully fix things wrt
18757         systems with old versions of GNU gettext installed.
18758
18759 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18760
18761         * configure.in (LIBS): Look for libgmodule in the
18762         right location.
18763
18764 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18765
18766         * autogen.sh: add --enable-maintainer-mode
18767
18768         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18769
18770 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18771
18772         * docs/gtk-config.1.in:
18773           docs/Makefile.am:
18774           configure.in: gtk-config is now generated.
18775
18776         * docs/gtk-config.1: Removed, now generated.
18777
18778 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18779
18780         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18781         handle CreateNotify itself, still put out a debuging message for
18782         --gdk-debug=events. made the ReparentNotify debugging message more
18783         verbose.
18784         wrap xcoords translation for ConfigureEvents into an error trap,
18785         a destroy event may already be pending, and in that case, the
18786         actuall coordinate values are not at all critical.
18787
18788 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18789
18790         * gdk/gdkcc.c: Stop leaking the color_hash all over
18791         the place. Simplify and improve the logic.
18792
18793 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18794
18795         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18796         for prototypes and function implementations consistent (reported
18797         by Tomas Ogren).
18798
18799 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18800
18801         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18802         send_event set in debugging output.
18803         (gdk_compress_exposures): default initialize the event so we don't
18804         operate on bogus values (namely send_event).
18805
18806 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18807
18808         * gdk/gdkwindow.c: When we receive an unexpected
18809         destroy notify on one of our windows, don't just
18810         warn about it, also mark our windows as destroyed.
18811
18812 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18813
18814         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18815           name => font and name => fontset hashes. The 
18816           name => fontset hash is a _big_ win since we
18817           weren't previously caching fontsets at all and loading
18818           fontsets is expensive. The name => font hash
18819           is less of a win, but it does save us from doing
18820           repeated XQueryFont calls on the same font.
18821
18822         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18823           list so we can remove font/fontset from hash.
18824
18825 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18826
18827         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18828           and slightly confusing test. [ XInternAtom (,,TRUE)
18829           will never return None ].
18830
18831 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18832
18833         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18834           gdk/gdkwindow.c (gdk_window_set_hints):
18835
18836         Don't omit setting the properties if flags == 0 -
18837         there may be an existing set of properties there
18838         already. (Very old bug. Would it be better to
18839         delete the property instead?)
18840
18841         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18842           spelling error in comment.
18843
18844 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18845
18846         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18847           to avoid stomping over gdk_error_warnings.
18848
18849         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18850           as (bits_per_pixel + 7) / 8. This gives the same
18851           result as before for multiples of 8, but actually
18852           a "reasonable" value for 1bit or 4bit displays.
18853
18854 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18855
18856         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18857         GNU Make.
18858
18859 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18860
18861         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18862         discarding configure events.
18863
18864 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18865
18866         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18867         refcount is greater than zero.
18868
18869         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18870
18871         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18872
18873         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18874
18875         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18876
18877 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18878
18879         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18880         that format 32 => sizeof(item) == 4. It really is
18881         sizeof(long).
18882
18883 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18884
18885         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18886         core dump at all on X IO errors, only core dump
18887         if --enable-debug for X errors.
18888
18889 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18890
18891         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18892         unknown window:" message. disabled ConfigureNotify discarding code,
18893         because it led to events being processed out of order.
18894
18895 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18896
18897         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18898
18899         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18900         we export this function, supress error warnings and don't reset the
18901         error code in the first half of this function.
18902
18903         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18904         code (instead of just -1) so gdk_error_trap_pop() reveals something
18905         actually informative about the error that happened.
18906
18907         * gdk/*.c:
18908         don't rely on gdk_error_code being -1 if an error occoured, but just
18909         gdk_error_code != 0.
18910
18911 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18912
18913         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18914         pointer *before* invoking the filter function, so we at least don't
18915         crash if a filter is removed that is currently executed. window filters
18916         *really* need to be made truely reentrant at some point.
18917
18918 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18919
18920         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18921         PropertyNotify debug messages.
18922
18923 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18924         
18925         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18926         
18927         * gdk/gdkim.c: Fix cut-and-paste errors for 
18928         x/y and PreeditAttributes/StatusAttributes.
18929
18930 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18931
18932         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18933         G_MAXINT to 2^16 to alleviate overflow problems in
18934         various window managers.
18935
18936 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18937
18938         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18939         for fontsets.
18940
18941 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18942
18943         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18944         Initialize size_hints.x and size_hints.y because kwm
18945         brokenly pays attention to them.
18946         (Bug #1181 -  Lars Heete <hel@admin.de>)
18947
18948 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18949
18950         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18951         return value of gdk_list_visuals(). 
18952         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18953
18954 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18955
18956         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18957         XSetIMValues to (void *) when comparing to NULL, to workaround
18958         the problem of some compilers barfing since older X headers don't
18959         have the prototype for it.
18960
18961 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18962
18963         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18964         for pseudocolor where colormap->colors was double
18965         allocated.
18966
18967         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18968         color value in the hash table with the pixel filled
18969         in so when we do later hash table lookups, the color
18970         value is correct.
18971         
18972 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18973
18974         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18975         making the call
18976
18977 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18978
18979         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18980         pointed out by Morten Welinder <terra@diku.dk>.
18981
18982 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18983
18984         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18985           default filter from the list
18986
18987 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18988
18989         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18990           default filter from the list
18991
18992 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
18993
18994         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
18995
18996         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
18997         g_strdup_printf instead of calcing the length separately
18998
18999 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
19000
19001         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
19002         that we don't do in many other places. (Fixing duplicate 
19003         #include of config.h)
19004
19005         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
19006         Otherwise, #ifndef XINPUT_NONE check in the latter
19007         doesn't work. (Bug #546)
19008
19009 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
19010
19011         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
19012         "None" case insensitive.
19013
19014 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19015
19016         * gdk/gdkselection.c: 
19017         Add error traps so if the other end of the connection
19018         dies, we survive.
19019
19020 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19021
19022         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
19023         dest_xid field into two fields - one for the window
19024         to send in messages, one to indicate the last looked
19025         up window for caching purposes. This is needed, so
19026         that Leave messages get the correct window.
19027
19028 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
19029
19030         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
19031         Fix warning created by people mucking around
19032         with the gsource API.
19033
19034         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
19035         Change mapping between GIOCondition and GdkInputCondition
19036         to match the way the Linux kernel does it. This should
19037         fix problems where closed pipes were no longer signalling
19038         GDK_INPUT_READ on systems with a native poll().
19039
19040 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
19041
19042         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
19043         explicitly for the string "None" - it is in the XPM
19044         spec and some servers treat unknown colors in odd ways
19045         (like asking the user!)
19046
19047 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19048
19049         * gdk/gdkevents.c: made "->" into a "." of previous change so
19050         it compiles
19051
19052 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
19053
19054         * gdk/gdkevents.c (gdk_compress_exposures): Set the
19055         window field of the event structure before calling
19056         user filters.
19057
19058 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19059
19060         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
19061         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
19062
19063 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
19064
19065         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
19066         intermediate text property - prevents major memory
19067         leak when gdk_use_mb.
19068         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
19069
19070 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19071
19072         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19073         gtk-a-higuti-990322-[0-3]
19074
19075         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
19076         sizeof(wchar_t) != sizeof (GdkWChar)
19077
19078         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19079         that was causing -DX_LOCALE not to work.
19080
19081         * gtk/gtkrc.c (gtk_rc_init):
19082         X_LOCALE will never have LC_MESSAGES defined
19083
19084         * gdk/gdk.c (gdk_init_check):
19085         Remove --xim-preedit and --xim-status from argv properly.
19086
19087         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
19088         that the client window is present on the X server
19089         before we pass it to the input method.
19090
19091 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19092
19093         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
19094         if --display is specified on the command line, than
19095         the drag window will not be created on that display.
19096         
19097 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
19098
19099         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
19100         lookups with only_if_exists == TRUE were inserting
19101         bogus values into the atom cache.
19102
19103 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19104
19105         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
19106         then reset it to NULL.
19107
19108         * gdk/gdkcolor.c:
19109         (gdk_colors_free): 
19110         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
19111         key for g_hash_table_remove() in both functions, this prevents us
19112         from accessing possibly uninitialized portions of a GdkColor structure
19113         where we are only interested in its pixel value.
19114
19115 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19116
19117         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19118         font hash table, if we have a GdkFontPrivate entry for this font
19119         already, simply increment its reference count, provided by Olaf Dietsche
19120         <olaf.dietsche+list.gtk@netcologne.de>.
19121
19122 1999-09-21  Tor Lillqvist  <tml@iki.fi>
19123
19124         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
19125         just to be sure.
19126
19127         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
19128         unused variables, leftovers from the X11 version.
19129
19130         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
19131
19132         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
19133         downcase fields on X11.
19134
19135 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19136         
19137         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
19138         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
19139
19140 1999-09-17  Tor Lillqvist  <tml@iki.fi>
19141
19142         * gdk/win32/gdk.def: Add gdk_threads_mutex.
19143
19144         * gtk/makefile.msc: Correct path to libintl.
19145
19146         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
19147         use of gint vs. int, and gint vs. gboolean in headers and
19148         definitions. Use GtkType for the *_get_type functions. Note that
19149         these changes preserve binary compatibility.
19150
19151         * gdk/gdk.c
19152         * gdk/win32/gdk.c
19153         * gdk/gdk.h: Fix inconsistencies: gint vs int.
19154
19155         * gtk/gtkmain.c
19156         * gtk/gtkclist.c
19157         * gtk/gtkmenufactory.c
19158         * gtk/gtknotebook.c
19159         * gtk/gtkwidget.c: Fix inconsistencies, also gint
19160         vs. gboolean.
19161
19162         * gtk/gtkcolorsel.[ch]
19163         * gtk/gtkcombo.[ch]
19164         * gtk/gtkdrawingarea.[ch]
19165         * gtk/gtkgamma.[ch]
19166         * gtk/gtkhandlebox.[ch]
19167         * gtk/gtkhpaned.[ch]
19168         * gtk/gtkhruler.[ch]
19169         * gtk/gtkplug.[ch]
19170         * gtk/gtkpreview.[ch]
19171         * gtk/gtkruler.[ch]
19172         * gtk/gtksocket.[ch]
19173         * gtk/gtkstatusbar.[ch]
19174         * gtk/gtktoolbar.[ch]
19175         * gtk/gtkvbbox.[ch]
19176         * gtk/gtkvpaned.[ch]
19177         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
19178         functions.
19179
19180         * gtk/gtkgamma.h: Fix bug, missing () in call of
19181         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
19182
19183 1999-09-14  Tor Lillqvist  <tml@iki.fi>
19184
19185         * gdk/gdkcolor.c (gdk_colormap_new)
19186         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
19187         colormap->colors was allocated twice.
19188
19189         * gdk/win32/gdk.c: Remove some unused stuff.
19190
19191         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
19192         colormap.
19193
19194         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
19195         * gtk/gtklabel.h (gtk_label_get_type)
19196         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
19197         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
19198         in a couple of places, not guint.
19199
19200 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19201
19202         * configure.in,po/et.po: added Estonian language file
19203
19204 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19205
19206         * configure.in,po/da.po: added Danish file
19207
19208 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
19209
19210         * docs/gtkfaq.sgml: Minor FAQ Update
19211
19212 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
19213
19214         * docs/gtkfaq.sgml: FAQ update
19215
19216 1999-08-27  Tor Lillqvist  <tml@iki.fi>
19217
19218         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
19219         way to get window contents continually refreshed while resizing. I
19220         didn't like the effects myself, so it's not on by default.
19221
19222         * gdk/win32/gdkprivate.h: New flag variable
19223         gdk_event_func_from_window_proc, FALSE by default.
19224
19225         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
19226         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
19227         are passed --gdk-event-func-from-window-proc.
19228
19229         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
19230         and we have am event_func, call it instead of enqueing the event.
19231
19232 1999-08-23  Tor Lillqvist  <tml@iki.fi>
19233
19234         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
19235         Kelley: Set expose_count in GdkEventExposes correctly.
19236
19237         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
19238         MULTIPLE_WINDOW_CLASSES).
19239
19240         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
19241         for bug in NT, apparently NT *does* draw the end pixel, too, in
19242         LineTo with a one-pixel pen, so we don't have to do it ourselves.
19243
19244 1999-08-21  Tor Lillqvist  <tml@iki.fi>
19245
19246         Improvements by Hans Breuer: 
19247
19248         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
19249
19250         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
19251         CS_?REDRAW flags as they cause lots of (late) redraws when "show
19252         window contents while dragging" is turned on. Allocate at least
19253         one unique class for every GdkWindowType. If support for single
19254         window-specific icons is ever needed (eg. Dialog specific), every
19255         such window should get its own class.
19256
19257 1999-08-19  Tor Lillqvist  <tml@iki.fi>
19258
19259         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
19260         error that caused crashes.
19261
19262 1999-08-17  Tor Lillqvist  <tml@iki.fi>
19263
19264         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
19265         window, use ScrollWindowEx, and call UpdateWindow. This prevents
19266         bugs when for instance part of the window was outside the
19267         display. Thanks to Philippe Colantoni for finding and fixing this.
19268
19269 1999-08-16  Tor Lillqvist  <tml@iki.fi>
19270
19271         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
19272         endpoint calculations which were totally wrong. (A little RTFMing
19273         helps a lot ;-)
19274
19275         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
19276         from a separate directory, not from gettext, because of licensing
19277         issues (we want to use the LGPL version).
19278
19279         * README.win32: Mention the intl from glibc vs from gettext issue.
19280
19281 1999-08-13  Tor Lillqvist  <tml@iki.fi>
19282
19283         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
19284         in the key event handling: Now AltGr chars work again. Also,
19285         now Alt-digits are passed up as well as Control-digits.
19286         Pass keypad plus and minus as normal plus and minus.
19287
19288 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19289
19290         * docs/gtkfaq.sgml: FAQ Update
19291
19292 1999-07-25  Tor Lillqvist  <tml@iki.fi>
19293
19294         * README.win32
19295         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
19296         the Wintab SDK.
19297
19298         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
19299         OK, but getting closer. Guard against bogus tilt data from Wacom
19300         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
19301         enable easier building without Wintab.
19302
19303         * gdk/win32/gdkinput.h
19304         * gdk/win32/gdkevents.c 
19305         * gdk/win32/gdkwindow.c: Minor changes related related to above.
19306         
19307         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
19308         code. As we have just one visual on Win32, no sense to have it in a
19309         table, and no need for the hash table.
19310
19311         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
19312         better on white background.
19313
19314 1999-07-21  Tor Lillqvist  <tml@iki.fi>
19315
19316         * README.win32: Update gcc build instructions. Mention gettext is
19317         GPL.
19318
19319         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
19320         supported cursor size with GetSystemMetrics.
19321
19322         * gdk/win32/gdkfont.c
19323         * gtk/gtkfontsel.c: Guard against some font weight and charset
19324         symbols being undefined (in mingw32 headers).
19325
19326         * gdk/win32/makefile.cygwin
19327         * gtk/makefile.cygwin
19328         * gtk/gtkthemes.c: No longer need to have differently named
19329         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
19330
19331 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
19332
19333         * docs/gtkfaq.sgml: Long awaited FAQ update.
19334
19335 1999-07-15  Tor Lillqvist  <tml@iki.fi>
19336
19337         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
19338         it. Obscure bit manipulation needed.
19339
19340         * gdk/win32/gdkevents.c: Logging.
19341         
19342         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
19343         style (file name include compiler name) for theme engines.
19344
19345 1999-07-13  Tor Lillqvist  <tml@iki.fi>
19346
19347         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
19348
19349         * gdk/win32/gdkevents.c: Fix long-standing bug in key
19350         events. The key.string wasn't zero-terminated, still we strdup'ed
19351         it in gdk_event_copy(). Synthesize crossing events for button
19352         events before possible propagation.
19353
19354         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
19355
19356         * gdk/win32/makefile.cygwin
19357         * gtk/makefile.cygwin: Use new DLL naming style for the
19358         GCC-compiled ones.
19359
19360         * gdk/win32/makefile.msc
19361         * gtk/makefile.msc: Cosmetics mostly.
19362
19363         * gtk/gtk.def: Add missing entry points.
19364
19365         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
19366
19367 1999-07-09  Tor Lillqvist  <tml@iki.fi>
19368
19369         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
19370         or height is zero. Don't print a warning if Pie or Arc fails, they
19371         always fail (?) for very narrow ellipses.
19372
19373         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
19374         the part or the destination window corresponding to source area
19375         outside of the source drawable's boundary.
19376
19377         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
19378         anything if less than two points.
19379
19380         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
19381         return NULL. Gtk cut-and-paste inside a single program works
19382         better this way. (It always gets the clipboard contents from
19383         Windows, not from its own copy, which is cleared anyway. I can't
19384         say I fully understand what happens... Emulating the X selection
19385         and property stuff is a bit of a mess.)
19386
19387         * gdk/win32/gdkevents.c
19388         * gdk/win32/gdkproperty.c: A bit more verbose logging.
19389
19390         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
19391         that never got deleted). Revamp gdk_region_shrink.
19392
19393         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
19394         after use.
19395
19396         * gtk/gtk.def: Add some missing entry points.
19397
19398         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
19399         component.
19400
19401 1999-07-04  Tor Lillqvist  <tml@iki.fi>
19402
19403         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
19404         Control-digits specially.
19405
19406 1999-07-03  Tor Lillqvist  <tml@iki.fi>
19407
19408         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
19409
19410 1999-06-28  Tor Lillqvist  <tml@iki.fi>
19411
19412         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
19413         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
19414         finding this.)
19415
19416 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
19417
19418         * gtk+.spec.in: Corrected some typos in files section.
19419         
19420 1999-06-15  Tor Lillqvist  <tml@iki.fi>
19421
19422         * README.win32: Mention using GNU gettext.
19423         * config.h.win32: Enable NLS stuff.
19424         * gtk/makefile.msc: Use GNU gettext.
19425         * gdk/win32/gdkdnd.c: Minor header reorg.
19426         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
19427         cosmetics.
19428         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
19429         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
19430
19431 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
19432
19433         * acinclude.m4
19434         * config.guess
19435         * config.status
19436         * ltconfig
19437         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
19438
19439 1999-05-30  Tor Lillqvist  <tml@iki.fi>
19440
19441         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
19442         SafeAdjustWindowRectEx. Don't override all calls to
19443         AdjustWindowRectEx by it, but use it only in two places: When
19444         creating a new top-level window and when moving a top-level
19445         window.
19446
19447         Use screen coordinate rectangle, not client rectangle, in
19448         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
19449         when we try to place a window so that the decoration (mainly,
19450         title bar) isn't visible.
19451
19452         These changes fix the bug that showed up for instance as the
19453         GIMP's saved top-level windows moving right and down (by an amount
19454         equal to the window decoration) for each session. This bug showed
19455         up also in testgtk's "Saved Position".
19456
19457         gdk_window_resize also redone a bit.
19458
19459 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19460
19461         * gtk/testgtkrc: Add (commented out) Windows-style theme
19462         include line.
19463
19464         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19465
19466 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19467
19468         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19469         gdkx.h to a gdk subdirectory, so that applications can include
19470         these with <gdk/*.h> without trouble.
19471
19472         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19473         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19474         have their bitmap destroyed.
19475
19476         * gdk/win32/gdk.def: Add gdk_root_parent.
19477
19478 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19479
19480         * configure.in
19481           gtk-config.in
19482           ltconfig
19483           ltmain.sh     
19484           gtk/Makefile.am: changes to compile nicely (with xlib) 
19485           on BeOS
19486
19487 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19488
19489         * acinclude.m4
19490         * config.guess
19491         * config.sub
19492         * ltconfig
19493         * ltmain.sh: upgrade to libtool 1.3
19494
19495 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19496
19497         * gtk/gtkclist.c:
19498         * gtk/gtkctree.c: merges from gtk-1-2
19499
19500 1999-04-25  Tor Lillqvist  <tml@iki.fi>
19501
19502         Support added for building using a GNU toolchain on Win32,
19503         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
19504
19505         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
19506         * config.h.win32: Changes for gcc.
19507         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
19508         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
19509         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
19510         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
19511         Protect shl stuff unavaiilable with mingw32 headers.
19512         * gdk/win32/gdkevents.c: Fix typo.
19513         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
19514         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
19515         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
19516         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
19517         the mingw32 headers.
19518         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
19519         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
19520         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
19521         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
19522         Test for NATIVE_WIN32, not _MSC_VER.
19523         * gtk/gtkmain.c: No use warning about developer version on Win32,
19524         there aren't any non-developer versions anyhow.
19525         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
19526         * gtk/makefile.msc: Use pthread from another directory. Minor other
19527         changes. 
19528
19529 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19530
19531         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19532           default filter from the list
19533
19534 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
19535
19536         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
19537          when gtk_widget_grab_default() is called for a widget that
19538          is not within a GtkWindow.
19539
19540 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
19541
19542         * docs/gtk_tut.sgml, examples/clist.c: use a
19543           scrolled window in the clist example. Minor
19544           tutorial fixes.
19545
19546 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
19547
19548         * docs/gtk_tut.sgml: Style check from David King
19549           <dking@youvegotmail.net>
19550
19551 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
19552
19553         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
19554         compile with unknown value of GDK_WINDOWING
19555
19556 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
19557
19558         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
19559         after the rule is fired.
19560         (install-exec-local): Install gdkconfig.h only if the contents are
19561         different from the currently installed gdkconfig.h.
19562
19563 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
19564
19565         * gdk/Makefile.am (configexecincludedir): Rename from 
19566         configincludedir so that gdkconfig.h will be installed 
19567         as part of `make install-exec'. 
19568
19569 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
19570
19571         * acinclude.m4
19572         * config.guess
19573         * config.sub
19574         * ltconfig
19575         * ltmain.sh: upgrade to libtool 1.2f
19576
19577         * autogen.sh: libtool is not required to autogen gtk+
19578
19579         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
19580         needed)
19581
19582 1999-03-18  Tor Lillqvist  <tml@iki.fi>
19583
19584         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
19585         declaring gdk variables exported/imported from the DLL. New image
19586         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
19587         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
19588         GDK_DRAG_PROTO_OLE2.
19589
19590         * gdk/gdk.h: Merge in Win32 version: Two new functions,
19591         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
19592         declared only for the Win32 version, but could be in the X11
19593         version as well. (Needed for a Xlib-less gdk_imlib.)
19594         gdk_color_hash should have only one parameter. Declare
19595         gdk_threads_mutex with GDKVAR.
19596         
19597         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
19598         just one parameter.
19599
19600         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
19601         per pixel, not bits.
19602
19603         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
19604         Fetch bpp (which means bits-per-pixel here) from another place on
19605         Win32. Accept also depth==32 (which we might get on Win32) with
19606         bpp==32.
19607
19608         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
19609         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
19610         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
19611         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
19612         in the backend-dependent directory, not in the common gdk
19613         directory.
19614
19615         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
19616         headers.
19617
19618 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
19619
19620         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
19621         want to use the Gtk+ devel version (which is true, and yes - even i am
19622         currently working with the 1.2.x branch). so everyone reading this, you
19623         probably want to issue
19624         cvs checkout -r glib-1-2 glib
19625         and
19626         cvs checkout -r gtk-1-2 gtk+
19627         as your next two comands.
19628
19629 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
19630
19631         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
19632         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
19633
19634         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
19635         file. strongly deprecated the GTK_HAVE_* macros, we provide
19636         GTK_CHECK_VERSION() for people that need to check for certain
19637         Gtk+ versions.
19638
19639         * gtk/gtkcompat.h: removed this from CVS.
19640         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
19641         idea right from the start, it just didn't seem like that back then.
19642
19643 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
19644
19645         * merges from gtk-1-2:
19646
19647 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
19648
19649         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
19650         item factory class has been created.
19651         (gtk_item_factory_parse_rc): likewise.
19652
19653         * gtk/gtkmenu.c:
19654         keep proper references for old_active_menu_item.
19655         (gtk_menu_reparent): unset the usize of the new parent,
19656         so the menu can sanely be size requested and we don't get nasty screen
19657         artefacts upon next reparentation.
19658         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
19659         enter notify. only synthesize enter notifies if the pointer really is
19660         inside the event window.
19661         (gtk_menu_popdown): use gtk_menu_shell_deselect().
19662         (gtk_menu_popup): move the background setting stuff into
19663         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
19664
19665         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
19666         gtk_menu_shell_select_item() to select the new item.
19667         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
19668         do the right thing for deselection as well.
19669
19670 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
19671
19672         * gtk/gtkwidget.[hc]:
19673         (gtk_widget_accelerators_locked): return whether a widget's accelerators
19674         are locked.
19675
19676         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
19677         existing accelerators if the widget's accelerators are locked.
19678
19679 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
19680
19681         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
19682
19683         * gtk/gtkmenu.c: truely forward key press and key release events to
19684         the menu widget from the toplevel or tearoff window. we can't simply
19685         connect to that, we need to stop further processing of the events as
19686         well.
19687
19688 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
19689
19690         * gtk/gtkmenu.c:
19691         (gtk_menu_key_press): pass event->keyval, event->state to
19692         gtk_accelerator_valid, instead of event->keyval twice.
19693         refuse to install single letter accelerators for menus that use
19694         single letter shortcuts.
19695
19696         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
19697         gtk_menu_ensure_uline_accel_group().
19698
19699         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
19700         which will always return an uline accel group, made
19701         gtk_menu_get_uline_accel_group() return NULL if the group isn't
19702         yet created.
19703
19704 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
19705
19706         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
19707
19708         * gtk/gtkclist.c (gtk_clist_column_title_passive):
19709         Leave button sensitive, trap  button_press, button_release,
19710         motion_notify, enter_notify and leave_notify events instead.
19711         (gtk_clist_column_title_active): disconnect event handler.
19712         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19713         Guillaume Laurent <glaurent@worldnet.fr>
19714
19715 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19716
19717         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19718         width/height mixups.
19719
19720         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19721         if needed.
19722
19723 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19724
19725         * gtk/testgtk.c (create_item_factory): unref the item factory after
19726         window's destruction.
19727
19728         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19729         count on the menu shell around the menu item's activation, since the
19730         signal emission may cause menu shell destruction.
19731
19732         * gtk/gtkitemfactory.c:
19733         the previous code leaked one accel group per menu. we use
19734         gtk_menu_get_uline_accel_group() now to fix that, and with that
19735         also create the underline accelerator group of the menus only if
19736         required (i.e. an underline accelerator has been specified).
19737         (gtk_item_factory_construct):
19738         (gtk_item_factory_create_item): removed code that would create an
19739         extra accel group for the menu (and leak references).
19740         (gtk_item_factory_create_item): adapted the underline accelerator
19741         installation code to properly feature gtk_menu_get_uline_accel_group().
19742
19743         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19744         menu->accel_group, this may return NULL if the accelerator group
19745         hasn't been set yet.
19746         added gtk_menu_get_uline_accel_group() to retrive the underline
19747         accelerator group of the menu, this will be created on demand
19748         and proper care is taken about its reference count.
19749
19750         * gtk/gtkitemfactory.h:
19751         * gtk/gtkitemfactory.c:
19752         dumped the approach of keeping a widgets by action list on the
19753         factory since the factory<->widget destroy negotiation didn't work
19754         and would be hard to get going at all. instead we keep a list of
19755         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19756         persistant throughout a program's life time).
19757         also, i removed the static const gchar *key_* variables, and made
19758         them inline strings (they weren't actually used anyways).
19759         (gtk_item_factory_add_item): update ifactory->items.
19760         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19761         the item factory pointer from the remaining ifactory widgets).
19762         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19763         list to find the widget.
19764         (gtk_item_factory_get_item): new function that works around
19765         gtk_item_factory_get_widget() limitations, this function will only
19766         return menu items, even for <Branch> entries.
19767
19768 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19769
19770         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19771         font hash table, if we have a GdkFontPrivate entry for this font
19772         already, simply increment its reference count, provided by Olaf Dietsche
19773         <olaf.dietsche+list.gtk@netcologne.de>.
19774
19775         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19776         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19777
19778 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19779
19780         * gtk/gtkcontainer.c:
19781         (gtk_container_add_with_args):
19782         (gtk_container_addv):
19783         (gtk_container_add): before adding a child to a conatiner, make sure
19784         it is (default) constructed, this is neccessary because under certain
19785         circumstances the child will get relized and mapped immediatedly, in
19786         which case it has to be constructed already.
19787
19788 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19789
19790         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19791         values > 1 as TRUE also.
19792
19793 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19794
19795         * README.win32: New file.
19796                 
19797         * configure.in: Check for lstat.
19798
19799         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19800         completeness.
19801
19802         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19803
19804         * gtk/gtk.def: Removed CRs.
19805
19806         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19807         ..\gdk\win32).
19808
19809         * gdk/win32/makefile.msc: Correct upwards relative paths.
19810         
19811 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19812
19813         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19814           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19815           it was connecting a void function to expose_event and the int
19816           returning function to the draw signal
19817
19818 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19819
19820         * configure.in:
19821         Use correct path to libgmodule.la when ref'ing uninstalled copy
19822         of glib.  (Already in stable branch, Bug #417)
19823
19824 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19825
19826         Win32 merge and general portability stuff:
19827                 
19828         * acconfig.h,configure.in: Check for <sys/time.h>.
19829
19830         * gdk/win32: New directory (actually, been there for a while).
19831         
19832         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19833         NATIVE_WIN32, and use these. Always case fold on Win32. No
19834         backslashed escapes on native Win32.
19835
19836         * gtk/{gtk.def,makefile.msc}: New files.
19837
19838         * gtk/Makefile.am: Add above new files.
19839         
19840         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19841         instead of <strings.h>.
19842
19843         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19844         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19845         <unistd.h> appropriately.
19846
19847         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19848         Use ABS() (from <glib.h>) instead of abs().
19849         
19850         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19851         of gtk (and thus glib) headers, so that WIN32 will be
19852         defined. With MS C, include <direct.h> for mkdir prototype.
19853
19854         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19855         some casts, needed by MS C.
19856
19857         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19858         implemented).
19859
19860         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19861         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19862         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19863
19864         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19865                 
19866         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19867         the event is not a hint, or its window is not the slider. Needed
19868         on Win32, at least.
19869
19870         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19871         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19872         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19873         a subdirectory of the Windows directory as gtk system
19874         configuration directory.
19875
19876         * gtk/gtkselection.c: No chunks on Win32.
19877
19878         * gtk/gtksocket.c: Not implemented on Win32.
19879
19880         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19881
19882         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19883
19884         * gtk/maketypes.awk: Declare variables with a macro that expands to
19885         necessary export/import magic in the case of Win32.
19886                 
19887         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19888
19889 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19890
19891         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19892         since those were meant only for gdki18n.h.  
19893         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19894         for widechar tests.
19895         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19896
19897 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19898
19899         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19900         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19901
19902         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19903         installed) to CFLAGS.
19904
19905         * gdk/Makefile.am: Add rules for gdkconfig.h.
19906
19907         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19908         APIs.
19909
19910         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19911         gdkx.h anyway when compiling for X11.
19912         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19913         general): Merge in Win32 version.
19914         
19915         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19916         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19917         expansion (if we don't have HAVE_PWD_H), allow for drive
19918         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19919         included code from Craig Setera's port to Win32 (the one that uses
19920         X11, and the cygwin dll), even if it probably will be abandoned.
19921
19922         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19923         the user entered one herself.  This way one can complete *.h and
19924         don't get matches on any .help files, for instance.
19925         
19926 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19927
19928         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19929         font hash table, if we have a GdkFontPrivate entry for this font
19930         already, simply increment its reference count, provided by Olaf Dietsche
19931         <olaf.dietsche+list.gtk@netcologne.de>.
19932
19933         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19934         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19935
19936 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19937
19938         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19939         the number of calls to gdk_draw_point() (and thus to X) by
19940         clipping the points by hand.
19941
19942         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19943         the clip parameter.
19944         (gtk_handle_box_paint): Only paint the handle if the expose area
19945         intersects it.
19946
19947 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19948
19949         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19950
19951 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19952
19953         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19954         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19955
19956 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19957
19958         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19959          textmode (O_TEXT) for OS/2 version.
19960
19961 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19962
19963         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19964         GtkSpinButton, "input" and "output", to make the output more flexible.
19965         The user has to provide a mapping between adjustment->value and the
19966         output string (and vice versa, if the spin button is editable). 
19967         See testgtk for examples.
19968
19969 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19970
19971         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19972         new one.
19973         
19974         * configure.in: set gtk+ version to 1.3.0.