]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
gtk/gtktextview.c Add support for Ctrl+Up/Down arrow to move cursor to
[~andy/gtk] / ChangeLog.pre-2-6
1 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
2
3         * gtk/gtktextview.c
4         Add support for Ctrl+Up/Down arrow to move cursor to beginning
5         of previous/next paragraph. If within a paragraph cursor moves to
6         beginning of that paragraph.
7
8 2001-09-12  Jakub Steiner <jimmac@ximian.com>
9
10         * gtk/stock-icons/dialog_question.png: replacing the shaky
11           question mark with a sans-serif one.
12         * gtk/stock-icons/stock_top.png, stock_bottom.png,
13      stock_first.png, stock_last.png: using the new style arrows
14         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
15      colors.
16         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
17      color.
18         * gtk/stock-icons/stock_zoom*: anti-aliased
19         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
20      '-' with a '_', removed the wrong files
21
22 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
23  
24         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
25  
26         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
27         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
28         than in gtk-2.0/major.minor.micro/<type>/. This
29         works better for a search path for modules.
30  
31         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
32         gtk_binary_version variable holding major.minor.(micro-binary_age).
33  
34         * modules/input/Makefile.am (moduledir): Fix installation
35         directory to match change in lookup location.
36  
37         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
38         suffixes. Needs to be handled in g_module_build_path().
39
40         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
41         appropriate.
42  
43 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
44
45         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
46         causing RC properties not to work.
47
48 2001-09-11  Jakub Steiner <jimmac@ximian.com>
49
50         * gtk/stock-icons/dialog-error.png: less drastic
51         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
52           "STOP" is international enough.
53         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
54         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
55
56 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
57
58         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
59         (add|remove)_selection_clipboard symmetric. (bug #59836)
60
61         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
62         Avoid SEGV for empty tree. (bug #60243)
63
64 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
65
66         * tests/testgtk.c (create_idle_test): slight fix for
67         g_object_set() not usable for nesting anymore.
68
69         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
70         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
71         properties, supply ::shadow_type properties instead as most
72         other widgets do.
73
74 2001-09-10  Alex Larsson  <alexl@redhat.com>
75
76         * demos/gtk-demo/stock_browser.c:
77         * gdk/gdkcolor.c:
78         * gdk/gdkfont.c:
79         * gdk/gdkcursor.c:
80         * gdk/gdkevents.c:
81         * gdk/gdkrectangle.c:
82         * gtk/gtktypeutils.c:
83         Update to use the new g_boxed_type_register_static API.
84
85 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
86
87         * gtk/gtktreestore.c:
88         Fix looping in gtk_tree_store_init() waiting for zero random int.
89
90 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
91
92         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
93         behaviour which havoc broke. they have to default to 1.0 for
94         expand behaviour.
95
96         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
97
98 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
99
100         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
101         Amend previous change to avoid runtime error in g_param_spec_ref()
102
103 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
104
105         * gtk/gtkrc.c (insert_rc_property): Fix blank line
106         in the wrong place.
107
108 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
109
110         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
111         do a lookup immediately after creating style->property_cache,
112         since bsearch crashes on zero length for Solaris.
113         (Found by Padraig O'Briain.)
114
115 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
116
117         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
118         Really return NULL if not set.
119         (gtk_widget_init): Remove unused varaible.
120         
121 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
122
123         * configure.in:
124         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
125         in cvs.
126
127 2001-09-08  Havoc Pennington  <hp@pobox.com>
128
129         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
130         people might want to use
131
132 2001-09-08  Havoc Pennington  <hp@pobox.com>
133
134         * gtk/gtkalignment.c (gtk_alignment_class_init): default
135         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
136
137         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
138
139         * gtk/gtktextiter.c: fix docs
140         (gtk_text_iter_spew): get rid of this
141
142         * gtk/gtklayout.c: docs
143
144         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
145         to center image and label together, instead of having image on
146         left and label centered, patch/suggestion from Jacob
147
148         * gtk/gtkdialog.c: docs
149
150 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
151
152         * gtk/gtkliststore.c: Write documentation
153         * gtk/gtktreestore.c: Write documentation
154
155 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
156
157         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
158         with GArray and bsearch(), to remove dependency on a still
159         evolving interface that we want to keep private to glib/gobject. 
160
161 2001-09-08  Havoc Pennington  <hp@pobox.com>
162
163         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
164         docs fixes
165
166         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
167
168         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
169
170         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
171
172         * gtk/gtkscrolledwindow.h: docs fixes
173
174         * gtk/gtkimage.c (gtk_image_new): docs fixes
175
176 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
177
178         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
179         false alarm  constness warning with a cast.
180
181         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
182         for the inside-gdk case.
183
184 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
185
186         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
187         remove g_print.
188
189         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
190         change models, #59899
191
192 2001-09-07  Havoc Pennington  <hp@pobox.com>
193
194         * gtk/gtkmain.c: move some docs inline
195
196 2001-09-07  Havoc Pennington  <hp@pobox.com>
197
198         * gtk/gtk.h: tsk tsk, jrb broke the build
199
200 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
201
202         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
203         Removed 'fill' attribute.  It was silly b/c that was a property of
204         the cell renderer, anyway.
205         (gtk_tree_view_column_render): Actually render the packed
206         renderers.
207         * doc/tree-column-sizing.txt: initial devel documentation.
208         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
209         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
210
211         * tests/testtreefocus.c: fix up to reflect above changes.
212         * tests/testtreeview.c: ditto
213         * demos/gtk-demo/stock_browser.c: ditto
214
215 2001-09-07  Alex Larsson  <alexl@redhat.com>
216
217         * gdk/linux-fb/gdkcolor-fb.c:
218         Removed unused function.
219         
220         * gdk/linux-fb/gdkdrawable-fb2.c
221         * gdk/linux-fb/gdkfont-fb.c:
222         Use PangoLanguage functions.
223
224         * gdk/linux-fb/gdkinput.c:
225         * gdk/linux-fb/gdkselection-fb.c:
226         Fix const warnings.
227         
228         * gdk/linux-fb/gdkwindow-fb.c:
229         Fix warning. Implement gdk_window_set_icon_list() and
230         gdk_window_get_frame_extents(). (No icon support yet though.)
231
232         * gtk/gtkwindow.c (gtk_window_get_position):
233         If window->frame is set get the extents of it instead.
234         
235 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
236
237         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
238         Make the default default colormap the GdkRGB colormap,
239         not the system colormap.
240
241         * gtk/gtkinvisible.c (gtk_invisible_init) 
242           gtk/gtkwindow.c (gtk_window_init): Set the current
243         colormap, as returned by _gtk_widget_peek_colormap()
244         on the widget.
245
246         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
247         to GTK+. Make it return %NULL instead of the default
248         colormap if no colormap has explicitely been pushed.
249
250         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
251         colormaps on ancestral widgets before defaulting the
252         the system default colormap.
253
254         * docs/Changes-2.0.txt: explain colormap changes.
255
256 2001-09-07  Havoc Pennington  <hp@redhat.com>
257
258         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
259         #57424
260
261 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
262
263         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
264         make gdk_set_use_xshm a noop. Remove --no-xshm command line
265         option. If we aren't autodetecting properly, we need
266         to fix the problem, or at least make it an environment
267         variable setting, to avoid problems with propagating
268         to embedded children, plugins, etc.
269
270         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
271
272         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
273         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
274         New function to render a pixmap and mask for a particular colormap.
275
276         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
277         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
278         of internal implementation of the same.
279
280 2001-09-07  Havoc Pennington  <hp@redhat.com>
281
282         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
283         debug code that seems to have caused a breakpoint in valid cases
284         
285         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
286         pointer on the first view when adding the second view, fixes
287         crash when closing gtk-demo text test with active selection
288
289         * gtk/gtktextbuffer.c
290         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
291         clipboards in the list of clipboards - probably fixes #59836
292
293 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
294
295       Make gdkx.h the only installed header from gdk/x11.
296       All structures in gdk/x11 are opaque.
297
298         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
299         Don't install gdk{drawable,pixmap,window}-x11.h.
300
301         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
302         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
303         GdkVisualClass into C files.
304
305         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
306
307         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
308         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
309         Add public functions to replace previously exported direct
310         structure access.
311         gdk_x11_colormap_get_{xdisplay,xcolormap} 
312         gdk_x11_cursor_get_{xdisplay,xcursor},
313         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
314         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
315         gdk_x11_gc_get_{xdisplay,ximage}
316         
317         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
318         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
319
320       Fix a number of variables and functions that were exported
321       "accidentally" from GDK.
322
323         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
324         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
325         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
326         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
327         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
328         gdk_event_queue_find_first, gdk_event_queue_remove_link,
329         gdk_event_queue_append, gdk_event_button_generate,
330         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
331
332         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
333            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
334         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
335         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
336         gdk_use_xshm, gdk_input_ignore_core.
337
338         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
339         #defines to namespace functions into the private _gdk_ 
340         namespace.
341
342         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
343         to replace gdk_parent_root exported variable. Adjust and
344         deprecate GDK_ROOT_PARENT().
345
346         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
347         GDK_ROOT_PARENT usage, remove includes of port-specific
348         headers.
349
350         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
351         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
352         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
353
354         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
355         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
356         gdk_wm_delete_window functions, gdk_wm_take_focus, 
357         use gdk_atom_intern() instead.
358
359         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
360           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
361           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
362           gtk/gtkselection.c 
363         Unexport gdk_selection_property, just use 
364         gdk_atom_intern ("GDK_SELECTION").
365
366         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
367         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
368         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
369         GdkVisualprivate, gdk_x11_gc_flush.
370
371       Make a number of public exports of variables into functions
372       to increase encapsulation.
373
374         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
375         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
376         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
377
378         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
379         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
380         gdk_error_warnings.
381
382         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
383           docs/Changes-2.0.txt: 
384         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
385         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
386         Add gdk_x11_get_default_xdisplay().
387
388         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
389         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
390         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
391         Don't export gdk_progclass, move --class command line
392         option and handling to common portion of GDK.
393
394       Miscellaneous fixes:
395
396         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
397         g_return_val_if_fail that should have been g_return_if_fail.
398
399         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
400         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
401
402         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
403         X11 dependency.
404
405         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
406         Remove unused gdk_key_repeat_disable/restore.
407
408         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
409         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
410         Remove unused gdk_null_window_warnings variable.
411
412         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
413         it can be retrieved from the repository; it is too far
414         from functional to be worth having people check out;
415         it would be easier to start from scratch, I suspect.
416
417         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
418
419         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
420         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
421         Fix some accidentally global variables and unused global variables.
422
423         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
424         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
425         Fix some accidentally global variables and unused global variables.
426
427       Add some space for future expansion to multihead.
428
429         * gdk/gdkdrawable.h: Add four reserved function pointers
430         for future expansion of GdkDrawableClass.
431
432         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
433         where we can put a GdkScreen * later.
434
435 2001-09-07  Havoc Pennington  <hp@redhat.com>
436
437         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
438         adjustments after validating destination yrange; fixes #53918
439         (This may cause other issues, but I hope it won't)
440         
441 2001-09-05  Havoc Pennington  <hp@redhat.com>
442
443         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
444         line into start line, update the character counts in parent nodes; 
445         caused a bug when end and start line had different parent nodes.
446
447 2001-08-30  Havoc Pennington  <hp@redhat.com>
448         
449         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
450         assertion that tag is in a table
451
452 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
453
454         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
455         g_strcasecmp on NULL strings. (#59058)
456
457 2001-09-06  Alex Larsson  <alexl@redhat.com>
458
459         * gtk/gtkbin.c:
460         * gtk/gtkfontsel.c:
461         * gtk/gtkspinbutton.c:
462         * gtk/gtktipsquery.c:
463         Use GtkType/GType instead of uint.
464
465 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
466
467         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
468         sort column.
469
470         * gtk/gtktreestore.c (gtk_list_store_init): ditto
471
472         * gtk/gtktreesortable.c: add docs.
473
474 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
475
476         * Version 1.3.7
477
478         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
479         docs for gtk-config
480
481         * modules/input/Makefile.am (install-data-local): Don't
482         run gtk-query-immodules if DESTDIR is set.
483
484         * NEWS: Various additions.
485
486 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
487
488         * NEWS: updates for 1.3.7 release.
489
490 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
491
492         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
493         handle default sort feature
494
495         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
496         new function to handle default sort.
497         (gtk_tree_sortable_has_default_sort_func): check if default sort
498         is set.
499
500         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
501         handle default sort feature
502
503 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
504
505         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
506         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
507         #59731
508
509 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
510
511         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
512         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
513         time, #59727
514
515         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
516         correctly.
517
518 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
519
520         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
521         so that we don't eternally update the keymap after we
522         get a change notification.
523
524         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
525         incorrect cast.
526
527 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
528
529         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
530         it working. It mostly works now, although there're still a few issues
531         to be worked out.
532
533         * tests/testtreesort.c (main): changes to have a better test
534         application for the GtkTreeModelSort.
535
536 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
537
538         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
539         fix for bug #59222.
540
541         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
542         gpointer search_data argument to function definition and
543         prototype, to match GtkTreeViewSearchEqualFunc typedef.
544
545 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
546
547         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
548         per jrb's request.
549
550 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
551
552         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
553
554         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
555
556 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
557
558         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
559         Instead of always mirroring the selection to a single PRIMARY
560         selection, allow it to be mirrored to any number of clipboards.
561
562         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
563         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
564
565         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
566         GtkClipboard argument, and for paste_clipboard, the
567         @override_location argument from @paste_primary.
568
569         * gtk/gtktextview.c: Adapt to above change.
570         
571 2001-08-30  Havoc Pennington  <hp@redhat.com>
572
573         * gtk/gtktextview.c (invalidated_handler): put validate idle at
574         resize - 2 just for flexibility
575
576 2001-08-30  Havoc Pennington  <hp@redhat.com>
577
578         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
579         object from the empty-child-anchor case by drawing a little box.
580         
581         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
582         if the child anchor has no anchored widgets - fixes #59328.
583
584         Also, remove bizarre deletion of preedit string that seems to have
585         gotten in here somehow.
586
587 2001-08-30  Havoc Pennington  <hp@redhat.com>
588
589         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
590         to #58420 from Hidetoshi Tajima and Matthias Clasen
591
592 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
593
594         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
595         change color when the GtkTreeView loses focus.
596
597         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
598         ditto.
599         
600         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
601
602 2001-08-28  Havoc Pennington  <hp@pobox.com>
603
604         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
605
606 2001-08-28  Havoc Pennington  <hp@pobox.com>
607
608         * demos/gtk-demo/main.c (setup_default_icon): add default icon
609
610         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
611         warning fix
612         (gtk_radio_button_new_with_label): warning fix
613
614         * gtk/gtkdnd.c: used some random GtkImage private structs, 
615         update to reflect GtkImage changes
616
617         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
618         whether the hint is supported, just always set the icon. A task
619         list might want to use it even if the WM doesn't, and the WM may
620         change over time. Also, XDeleteProperty() if list == NULL.
621
622         * gtk/gtkwindow.c (gtk_window_set_icon_list)
623         (gtk_window_get_icon_list)
624         (gtk_window_set_icon)
625         (gtk_window_get_icon)
626         (gtk_window_set_default_icon_list)
627         (gtk_window_get_default_icon_list):
628         new functions
629
630         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
631
632         * gtk/gtkimage.c: Implement property support, bug #59408
633
634         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
635         on reparent-without-removing-first a bit more helpful.
636         Let's just destroy this FAQ.
637
638 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
639
640         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
641         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
642
643 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
644
645         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
646         of use_text_format to the end of the function. (#56447)
647
648 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
649
650         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
651         only in response to an area_prepared signal.
652
653 2001-08-28  Alex Larsson  <alexl@redhat.com>
654
655         * gtk/gtkwidget.c (gtk_widget_class_init):
656         Make unrealize GTK_RUN_LAST.
657
658 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
659
660         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
661         with_label and with_mnemonic should create radio buttons, not
662         check buttons
663
664 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
665
666         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
667         * tests/treestoretest.c (make_window): ditto
668         * demos/gtk-demo/main.c (create_tree): ditto
669         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
670
671 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
672
673         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
674         GTK selection types rather than GtkTreeSelectionMode.
675
676         * docs/Changes-2.0: Add comment about selection change.
677
678 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
679
680         * gtk/gtkenums.h (GtkSelectionMode): deprecate
681         GTK_SELECTION_EXTENDED.
682
683         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
684         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
685
686         * gtk/gtkctree.c: ditto
687
688         * gtk/gtklist.c: ditto
689
690         * gtk/gtktree.c: ditto
691
692 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
693
694         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
695         of typos in compat macros. (#59624, Skip Montaro)
696
697 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
698
699         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
700         macro.
701
702          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
703  
704         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
705         interface to be a standard setter from gtk_menu_item_right_justify.
706         (gtk_menu_item_get_right_justified): a getter to go with the setter
707
708         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
709         gtk_menu_item_right_justify.
710
711         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
712         gtk_menu_item_set_right_justified.
713  
714 2001-08-27  Jens Finke <jens@gnome.org>
715
716         * gtk+.spec.in: Updated to match gpp requirements, reworked the
717         files section to make it work with 1.3.x releases.
718
719 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
720
721         * gtk/gtkbutton.[ch]:
722         Add properties for labels, mnemonics and stock items.
723         Added C accessor functions for the properties.
724         Removed deprecated button->child.
725
726         * gtk/gtkradiobutton.c:
727         * gtk/gtktogglebutton.c:
728         Update to use the functions in GtkButton.
729
730         * gtk/gtkcheckbutton.c:
731         Update to use the functions in GtkButton.
732         Changed size allocation of child. Now only gets as much
733         space as it requests.
734
735         * gtk/gtkclist.c:
736         Don't use GtkButton->child
737
738         * gtk/gtklabel.c:
739         Fixed typo in docs
740         
741 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
742
743         * tests/testgtk.c:
744         * tests/Makefile.am:
745         Ressurect the properties test.
746         I don't care if it is inferior, I just want to test my property code.
747
748 2001-08-25  Chema Celorio  <chema@celorio.com>
749
750         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
751         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
752         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
753
754 2001-08-24  Havoc Pennington  <hp@pobox.com>
755
756         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
757         these are already in gtkmenu.h, and the copies
758         here were broken.
759
760         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
761
762         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
763         special-case bitmaps to allow no colormap
764         (bitmap1): implement no-colormap bitmap-getting
765         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
766         alpha
767         (rgb8): indentation
768         (rgb1a, rgb1): change the way we read the data out of the image, 
769         old way didn't seem to work quite right.
770
771         I'm pretty sure a lot of the rgbconvert code is still broken.
772         
773         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
774         above position constraint (I really intended to do this before,
775         don't know what's up with that)
776         (gtk_XParseGeometry): shut up gcc
777
778         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
779         and "0" should have been. remove the attempted 4-bytes-at-once
780         optimization, it was totally broken.
781
782 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
783
784         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
785         on push to buttons (based on patch from Soeren Sandmann, #54720)
786
787           - Add child_displacement_x/y style properties to control how far the
788             child moves when the button is depressed.
789
790           - Add non-exported function _gtk_button_set_depressed to clean
791             up the handling of the in/out shadow and separate it frmo
792             widget->state.
793
794           - Lots of code cleanup and simplification of state handling
795             for GtkButton/GtkToggleButton.
796  
797         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
798         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
799
800 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
801
802         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
803         and make gtk_image_new() take no arguments. The compiler will
804         catch it, and it is vastly more useful than having
805         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
806
807         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
808         to add tearoff-title property (#51319, Lee Mallabone)
809
810 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
811
812         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
813         gtk_menu_item_configure(). (#58925)
814
815 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
816
817         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
818         "use_align" to give people the option to just make a cell visible.
819
820         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
821         we were scrolling past the end of the tree.
822
823         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
824         rename gtk_tree_view_column_pack_start_cell_renderer to
825         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
826
827 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
828
829         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
830         a stray g_object_ref() left over from gtk_object_ref/sink.
831         (Pointed out by Josh Pritikin.)
832
833 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
834
835         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
836         to gtk_container_get_children. Added deprecated compatibility
837         macro. (Suggested by Vitaly Tishkov, #59051)
838
839         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
840         calls.
841
842 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
843
844         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
845         gtk_menu_bar_append/prepend/insert, forgot to do this
846         when we deprecated gtk_menu_append/prepend/insert.
847
848         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
849         compat macros.
850
851         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
852         renamed by compat macro.
853
854         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
855         gtk_font_selection_dialog_get_font(). (Suggested by
856         Vitaly Tishkov, #59383)
857
858 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
859
860         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
861         Rename from gtk_text_tag_table_size(). (#59366)
862
863 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
864
865         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
866         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
867         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
868         (#59173).
869
870 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
871
872         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
873         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
874         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
875
876 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
877
878         [ Patch from Sebastian Wilhelmi, 52790 ]
879
880         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
881
882         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
883         Move compatibility macros from g[dt]kcompat.h to within 
884         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
885
886         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
887
888         * demos/Makefile.am demos/gtk-demo/Makefile.am 
889           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
890           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
891
892         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
893                  testpixbuf.c}: Fix usages of deprecated functions.
894
895 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
896
897         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
898         when changing models.
899
900 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
901
902         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
903         We check the current event for modifiers rather than try to trap
904         all presses.
905
906 2001-08-22  Anders Carlsson  <andersca@gnu.org>
907
908         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
909         It's LIST_STORE, not LISTSTORE.
910
911 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
912
913         * gtk/gtk.h: Remove commented out gtkpacker reference.
914
915 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
916
917         * configure.in (all_loaders): Add tga loader, 
918         patch by Nicola Girardi. (#56067)
919
920 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
921
922         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
923         a little.  More needs to be done tomorrow.
924
925 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
926
927         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
928
929 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
930
931         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
932         reported by Kristian Rietveld <kristian@planet.nl> to handle row
933         == NULL.
934         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
935         <kristian@planet.nl> to change destroy order.
936
937 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
938
939         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
940         correct marshaller.
941
942 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
943
944         * gtk/gtkliststore.c: Fix up warnings, #58928.
945
946         * gtk/gtktreeselection.h: Change signal prototype, #58647
947
948         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
949         #59221.
950
951         * gtk/gtkstyle.c: Actually prelight arrow, #50981
952         
953 2001-08-18  Hans Breuer  <hans@breuer.org>
954
955         * gdk/gdk.def : updated externals
956
957         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
958         is required to get (at least) visible in entry fields. Some selections
959         are really handled now - even on win32 - but copying via middle
960         mouse button into a different app needs to wait ... 
961
962         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
963         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
964
965         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
966         handling. I'm not sure if it is better now, but at least not worse
967
968         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
969         with SetWindowPos () which allows more fine-tuning backing-store wise
970
971         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
972         Also changed move/resize to be more like the X version.
973
974         * gtk/gtk.def : updated externals
975
976 2001-08-19  Sven Neumann  <sven@gimp.org>
977
978         * gtk/gtktooltips.c
979         * tests/testtreesort.c
980         * tests/treestoretest.c: inserted some casts to get rid of compiler
981         warnings.
982
983 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
984
985         * gtk/gtktreeviewcolumn.c
986         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
987
988         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
989         (_gtk_tree_view_find_node): If *node is NULL,
990         *tree should be NULL too.
991
992         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
993         column/renderers.
994         * tests/testtreecolumns.c: ditto
995         * tests/testtreefocus.c: ditto
996         * tests/testtreesort.c: ditto
997         * tests/testtreeview.c: ditto
998         * tests/treestoretest.c: ditto
999
1000 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
1001
1002         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
1003         signals; is_expander/is_expanded.
1004
1005         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
1006         pixbufs.
1007
1008         * gtk/gtktreeview.c: set above properties.
1009
1010 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
1011
1012         * gtk/gtkwidget.h: Really remove set_default_style().
1013
1014         * docs/Changes-2.0.txt: added a note about
1015         gtk_widget_push/pop/set_default_style.
1016
1017 2001-08-18  Havoc Pennington  <hp@pobox.com>
1018
1019         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
1020         hints_changed in addition to the other cases.
1021         (gtk_window_move_resize): include last position from configure
1022         notify in debug spew
1023
1024 2001-08-18  James Henstridge  <james@daa.com.au>
1025
1026         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
1027         second argument to the weak ref notify, cleaning up some uglyness.
1028         (gtk_accel_group_attach): remove and add the weak notifier when
1029         changing the accel groups slist.
1030         (gtk_accel_group_detach): same here.
1031
1032 2001-08-17  Darin Adler  <darin@bentspoon.com>
1033
1034         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
1035         missing parameters to utf8 functions to make it compile.
1036
1037 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
1038
1039         * gtk/gtktreeprivate.h:
1040         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
1041         (gtk_tree_view_init), (gtk_tree_view_set_property),
1042         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
1043         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
1044         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
1045         (gtk_tree_view_set_destroy_count_func),
1046         (gtk_tree_view_set_enable_search),
1047         (gtk_tree_view_get_enable_search),
1048         (gtk_tree_view_get_search_column),
1049         (gtk_tree_view_set_search_column),
1050         (gtk_tree_view_get_search_equal_func),
1051         (gtk_tree_view_set_search_equal_func),
1052         (gtk_tree_view_search_dialog_destroy),
1053         (gtk_tree_view_search_position_func),
1054         (gtk_tree_view_interactive_search),
1055         (gtk_tree_view_search_delete_event),
1056         (gtk_tree_view_search_button_press_event),
1057         (gtk_tree_view_search_key_press_event),
1058         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
1059         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
1060         * gtk/gtktreeview.h:
1061         Add heavily modified patch from Kristian Rietveld to handle
1062         interactive searching.
1063
1064 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
1065
1066         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
1067         string parameter.
1068
1069         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
1070         GtkMenuShell::selection_done, now that we have it, instead of 
1071         ::deactivate so we're not tearing the menu apart and notify
1072         the user prematurely.
1073
1074 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
1075
1076         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
1077         window, clear window->need_default_position to avoid infinite loops.
1078         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
1079
1080 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
1081
1082         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
1083         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
1084         (gtk_tree_view_set_property): don't cast possible NULL objects.
1085         (gtk_tree_view_destroy): reset the model to NULL.
1086
1087         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
1088         parent_class handler.
1089
1090 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1091
1092         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
1093
1094 >>>>>>> 1.2276
1095 2001-08-17  Anders Carlsson  <andersca@gnu.org>
1096
1097         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
1098         point numbers so that the result will be floating point.
1099
1100 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1101
1102         * tests/testgtk.c (create_handle_box): 
1103         (create_toolbar): Replace gtk_window_set_policy calls by
1104         gtk_window_set_resizable.
1105
1106 2001-08-16  Jakub Steiner <jimmac@ximian.com>
1107
1108         * gtk/stock-icons/dialog_info.png: new style bulb
1109         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
1110         * gtk/stock-icons/dialog_warning.png: need a hand?
1111         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
1112           the aa border gets chopped off ok
1113         * gtk/stock-icons/stock_colorselector.png: using the new hand
1114         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
1115           this one is for, but the old icon was butt ugly.
1116         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
1117         * gtk/stock-icons/stock*_insert_object.png: "
1118         * gtk/stock-icons/stock_index.png: using new hand icon
1119         * gtk/stock-icons/stock*_new.png: the document template being used 
1120           elsewhere too
1121         * gtk/stock-icons/stock*_print*.png: new print and print preview 
1122           icons (panel/menu)  
1123         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
1124           icons based on Tuomas' floppy image.
1125         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
1126         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
1127         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
1128         * gtk/stock-icons/stock*_undelete.png: "
1129         * gtk/stock-icons/stock_preferences.png: I have a version with a 
1130           document base if the sliders are no good.
1131         * gtk/stock-icons/stock_properties.png: properties 
1132         
1133
1134         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
1135           (tigert@ximian.com) clipboard icons
1136         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
1137         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
1138         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
1139           little bigger IMHO
1140
1141 2001-08-16  Sven Neumann  <sven@gimp.org>
1142
1143         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
1144
1145 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
1146
1147         * gtk/gtkcellrenderertext.c:
1148         Avoid warning when specifying NULL for "attributes" property
1149
1150 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1151
1152         * docs/debugging.txt: Add a warning about --enable-debug=no,
1153         some editorial changes.
1154
1155 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1156
1157         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
1158         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
1159         debugging info, remove unused debug flags. (#58330)
1160
1161 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
1162
1163         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
1164         (gtk_tree_selection_select_all): Remove strict checking for rows.
1165
1166 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1167         
1168         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
1169         Don't remove the tooltip window when the tip text changes. (#15891)
1170
1171 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
1172
1173         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
1174         $(srcdir).
1175
1176 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
1177
1178         * Makefile.am (EXTRA_DIST): Fix problem with trying to
1179         dist files from intl/, which is no longer there.
1180
1181 2001-08-11  Hans Breuer  <hans@breuer.org>
1182
1183         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
1184           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
1185           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
1186           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
1187           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
1188           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
1189
1190         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
1191           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
1192         GDK_TYPE_EVENT signals
1193
1194         * gtk/gtkalignment.c : removed 'direct allocation bug',
1195         which Tim discovered while reading the patch
1196
1197 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
1198
1199         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
1200         compat macros for push/pop/set_visual that were supposed
1201         to be added a long time ago, but got dropped. 
1202
1203 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
1204
1205         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
1206         property notifies.
1207
1208 2001-08-07  Havoc Pennington  <hp@pobox.com>
1209
1210         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
1211
1212         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
1213         some fixage is needed here, but nothing simple. Owen understands
1214         it. ;-)
1215
1216         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
1217         sizing and positioning.  Also, fix bug in compute_geometry_hints
1218         (width/height confusion for setting min size). 
1219         (gtk_window_move): new function
1220         (gtk_window_resize): new function
1221         (gtk_window_get_size): new function
1222         (gtk_window_get_position): new function
1223         (gtk_window_parse_geometry): new function
1224         
1225         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
1226         (gtk_widget_get_size_request): new function
1227         (gtk_widget_get_usize): delete, that was a short-lived function
1228         ;-)
1229         (gtk_widget_set_usize): deprecate
1230         (gtk_widget_set_uposition): deprecate, make it a trivial 
1231         gtk_window_move() wrapper
1232         (gtk_widget_class_init): remove x/y/width/height properties,
1233         add width_request height_request
1234         
1235         * demos/*: update to avoid deprecated functions
1236         
1237         * gtk/gtklayout.c: add x/y child properties
1238
1239         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
1240         uses of "gint16"
1241
1242         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
1243         sizing test
1244
1245         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
1246         configure events on toplevel windows are always in root window
1247         coordinates, following ICCCM spec that all synthetic events 
1248         are in root window coords already, while real events are 
1249         in parent window coords. Previously the code assumed that 
1250         coords of 0,0 were parent window coords, which was 
1251         really broken.
1252   
1253         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
1254         warning
1255  
1256         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
1257         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
1258         hints in gtk_window_parse_geometry()
1259  
1260         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
1261         new USER_POS USER_SIZE hints    
1262
1263 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1264
1265         * tests/prop-editor.c (properties_from_type): Use 
1266         g_object_class_list_properties to get the param specs 
1267         for a given type. (#58609)
1268
1269 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1270
1271         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
1272         free the text_aa parts. (#57549)
1273
1274 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1275
1276         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
1277         not the foreground color. (#57621)
1278
1279 2001-08-09  Alexander Larsson <alexl@redhat.com>
1280
1281         * gdk/win32/gdkfont-win32.c:
1282         Update to the new pango win32 api.
1283
1284 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
1285
1286         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
1287         COMPOUND_TEXT instead of TEXT
1288         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
1289         interpret the return value of g_string_to_compound_text()
1290         (#55152)
1291
1292 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1293
1294         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
1295         fail if iter is NULL. (#58347)
1296
1297 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1298
1299         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
1300         some off-by-one issues, fixing selection of line-ends. (#50323)
1301
1302 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1303
1304         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
1305         functions in order to make mouse operation work again in the
1306         color wheel. (#58604)
1307
1308 2001-08-07  James Henstridge  <james@daa.com.au>
1309
1310         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
1311         the accelerator when the accel object is changed.  Fixes bug
1312         #58628.
1313
1314 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
1315
1316         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
1317         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
1318         (gnome bugzilla #58202)
1319
1320 2001-08-06  Havoc Pennington  <hp@pobox.com>
1321  
1322         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
1323         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
1324         it was expecting a GdkWindow, not a GdkWindowImplX11.
1325  
1326         Also, we were getting the window rect in screen coords 
1327         and the screen rect in window coords then intersecting 
1328         them; instead, get window rect in window coords.
1329  
1330         Finally, there were codepaths that resulted in a stuck server grab
1331         (when the window was fully onscreen, or on gdk_image_new()
1332         failure); make the server ungrab thing a bit more
1333         robust/consistent.
1334
1335 2001-08-06  Sven Neumann  <sven@gimp.org>
1336
1337         * gdk/gdkpango.c (gdk_pango_context_destroy): 
1338         check if info->colormap != NULL before unref'ing it. It might have
1339         been set to NULL using gdk_pango_context_set_colormap().
1340
1341 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
1342
1343         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
1344         Fix conversion from float to int so that we don't get
1345         skew in the int => float => int roundtrip. 
1346         (#58120, reported by Vitaly Tishkov). Also fix problem
1347         where if no alpha was set, the returned alpha
1348         from (say) set_current_alpha() was returned as 1, not 65535.
1349
1350 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
1351
1352         * gtk/gtklist.c (gtk_list_clear_items): Fix
1353         problem with selecting a new focus child.
1354
1355         * gtk/gtklist.c (gtk_list_clear_items): Clear 
1356         list->undo/list_focus_child after unparenting
1357         child, since unparenting the child can result
1358         in list->last_focus_child being set. (#58024)
1359
1360         * Makefile.am (SUBDIRS): Add target specific pc
1361         files to DISTCLEANFILES.
1362
1363         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
1364         (58327, Matthias Clasen)
1365
1366 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
1367
1368         * tests/testgtk.c: Patch from Hans (with various modifications),
1369         to add the ability to use testgtk as a rough-and-ready
1370         benchmark. Try, 'testgtk --bench all:5' (if you want decent
1371         numbers, run without a window manager)
1372
1373 2001-08-04 Alexander Larsson <alexl@redhat.com>
1374
1375         * gdk/win32/gdkinput.c:
1376         Add #ifdef HAVE_WINTAB around wintab.h include.
1377
1378         * gtk/gtk.def:
1379         Removed marshals that have been moved to glib.
1380         Commented out plug and socket. They didn't compile for me 
1381         on win32.
1382
1383 2001-08-04  Hans Breuer  <hans@breuer.org>
1384
1385         * gtk/stocks-icons/makefile.msc : new file
1386         * gtk/makefile.msc.in : use it
1387
1388         * gtk/gtkstyle.c : not all platforms do provide M_PI and
1389         friends, but luckily there is G_PI
1390
1391         * gtk/gtk.def : updated
1392
1393         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
1394         windows WS_POPUP, but only those without a parent. This fixes the 
1395         mis-alignment between the selectable (temp, input only) window and 
1396         the window text of GtkLabel.
1397
1398         (gdk_window_show) : respect private->state when actually showing
1399         the window.
1400
1401         (gdk_window_set_transient_for) : Implementation from Wolfgang 
1402         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
1403         error handling. Should fix #50586.
1404
1405         * gdk/win32/gdkevents-win32.c : beautify log output
1406
1407 2001-08-04  Michael Natterer  <mitch@gimp.org>
1408
1409         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
1410         Need to show the image after adding it to the GtkImageMenuItem.
1411         This used to work without in testgtk because of the
1412         gtk_widget_show_all() at the end of the function.
1413         (Closes #54978).
1414
1415 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
1416
1417         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
1418         (gtk_notebook_set_child_property): fix finding of child's page,
1419         since we have to validly deal with labels and menus here as well.
1420         (gtk_notebook_get_child_property): fix warning.
1421         (gtk_notebook_class_init): property tab_pack is of type
1422         GTK_TYPE_PACK_TYPE (enum) not boolean.
1423         (gtk_notebook_find_child): don't always warn, we might be looking
1424         for a label or menu child.
1425         (gtk_notebook_map): fix mapping of panel.
1426
1427         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
1428         widget's mapped state, regardless of the value being set equals
1429         old settings, since things like REALIZED(parent) or MAPPED(parent)
1430         may have changed since the old value was set. make it an error to
1431         invoke this function on a toplevel widget.
1432
1433 2001-07-31  Darin Adler  <darin@bentspoon.com>
1434
1435         * gdk/gdkprivate.h:
1436         * gdk/x11/gdkx.h:
1437         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
1438
1439         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
1440         GTK_OBJECT.
1441
1442 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
1443
1444         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
1445         scoping error pointed out by matthiasc@poet.de.
1446
1447 2001-07-31  Sven Neumann  <sven@gimp.org>
1448
1449         * demos/gtk-demo/appwindow.c
1450         * demos/gtk-demo/item_factory.c
1451         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
1452
1453 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
1454
1455         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
1456         argument order for g_signal_has_handler_pending.
1457
1458 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
1459
1460         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
1461         instead of long deprecated g_scanner_stat_mode().
1462
1463 2001-07-29  Hans Breuer  <hans@breuer.org>
1464
1465         * gdk/makefile.msc : build in the backend dir after
1466         auto-generating files
1467
1468         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1469         with code from win32-production-branch.
1470
1471         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1472         before calling DestroyWindow, which indirectly calls 
1473         gdk_window_destroy_notify ()
1474
1475         (performance patch merged from win32-production-branch)
1476         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1477         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1478         R2_COPYPEN rop). It is claimed to be much faster.
1479
1480 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1481
1482         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1483         add an "attributes" property to the text renderer for ATK.
1484
1485 2001-07-26  Alex Larsson  <alexl@redhat.com>
1486
1487         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1488         Initialize image->bits_per_pixel from the drawable, not from
1489         the root window.
1490
1491         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1492         Fix cast. argument is an IMPL already.
1493
1494 2001-07-15  James Henstridge  <james@daa.com.au>
1495
1496         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1497         (gtk_window_remove_accel_group): same here.
1498         (gtk_window_key_press_event): same here.
1499
1500         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1501         (gtk_widget_remove_accelerator): same here.
1502         (gtk_widget_remove_accelerators): same here.
1503
1504         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1505
1506         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
1507         instead of GtkObject.
1508
1509         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
1510         now takes GObjects.
1511
1512         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
1513         pass a GObject to gtk_accel_group_entries_from_object.
1514         (gtk_item_factory_create_item): s/accel_widget/accel_object/
1515
1516         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
1517
1518         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
1519
1520         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
1521         GObjects can have accelerators set now.  Add compatibility
1522         defines.
1523
1524         * gtk/gtkmarshal.list: add missing marshallers.
1525
1526         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
1527         accelerators on plain GObjects.  gtk_accel_group_object_destroy
1528         has been converted into a weak reference, and
1529         gtk_accel_group_delete_entries is now a destroy notify for that
1530         piece of data.
1531
1532 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
1533
1534         * gdk/gdkdraw.c: Added a check on the colormap depth to
1535         gdk_drawable_set_colormap()
1536         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
1537         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
1538         for pixmaps without visuals (more specifically, bitmaps)
1539         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
1540         doesn't set a colormap with the wrong depth
1541
1542
1543 2001-07-22  Anders Carlsson  <andersca@gnome.org>
1544
1545         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
1546         expander_height and expander_width properties with a single
1547         property, expander_size.
1548         (gtk_tree_view_init): Set the tab_offset to expander_size
1549         plus some padding.
1550         (gtk_tree_view_unrealize): Remove the expand/collapse
1551         timeout if it exists.
1552         (coords_are_over_arrow): Fix a small bug.
1553         (gtk_tree_view_motion_draw_column_motion_arrow): Use
1554         expander_size.
1555         (gtk_tree_view_draw_focus): Use "treeview" instead of
1556         "add-mode" as detail when drawing the focus.
1557         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
1558         instead of "add-mode" as detail when drawing the focus.
1559         (gtk_tree_view_deleted): If we have a node currently being
1560         expanded or collapsed, remove the timeout and set the node 
1561         to NULL.
1562         (gtk_tree_view_queue_draw_arrow): New function that just
1563         redraws the arrow of a node.
1564         (gtk_tree_view_draw_arrow): Use expander_size instead of
1565         expander_width/expander_height, also pass a different
1566         expander_style to gtk_paint_expander depending on the 
1567         state of the node being drawn.
1568         (expand_collapse_timeout): New function for expanding 
1569         or collapsing a node depending on the previous state.
1570         (gtk_tree_view_real_expand_row): Add timeout and set 
1571         correct state for node being expanded.
1572         (gtk_tree_view_real_collapse_row): Add timeout and set
1573         correct state for node being collapsed.
1574
1575         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
1576         information about the node currently being expanded or
1577         collapsed, and also a timeout id.
1578
1579         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
1580         with expander_style for draw_expander.
1581
1582         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
1583         expander_style.
1584         (create_expander_affine): New function for creating an 
1585         expander affine.
1586         (apply_affine_on_point): New function for applying an 
1587         affine to a point.
1588         (gtk_default_draw_expander): Modified to take expander_style
1589         instead of is_open, and to draw the rectangle rotated differently
1590         depending on the expander style.
1591         (gtk_paint_expander): Replace is_open with expander_style.
1592
1593         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
1594
1595         * gtk/gtkenums.h: Add expander style enum.
1596
1597 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
1598
1599         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
1600         value from gtk_tree_model_get_iter, the model might be empty.
1601
1602 2001-07-20  Hans Breuer  <hans@breuer.org>
1603
1604         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
1605         gdk/gdkinput.c like the other backends
1606
1607         * gdk/win32/gdkinput-win32.h :
1608         * gdk/win32/gdkinput.c :
1609         * gdk/win32/gdkvisual-win32.c :
1610         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
1611         GdkVisual GObjectification. UNTESTED for pen-devices because
1612         I simply have none.
1613
1614         * gdk/gdk.def :
1615         * gtk/gtk.def : updated externals
1616
1617         * gtk/gtkiconfactory.c :
1618         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
1619         before passing &error to functions to avoid strange crashes
1620         
1621         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
1622
1623         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
1624
1625         * gtk/makefile.msc.in : updated
1626
1627 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
1628
1629         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
1630         Add property support. (#51858)
1631
1632 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
1633
1634         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
1635         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
1636         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
1637
1638 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
1639
1640         * gtk/gtkcolorsel.c: Add propery support (roughly
1641         based on patch from Lee Mallabone, #51014)
1642
1643         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
1644         deprecated, since we already g_warning() on it.
1645
1646 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
1647
1648         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
1649         typo that sometimes caused selection not to work properly.
1650
1651         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
1652         entry when tabbing in. (#57743)
1653         
1654         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
1655         user drags up above or down below the entry, move
1656         to the end or the beginning of the entry. (Suggestion
1657         from Jay Cox, #50940)
1658
1659         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
1660         a current selection, then when moving by chars or
1661         words, move to the end of the selection rather than
1662         from entry->current_pos. (Suggestion from Jay Cox,
1663         #50942)
1664         
1665 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
1666
1667         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
1668         set window->decorated. (Patch from Hidetoshi Tajima,
1669         #55846)
1670
1671 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
1672
1673         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
1674         the widget/child realization/mapping invariants.
1675
1676         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
1677         gtk_widget_[get/set]_child_visible() to control
1678         whether visible children of a mapped window are
1679         mapped.
1680
1681         * docs/widget_system.txt: Updated for changes in
1682         container contract, and addition of GTK_CHILD_VISIBLE.
1683
1684         * gtk/gtkcontainer.c: Add generic map()/unmap()
1685         functions that work for almost all containers.
1686
1687         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
1688         gtk_widget_set_child_visible() where necessary.
1689
1690         * gtk/*.c: Remove excess map(), unmap(), and 
1691         realization/mapping invariant enforcing code
1692         from many containers.
1693
1694 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
1695
1696         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
1697         Get the foreground color from 'text', nor 'fg'. (#57568)
1698
1699 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
1700
1701         * gtk/*.c: Patch from Matthias Clasen to remove remove
1702         all instances of g_return_if_fail (foo != NULL); that are
1703         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
1704         since the second check catches the NULL anyways.
1705
1706 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
1707
1708         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
1709         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
1710         GDK_THREADS_ENTER()/LEAVE() pairs.
1711
1712         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
1713         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
1714         pairs. (Problem found by M. Meeks)
1715
1716 2001-07-18  Darin Adler  <darin@bentspoon.com>
1717
1718         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1719         that we don't get a g_warning message every time we register a new
1720         icon size.
1721
1722         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1723         using pixel variable of the correct type.
1724         
1725 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1726
1727         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1728         so that using X functions on a GdkWindow is possible, if
1729         a little hairy.
1730
1731         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1732         and ts_origin of a GC, so that external parties can offset/restore
1733         a GC, when using gdk_window_get_internal_paint_info().
1734
1735 2001-07-17  Darin Adler  <darin@bentspoon.com>
1736
1737         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1738         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1739         instead of the deprecated gtk_window_set_policy.
1740         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1741         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1742         function to get rid of warning and some code too.
1743         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1744         missing const.
1745         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1746         unused local.
1747         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1748         const.
1749         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1750         (gdk_utf8_to_compound_text): Add missing const.
1751         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1752         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1753         cast and get rid of an unnecessary one.
1754         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1755         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1756         local.
1757         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1758         Remove unused local.
1759         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1760         missing const.
1761         * tests/testsocket.c: (add_child): Add cast so the printf format
1762         doesn't make us implicitly depend on what integer type
1763         gtk_socket_get_id returns.
1764         * tests/testtextbuffer.c: Add missing const.
1765         * tests/testtreefocus.c: (main): Remove unused local.
1766         * tests/treestoretest.c: (iter_remove): Remove unused local.
1767         (uppercase_value): Remove unused function.
1768         (make_window): Add statement to quiet the compiler's uninitialized
1769         variable warning.
1770
1771 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1772
1773         * gtk/gtkrange.c:
1774         (second_timeout): 
1775         (initial_timeout): 
1776         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1777         (gtk_range_calc_layout): compute the new layout based on an
1778         adjustment->value being passed in as argument.
1779         (gtk_range_button_press): for button2 slider warps, first recalc
1780         the layout, then adjust the value. also, use update_slider_position()
1781         for adjusting the value, so we keep pixel quantisation at which we
1782         usually operate (upon motion or button releases). the reason for this
1783         is that, we can't change the adjustment upon button2 presses to a non
1784         quantised value and upon button2 release re-quantise the value since
1785         that'd alter the value even if we didn't get any motion events (causing
1786         unexpected scroll area warps upon release and/or slider pixel-jitter).
1787         (gtk_range_motion_notify): update the slider position from queried
1788         coordinates, not event coordinates.
1789
1790 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1791
1792         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1793         the default gc values are: width=0, CapBut, JoinMiter.
1794
1795 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1796
1797         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1798         into account the xpad and ypad when calculating the width and the
1799         height of the pixbuf cel.
1800
1801 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1802
1803         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1804         Rename to gtk_radio_menu_item_get_group(), add deprecated
1805         alias. (#57044)
1806
1807         * gtk/gtkfilesel.c: Indentation fix.
1808
1809 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1810
1811         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1812         Hasselmann to fix warnings in compat macros. 
1813         (#56773)
1814
1815         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1816         stupid wrong cast added in last patch.
1817
1818 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1819
1820         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1821         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1822
1823 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1824
1825         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1826         missing cast.
1827
1828         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1829         NULL/FALSE return value confusion.
1830
1831         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1832         problem when scrollbar completely fills range. (Patch
1833         from  Matthias Clasen, #57047)
1834
1835 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1836
1837         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1838         clean up when handling events for move-resize emulation.
1839         (Problem traced down by Matthias Clasen, #57271)
1840
1841 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1842
1843         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1844           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1845           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1846           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1847           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1848           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1849           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1850         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1851
1852 2001-07-09  Peter Williams  <peterw@ximian.com>
1853
1854         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1855         for when srcdir != builddir
1856
1857 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1858
1859         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1860         gtk_tree_model_get_iter_root.
1861
1862         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1863         (gtk_list_store_iter_n_children): Fix up.
1864
1865         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1866
1867 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1868
1869         * gtk/gtkwidget.c (gtk_widget_class_init):
1870         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1871         restore some workingness.
1872
1873         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1874         handle of window type for input-only windows.
1875
1876 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1877
1878         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1879         Patch from Gregory Merchan to add 
1880         gtk_button_box_set_secondary(), which separates
1881         the child into a separate group from the normal
1882         buttons. (#56331)
1883
1884         * gtk/gtkdialog.c: Make help buttons secondary by
1885         default.
1886
1887         * gtk/gtkbbox.c: Added a child property "secondary".
1888
1889         * gtk/testgtk.c: Turn on the help button for the 
1890         color selector to check that it properly appears
1891         as secondary.
1892
1893 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1894  
1895         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1896         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1897         Add gdk_set_pointer_hooks() to allow pointer-querying to
1898         be hooked by an event record/playback system like GERD.
1899         (#56914)
1900         
1901 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1902
1903         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1904         in the right value of initial_emission to
1905         gtk_widget_set_style_internal (#57091)
1906
1907 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1908
1909         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1910         Make compile.
1911
1912         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1913         with calling gtk_widget_set_style_internal() with
1914         the old style, not the new style. (#56989)
1915
1916 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1917
1918         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1919           gtk/gtkwidget.c:
1920         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1921         not GTK_WIDGET_GET_ANCESTOR ... see 
1922         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1923         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1924
1925         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1926         so GtkPlug can give the correct signals when transforming
1927         from a child to a toplevel.
1928         
1929         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1930         reparentation correctly.
1931
1932         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1933         Propagate the previous_toplevel argument down properly.
1934
1935         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1936         of wrong atr list.
1937
1938         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1939
1940         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1941         signals.
1942
1943         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1944         functions gtk_plug_get_id(), gtk_socket_get_id(),
1945         to avoid the user having to worry about realization,
1946         and gdkx.h.
1947
1948         * tests/testsocket.c: Extend to try out the new signals
1949         and gtk_plug/socket_get_id().
1950
1951         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1952         setting of underline attributes.
1953
1954         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1955         DestroyNotify events from SubstructureNotifyMask
1956
1957         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1958         Switch GDK_WINDOW_TYPE (window) as needed.
1959
1960         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1961         allow creation of toplevel windows as children of
1962         foreign windows.
1963
1964         * gtk/gtkplug.c: Remove hacks involving changing private
1965         fields of GdkWindow.
1966
1967         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1968         exactly the same signals and notification
1969         be emitted for local embedding as for inter-process
1970         embedding.
1971
1972 2001-07-04  James Henstridge  <james@daa.com.au>
1973
1974         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1975
1976 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1977
1978         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1979         XEMBED embedding add a _XEMBED_INFO property to the
1980         client with version number and a "mapped" flags.
1981         Use the mapped flag instead of the racy MapRequestEvent
1982
1983         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1984         code to reliably set things (when the child is a passive
1985         embedder participating in the XEMBED protocol) intead
1986         of just being a hack for embedding non-participating
1987         programs. Fix various bugs and race conditions.
1988         
1989         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1990         work by simply making the GtkSocket the gtk parent
1991         of the GtkPlug. Set a flag in this case and make
1992         the GtkPlug work like a normal container by overriding
1993         methods such as check_resize and "chaining past" GtkWindow
1994         to GtkBin.
1995
1996         * gtk/gtkentry.c (gtk_entry_real_activate)
1997           gtk/gtkmain.c (gtk_propagate_event): 
1998         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1999         
2000         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
2001         gtk_widget_get_ancestor):
2002         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
2003         might not give the expected result and recommend
2004         an alternative.
2005
2006         * tests/testsocket.c tests/testsocket_child.c
2007         tests/testsocket_common.c tests/Makefile.am: Extended
2008         to test different type of adding plugs to sockets
2009         (local,active,passive), and to test mapping/unmapping
2010         the plug.
2011
2012         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
2013         mark the window as destroyed until after we
2014         called _gdk_windowing_window_destroy().
2015         (_gdk_windowing_window_destroy() may use GDK functions
2016         on the window.)
2017
2018         * gdk/x11/gdkinput.c: Remove the check for finalization - 
2019         devices can be finalized under some circumnstances.
2020  
2021         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
2022         small problem with GDK_TYPE_DEVICE.
2023  
2024 2001-07-02  Havoc Pennington  <hp@pobox.com>
2025
2026         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
2027         use constants not atoms.
2028
2029 2001-07-02  James Henstridge  <james@daa.com.au>
2030
2031         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
2032         PANGO_TYPE_TAB_ARRAY.
2033
2034         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
2035         for PANGO_TYPE_TAB_ARRAY.
2036
2037         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
2038         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
2039
2040         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
2041         the file.  Remove Pango types from defs -- they are now defined in
2042         libpango.
2043
2044 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
2045
2046         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
2047
2048         * gtk/gtkobject.c (gtk_object_destroy): invoke
2049         g_object_run_dispose().
2050
2051         * gtk/gtkwindow.c: 
2052         * gtk/gtkwidget.c: 
2053         * gtk/gtkobject.c:
2054         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
2055         method.
2056
2057 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
2058
2059         * gtk/gtktypeutils.c (gtk_type_class): Remove
2060         change check for GTK_TYPE_OBJECT derivation to
2061         G_TYPE_OBJECTS - it's Tim-approved to use this 
2062         for arbitary objects.
2063
2064         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
2065         prefix gtk_container_dequeue_resize_handler().
2066
2067         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
2068         to the hierarachy_changed signal, since you otherwise
2069         have to always keep that around.
2070
2071         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
2072         for extra argument to hierarchy_changed.
2073
2074 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
2075
2076         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
2077         for style to mean "revert to default style"
2078
2079         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
2080           gtk_widget_restore_default_style): Make this functions
2081         deprecated aliases for gtk_widget_set_style (widget, NULL).
2082
2083         * gtk/gtkwidget.[ch]: Remove:
2084            gtk_widget_set_default_style ()
2085            gtk_widget_push_style ()
2086            gtk_widget_pop_style ()
2087         These functions interact are overriden by RC files, and
2088         thus virtually useless, and complicated.
2089
2090 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
2091
2092         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
2093         most of the previous global variables in gtkrc.c. This is
2094         in preparation for multi-head, since each screen can
2095         have different GtkSettings and RC information.
2096
2097         * gtk/gtkrc.[ch]: 
2098
2099         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
2100         GtkSettings parameter to GtkRcStyle::parse.
2101
2102         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
2103         Add two new settings gtk-theme-name, gtk-key-theme-name,
2104         for RC files that are loaded by name after reading
2105         the default RC files.
2106         
2107         * gtk/gtkrc.c: Allow priorities for styles, as wll as
2108         bindings.
2109
2110         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
2111         and use it by default for RC files loaded via 
2112         gtk-theme-name, gtk-key-theme-name.
2113
2114         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
2115         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
2116         tests/testgtkrc: Require pathnames to be absolute.
2117
2118         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
2119         the source when parsing, since the operation of looking up a
2120         pixmap from an RC file depends on the parsing context.
2121
2122         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
2123         reset RC styles on all widgets when files are reparsed.
2124
2125         * tests/testgtk.c (create_rc_file) 
2126           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
2127         Simplify, now that gtk_rc_reparse_all() resets styles on
2128         all widgets itself.
2129
2130         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
2131         return value.
2132
2133         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
2134         GtkSettings argument.
2135
2136         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
2137         gtk_settings_get_global().
2138
2139         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
2140         to get the appropriate GtkSettings for a widget. (For now,
2141         just gets the default GtkSetttings.) 
2142
2143         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
2144           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
2145         changes.
2146
2147         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
2148         getting a style for a path without actually having a widget.
2149         (Allows using a style for a subpart of a widget, for
2150         example.)
2151
2152         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
2153         the RC files to be reloaded for just one GtkSettings
2154         (not sure how useful this really is.)
2155
2156         * gtk/gtkrc.h: Deprecate
2157         gtk_rc_add_widget_name/widget_class/class_style
2158
2159 2001-06-30  Alex Larsson  <alexl@redhat.com>
2160
2161         * gdk/linux-fb/gdkinput-none.c:
2162         * gdk/linux-fb/gdkinput.c:
2163         * gdk/linux-fb/gdkinputprivate.h:
2164         Convert GdkDevice to a GObject.
2165
2166         * linux-fb/gdkprivate-fb.h:
2167         * linux-fb/gdkvisual-fb.c:
2168         Convert GdkVisual to a GObject.
2169
2170 2001-06-29  Alex Larsson  <alexl@redhat.com>
2171
2172         * gdk/gdkvisual.h:
2173         * gdk/gdkcolor.c:
2174         * gdk/x11/gdkx.h:
2175         * gdk/x11/gdkvisual-x11.c:
2176         Convert GdkVisual to a GObject.
2177
2178         * gdk/gdkinput.h:
2179         * gdk/gdkevents.c:
2180         * gdk/x11/gdkinputprivate.h:
2181         * gdk/x11/gdkinput-gxi.c:
2182         * gdk/x11/gdkinput-none.c:
2183         * gdk/x11/gdkinput-x11.c:
2184         * gdk/x11/gdkinput-xfree.c:
2185         * gdk/x11/gdkinput.c:
2186         Convert GdkDevice to a GObject.
2187
2188 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
2189
2190         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
2191         to just plain new, fixing the number of columns, and column types
2192         at creation time.
2193
2194         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
2195
2196         * gtk/gtkcellrenderertext.c
2197         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
2198         height to a specific font.
2199
2200         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
2201
2202         * tests/*c: change to work with new store models.
2203
2204 2001-06-29  Havoc Pennington  <hp@redhat.com>
2205
2206        * Throughout: fixes to compile with G_DISABLE_COMPAT
2207         (s/g_signal_connectc/g_signal_connect/,
2208         s/g_signal_newc/g_signal_new/,
2209         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
2210
2211 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
2212
2213         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2214         add path argument to selection callbacks.
2215
2216 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
2217
2218         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
2219         walk through a model in a depth first manner, with the option to
2220         break out.
2221
2222 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
2223
2224         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
2225         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
2226         column and follow it when draged, rather than a location in the
2227         view. "expander_column" property and drawing functions changed
2228         accordingly.  Fixes bug #55942.
2229
2230         (gtk_tree_view_{set,get}_expander_column): Now works with a
2231         GtkTreeViewColumn* instead of int.
2232
2233 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
2234
2235         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
2236
2237 2001-06-28  Havoc Pennington  <hp@pobox.com>
2238
2239         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
2240         image data to the screen, using a server grab to avoid race
2241         conditions.
2242
2243         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
2244         check for NULL return from gtk_image_new_from_stock(), it never
2245         returns NULL.
2246         (gtk_item_factory_create_item): fix bug where we parsed the stock
2247         ID as an inline pixbuf
2248
2249         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
2250
2251         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
2252         support (should be using binding set here)
2253
2254         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
2255         support (should be using binding set here)
2256
2257         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
2258         support
2259
2260         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
2261
2262         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
2263
2264         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
2265
2266         * gtk/gtkimcontextsimple.c
2267         (gtk_im_context_simple_filter_keypress): keypad
2268
2269         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
2270
2271         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
2272
2273         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
2274
2275         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
2276         should be binding-setted)
2277
2278         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
2279
2280         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
2281
2282         * gtk/gtkcalendar.c: numeric keypad fixes
2283
2284         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
2285         support
2286
2287         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
2288         screwup
2289
2290         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
2291         clip the render area to the drawable's clip region in advance,
2292         so we don't get data from the server that we don't need.
2293
2294         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2295         check return value of gdk_pixbuf_get_from_drawable(), fall back 
2296         to bilevel alpha if we can't get the pixbuf to composite against.
2297
2298         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
2299
2300         * gdk/gdkimage.c (gdk_image_get_colormap): add
2301         gdk_image_set_colormap, gdk_image_get_colormap
2302
2303         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
2304         take a region of the image, instead of converting the entire
2305         image.
2306
2307         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
2308         keybinding signal. Add default bindings for it. Add default
2309         handler for show_help that shows the tooltip for the widget.
2310
2311         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
2312         "close" keybinding signal, remove key press handler.
2313
2314         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
2315         it's not our usual practice to leave a deprecated function around
2316         with a runtime warning, plus we don't want it to appear in docs,
2317         plus if we make them yellow no one will want to change them
2318         anyhow.
2319
2320 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2321
2322         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
2323         GTK_WIDGET_REALIZE() for resize queueing.
2324
2325         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
2326         GTK_WIDGET_REALIZE() for post event delivery destruction upon
2327         GDK_DESTROY.
2328         
2329         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
2330         sompensate for former (pre-2.0) connect_after() facility.
2331         (gtk_widget_send_expose): 
2332         (gtk_widget_event): assert the widget is realized, since event delivery
2333         to non-realized widgets is essentially a bug. event handlers should
2334         be able to unconditionally rely on widget->window (unless they
2335         emit events on their own which can trigger widget destruction).
2336         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
2337         logic. event delivery happens as follows:
2338         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
2339         b) if !was_handled in (a) and the widget is still realized, emit event-
2340            specific signal (RUN_LAST handler). returns was_handled.
2341         c) emission of GtkWidget::event-after for notification if the widget is
2342            still realized (regardless of was_handled from previous stages, no
2343            class handler). no return value.
2344         d) was_handled gets passed on to caller, to determine further
2345            propagation. if the widget got unrealized meanwhile, was_handled
2346            is returned as TRUE.
2347
2348         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
2349         gdk_event_get_coords().
2350
2351 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2352
2353         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
2354         age 0, binary age 0. depend on glib 1.3.7.
2355
2356         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
2357
2358         * gtk/gtkmenubar.c: same here.
2359         
2360         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
2361
2362         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
2363
2364         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
2365         
2366         * gtk/gtkmenubar.c (add_to_window): likewise.
2367         
2368         * gtk/gtktextbtree.c: and here...
2369         
2370         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
2371         
2372         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
2373         
2374         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
2375         
2376         * gtk/gtktreeviewcolumn.c:
2377         (_gtk_tree_view_column_set_tree_view): yet again.
2378
2379         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
2380         signal connections without g_signal_connect_data().
2381         
2382         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
2383         demo of the matter.
2384         
2385         * demos/testpixbuf.c (main): running out of equality phrases for the
2386         ChangeLog, but had to adapt connections here as well.
2387         
2388         * demos/testanimation.c (progressive_timeout): and for the fun of it,
2389         tackled this the same way.
2390         
2391         * tests/testtext.c (create_view): ok, it's becoming a pain at this
2392         point, but had enough enery for one more fix.
2393
2394         * tests/testtreecolumns.c (main): stand up man, do your work!
2395
2396         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
2397         fix, either that's been all of it or CVS gtk is broken yet again.
2398         
2399 2001-06-29  James Henstridge  <james@daa.com.au>
2400
2401         The following changes correspond to bug #56812
2402
2403         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
2404         code for GdkDevice.
2405
2406         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
2407         GdkCursor.
2408
2409 2001-06-19  Havoc Pennington  <hp@pobox.com>
2410
2411         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
2412         for mapping a window without fooling with stacking order, but
2413         updating the "withdrawn" flag
2414
2415         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
2416         filtering as soon as possible, moving move resize and wmspec_check
2417         handling after the event filter.  Make default filter apply to all
2418         events, not just those with no GdkWindow wrapped around the X
2419         window. Fix a FIXME about how the window could be a pixmap using 
2420         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
2421
2422         Also, be robust against events not on a known GdkWindow.
2423
2424         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
2425         gdk_x11_ungrab_server): export reference-counted server grabs, so
2426         other people can grab server over a GDK function that also does
2427         so.
2428
2429 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2430
2431         * gtk/gtktreeviewcolumn.c
2432         (gtk_tree_view_column_pack_start_cell_renderer): New function to
2433         reflect that you can (hypothetically) pack cell renderers into a
2434         column.
2435         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
2436         (gtk_tree_view_column_cell_is_visible): Move more functionality to
2437         the column.
2438         (gtk_tree_view_column_cell_can_focus): Move more functionality to
2439         the column.
2440
2441         * gtk/gtktreeview.c: Move to use new column-packing code.
2442         (gtk_tree_view_real_expand_row): remove totally braindead code.
2443         (gtk_tree_view_real_collapse_row): ditto.
2444
2445 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
2446
2447         * gtk/gtktreeviewcolumn.c: Fix a typo.
2448         
2449 2001-06-26  Joel Becker  <jlbec@evilplan.org>
2450
2451         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
2452           at the end of the file
2453
2454 2001-06-26  Havoc Pennington  <hp@redhat.com>
2455
2456         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2457
2458 2001-06-26  Havoc Pennington  <hp@redhat.com>
2459
2460         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
2461         property
2462
2463 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
2464
2465         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2466         stupid missing statement
2467
2468         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2469         private function for ATK.  It notifies you of how many _visible_
2470         children are deleted when a node is deleted.  Should be used by
2471         atk only.
2472
2473 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2474
2475         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2476         Use new pango_context_get_metrics() to fix problems
2477         with font lists in descriptions. (#56184, reported by
2478         Jonas Borgström)
2479
2480 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2481
2482         * gtk/gtkiconfactory.c:
2483         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2484         item factory so inlined pixbufs actually work.
2485
2486 2001-06-25  Havoc Pennington  <hp@redhat.com>
2487
2488         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2489         s/RESIZEABLE/RESIZABLE/
2490
2491         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2492
2493 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2494
2495         * configure.in:
2496         Added --enable-fbmanager. This is some experimental code
2497         that lets several GtkFB apps coordinate their access to the
2498         framebuffer.
2499         
2500         * acconfig.h:
2501         Added ENABLE_FB_MANAGER.
2502
2503         * gdk/linux-fb/Makefile.am:
2504         Added gdkfbmanager and gdkfbswitch.
2505
2506         * gdk/linux-fb/gdkkeyboard-fb.c:
2507         * gdk/linux-fb/gdkmouse-fb.c:
2508         * gdk/linux-fb/gdkprivate-fb.h:
2509         Split device init and open so that
2510         they can be opened and closed while switched
2511         away.
2512
2513         * gdk/linux-fb/gdkmain-fb.c:
2514         Add the basic manager communication.
2515
2516         * gdk/linux-fb/gdkrender-fb.c:
2517         Don't update to the shadow fb if we're
2518         blocked by the fb manager.
2519
2520 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2521
2522         * docs/Changes-2.0.txt: Add note about child property
2523         changes.
2524
2525 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
2526
2527         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
2528         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
2529
2530         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
2531         with un'reffing wrong list reported by Jeff Franks.
2532
2533         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
2534
2535         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
2536         for the default icon. Remove inline XPM.
2537
2538         * gtk/gtkstock.h gtk/gtkiconfactory.c:
2539         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
2540         is used for GTK_STOCK_DND, but it is a bit too small.)
2541
2542         * gtk/stock-icons/stock_dnd_multiple.png
2543         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
2544
2545         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
2546         TRUE when starting a drag. In other cases, we are
2547         just observing. (#52995)
2548
2549         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
2550         function to set the icon for a drag from a GdkPixbuf
2551         or stock ID.
2552
2553         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
2554         Likewise, for drag sources.
2555
2556         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
2557         (Now should be done using the stock system.)
2558
2559 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
2560
2561         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
2562         Removed - didn't work and not particularly useful anyways
2563         if it did. 
2564
2565 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
2566
2567         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
2568         introduced last night that was making things decidedly not work.
2569
2570         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
2571         so that we have getter/setter pairing everywhere it makes
2572         sense. (#55767)
2573
2574         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
2575         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
2576         deprecated compat macro. (#55516)
2577
2578         * gtk/gtklabel.[ch]: Add functions
2579         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
2580         gtk_label_set_label(), which mirror the property API for GtkLabel.
2581         Make gtk_label_get_attributes() only reflect the attributes
2582         set by gtk_label_set_attributes.
2583
2584         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
2585         from gtk_notebook_set_page().
2586
2587 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
2588
2589         * configure.in: Fix tests for XShm.h.
2590
2591         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
2592         gdk_image_new() by use of goto, properly use g_object_unref().
2593
2594 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
2595
2596         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
2597         calls, as GdkImage is an object. these should be g_obejct_unref()
2598         instead but that won't work because of the g_error() statement
2599         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
2600         to spot these places.
2601
2602 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
2603
2604         * modules/input/gtkimcontextxim.c: Fixup some problems with 
2605         text length handling in error cases.
2606
2607         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
2608         a bit to make test actually warn on attempt to allocation
2609         a negative size. (#56101, Matthias Clasen)
2610
2611 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
2612
2613         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2614         noticed by Brian Cameron.
2615         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
2616         Cameron.
2617
2618 2001-06-22  Hans Breuer  <hans@breuer.org>
2619
2620         * gdk/gdk.def : updated externals
2621
2622         * gdk/win32/gdkdrawable-win32.c : corrected some casts
2623         in GDK_NOTEs
2624
2625         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
2626         to translate coordinates to the internal > 16 bit system
2627         Try to handle WM_WINDOWPOSCHANGED to get better performance for
2628         when moving/resizing
2629
2630         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
2631         and gdk_keymap_get_direction (). The latter is untested for
2632         the RTL case
2633
2634         * gtk/gtk.def : updated externals
2635
2636         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
2637         from pango_language_from_string (), not an already freed pointer
2638
2639         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
2640         binary (-kb) to be useable on windoze
2641  
2642 2001-06-21  Alexander Larsson  <alexl@redhat.com>
2643
2644         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
2645         Update to new PangoLanguage changes.
2646         
2647         * gtk/gtkwindow-decorate.c:
2648         * gtk/gtkwindow.[ch]:
2649         Added setting argument to gtk_window_set_has_frame ()
2650         
2651 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
2652
2653         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
2654         the case without XKB properly.
2655
2656         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
2657         unused gtk_rc_auto_parse variable.
2658
2659         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
2660         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
2661         longer needed with GdkPixbuf.
2662
2663         * gtk/gtkrc.c (_gtk_rc_init): Make private.
2664
2665 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
2666
2667         * gtk/gtkentry.h: Mark deprecated functions with
2668         GTK_DISABLE_DEPRECATED.
2669
2670 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
2671
2672         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
2673
2674         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
2675
2676         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
2677           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
2678           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
2679           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
2680           to recent changes in Pango.
2681
2682         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
2683           to test whether the basic engine honors them.
2684
2685 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
2686
2687         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
2688         gtk_container_child_get_property().
2689
2690 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
2691
2692         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
2693         (gtk_tree_view_move_cursor_page_up_down): implement.
2694
2695 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
2696
2697         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
2698         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
2699         don't use automatic fixed size buffer for printf-ing floats, doubles
2700         can expand to really _huge_ strings, use g_strdup_printf() instead.
2701
2702 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
2703
2704         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
2705         construct property in 1.2 and still needs to be.
2706
2707         * gtk/gtkwidget.c: "composite_child" is not a settable property.
2708
2709 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
2710
2711         * gtk/gtkliststore.c (gtk_list_store_clear): 
2712         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
2713         clear a model.
2714
2715 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
2716
2717         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2718
2719         * gtk/Makefile.am:
2720         * gtk/gtk.h: disabled GtkPacker compilation.
2721
2722         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2723
2724         * gtk/gtknotebook.c:
2725         * gtk/gtktable.c:
2726         * gtk/gtkbox.c: ported this over to child properties.
2727
2728         * gtk/gtksettings.c: fetch class properties via
2729         g_object_class_list_properties().
2730
2731         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2732         child arg interface. use gobjectnotifyqueue.c for child property
2733         notification.
2734
2735         * gtk/gtkwidget.[hc]: provide necessary means for container child
2736         properties, i.e. ::child_notify signal,
2737         gtk_widget_freeze_child_notify(),
2738         gtk_widget_child_notify(),
2739         gtk_widget_thaw_child_notify().
2740
2741         * tests/testgtk.c: removed inferior property handling code, for
2742         property editing, a generic module should be used, and GLE
2743         coincidentally fullfills that purpose.
2744
2745         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2746         needs to be adapted to g_object_class_list_properties() before this
2747         builds again.
2748
2749 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2750
2751         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2752         test if a node is expanded.
2753
2754 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2755
2756         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2757         where collapsing a selected row would result in the cursor/anchor
2758         getting screwed up.
2759
2760 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2761
2762         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2763         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2764         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2765         Now I can really reorder/sort all Store widgets.  treesorttest
2766         seems to just work now.
2767         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2768         testtreesort worked through a big coincidence all this time.
2769         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2770         code.
2771         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2772         people know that this code should never ever ever be copied.
2773
2774 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2775
2776         * gtk/gtkwindow.h: Fixed a small typo, it should be
2777         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2778         on line 134.
2779
2780 2001-06-14  Havoc Pennington  <hp@redhat.com>
2781
2782         Docs fixups, and:
2783         
2784         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2785         GTK_DISABLE_DEPRECATED
2786
2787 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2788
2789         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2790         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2791         finish it off tonight, though it basically works now when it's a
2792         list.  Also, I have a sinking feeling neither GtkTreeStore or
2793         GtkListStore actually resort when adding a new item.  I'll look
2794         into it.
2795
2796 2001-06-14  Havoc Pennington  <hp@redhat.com>
2797
2798         * demos/gtk-demo/main.c (load_file): fix bug identified by
2799         warnings I just added to gtktextbuffer
2800
2801 2001-06-14  Havoc Pennington  <hp@redhat.com>
2802
2803         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2804
2805         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2806
2807         * gtk/gtktextbtree.c: don't leak node data all over the place.
2808
2809         * demos/gtk-demo/main.c (main): create fontify tags for the right
2810         buffer
2811
2812         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2813         to mention tags in the same table can't have the same name,
2814         suggested by Skip Montanaro
2815
2816 2001-06-11  Havoc Pennington  <hp@redhat.com>
2817
2818         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2819         for trying to add two tags with same name to the tag table
2820
2821         * demos/gtk-demo/main.c (main): fix colors ;-)
2822
2823 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2824
2825         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2826         that allows grouping together multiple windows so that grabs
2827         within that set of windows only affect those windows.
2828
2829         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2830         signal for notification when a widget becomes shadowed
2831         by a grab or is no longer shadowed by a grab.
2832
2833         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2834           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2835         insenstive widgets to maintain a grab.
2836
2837 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2838
2839         * docs/README.linux-fb:
2840         Add some example config files that can be used with the URW fonts.
2841         
2842         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2843         Set up the color ramps for DirectColor mode.
2844
2845 2001-06-11  Havoc Pennington  <hp@redhat.com>
2846
2847         * Release 1.3.6
2848          
2849 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2850
2851         * gdk/linux-fb/gdkwindow-fb.c:
2852         Unify shaped window code and make it repaint the area that used
2853         to be part of the shape, but isn't anymore.
2854
2855 2001-06-11  Havoc Pennington  <hp@redhat.com>
2856
2857         * NEWS: Updates
2858
2859         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2860
2861         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2862         
2863 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2864
2865         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2866         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2867         passes zero instead, so do we.
2868         
2869 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2870
2871         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2872         Deep copy dash_list too.
2873         (_gdk_fb_gc_new): Set default cap_style before
2874         setting values.
2875
2876 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2877
2878         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2879         gdk_keymap_get_direction): New functions.
2880
2881 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2882
2883         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2884         gtk_tree_model_get_flags by adding a second flag for atk.
2885
2886         * gtk/gtktreemodel.c: make cursor behavior interact better with
2887         mouse presses.
2888
2889 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2890
2891         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2892         expand_row/collapse_row to be 2 signals each -- test_expand_row
2893         and row_expanded as well as test_collapse_row and row_collapsed.
2894
2895 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2896
2897         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2898         signal name to be changed instead of selection_changed.
2899
2900 2001-06-08  Havoc Pennington  <hp@redhat.com>
2901
2902         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2903         "scroll_offset" property for notification when the layout offsets
2904         may have changed
2905         (gtk_entry_adjust_scroll): add notify for scroll_offset
2906         (gtk_entry_layout_index_to_text_index): function to compensate for
2907         preedit string when doing coordinate stuff on the entry's layout
2908         (gtk_entry_text_index_to_layout_index): inverse function
2909         (gtk_entry_get_layout_offsets): hook to get current position of
2910         the layout      
2911         (gtk_entry_get_layout): hook to get the layout itself.
2912
2913         * gtk/gtklabel.c (gtk_label_get_layout): new function
2914
2915 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2916
2917         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2918         keybinding.
2919         (gtk_tree_view_focus): Fix merge conflict.
2920
2921 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2922
2923         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2924         clean up cursor handling.
2925
2926 2001-06-08  Havoc Pennington  <hp@redhat.com>
2927
2928         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2929         function
2930
2931         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2932         this function
2933
2934 2001-06-08  Alex Larsson  <alexl@redhat.com>
2935
2936         * gtk/gtkcompat.h.in:
2937         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2938         Fixes bug #52892
2939
2940 2001-06-08  Havoc Pennington  <hp@redhat.com>
2941         
2942         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2943         parent still
2944
2945 2001-06-08  Havoc Pennington  <hp@redhat.com>
2946
2947         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2948         don't call g_list funcs on GSList
2949
2950         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2951         gtk_container_focus(), since some widgets have focusable locations
2952         which are not other widgets. These widgets should not have to be 
2953         containers just to manage the focus. For example, GtkHSV is
2954         currently a container for no good reason. Also, this cleans
2955         up the "if (is_container && is_sensitive && is_drawable)
2956         container_focus ()" mess in widget implementations.
2957
2958         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2959         function, and have it just call gtk_widget_child_focus().
2960
2961         * gtk/gtkhsv.c: derive from widget not container
2962         
2963         Throughout: fix to reflect GtkContainer::focus change
2964         
2965 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2966
2967         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2968         range.  Fix bug #55921
2969
2970         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2971         (#55920).
2972
2973 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2974
2975         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2976         and gdk_keymap_get_current_direction().
2977
2978         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2979           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2980         the current locked group, use it to set the keymap
2981         direction.
2982
2983         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2984         to determine whether we draw a split cursor or use
2985         a jumping cursor based on the current direction.
2986
2987         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2988         Obey the split cursor setting. 
2989
2990 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2991
2992         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2993         when toggling on, not when toggling off... (#55906)
2994
2995 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2996
2997         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2998         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2999         in docs. (#55812, Vitaly Tishkov)
3000
3001 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
3002
3003         * demos/gtk-demo/main.c (create_tree): Changed signal name from
3004         selection_changed to changed in signal connection to GtkTreeSelection,
3005         also used g_signal_connectc since GtkTreeSelection is now a GObject.
3006
3007 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
3008
3009         * gtk/gtktreeselection.c: Now it's a GObject instead of a
3010         GtkObject.  The GtkTreeSelection::selection_changed signal is now
3011         the GtkTreeSelection::changed signal.
3012
3013         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
3014         object.
3015
3016         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
3017         object.
3018
3019 2001-06-07  Havoc Pennington  <hp@redhat.com>
3020
3021         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
3022
3023 2001-06-07  Havoc Pennington  <hp@redhat.com>
3024         
3025         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
3026         (not tested yet because with absolute path to srcdir I can't build
3027         atk, but it was broken anyway so this may help) 
3028
3029 2001-06-07  Havoc Pennington  <hp@redhat.com>
3030
3031         * configure.in: output m4macros/Makefile
3032         
3033 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
3034
3035         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
3036         buttons.  Fixes #55460 reported by matthiasc@poet.de.
3037
3038 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
3039
3040         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
3041         expansion/collapsing so it only happens in one place.
3042         (gtk_tree_view_real_expand_row): ditto.
3043
3044 2001-06-07  Havoc Pennington  <hp@redhat.com>
3045
3046         * tests/Makefile.am: add missing -I flag
3047
3048         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
3049
3050         * configure.in: use pkg-config to see if GModule is
3051         supported; fix to properly turn on included loaders 
3052         when GModule isn't supported; don't use AC_CHECK_LIB 
3053         when libs are not installed yet
3054
3055         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
3056
3057         * Makefile.am (SUBDIRS): add m4macros subdir
3058
3059         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
3060         dependencies also.
3061
3062 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
3063
3064         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
3065         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
3066
3067 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
3068
3069         * gtk/gtktreeview.c
3070         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
3071         bindings to expand and collapse rows.
3072         (gtk_tree_view_real_select_cursor_parent): New key binding.
3073         (gtk_tree_view_real_toggle_cursor_row): New key binding.
3074
3075         * gtk/gtkmarshal.list: new
3076         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
3077
3078 2001-06-06  Havoc Pennington  <hp@redhat.com>
3079
3080         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
3081
3082         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
3083         Down to move visually rather than logically, since it confuses 
3084         people. Add -/+ and Ctrl--/+ bindings for logical movement.
3085
3086 2001-06-06  Alex Larsson  <alexl@redhat.com>
3087
3088         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3089         Fix up error messages.
3090
3091 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
3092
3093         * gtk/gtktooltips.h: Include gtkwidget.h 
3094         (#55798, Karl Nelson)
3095
3096         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
3097         a valid latin-1 character. (Marc Lehmann, #35467)
3098
3099         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
3100         (Marc Lehmann, #35467)
3101         
3102 2001-06-05  Alex Larsson  <alexl@redhat.com>
3103
3104         * demos/gtk-demo/appwindow.c (do_appwindow):
3105         Don't swap the order of the args to gtk_widget_destroyed.
3106
3107         * tests/testgtk.c (destroy_properties):
3108         Don't crash when the properties window is destroyed.
3109
3110         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
3111         Use with_mnemonics to handle the case of stock items with
3112         underscores in them.
3113
3114 2001-06-05  Havoc Pennington  <hp@redhat.com>
3115
3116         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
3117         gtk_text_iter_reorder
3118
3119 2001-06-05  Havoc Pennington  <hp@redhat.com>
3120
3121         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
3122
3123 2001-06-05  Havoc Pennington  <hp@redhat.com>
3124
3125         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
3126         to the range that was set
3127
3128         * gtk/gtkrange.c: add value_changed signal, primarily 
3129         intended for use with GtkScale
3130         (gtk_range_set_increments): new function
3131         (gtk_range_set_range): new function with weird name
3132         (gtk_range_set_value): new function
3133         (gtk_range_get_value): new function
3134
3135         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
3136         from gtk_spin_button_get_value_as_float(). Compat #define
3137         added for get_value_as_float.
3138
3139         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
3140
3141         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
3142
3143 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
3144
3145         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
3146
3147 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
3148
3149         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
3150
3151         * tests/testgtk.c (create_tooltips): Remove usage of
3152         gtk_widget_set().
3153
3154 2001-06-05  Havoc Pennington  <hp@redhat.com>
3155
3156         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
3157
3158         Applying patch from Jeff Franks, with function docs added.
3159         
3160         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
3161         remove call to set_mnemonic_widget, change docs a bit.  
3162
3163         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
3164         new function
3165
3166         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
3167         new function
3168
3169         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
3170
3171         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
3172         function
3173         (gtk_radio_button_new_with_mnemonic_from_widget): new function
3174
3175         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
3176         new function
3177
3178         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
3179         function        
3180
3181         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
3182         auto-selection of mnemonic widget.
3183
3184 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
3185
3186         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
3187         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
3188         (gtk_tree_view_column_set_min_width): ditto.
3189
3190 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
3191
3192         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
3193         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
3194
3195 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
3196
3197         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
3198         gtk_clist_thaw().
3199
3200 2001-06-04  Havoc Pennington  <hp@pobox.com>
3201
3202         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
3203         releases for buttons 6, 7
3204
3205 2001-06-04  Havoc Pennington  <hp@redhat.com>
3206
3207         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
3208         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
3209         #55562
3210
3211 2001-06-04  Havoc Pennington  <hp@redhat.com>
3212
3213         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
3214         where text_view->layout == NULL by assuming its size is 0, 
3215         i.e. same as if we haven't done any reflow. Reported by 
3216         Hidetoshi Tajima #55448 
3217
3218 2001-06-04  Havoc Pennington  <hp@redhat.com>
3219
3220         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
3221         and 7 for scroll left/right, from Thomas Broyer
3222
3223 2001-05-10  Havoc Pennington  <hp@redhat.com>
3224
3225         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
3226         we need to parse the xsetting as if it were an RC file string.
3227
3228         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
3229         value of palette from settings, not from static variable
3230
3231         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
3232         xsettings translation table
3233
3234         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
3235         hardcoding the toolbar style conflicts with new customizable 
3236         toolbar style philosophy
3237         (gtk_toolbar_class_init): add settings for default toolbar style;
3238         these are used unless the app specifically forces a toolbar style
3239
3240         * gtk/gtksettings.c (settings_install_property_parser): only
3241         return at the start if we warn and parser == NULL
3242
3243         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
3244         palette changed handler so we don't notify dead color selections
3245
3246         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
3247         xthickness/ythickness of 0 or 1 properly 
3248         (gtk_default_draw_resize_grip): clear the background behind the
3249         resize grips, and align to bottom right if we square the 
3250         area to be drawn.
3251
3252         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
3253         statusbar label to 1, so it doesn't make toplevels resize oddly
3254         (gtk_statusbar_size_request): add grip size to request
3255         (gtk_statusbar_size_allocate): hack so the hbox still works with 
3256         the grip size in the request
3257
3258         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
3259         bug where showing all on a toplevel makes the toolbar 
3260         button text appear despite the toolbar mode
3261
3262         * gtk/gtkmenubar.c: add internal padding style property
3263
3264         * gtk/gtktoolbar.c: Add internal padding style property; add
3265         shadow type style property
3266
3267         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
3268         state; and put Container::border_width outside the frame
3269
3270         * gtk/gtktextview.c: don't draw focus rectangle if we're in
3271         interior focus mode, we just use blinking cursor
3272
3273 2001-06-04  Havoc Pennington  <hp@redhat.com>
3274
3275         * configure.in: Make gdk-pixbuf have same version number as GTK
3276
3277 2001-06-04  Havoc Pennington  <hp@redhat.com>
3278
3279         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
3280         digits greater than 6. If there actually are limits (which there
3281         likely aren't), should clamp to them not warn.
3282         (gtk_spin_button_new_with_range): don't take log of 0
3283         (gtk_spin_button_size_request): use digits to compute size
3284         request, rather than step increment.
3285
3286         * tests/testgtk.c (create_spins): test larger values of digits
3287         
3288         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
3289         font on map not expose, so we don't get weirdness during scrolling
3290
3291 2001-06-04  Havoc Pennington  <hp@redhat.com>
3292
3293         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
3294         Sam Solon, bug #54577, update value even if not drawable.
3295
3296 2001-06-04  Havoc Pennington  <hp@redhat.com>
3297
3298         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
3299         SCROLL_LEFT, reported by Thomas Broyer.
3300
3301 2001-06-04  Havoc Pennington  <hp@redhat.com>
3302
3303         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
3304         Process updates immediately, to prevent funny lag effect
3305         when scrolling, at some mild potential efficiency cost.
3306
3307 2001-06-04  Havoc Pennington  <hp@redhat.com>
3308
3309         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
3310         slider on the click.
3311
3312 2001-06-03  Havoc Pennington  <hp@pobox.com>
3313
3314         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
3315         hscale/vscale details, so we can use it for scrollbar as well.
3316
3317         * tests/testgtk.c (reformat_value): honor digits from GtkScale
3318
3319         * gtk/gtkenums.h (GtkTroughType): Remove this enum
3320         (GtkScrollType): add START and END from GtkTroughType
3321
3322         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
3323         its x/y arguments
3324
3325         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
3326         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
3327         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
3328         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
3329         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
3330
3331         Notable changes in the process:
3332          
3333         - stepper_size style property is the height for vertical 
3334           ranges, width for horizontal; the other dimension matches
3335           the trough size
3336         - add ability to do NeXT-style steppers (and several other styles
3337           that don't make any sense)
3338         - added min_slider_length, fixed_slider_length properties to
3339           GtkScrollbar
3340         - cleaned some private (or at least useless) functions out of
3341           gtkscale.h    
3342         - moved bindings to GtkScale from subclasses, even arrow keys,
3343           since blind users don't know scale orientation.
3344         - change move_slider action signal to use new GtkScrollType,
3345           remove GtkTroughType argument
3346         - digits rounds the values a range will input to the given 
3347           number of decimals, but will not try to force adjustment 
3348           values set by other controllers. That is, we no longer
3349           modify adjustment->value inside a value_changed handler.
3350         - added getters for GtkScale setters
3351         - middle-click begins a slider drag
3352         
3353 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
3354
3355         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
3356         getting the focus code to work.
3357         (gtk_tree_view_class_init): Add a bunch of keybindings.
3358
3359         * gtk/gtktreeviewcolumn.c
3360         (gtk_tree_view_column_set_cell_data_func):
3361         s/GtkCellDataFunc/GtkTreeCellDataFunc.
3362         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
3363         of "properties_changed" to help justify the death of the latter
3364         signal. (-:
3365
3366         * tests/testtreefocus.c (main): Let some columns be focussable to
3367         test focus better.
3368
3369 2001-06-01  Havoc Pennington  <hp@redhat.com>
3370
3371         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
3372         
3373         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
3374         overwrite in overwrite mode if we already deleted the selection
3375         and replaced it with new text.  
3376
3377         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
3378         selection to an empty range, clear the clipboard if we owned it.
3379         (gtk_label_set_selectable): give up selection if we become
3380         unselectable.
3381         (gtk_label_state_changed): override state changed to unselect text
3382         when insensitive
3383         (get_text_callback): add paranoia check that indexes aren't
3384         outside of label->text
3385         (gtk_label_select_region): make -1 for start_offset mean "end of
3386         label," for consistency with GtkEditable
3387
3388         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
3389         GTK_DIALOG_NO_SEPARATOR flag
3390
3391 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
3392
3393         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
3394         notifications on non-existant "enable_arrow_keys".
3395         (#53753, Skip Montanaro)
3396
3397 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
3398
3399         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
3400         GDK_TYPE_RECTANGLE.
3401
3402         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
3403         of allocation argument be GDK_TYPE_RECTANGLE.
3404
3405 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
3406
3407         * gtk/gtkoptionmenu.c: Account for the fact that the border
3408         width is _outside_ the window. (Fixes #54585, bug found
3409         by Bastien Nocera.)
3410
3411 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
3412
3413         * gtk/gtksettings.c (gtk_settings_get_property): Validate
3414         value from GDK settings against parameter spec.
3415
3416         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
3417         to temporary values and use g_value_transform(), since
3418         thinking that GValue was going to be easy or efficient
3419         to use was, of course, a mistake.
3420
3421         * gtk/gtksettings.c: Add cursor blink setting.
3422         
3423         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
3424
3425         * gtk/gtkentry.c: Add cursor blinking.
3426
3427         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
3428         cursor blink global settings.
3429
3430         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
3431         for :text_position in places where it is missing.
3432
3433 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
3434
3435         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
3436
3437 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
3438
3439         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
3440         not pkg-config. (#51032)
3441
3442         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
3443         (fixes #51952, James Henstridge)
3444         
3445 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
3446
3447         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
3448         Rename to the more correct gtk-go-up.
3449
3450         * gtk/stock-icons/stock_menu_sort_ascending.png:
3451         Added new file.
3452         
3453         * gtk/stock-icons/stock_menu_sort_descending.png:
3454         Changed to show descending instead of ascending.
3455
3456         * gtk/gtkiconfactory.c:
3457         Added menu size icon to sort ascending.
3458
3459         * gtk/stock-icons/Makefile.am:
3460         Added stock_menu_sort_ascending.png.
3461         
3462         * gtk/gtkseparatormenuitem.c:
3463         Use correct typenames.
3464
3465 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3466
3467         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3468         gulong as in GSignal.
3469
3470 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3471
3472         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3473         instances of GtkCellRenderer in code (all but dnd icon code).
3474         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3475         there, and I can do multiple Cells per column.
3476
3477         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3478
3479         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3480         when model was unreffed prior to removing the row reference.
3481
3482 2001-05-25  Havoc Pennington  <hp@redhat.com>
3483
3484         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3485         you call gtk_stock_list_ids()
3486
3487         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3488         in list
3489
3490 2001-05-25  Havoc Pennington  <hp@redhat.com>
3491
3492         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3493         set can render without falling back to missing image icon
3494
3495         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3496         size of text, instead of random values
3497
3498         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3499         size of tree view, instead of random values
3500
3501         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3502         image in an appropriate size
3503
3504         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3505         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
3506
3507         Throughout: fix GTK_STOCK_BUTTON_ instances
3508         
3509         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
3510         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
3511         Add a bunch of new stock items/icons
3512
3513         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
3514         new function, convenience for inserting columns with a data func
3515
3516         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
3517         (_gtk_icon_factory_list_ids): use list of all factories to
3518         generate a list of all known IDs
3519
3520         * gtk/gtkstock.c (gtk_stock_list_ids): replace
3521         gtk_stock_list_items() with a function that returns all IDs known
3522         including those for GtkIconFactory.
3523
3524 2001-05-25  Hans Breuer  <hans@breuer.org>
3525
3526         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
3527         work -> check boxes and radio buttons are drawn now, even on win9x.
3528         Improved line settings a bit, still no clue how to get really dotted
3529         lines on win9x, on NT it's PS_ALTERNATE.
3530
3531         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
3532         GDK_HINT_MIN_SIZE as well
3533
3534         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
3535
3536         * gtk/gtk.def : updated
3537
3538         * gtk/gtktreeprivate.h : change column_drop_func to be a function
3539         pointer not a function pointer pointer
3540
3541         * tests/testdnd.c : include <stdlib.h> for putenv prototype
3542
3543         * tests/testsocket.c : made it compile on win32 again
3544
3545         * tests/makefile.msc : one more test-app uses prop-editor.obj
3546
3547 2001-05-22  Havoc Pennington  <hp@pobox.com>
3548
3549         * gtk/gtkbin.c (gtk_bin_get_child): New function
3550
3551 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
3552
3553         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
3554         to ignore when doing compose processing.
3555
3556 2001-05-22  Joe Shaw  <joe@ximian.com>
3557
3558         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
3559         Simplify as suggested by Havoc. Just get the last iter and work
3560         backward to the tag instead of getting a line and working back from
3561         there. Fixes passing in an invalid offset to
3562         iter_init_from_byte_offset().
3563
3564 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
3565
3566         * gtk/gtktreeview*.h: 
3567         * gtk/gtkcell*.h:
3568         * gtk/gtk*store.h:
3569         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
3570         macros to all objects.
3571
3572 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
3573
3574         * gtk/gtkcellrenderertext.c
3575         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
3576         with very large (TM) amounts of text.  May be moved to
3577         GtkCellRenderer in the future, though I'm not sure it wants to be
3578         this accessible.
3579
3580         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
3581         More sanity brought to this class.  I like it.
3582
3583         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
3584         case.  Kids, don't try this at home.
3585
3586         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
3587         convenience function.
3588
3589         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
3590
3591 2001-05-21  Alexander Larsson  <alexl@redhat.com>
3592
3593         * gtk/gtkfontsel.c:
3594         Added properties. Based on patch by Lee Mallabone.
3595
3596         * gtk/gtkruler.c:
3597         * gtk/gtkhruler.c:
3598         * gtk/gtkvruler.c:
3599         * gtk/gtktext.c:
3600         * gtk/gtktextview.c:
3601         Converted GtkArg to GParam. Based on patches by John Margaglione.
3602
3603         * tests/Makefile.am:
3604         * tests/testtext.c:
3605         Add a property editor to testtext.
3606         
3607 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
3608
3609         * gtk/gtk{h,v,}paned.c: Only show the separator if 
3610
3611         * configure.in: Fixed reversed conditional causing all image
3612         libraries to be linked in.
3613
3614 2001-05-21  Joe Shaw  <joe@ximian.com>
3615
3616         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
3617         that top_y needs to be >= 0.
3618
3619 2001-05-11  Havoc Pennington  <hp@pobox.com>
3620         
3621         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
3622         losing connection to the X server.
3623
3624 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
3625
3626         * configure.in: Start checks for X from pangox/pangoxft
3627         CFLAGS to avoid duplicate libraries.
3628
3629         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
3630
3631         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
3632         to include gobject.
3633         
3634 2001-05-18  Alexander Larsson  <alexl@redhat.com>
3635
3636         * gtk/gtkspinbutton.c:
3637         Convert GtkArgs to GParams. Based on patch by John Margaglione.
3638         Also do size request reasonable for MAXDOUBLE. Previously it printed
3639         the limits to a buffer and overran it. Instead do it using log10() and
3640         limit the width to 10 digits.
3641         
3642         * gtk/gtkwidget.c (gtk_widget_get_property):
3643         Correctly handle setting the parent property to NULL.
3644
3645 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
3646
3647         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
3648         style attributes even if the widget isn't realized.
3649
3650         * demos/gtk-demo/main.c: Use a slightly smaller font.
3651
3652 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
3653
3654         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
3655         This is something that only a widget writer would ever want
3656         to change.
3657
3658         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
3659         gtk_signal_emit_by_name().
3660
3661         * gtk/gtkviewport.c: Fix some warnings.
3662
3663         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
3664         allowing the requisitions of multiple widgets to be grouped
3665         together.
3666
3667         * tests/testgtk.c: Add GtkSizeGroup test
3668
3669         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
3670
3671         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
3672         warnings.
3673
3674         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
3675
3676 2001-04-28  Martin Baulig  <baulig@suse.de>
3677
3678         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
3679         to gtk_image_menu_item_set_icon() and made it work if there's already
3680         an image.
3681         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
3682         (gtk_image_menu_item_new_with_label): New function.
3683
3684 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
3685
3686         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
3687         highlighting code!!!!  The result is okay so long as you don't try
3688         to stress it.  It also highlights a bug in the TextView so it's in
3689         an unproportional font right now until it's fixed.
3690
3691         *demos/gtk-demo/*.c: Clean up code a bit to make it
3692         ugly-parser(TM) friendly. (-:
3693
3694 2001-05-17  Joe Shaw  <joe@ximian.com>
3695
3696         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
3697         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
3698         if it is only partially onscreen.
3699
3700 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
3701
3702         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
3703         not by characters.
3704
3705         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
3706         are not zero or one; that is, when graphemes of multiple characters
3707         are involved.
3708
3709         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
3710         FIXME.
3711
3712 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
3713         
3714         * gtk/gtkbbox.c:
3715         Add properties, based on patch by Lee Mallabone.
3716
3717         * gtk/gtknotebook.c:
3718         * gtk/gtktoolbar.c:
3719         Convert from GtkArg to GParam, based on patch by John Margaglione.
3720         
3721         * gtk/gtkhscale.c:
3722         * gtk/gtkvscale.c:
3723         * gtk/gtkhscrollbar.c:
3724         * gtk/gtkvscrollbar.c:
3725         * gtk/gtkrange.c:
3726         Move adjustment property to GtkRange.
3727
3728         * gtk/gtklabel.c:
3729         Setup mnemonics on property changes
3730
3731         * gtk/gtkwidget.c (gtk_widget_get_property):
3732         GdkExtensionMode is an enum, not a flag. Set it with
3733         g_value_set_enum ().
3734
3735         * tests/prop-editor.c:
3736         Better propery editor.
3737
3738         * tests/testgtk.c:
3739         Add new property test. Pass zero to the property editor to
3740         get properties from all derived types.
3741         
3742 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3743
3744         * autogen.sh (have_automake): Require libtool-1.4,
3745         automake-1.4p1.
3746
3747         * acinclude.m4: Remove libtool macros.
3748
3749         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3750         modules.
3751
3752         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3753         for libgdk.
3754
3755         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3756         libgdk.la for libgtk.
3757
3758         * modules/input/Makefile.am: Make modules have full
3759         dependencies.
3760
3761 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3762
3763         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3764         #54699 where paths weren't being checked for correctness.
3765
3766 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3767
3768         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3769         in any order you wan, whether or not the column is added to the
3770         tree, or the tree is realized.  Yay!
3771
3772         * gtk/gtktreeviewcolumn.c
3773         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3774         sorting columns a lot saner
3775
3776         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3777         new function to actually set wether or not a column is
3778         reorderable.
3779
3780         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3781         if we have 'em.
3782
3783         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3784         Fix nasty bug where we were showing the button just before
3785         realizing it.  As a result, the parent window was
3786         tree_view->window instead of tree_view->priv->header_window.
3787
3788         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3789         to let you easily reorder a list or tree.
3790
3791 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3792
3793         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3794         from args to properties.
3795
3796 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3797
3798         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3799         from args to properties. (#51957)
3800
3801         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3802         calls to after ->set_property call.
3803
3804 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3805
3806         * tests/prop-editor.c: Block against redundant changes.
3807
3808         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3809         properties.
3810
3811 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3812
3813         * gdk/gdkpixmap.h: Remove creative formatting.
3814
3815 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3816
3817         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3818         property API. (#51669)
3819
3820         * gtk/gtkscale.c: Patch from John Margaglione converting to
3821         property API. (#51891)
3822
3823         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3824         to property API. (#50985)
3825
3826 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3827
3828         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3829         buffering state across expose event, so we still call end_paint().
3830
3831 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3832
3833         * gtk/gtkhsv.c (paint_triangle):
3834         Expose the ring in the triangle at the correct place when
3835         exposing just a part of the triangle.
3836
3837         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3838         Return FALSE, or window focusing will not work.
3839
3840 2001-05-11  Havoc Pennington  <hp@pobox.com>
3841
3842         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3843         #54144
3844
3845         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3846         bug #54330
3847
3848 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3849
3850         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3851         propagate exposes to NULL child.
3852
3853         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3854         against not having one of the scrollbars.
3855
3856         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3857         we don't keep a mnemonic window if we have no mnemonic installed.
3858
3859 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3860
3861         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3862         it has the _important_ side effect of initializing a class.
3863
3864 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3865
3866         * gdk/linux-fb/gdkprivate-fb.h:
3867         Make sure you can compile out the implementation/wrapper assert
3868         macros.
3869
3870         * gdk/linux-fb/gdkdrawable-fb2.c:
3871         Check implementation/wrappers, initialize type for pixmap dummys.
3872
3873         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3874         Hide the cursor if reading from the screen.
3875
3876         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3877         Fix sign bug in tiling code.
3878
3879         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3880         Handle background pixmaps.
3881
3882 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3883
3884         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3885         function to let user control where columns are dragged.
3886
3887         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3888         Escape is pressed.
3889
3890 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3891
3892         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3893         "columns_changed" signal.
3894         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3895         motion code to draw arrows to the side if indicator is outside the
3896         widget.
3897         (gtk_tree_view_map_expanded_rows): Implement.
3898
3899 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3900
3901         * demos/testpixbuf-save.c: 
3902         * demos/testpixbuf-drawable.c:
3903         Include gdkfb.h on linux-fb.
3904
3905 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3906
3907         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3908         New function for getting toplevel window at position.
3909         (gdk_drag_find_window): Use get_toplevel_window () instead
3910         of gdk_window_get_pointer(). (gdk_drag_status): Use
3911         correct context for getting window.
3912
3913         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3914         g_strdup the atom name.
3915
3916         * gdk/linux-fb/gdkwindow-fb.c:
3917         Costmetic fix.
3918
3919         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3920         Add code for changing cursor on linux-fb backend (same as
3921         win32).
3922
3923 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3924
3925         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3926         present before doing anything with it.  Patch from Håvard Kvålen
3927         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3928         report was not for the development branch of GTK+, but it applies
3929         anyways).
3930
3931 2001-05-04  Havoc Pennington  <hp@redhat.com>
3932
3933         * configure.in: fix some shell typos
3934
3935         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3936
3937         * gtk/gtkimage.c: handle animations
3938
3939         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3940         border_width * 2, not just border_width
3941
3942         * gtk/gtkscale.c: add "format_value" signal to allow people
3943         to override the way values are drawn.
3944         (gtk_scale_get_value_size): fix width/height mistake,
3945         and compute size from actual displayed text, not 
3946         from made-up text.
3947
3948         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3949         signal registration
3950
3951         * tests/testtext.c: Add "Remove all tags" menu item for testing
3952
3953         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3954
3955         * demos/gtk-demo/main.c (main): add hack so we can find modules
3956         without installing gtk
3957
3958         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3959
3960         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3961         factor)
3962         (gtk_cell_renderer_text_set_property): remove some bogus
3963         g_object_notify
3964
3965         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3966         factor
3967
3968         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3969         to layout
3970
3971         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3972         gtk_text_iter_is_first
3973
3974 2001-01-06  Hans Breuer  <hans@breuer.org>
3975
3976         * gdk/gdk.def : updated exports
3977
3978         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3979         gdk won't compile anymore
3980  
3981         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3982         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3983         Improved gdk_flush () to not only do pending drawing operations
3984         but also process all currently pending events. This should make
3985         the behaviour more similar to the X11 version.  
3986
3987         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3988         option needs to be set even if there is no GDK_GC_BACKGROUND.
3989         (gdk_win32_hdc_get) : use predraw_set_background () independent
3990         of value_mask. This allows to draw dashed lines leaving the original
3991         background intact.
3992
3993         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3994         after processing, because we can't reuse it as the X11 version does.
3995
3996         * gtk/gtk.def : updated exports
3997
3998         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3999         would like to get rid of this file again, and use straight
4000         makefile.msc again, as the other Gtk+ subdirs do)
4001
4002         * test/makefile.msc (new file) : build the test apps here
4003
4004 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
4005
4006         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
4007         strike-through setting
4008         (gdk_draw_layout_line_with_colors): Render strike-through
4009
4010 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
4011
4012         * Release 1.3.5
4013
4014         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
4015
4016         * NEWS: Updated
4017
4018         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
4019         Makefile breakage.
4020
4021 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
4022
4023         * demos/gtk-demo/images.c (progressive_timeout): Fix
4024         typo in filename.
4025
4026         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
4027         out FIXME warning; just too annoying.
4028
4029 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
4030
4031         * gdk/linux-fb/gdkcolor-fb.c:
4032         Better error messages.
4033
4034         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
4035         Initialize abs_x and abs_y.
4036         
4037         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4038         Correct handling of stipple offset.
4039
4040         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
4041         Treat directcolor framebuffers as truecolor.
4042         
4043 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
4044
4045         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
4046         dependency on Atk for accessibility support.
4047
4048         * configure.in **/Makefile.am: Major reworking of substituted
4049         variables for CFLAGS/LIBS to make a lot more sane and 
4050         keep the the compile/link lines a bit shorter.
4051
4052         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
4053
4054 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
4055
4056         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
4057         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
4058         use _gtk_boolean_handled_accumulator.
4059
4060 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
4061
4062         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
4063         to fix things so clicking inside selection leaves cursor
4064         at point where clicked. (#50324)
4065
4066         * gtk/gtksettings.c (gtk_settings_class_init): Restore
4067         sane value for default double click time.
4068
4069         * tests/testtext.c (test_init): Really path to input modules.
4070
4071 2001-05-03  Sven Neumann  <sven@convergence.de>
4072
4073         * demos/testpixbuf-save.c: include target-specific headers as
4074         done in testpixbuf-drawable.c
4075
4076 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
4077
4078         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
4079         new_text_length appropriately when we run into the 
4080         size limit for the entry. (#53445, reported by Jeff Franks)
4081
4082         * tests/testgtk.c (create_entry): Remove most of the
4083         property toggle buttons. Replace with a "Props" button
4084         that brings up a property editor.
4085
4086         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
4087         Split the property editor code out for reuse, improve.
4088
4089 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
4090
4091         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
4092         trap errors around calls to XSetInputFocus since we have
4093         no way of knowing reliably whether we are viewable or
4094         not. (#53947)
4095
4096 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
4097
4098         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4099         fix bug in dropping columns.  Moving columns now basically works
4100         modula some fine tuning.
4101
4102 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
4103
4104         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
4105         autoscroll support.  It mostly works, but could use some fine
4106         tuning.
4107         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4108         Actually move the column.
4109
4110 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
4111
4112         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
4113           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
4114           New default theme! A slighly improved version of the 2.0 Raleigh
4115           theme, with Windows-esque focus/drawing default. 
4116           (GtkWidget::interior_focus defaults to TRUE.)
4117
4118         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
4119
4120 2001-04-30  Havoc Pennington  <hp@pobox.com>
4121
4122         * tests/testtext.c (line_numbers_expose): fix to work with
4123         gtk_paint_layout change
4124
4125 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4126
4127         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
4128           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
4129           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
4130           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
4131
4132         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
4133           with GtkWidget::interior_focus = TRUE better.
4134
4135         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
4136         ::default_outside_border for more flexibility.
4137
4138         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
4139         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
4140         change that had to be made with g_object_get.
4141
4142 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
4143
4144         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
4145         (gtk_tree_view_move_column_after): Clean up interface. 
4146
4147 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
4148
4149         * gtk/gtkpacker.h:
4150         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
4151          to gtkenum.h.
4152
4153         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
4154         handled in switch).
4155
4156         * gtk/Makefile.am:
4157         (gtk.defs): generate enum portions with  glib-mkenums.
4158         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
4159         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
4160         
4161         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
4162         addition.
4163
4164         * docs/Changes-2.0.txt: keep a note on signal handlers now
4165         not getting emitted during the emission they were connected within.
4166
4167 2001-04-28  Havoc Pennington  <hp@pobox.com>
4168
4169         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
4170
4171 2001-04-24  Havoc Pennington  <hp@redhat.com>
4172
4173         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
4174         (gtk_text_layout_move_iter_to_next_line): fix these two for
4175         invisible text, lots of other stuff still hosed.
4176
4177         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4178         new function, replaces the get/set palette stuff. This function 
4179         is intended for use by libgnomeui which should set the hook to a
4180         thing which sets the palette in GConf, and we need the
4181         GConf-to-xsettings proxy which will result in the change being
4182         propagated back to the GTK app.
4183
4184         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
4185         about unusable signals that it may be because the signal has 
4186         parameters.
4187
4188         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
4189         style, otherwise gtkrc.c won't know to create a new GtkStyle for
4190         it.
4191         (gtk_widget_modify_color_component): call
4192         gtk_widget_modify_style() so the rc style will get copied.
4193         (gtk_widget_modify_font): ditto
4194
4195         * gtk/gtkrc.c: make a couple variables static
4196
4197         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
4198         help button by default, since it does nothing
4199
4200         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
4201         around with UI
4202
4203         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
4204         so we can have tooltips
4205
4206         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
4207         can have tooltips
4208
4209         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
4210         GDK_ENABLE_BROKEN, because its memory behavior is completely
4211         hosed.
4212
4213         * gtk/gtknotebook.c: remove key press handler, replace with
4214         binding set, add numeric keypad support
4215
4216         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
4217
4218         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
4219
4220         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
4221         addition to plain Delete
4222
4223         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
4224         GDK_KP_Enter in addition to GDK_Return
4225
4226         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
4227         activate on entry instead of key press
4228         (gtk_font_selection_on_clist_key_press): get
4229         rid of this signal handler, not needed with new font sel.
4230
4231         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
4232         no-longer-needed emit_stop_by_name(), just return TRUE
4233
4234         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
4235         cruft, this widget is no longer focusable.
4236
4237         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
4238         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
4239         move_slider action signal, add binding set for vscale/hscale, in
4240         the process support numeric keypad
4241
4242         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
4243         make GDK_Return and GDK_KP_Enter activate the entry via 
4244         binding set, instead of hardcoded.
4245
4246 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
4247
4248         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
4249         code.  Some documentation added.
4250
4251 2001-04-27  Havoc Pennington  <hp@redhat.com>
4252
4253         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
4254
4255         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
4256
4257         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
4258         line/para separators
4259         (gtk_entry_create_layout): set single paragraph mode on the layout
4260
4261         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
4262         spacing between the image and label; instead, inside a button box 
4263         the button will get extra space that will go there, but if people 
4264         configure button box for 0 chubbiness, then there's no spacing.
4265
4266         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
4267         and min/max size style properties, so people can tune their
4268         chubbiness.
4269
4270         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
4271         functions
4272
4273         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
4274         space_style, and button_relief into style properties, remove
4275         functions for setting them
4276         
4277         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
4278         it back down
4279
4280         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
4281         types from gtk_widget_style_get
4282
4283         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
4284         with a style property.
4285
4286         * gdk/x11/gdkevents-x11.c: namespace the settings
4287
4288         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
4289
4290         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
4291         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
4292         be used. Also, translate doc strings for settings. Also, namespace
4293         the double-click-time property. Also, remove bell properties crap.
4294
4295 2001-04-27  Sven Neumann  <sven@gimp.org>
4296
4297         * Makefile.am: before creating links, check if pkg-config files
4298         exist for the default target. Otherwise link to the pkg-config files
4299         that got installed with this build.
4300
4301 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
4302
4303         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
4304         dragging code.  Revealed some (potential) GdkWindow bugs.
4305
4306         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
4307         _gdk_window_init_position to the end of reparent to fix the case
4308         of reparenting when new_x != old_x and new_y != old_y.
4309
4310 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
4311
4312         * gtk/gtkentry.c (strstr_len): Fix optimization that
4313         was correct for the use here, but completely incorrect
4314         in general.
4315
4316 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
4317
4318         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
4319         until patch adding gtk_window_set_size() is recommitted. 
4320
4321         * **Makefile.am configure.in gdk/x11/gdkim-11.c
4322           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
4323           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
4324           (#10784)
4325
4326 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
4327
4328         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4329         window == NULL in a number of cases.
4330
4331         * tests/testdnd.c: Set module path for gdk-pixbuf.
4332
4333 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
4334
4335         * gtk/Makefile.am xembed.h: File containing #defines
4336         for XEMBED protocol.
4337
4338         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
4339
4340         - Change protocol from old plug/socket specific protocol
4341           to XEMBED draft
4342         - Various fixes to work with GTK+-2.0
4343
4344         Still quite a bit of work to do here to handle initiation
4345         from the socket side (as specified by XEMBED), to handle
4346         the more advanced features of XEMBED, and to figure out
4347         a good way to handle same-app embedding with less overhead
4348         than using full XEMBED.
4349
4350 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
4351
4352         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
4353         track of whether the toplevel has the focus; only send
4354         focus-in events to the focus widget when the window
4355         actually has the focus.
4356
4357 2001-04-25  Havoc Pennington  <hp@pobox.com>
4358
4359         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
4360         were still in the header
4361
4362 2001-04-24  Alexander Larsson  <alexl@redhat.com>
4363
4364         * gtk/gtkclist.[ch]:
4365         * gtk/gtkctree.c:
4366         When there is a row highlighted for D'n'D it must alse
4367         be painted hightlighted on exposes. Otherwise exposes from
4368         the icon being dragged will mess up the hightlight.
4369
4370         * gtk/gtkfontsel.c:
4371         Don't recenter selected font when exposing the font family
4372         clist. This means you can now actually scroll the font family
4373         list.
4374
4375         * gtk/gtknotebook.c:
4376         Fix focus movement on scrolling tabs that are placed on the left
4377         and right.
4378
4379 2001-04-21  Havoc Pennington  <hp@pobox.com>
4380
4381         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
4382         empty/invisible lines.
4383
4384         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
4385         (gtk_text_iter_set_visible_line_index): new functions to set
4386         indexes excluding invisible text
4387
4388         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
4389         index
4390
4391         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
4392         (gtk_text_iter_get_visible_line_offset): new functions to 
4393         get indexes excluding invisible text
4394
4395         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
4396         bunch of extra padding that served no purpose
4397
4398         * gtk/gtkdialog.c: Make all the spacings configurable via style
4399         properties, for chubbiness configuration in themes
4400
4401         * tests/testtext.c: fix path to the immodules.
4402         
4403 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
4404
4405         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
4406         got munched by #endif.
4407
4408         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
4409
4410         * gtk/gtktreeview.c: Refactored code to clean up a number of
4411         events.
4412
4413         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
4414         values to make consistent with other functions.  Spotted by Jeff
4415         Franks <jcf@tpg.com.au>.
4416
4417         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
4418         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
4419
4420 2001-04-23  Sven Neumann  <sven@gimp.org>
4421
4422         * gtk/Makefile.am
4423         * gtk/gtkplug.c
4424         * gtk/gtksocket.c: on request of Owen, reverted my last change 
4425         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
4426
4427 2001-04-23  Sven Neumann  <sven@gimp.org>
4428
4429         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
4430         compile for non-X11 targets again
4431
4432 2001-04-20  Alexander Larsson  <alexl@redhat.com>
4433
4434         * gtk/gtkcolorsel.[ch]:
4435         API Change. Take GdkColor arguments instead of gdouble *.
4436         Leave the old gtk_color_selection_set_color for compatibility,
4437         but marked deprecated.
4438         Do correct rounding when converting RGB <-> HSV.
4439         
4440         * gtk/gtkcolorseldialog.c:
4441         * tests/testgtk.c:
4442         Use new GtkColorSelection API.
4443
4444         * gtk/gtkhsv.c:
4445         Fix problem selecting colors in triangle when Hue is 330.
4446         Fix some black dots around the HSB triangle.
4447         
4448         * gtk/gtkfilesel.c:
4449         return FALSE from the focus_in_event handler to fix focus problems.
4450
4451 2001-04-18  Havoc Pennington  <hp@redhat.com>
4452
4453         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
4454         set, so keybindings are configurable    
4455         (gtk_window_activate_default): Change to activate the focus widget
4456         instead if there's a focus widget, to be consistent with the
4457         behavior that previously existed in key_press_event
4458
4459 2001-04-18  Havoc Pennington  <hp@redhat.com>
4460
4461         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
4462
4463 2001-04-18  Havoc Pennington  <hp@redhat.com>
4464
4465         Close bug #50615:
4466         
4467         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4468         the layout
4469
4470         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4471
4472         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4473
4474         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4475         
4476         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4477         to blue for base, in addition to bg
4478         
4479 2001-04-18  Havoc Pennington  <hp@redhat.com>
4480
4481         * tests/testgtk.c (create_image): allow shrinking the image window
4482         to test that we clip to allocation.
4483
4484         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4485         #9845
4486
4487         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4488
4489 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4490
4491         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4492         mode on shm segments to 0600. We'll see who complains.
4493
4494         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4495         _gdk_windowing_window_destroy() AFTER recursing through
4496         children.
4497
4498         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4499         testsocket_child on X.
4500
4501         * tests/testsocket[_child].c: Fix uses of
4502         gtk_window_get_default_accel_group().
4503
4504         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4505
4506         * gdk/gdkimage.c: (gdk_image_get):
4507         Deal with the possibility that XGetImage() might return NULL.
4508         Allocate the GdkImagePrivate structure only after XGetImage()
4509         succeeds in order not to dereference a NULL ximage pointer.  This
4510         prevents a core dump when XGetImage() fails - which is unlikely,
4511         but can happen due to race conditions accessing the geometries of
4512         drawables.  An x error will still be triggered, but the gdk image
4513         wrapper at least wont seg fault.
4514         
4515 2001-04-18  Havoc Pennington  <hp@redhat.com>
4516
4517         * gtk/gtkimage.c: fix to properly queue resizes when the image is
4518         set
4519
4520         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
4521         if the insertion point isn't editable
4522
4523         * demos/gtk-demo/images.c: Added a GtkImage demo
4524
4525         * demos/gtk-demo/drawingarea.c: drawing area demo
4526         
4527         * demos/gtk-demo/menus.c (create_menu): cleanups
4528
4529 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
4530
4531         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
4532           gdk/x11/gdkevents-x11.c: Introduce an extra child
4533         of toplevel windows that serves to hold the focus to
4534         avoid events being delivered to embedded windows.
4535
4536         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
4537         some extra variables to clean up code and reduce the
4538         number of casts.
4539
4540         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
4541         guint for 1 bit bit fields, not gboolean.
4542
4543 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
4544
4545         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4546         not TRUE. (Fixes #52925)
4547
4548 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
4549
4550         * Released 1.3.4
4551
4552         * NEWS: Updated
4553
4554         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
4555         use GTK_TYPE_ENUM.
4556
4557 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
4558
4559         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4560
4561         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
4562         names to compatibility #defines so docs work.
4563
4564         * gtk/gtkenums.h: Remove GtkMenuFactoryType
4565
4566         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
4567
4568         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4569
4570         * tests/testgtkrc: No magenta cursors, please.
4571
4572         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
4573
4574         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
4575         
4576 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
4577
4578         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
4579         grabs, since they are no longer necessary.
4580
4581         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
4582         by signal_connect() and call gtk_button_pressed() rather
4583         than signal_connect_after().
4584
4585         * tests/testgtk.c: Restore radio menu items to combos 
4586         since they'll look OK with Raleigh, and it is easier
4587         than finishing the process of removing them that was
4588         started earlier.
4589
4590 2001-04-16  Hans Breuer  <hans@breuer.org>
4591
4592         * gdk/gdk.def :
4593         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
4594
4595         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
4596         we are interested in the functions return value not the function address
4597         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
4598
4599         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
4600
4601 2001-04-14  Hans Breuer  <hans@breuer.org>
4602
4603         * gdk/gdk.def :
4604         * gdk/makefile.msc : updated
4605
4606         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
4607         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
4608         (the testgtk::text backgound pixmap is drawn again)
4609         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
4610         Win32 Pango change
4611         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
4612
4613         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
4614         Not sure if the returned settings have the right unit, because I couldn't
4615         find any docs for the X version ...
4616
4617         * gtk/gtk.def :
4618         * gtk/makefile.msc.in : updated
4619
4620 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
4621
4622         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
4623         wording problems. (Compared to version from Johannes Stezenbach to
4624         check correctness.)
4625
4626 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
4627
4628         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
4629         this to compile.
4630
4631 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
4632
4633         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
4634         not pixbufpos.
4635
4636         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
4637
4638         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
4639         are unsigned insts, therefore use g_value_set_uint.
4640         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
4641
4642 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
4643
4644         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
4645
4646         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
4647         GTK_TYPE_STRING.
4648
4649         * gtk/gtktreeview.c: New functions to allow initial column
4650         dragging work.
4651
4652         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
4653
4654         * tests/testtreefocus.c: give dave some love.
4655
4656         * tests/testtreesort.c: Modify test to check really long samples.
4657
4658 2001-04-11  Alexander Larsson  <alexl@redhat.com>
4659
4660         * gtk-2.0.m4: Pass pkg-config options
4661         before the other args so it works even if
4662         POSIXLY_CORRECT is set.
4663
4664 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
4665
4666         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
4667         0, interface 0).
4668
4669 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
4670
4671         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4672         check for action_func != NULL
4673
4674 2001-04-04  Sven Neumann  <sven@gimp.org>
4675
4676         * tests/testgtk.c (test_init): corrected path to gtk.immodules
4677
4678 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
4679
4680         * Released Gtk+-1.3.3.
4681
4682 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
4683
4684         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
4685
4686 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
4687
4688         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
4689         files to/from source dir. (if we don't stay in builddir, we
4690         can't reach make-inline-pixbuf.
4691
4692         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
4693         deps.
4694
4695         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
4696         ages 0).
4697
4698 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
4699
4700         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
4701         moved to the GtkTreeSortable interface.
4702
4703         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4704         Make more efficient (fixes #50262).
4705
4706 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
4707
4708         * NEWS: Updated.
4709
4710         * configure.in: Remove support for uninstalled glib.
4711
4712         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
4713         so as not to stop emission.
4714
4715         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
4716         is no longer supported.
4717
4718         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4719         into tests, change build order to build modules before
4720         gtk/.
4721
4722         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4723         to here.
4724
4725 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4726
4727         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4728         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4729         GPatternSpec. this is actually unlikely to cause breakage in
4730         third-party apps since except for gle, pretty much ever caller
4731         passes NULL here.
4732
4733         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4734
4735         * *.c: use g_pattern_*() API.
4736
4737         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4738
4739         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4740         directions aren't passed in.
4741
4742         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4743         functionality to be usable from gtkstyle.c as well, give precedence
4744         for conversion to user-supplied parsers.
4745         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4746
4747         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4748         _gtk_settings_parse_convert() for rcporperty value conversion.
4749
4750 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4751
4752         * gdk/linux-fb/gdkevents-fb.c:
4753         Add empty gdk_setting_get().
4754
4755 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4756
4757         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4758         variable names.
4759         
4760         * gtk/makeenums.pl: touch this so enum files get remade.
4761
4762 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4763
4764         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4765         work again when not sorted.
4766
4767         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4768         and "expand_row" signal, closing bug 52578.
4769
4770         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4771         support.
4772
4773         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4774         support.
4775
4776 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4777
4778         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4779         of changes to system settings, gdk_setting_get() to retrieve
4780         a single system setting.
4781
4782         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4783         to the draft XSETTINGS mechanism.
4784
4785         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4786         XSETTINGS.
4787
4788         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4789         of GDK settings changes to the GtkSettings object.
4790
4791         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4792         double-click-timeout property to GDK.
4793
4794         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4795         Define GDK boxed types here.
4796
4797         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4798         gdk/gdkenumtypes.[ch] for enum definitions.
4799
4800         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4801         * gtk/gtk-boxed.defs: Comment out GDK types
4802         * gtk/gtktypeutils.h: Remove GDK types
4803         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4804
4805 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4806
4807         * Applied patch from Ron Steinke to add signal accumulators
4808         so that signals with the convention 'TRUE return means
4809         handled' stop emission on a TRUE return.
4810
4811         * gtk/gtkmain.[ch]: Add private accumulator 
4812         _gtk_boolean_handled_accumulator, used throughout GTK+.
4813         
4814         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4815
4816         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4817         
4818         * gtk/gtkwidget.c: Add accumulators for event signals,
4819         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4820         for ::mnemonic-activate.
4821
4822         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4823
4824 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4825
4826         * gtk/gtkwidget.c: Add missing include.
4827
4828 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4829
4830         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4831         marshaller.
4832
4833         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4834         "changed" signal to "range_changed".
4835
4836         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4837         removing a tree from one model would remove all trees from that
4838         model.
4839         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4840         changed signal instead.
4841
4842 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4843
4844         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4845         chaining up to parent impl, since we have a INPUT_ONLY
4846         window.
4847
4848         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4849         foreground color for the cursor.
4850
4851 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4852
4853         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4854         param spec when caching property values, since we unref it
4855         later when we free the style.
4856
4857         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4858         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4859
4860 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4861
4862         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4863         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4864         stupidity.
4865
4866 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4867
4868         [ First pass at adding style properties. Still needs some definite
4869         fine-tuning. ]
4870
4871         * gtk/gtkbutton.c: Add ::default_spacing style property.
4872          
4873         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4874         ::indicator_spacing style properties.
4875
4876         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4877         style properties.
4878
4879         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4880         rather than a normal property.
4881
4882         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4883         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4884
4885         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4886         Honor ::interior_focus.
4887         
4888         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4889         TRUE.
4890
4891         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4892         Add ::slider_width, ::trough_border, ::stepper_size,
4893         ::stepper_spacing style properties.
4894
4895         * gtk/gtkscale.[ch] Add ::slider-length style property.
4896
4897 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4898
4899         * gdk/linux-fb/gdkwindow-fb.c:
4900         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4901         warnings that were spewed on startup.
4902
4903         * gtk/gtkwindow-decorate.c:
4904         gtk_window_reposition -> _gtk_window_reposition
4905
4906 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4907
4908         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4909         Add boxed type for GtkRequistion. Use it for ::size-request.
4910
4911         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4912         Add a new GtkBorder structure useful for geometry properties
4913         for widgets. Add corresponding GTK_TYPE_BORDER.
4914         
4915         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4916         Support automatic parser selection like
4917         gtk_settings_install_property_parser().
4918
4919         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4920         functionality for use by gtk_widget_class_install_style_property.
4921         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4922
4923 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4924
4925         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4926         g_param_spec_unichar(). 
4927
4928 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4929
4930         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4931         _NET window managers.
4932
4933         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4934
4935 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4936
4937         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4938         bad needs to be nuked, not just deprecated.
4939
4940         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4941         gtk_widget_popup().
4942
4943         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4944         
4945         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4946         widget.
4947         
4948         * docs/Changes-2.0.txt: updates.
4949         
4950 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4951
4952         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4953         for (i = 0; i < 100; i ++)
4954           g_print ("I will confirm it compile before committing\n");
4955
4956 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4957
4958         * gtk/gtktreestore.c: Initial work on implementing the
4959         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4960
4961 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4962
4963         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4964         reference counts around emissions where the widget is used afterwards.
4965         added freeze/thaws around multiple properties being notified.
4966         (_gtk_widget_get_aux_info): cleanups.
4967         
4968         * gtk/gtksettings.c (gtk_settings_install_property): provide
4969         default parsing functions for gdkcolor, enums and flags.
4970
4971         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4972         applied by owen.
4973         backed out gtk_window_get_location(), gtk_window_set_location(),
4974         gtk_window_get_size() and gtk_window_set_size(), these
4975         have to be sorted out wrg x/y/width/height/default_with/default_height
4976         properties.
4977         kept a flag in GtkWindowGeometryInfo to handle user
4978         resetting default sizes.
4979         cleaned up ZVT comments.
4980         bunch of assorted bug fixes, notification fixes.
4981         (_gtk_window_reposition): make this a really internal function.
4982         
4983         * gtk/testgtk.c: fixups.
4984         
4985 2001-03-31  Hans Breuer  <hans@breuer.org>
4986
4987         * config.h.win32.in : disable USE_MMX for msvc build cause
4988         the assembler doesn't fit and is out of my scope. Disable
4989         USE_GMODULE for msvc build as wel. The right way to share
4990         binaries on win32 would be to use libtiff.dll etc. To reduce
4991         installation hassles IMO it's better to include all fileformats
4992         builtin to gdk-pixbuf
4993
4994         * gdk-pixbuf/makefile.msc : new file
4995
4996         * gdk/gdk.def : updated
4997
4998         * gdk/win32/gdkevents-win32.c : don't erase the background if
4999         .no_bg is set. It improves the scrolling (e.g. of testgtk main
5000         buttons
5001         * gdk/win32/gdkgeometry-win32.c : added comment about the above
5002
5003         * gdk/win32/gdkwindow-win32.c : added three new functions like
5004         the X version. Only one is implemented, because the other two
5005         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
5006         be default behaviour on win32 anyway ...
5007
5008         * gtk/gtk.def : updated
5009
5010         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
5011         from where it was built and add an additional rule to automagically
5012         build gtkmarshal.[hc]
5013
5014         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
5015         before array access for the current entry isn't finished
5016
5017         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
5018         use g_return_val_if_fail
5019
5020         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
5021         for the static array, but let the compiler calculate it. It
5022         makes me wonder if gcc isn't capable to catch bugs like this ...
5023
5024 2001-03-31  James Henstridge  <james@daa.com.au>
5025
5026         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
5027         constant "-1" in the aux info structure.
5028
5029 2001-03-30  Alexander Larsson  <alexl@redhat.com>
5030
5031         * gtk/gtkbutton.c (gtk_button_get_property):
5032         * gtk/gtklabel.c:
5033         Remove leaks.
5034         
5035         * gtk/gtkcontainer.c:
5036         * gtk/gtkhscale.c:
5037         * gtk/gtkhscrollbar.c:
5038         * gtk/gtklayout.c:
5039         * gtk/gtkmisc.c:
5040         * gtk/gtkprogress.c:
5041         * gtk/gtkprogressbar.c:
5042         * gtk/gtkrange.c:
5043         * gtk/gtktable.c:
5044         * gtk/gtkviewport.c:
5045         * gtk/gtkvscale.c:
5046         * gtk/gtkvscrollbar.c:
5047         * gtk/gtkwidget.c:
5048         Property patches, based on patches from John Margaglione and Lee Mallabone.
5049
5050 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
5051
5052         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
5053         adjustment. Cleaned redundant preconditions (spin != NULL). Added
5054         inline API function docs.
5055         (gtk_spin_button_new_with_range): New convenience constructor.
5056         (gtk_spin_button_set_increments): New adjustment helper.
5057         (gtk_spin_button_set_range): New adjustment helper.
5058
5059         * gtk/testgtk.c : added test of the new convenince constructor and
5060         value_changed signals.
5061
5062 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
5063
5064         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
5065         listen to the reorder signal.
5066
5067 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
5068
5069         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
5070         to get the aux info structure fo the widget.
5071
5072         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
5073         above function.
5074
5075         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
5076
5077         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
5078         to get the size of the window manager frame, basically the same
5079         code that gdk_window_get_root_origin() had
5080         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
5081
5082         * gtk/gtkwindow.c (gtk_window_set_default_size): use
5083         gdk_window_resize() if the window is realized and resizeable
5084
5085         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
5086         typo so that setting gravity works
5087
5088         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
5089         allocation if auto_shrink is on, even if the default size
5090         has not changed.
5091
5092         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
5093         g_return_if_fail
5094
5095 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
5096
5097         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
5098         reordering/sorting work.  Now pretty much works.
5099
5100         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
5101         reorder mostly work.  Still need to get the parity correct.
5102
5103         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
5104         signal, so I can listen for the sort_column_changed signal so I
5105         can change my "sort_indicator" property.  Cool.
5106
5107 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
5108
5109         [ Patch from Havoc Pennington, hp@redhat.com ]
5110
5111         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
5112         Add functions gdk_window_begin_resize_drag/begin_move_drag
5113         to start resizing or moving a toplevel window. This
5114         is done either using the _NET_WM_MOVERESIZE protocol,
5115         or, if that isn't present, by emulation.
5116
5117         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
5118         to export the above to GTK+-land.
5119
5120         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
5121         
5122         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
5123         Move this function into gdkwindow, since we need it
5124         when implementing fallback resizing.
5125
5126         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
5127         Fix typo when setting gravity.
5128
5129         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
5130         Add an optional (but on by default) resize grip for resizing 
5131         the parent window.
5132
5133 01-03-29  Alexander Larsson  <alexl@redhat.com>
5134
5135         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
5136         Don't return TRUE from the event handler, that blocks all
5137         event signals on the tooltip widget. Now you can press buttons
5138         in toolbars again.
5139
5140 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
5141
5142         * gtk/testtext.c (create_buffer): Add missing NULL on
5143         valist.
5144
5145         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
5146         c-n-p problem with INCONSISTENT property.
5147
5148         [ Patch from Havoc Pennington  <hp@redhat.com> ]
5149
5150         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
5151         hook.
5152
5153         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
5154         signal as a hook for extending the default popup menu
5155
5156         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5157         use radio menu items for the input method menuitems
5158
5159         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
5160         inserted unicode from Ctrl-Shift-hex input method
5161
5162         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
5163         validatation here, already done at GtkTextBuffer level.
5164
5165         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
5166         popup_menu run action signal and Shift+F10 and Menu keybindings.
5167
5168         * gtk/gtkentry.c: implement a default handler for popup_menu
5169
5170         * gtk/gtktextview.c: implement a default handler for popup_menu
5171
5172         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
5173         from a key event
5174         
5175         * gtk/gtklabel.c: remove "trailer" cruft
5176
5177 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
5178
5179         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
5180         handle reordering of trees.  Seems to mostly work w/ the exception
5181         of the parity flag.
5182
5183         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
5184         signal.
5185
5186 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
5187
5188         * gtk/gtkwidget.h: c++ fixes.
5189
5190 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
5191
5192         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
5193         memory.
5194
5195 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
5196
5197         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
5198         Nils Barth fixing event return values. (#51041)
5199
5200         * gtk/gtkwidget.c: Fix some return values for default
5201         functions.
5202
5203         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
5204         return values for trough_keys functions.
5205
5206         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
5207         value for add_accelerator (shoudl have been a void
5208         return.)
5209
5210         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
5211         Fix return type of EVENT.
5212
5213         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
5214         signal return a boolean.
5215
5216 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
5217
5218         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
5219         reordered signal.
5220
5221         * tests/testtreesort.c (main): fix spelling.
5222
5223 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
5224
5225         * gtk/gtkliststore.c: More work on implementing sortable
5226         interface.
5227
5228 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
5229
5230         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
5231         reference the widgets in the resulting list. (#11821)
5232         This makes this consistent with gtk_container_children.
5233
5234         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
5235         uses of gtk_window_list_toplevels.
5236
5237 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
5238
5239         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
5240         a virtual function to set whether the IM context should use 
5241         the preedit string. (#51922)
5242         
5243 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
5244
5245         * gdk/gdkpango.h: Remove stale FIXME comment.
5246
5247 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
5248
5249         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
5250         Fixed bug that returned NULL if a filename was selected.
5251
5252 2001-03-24  Havoc Pennington  <hp@pobox.com>
5253
5254         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
5255         to contain the word "theme"
5256
5257 2001-03-24  Havoc Pennington  <hp@pobox.com>
5258
5259         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
5260         slower but finer-grained
5261         (gtk_hsv_focus): get initial focus on the ring or triangle 
5262         according to tab direction
5263
5264         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
5265
5266 2001-03-23  Havoc Pennington  <hp@pobox.com>
5267
5268         * gtk/gtkhsv.c: make this somewhat key-navigable
5269
5270         * gtk/gtkfontsel.c: mnemonics
5271
5272         * gtk/gtkgamma.c: mnemonics
5273
5274         * gtk/gtkcolorsel.c: add mnemonics to labels
5275
5276 2001-03-22  Havoc Pennington  <hp@pobox.com>
5277
5278         Applied big patch from Seth Lytle to fix event handler return
5279         values, slightly modified.
5280
5281         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
5282         handled.
5283         (gtk_calendar_key_press): return TRUE for GDK_space triggers
5284         select_day
5285
5286         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
5287         (gtk_clist_button_release): return TRUE if handled
5288
5289         * gtk/gtkcolorsel.c (mouse_release):
5290         (palette_activate): 
5291         (palette_press): 
5292         (palette_new): 
5293         (mouse_press): 
5294         (get_screen_color): 
5295         fixed return type (void to gboolean), return TRUE,
5296         added GTK_SIGNAL_FUNC cast
5297
5298         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
5299         (void to gboolean), and return TRUE
5300         (gtk_combo_button_release): changed return value to TRUE after
5301         gtk_grab_add on combo->popwin
5302
5303         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
5304         collapse or expand
5305
5306         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
5307         button/motion
5308
5309         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
5310         press/release and motion that trigger act
5311
5312         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
5313
5314         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
5315         for GDK_Return
5316         
5317         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
5318         (gtk_list_button_release): return TRUE if selection
5319
5320         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
5321         press
5322
5323         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
5324         (gtk_menu_shell_button_release): chain parent_menu_shell retval
5325
5326         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
5327         nothing triggered
5328         (gtk_notebook_button_release): return TRUE if we do anything
5329
5330         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
5331         (gtk_spin_button_button_release): return TRUE or chained retval
5332
5333         * gtk/gtktext.c (gtk_text_button_press): 
5334         (gtk_text_button_release): return TRUE
5335         (gtk_text_key_press): remove redundant retval code
5336         
5337         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
5338         and sensitive
5339         (gtk_tree_item_subtree_button_click): changed type to gint, and return
5340         TRUE if sensitive
5341
5342         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
5343         return TRUE
5344
5345 2001-03-23  Havoc Pennington  <hp@redhat.com>
5346
5347         * gtk/testgtk.c: fix warnings
5348
5349         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
5350
5351         * gtk/gtktextview.c: fix warnings
5352
5353         * gtk/gtktext.c (find_cursor_at_line): fix warning
5354
5355         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
5356
5357         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
5358         of this function
5359
5360         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5361         fix warning
5362
5363         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
5364
5365         * gtk/gtkfontsel.c: fix warning
5366
5367         * gtk/gtkcolorsel.c: fix warnings
5368
5369 2001-03-23  Havoc Pennington  <hp@redhat.com>
5370
5371         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
5372
5373         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
5374
5375         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
5376         and deprecated gtk_check_menu_item_set_show_toggle().
5377         
5378         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
5379
5380         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
5381
5382         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
5383
5384 2001-03-23  Havoc Pennington  <hp@redhat.com>
5385
5386         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
5387         some docs
5388
5389 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
5390
5391         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
5392         this.
5393
5394         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
5395         set_cell to set_value
5396
5397         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
5398         set_cell to set_value
5399
5400 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
5401
5402         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5403         fix braino.
5404         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
5405         support.
5406
5407         * gtk/gtktreeview.c: Addition of initial sortable support.
5408
5409         * gtk/gtktreestore.c: Addition of initial sortable support.
5410
5411         * gtk/gtkliststore.c: Addition of initial sortable support.
5412
5413         * gtk/gtkmarshal.list: yet another marshaller.
5414
5415         * gtk/gtktreedatallist.[ch]: shared code between the store models
5416         for handling sorting headers.
5417
5418 2001-03-22  Havoc Pennington  <hp@redhat.com>
5419
5420         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
5421         (gtk_container_unset_focus_chain): Add ability to override the 
5422         focus chain for a container explicitly
5423
5424 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
5425
5426         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
5427         added PROP_MNEMONIC_WIDGET.
5428
5429         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
5430         (gtk_window_remove_mnemonic): 
5431         (gtk_window_add_mnemonic): fixed assertions.
5432         (gtk_window_activate_mnemonic): constrain modifier checks to those
5433         permitted by gtk_accelerator_get_default_mod_mask().
5434         got rid of gtk_window_get_default_accel_group().
5435
5436         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
5437         activatable widgets either by focussing or a warning.
5438         added a signal accumulator to ::activate_mnemonic which stops the
5439         emission once a handler returned TRUE.
5440
5441 2001-03-22  Havoc Pennington  <hp@pobox.com>
5442
5443         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
5444         the stock item label
5445
5446         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
5447
5448         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
5449
5450         * demos/gtk-demo/*.c: Add mnemonics all over the place
5451
5452         * gtk/gtklabel.h: mark parse_uline deprecated
5453
5454 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5455
5456         * gtk/gtkitemfactory.[ch]:
5457         Add support for stock and normal imagemenuitems.
5458         
5459         * gtk/testgtk.c:
5460         Add some tests for mnemonics, stock toolbars, stock
5461         and image menuitems in itemfactory and gdk_window_scroll.
5462
5463 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5464
5465         * gtk/gtkbutton.[ch]:
5466         * gtk/gtkdialog.c:
5467         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5468         removed accel_group argument. Renamed gtk_button_new_accel() to
5469         gtk_button_new_with_mnemonic() and removed accel_group argument.
5470
5471         * gtk/gtkcheckbutton.[ch]:
5472         New function gtk_check_button_new_with_mnemonic().
5473
5474         * gtk/gtkentry.c:
5475         Override activate_mnemonic and just grab focus.
5476
5477         * gtk/gtkitemfactory.c:
5478         Don't add menu uline accel group, instead use mnemonics support.
5479
5480         * gtk/gtklabel.[ch]:
5481         New support for mnemonics.
5482
5483         * gtk/gtkmarshal.list:
5484         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5485
5486         * gtk/gtkmenu.[c]:
5487         * gtkmenushell.c:
5488         Use mnemonics instead of accel groups for uline
5489         support in menu items.
5490         Removed gtk_menu_get_uline_accel_group() and
5491         gtk_menu_ensure_uline_accel_group().
5492
5493         * gtk/gtkmenuitem.c:
5494         Override activate_mnemonic to handle switching between
5495         menu items if there are collisions.
5496         
5497         * gtk/gtknotebook.c:
5498         Connect to activate_mnemonic on the tab_label, so that
5499         activating it switches to that notebook page.
5500
5501         * gtk/gtkwidget.[ch]:
5502         Add activate_mnemonic signal. New function
5503         gtk_widget_activate_mnemonic() to emit it.
5504         Default implementation does activate/grab_focus.
5505
5506         * gtk/gtkwindow.[ch]:
5507         Add support for mnemonics in windows.
5508         New functions:
5509         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
5510         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
5511
5512         * gtk/testgtk.c:
5513         Update to function name changes.
5514         
5515 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5516
5517         * gtk/gtkimagemenuitem.[c]:
5518         Add gtk_image_menu_item_new_from_stock()
5519
5520 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
5521
5522         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5523         Fix buglet in meeting.
5524
5525 2001-03-19  Havoc Pennington  <hp@redhat.com>
5526
5527         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
5528         add a bunch of accessor functions. This is because we have
5529         reasonable expectations of extending what fields it contains in
5530         the future.
5531
5532         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
5533         changes
5534
5535         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
5536         GtkIconSource   
5537
5538 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
5539
5540         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
5541         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
5542
5543         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
5544           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
5545           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
5546           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
5547         Change float to double everywhere with the exception of 0<->1.0 alignment
5548         and GtkCurve.
5549
5550 2001-03-19  Tor Lillqvist  <tml@iki.fi>
5551
5552         * gdk/win32/gdkdrawable-win32.c
5553         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
5554         output.
5555
5556         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
5557         gdkwin32.h.
5558
5559 2001-03-18  Tor Lillqvist  <tml@iki.fi>
5560
5561         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
5562         print_event_state, print_event): Use preprocessor macro to make
5563         code more compact. Print also GDK_WINDOW_STATE events.
5564         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
5565         
5566         * gtk/gtk.def
5567         * gtk/makefile.mingw.in: Update.
5568
5569         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
5570         to catch also Cygwin.
5571
5572 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
5573
5574         * gtk/gtkspinbutton.[hc]: added rc-style argument
5575         GtkSpinButton::shadow_type.
5576         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
5577         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
5578         rc-style settings.
5579
5580         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
5581
5582         * gtk/gtkwidget.c: quark cleanups.
5583
5584         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
5585         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
5586         to create_rc_style() (we don't do cloning in standard OO sense).
5587         added per rc style properties.
5588         
5589         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
5590         property values and for caching those. some cleanups.
5591         
5592         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
5593         
5594         * gtk/gtksettings.[hc]: new file for global rc-file properties
5595         (at least currently, should get extended to support X properties
5596         and other communication mechanisms).
5597         
5598         * gtk/gtkwidget.[hc]: added style property support:
5599         (gtk_widget_class_install_style_property_parser): install style
5600         property pspec with parser function for rc-file values other
5601         than LONG, DOUBLE or STRING.
5602         (gtk_widget_class_install_style_property): same as above without
5603         parser (parsers are going to be needed quite infrequently).
5604         (gtk_widget_style_get_property): retrive style property value.
5605         (gtk_widget_style_get_valist): same as above with varargs support,
5606         has NOCOPY semantics.
5607         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
5608
5609 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
5610
5611         * demos/gtk-demo/main.c (row_activated_cb): modified to use
5612         "row_activated" signal.
5613
5614         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
5615         stupidity.  Lets actually pass in the row with this signal...
5616
5617 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
5618
5619         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
5620
5621         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
5622
5623         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
5624         everything into the ::destroy function, and freed a lot more.
5625
5626 2001-03-16  Havoc Pennington  <hp@redhat.com>
5627
5628         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
5629         instead of gint16, to avoid overflow issues, since sizes > 16-bit
5630         are now allowed.
5631
5632 2001-03-16  Havoc Pennington  <hp@redhat.com>
5633
5634         * Applied patch from Nils Barth (bug # 51041) to 
5635         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
5636         in various places.
5637
5638 2001-03-15  Havoc Pennington  <hp@redhat.com>
5639         
5640         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
5641         for properties to set on the tag.
5642
5643         * gtk/testtext.c: fixups to reflect create_tag change
5644         
5645         * gtk/gtktexttag.c (gtk_text_tag_set_property):
5646         background/foreground stipple are objects, not boxed.
5647
5648         * demos/gtk-demo/textview.c: intellihancing
5649
5650 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
5651
5652         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
5653         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
5654
5655 2001-03-16  Alexander Larsson  <alexl@redhat.com>
5656
5657         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
5658         Fix sign error with queued region translations.
5659
5660 2001-03-15  HideToshi Tajima  <tajima@happy>
5661
5662         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
5663         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
5664         * gtk/gtkentry.c (update_im_cursor_location): 
5665         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
5666         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
5667         set_cursor_pos to set_cursor_location in GtkInputContext class
5668
5669 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
5670
5671         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
5672         the location of the cell relative to its area.
5673         * gtk/gtkcell*: modified for above change
5674         * gtk/gtktreeview.c: modified for above change.
5675
5676 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
5677
5678         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
5679          (gtk_tree_view_finalize): actually unref the model.  Thanks to
5680         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
5681
5682 2001-03-14  Havoc Pennington  <hp@redhat.com>
5683
5684         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
5685         
5686         * gtk/gtk.h: remove gtkdata.h
5687
5688         * gtk/Makefile.am: remove gtkdata
5689         
5690         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
5691         not "disconnect" on the adjustments.
5692         
5693         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
5694         GtkData
5695
5696         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
5697         not GtkData
5698
5699         * configure.in: handle case where X render exists, but Pango lacks
5700         Xft support.
5701
5702 2001-03-15 Alexander Larsson  <alexl@redhat.com>
5703
5704         * gtk/gtktoolbar.[ch]:
5705         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
5706         to add stock items to toolbars.
5707
5708         * gtk/Makefile.am:
5709         Remove ../gdk/gdkim.h from gdk_headers.
5710
5711 2001-03-15  Sven Neumann  <sven@gimp.org>
5712
5713         * gdk/gdkim.h: removed
5714         
5715         * gdk/gdkprivate.h
5716         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
5717
5718 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5719
5720         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5721         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5722         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5723         set_cursor_pos() virtual method
5724
5725         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5726         (gtk_im_context_xim_set_cursor_pos): add implementation for
5727         set_cursor_pos() method
5728
5729         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5730         position to input methods
5731
5732 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5733
5734         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5735         code a lot.
5736
5737         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5738         g_mem_chunk.
5739         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5740         (_gtk_tree_data_list_node_to_value): Fix to switch on
5741         G_TYPE_FUNDAMENTAL.
5742         (_gtk_tree_data_list_value_to_node): Fix to switch on
5743         G_TYPE_FUNDAMENTAL.
5744         (_gtk_tree_data_list_node_copy): Fix to switch on
5745         G_TYPE_FUNDAMENTAL.
5746
5747 2001-03-12  Havoc Pennington  <hp@redhat.com>
5748
5749         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5750         to convert to new property API. Also, change default_width and
5751         default_height get_property to return 0 as the flag value for
5752         "unset"; -1 is not a valid value for these fields.
5753
5754 2001-03-12  Havoc Pennington  <hp@redhat.com>
5755
5756         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5757         enum with registration for icon sizes, instead of strings.
5758
5759         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5760         gtkwidget.c: Fix to reflect GtkIconSize
5761         
5762 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5763
5764         Make GtkFB compile and link.
5765         
5766         * gdk/linux-fb/gdkdrawable-fb2.c:
5767         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5768         
5769         * gdk/linux-fb/gdkwindow-fb.c:
5770         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5771         Added gdk_window_shape_combine_region.
5772         Added assorted placeholders for unimplemented new GdkWindow API calls.
5773
5774 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5775
5776         * gtk/gtkfilesel.c:
5777         Add more test when converting filenames from/to utf-8.
5778         Don't allow entering text in the filename entry which isn't allowed in
5779         a filename. Just beep instead.
5780
5781 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5782
5783         * gtk/gtkclist.c:
5784         Scroll using gdk_window_scroll(). Don't wait for exposes.
5785         Move the column headers in an order that makes them flash less.
5786
5787 2001-03-10  Hans Breuer  <hans@breuer.org>
5788
5789         * gdk/gdk.def : updated
5790
5791         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5792         to offseting the clip_mask at the right place
5793
5794         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5795         for all the gdkClasses, especially not for the input_only case.
5796         Otherwise flickering wont be avoidable, because we don't get
5797         WM_ERASEBKGND message for these windows.
5798
5799         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5800         and fixed massive redraw problems apparently triggered by Alexanders 
5801         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5802         but it seems to work quite well :-)
5803
5804         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5805         prototype
5806
5807 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5808
5809         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5810         (gtk_list_store_set_cell): Fix a stupid typo.
5811
5812 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5813
5814         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5815         select_all not work if you're in SINGLE mode (it doesn't make that
5816         much sense, anyway.)
5817
5818         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5819         handle types more sanely.
5820         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5821         (_gtk_tree_data_list_node_copy): handle types more sanely.
5822
5823         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5824         GValue better. Converts the type as well.
5825
5826         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5827         GValue better. Converts the type as well.
5828
5829 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5830
5831         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5832         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5833         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5834         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5835
5836         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5837         gdk_im/gdk_ic.
5838
5839 2001-03-09  Hans Breuer  <hans@breuer.org>
5840
5841         * gdk/gdk.def : updated
5842
5843         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5844         for their palette
5845
5846         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5847         removing
5848
5849         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5850         removing and implemented Havoc's GdkWindow state functions; 
5851         stick/unstick only as no-op, cause I don't know how to emulate 
5852         on win32 ...
5853
5854         * gtk/gtk.def : updated
5855
5856         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5857
5858         * gtk/gtktypeutils.c : #include <string.h>
5859
5860         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5861
5862 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5863
5864         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5865         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5866         not a boxed.
5867
5868 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5869
5870         * docs/Changes-2.0.txt:
5871         Document expose event->region change and that gtk_widget_event
5872         doesn't allow passing expose events.
5873
5874         * gdk/gdkevents.h:
5875         Add region to expose event.
5876         
5877         * gdk/gdkevents.c:
5878         Handle event->region in gdk_event_copy() and gdk_event_free().
5879
5880         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5881         Generate expose_event->region when creating expose events.
5882
5883         * gdk/x11/gdkevents-x11.c:
5884         Generate expose events with regions when translating X events.
5885
5886         * gtk/gtkcontainer.[ch]:
5887         Default expose handler that propagates expose events to NO_WINDOW
5888         children. New function gtk_container_propagate_expose()
5889
5890         * gtk/gtkwidget.[ch]:
5891         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5892         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5893         expose events. New function gtk_widget_send_expose() to send expose
5894         events. New function gtk_widget_region_intersect() to calculate
5895         window/region intersections.
5896         
5897         * gtk/gtkmain.c (gtk_main_do_event):
5898         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5899         Use gtk_widget_send_expose() to send expose events.
5900         
5901         * gtk/gtkbin.c:
5902         * gtk/gtkbox.c:
5903         * gtk/gtkfixed.c:
5904         * gtk/gtkimagemenuitem.c:
5905         * gtk/gtklist.c:
5906         * gtk/gtkpacker.c:
5907         * gtk/gtktable.c:
5908         * gtk/gtktree.c:
5909         Remove expose handler, using the default container implementation
5910         instead.
5911         
5912         * gtk/gtkbutton.c:
5913         * gtk/gtkcheckbutton.c:
5914         * gtk/gtkeventbox.c:
5915         * gtk/gtkfixed.c:
5916         * gtk/gtkhandlebox.c:
5917         * gtk/gtklayout.c:
5918         * gtk/gtklistitem.c:
5919         * gtk/gtkmenu.c:
5920         * gtk/gtkmenubar.c:
5921         * gtk/gtkmenuitem.c:
5922         * gtk/gtknotebook.c:
5923         * gtk/gtkoptionmenu.c:
5924         * gtk/gtkpaned.c:
5925         * gtk/gtkscrolledwindow.c:
5926         * gtk/gtktogglebutton.c:
5927         * gtk/gtktoolbar.c:
5928         * gtk/gtktreeitem.c:
5929         * gtk/gtkviewport.c:
5930         Chain expose handler to parent class handler. Use
5931         gtk_container_propagate_expose() to propagate exposes.
5932
5933         * gtk/gtkclist.c (check_exposures):
5934         * gtk/gtktext.c (process_exposes):
5935         Use gtk_widget_send_expose instead of gtk_widget_event.
5936
5937 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5938
5939         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5940
5941 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5942
5943         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5944         unref the nodes.   Fixes bug #50058.
5945
5946         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5947         "::ref_iter" to "::ref_node".
5948         (gtk_tree_model_unref_node): change "::unref_iter" to
5949         "::unref_node". Fixes bug #50064.
5950
5951 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5952
5953         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5954         support for invisible cells.
5955          (gtk_tree_view_bin_expose): ditto
5956
5957 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5958
5959         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5960         on gobjects.
5961
5962         * tests/testtreefocus.c (main): New test file.
5963
5964         * tests/testtreeview.c: update to latest glib changes.
5965
5966         * tests/testtreecolumns.c: update to latest glib changes.
5967
5968 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5969
5970         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5971
5972 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5973
5974         * *.c: added accumulator data argument to g_signal_newc()
5975         functions.
5976
5977         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5978         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5979         * gtk/treestoretest.c (make_window):
5980         s/g_signal_connect/g_signal_connectc/.
5981
5982         * gtk/gtktextbuffer.c: completed signal arg fixups,
5983         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5984
5985 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5986
5987         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5988         G_CONST_RETURN.
5989
5990         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5991         ::hierarchy-changed signal when a widget changes
5992         from anchored to unanchored or vice versa.
5993         (anchored means 
5994          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5995         Use a private flag to keep track of this efficiently.
5996
5997 2001-03-07  Havoc Pennington  <hp@redhat.com>
5998
5999         * gtk/testgtk.c (create_spins): uglify so that size request gets
6000         tested.
6001
6002         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
6003         request on values for upper/lower, completes #6152
6004
6005 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
6006
6007         * Makefile.am: Remove gtk-config-2.0 again.
6008         (Grrrr, pkg-config. And stops make loops.)
6009
6010 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
6011
6012         * gtk/gtksignal.[hc]: removed old emission hook API.
6013         
6014         * docs/Changes-2.0.txt: fixed sections.
6015         
6016         * gtk/gtktextbuffer.c: signal arg fixups.
6017
6018 2001-03-07  Havoc Pennington  <hp@redhat.com>
6019
6020         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
6021
6022         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
6023         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
6024         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
6025         validation and the redraw which is higher priority than the
6026         validation.
6027
6028 2001-03-07  Havoc Pennington  <hp@redhat.com>
6029
6030         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
6031         (gtk_entry_set_property): remove trailer
6032
6033         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
6034         (gtk_entry_get_width_chars): new functions, to set size request to 
6035         a given number of characters
6036
6037         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
6038
6039         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
6040         (gtk_dialog_get_has_separator): new function
6041         (run_delete_handler): fix to not emit "response" signal
6042         because we already did in the delete event handler installed
6043         at dialog creation time.
6044         
6045         * gtk/gtkdialog.h: add a has_separator property,
6046         add GTK_DIALOG_NO_SEPARATOR flag
6047
6048 2001-03-07  Havoc Pennington  <hp@redhat.com>
6049
6050         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
6051         off decorations for a window.
6052
6053         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
6054         changes
6055
6056         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
6057         to get location of PangoLayout inside the label, closes #51198
6058
6059         * gtk/testgtk.c (create_bbox): fix up button box usage
6060
6061         * gtk/testcalendar.c (create_calendar): fix up button box usage
6062
6063         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
6064
6065         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
6066
6067         * gtk/gtkhbbox.h: deprecations
6068
6069         * gtk/gtkvbbox.h: deprecations
6070
6071         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
6072         emulate deprecated gtk_button_box_get_spacing
6073
6074         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
6075         the "set global default" functions
6076         (struct _GtkButtonBox): remove "spacing" field, use the one from 
6077         GtkBox base class
6078
6079         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
6080
6081         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
6082         render the icon, return the missing image icon.
6083
6084         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
6085         image icon if the load fails.   
6086
6087         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
6088         when no image is found; should be the Netscape "missing image"
6089         icon eventually but for now is a random image
6090
6091         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
6092         role for the session manager
6093
6094         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
6095
6096         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
6097         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
6098
6099         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
6100
6101 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
6102
6103         * gtk/*.c: marshaller fixes.
6104         
6105         * gtk/gtkmarshal.list: extreme cleanup.
6106
6107         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
6108         param spec for now.
6109
6110         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
6111         where appliable.
6112
6113         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
6114         special cased autogenerated boxed types from gtktypebuiltins_ids.c
6115         which are not reference counted:
6116         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
6117         PangoFontDescription, GtkTreeIter and GtkTreePath.
6118
6119 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
6120
6121         * gtk/gtktreeselection.h: 
6122         * gtk/gtktreemodel.c:
6123         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
6124         file should be included directly, and gobject/gmarshal.h
6125         as well as gtk/gtkmarshal.h even can't be included directly.
6126
6127         * Makefile.am: grr, install gtk-config-2.0.
6128
6129         * gtk/testgtk.c:
6130         * gtk/simple.c:
6131         * gtk/gtkmenu.c:
6132         * gtk/gtkitemfactory.c: use g_object_connect() instead of
6133         passing "*signal*::*" args to gtk_widget_set().
6134         
6135         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
6136         
6137         * gtk/*.c: removed trailer arg from property setters and getters.
6138         macro fixups.
6139
6140 2001-03-07  Alexander Larsson  <alexl@redhat.com>
6141
6142         * gtk/gtklabel.c (set_markup): Removed warning
6143
6144 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
6145
6146         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
6147         field to allow you to hide cell renderers.
6148
6149         * gtk/gtkcellrenderer.c: Add support for invisible cells.
6150
6151         * gtk/gtktreeview.c: Add support for invisible cells.
6152
6153 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
6154
6155         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
6156         Add "clicked" signal back to columns.
6157
6158         * ChangeLog: remove conflict markers.
6159
6160 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
6161
6162         * gtk/gtkbutton.c: Add animation of activation by, on 
6163         activate, pressing the button, and adding a timeout that 
6164         releases the button after 250ms or on key release and
6165         emits ::clicked. (#51501)
6166
6167         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
6168         action area, we connect to ::clicked instead of ::activate
6169         so the dialog stays up through the animation.
6170
6171 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
6172
6173         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
6174         check the ignore_enter flag for the menu shell that
6175         the item is actually a child of, not for attached
6176         submenus. (#51536)
6177
6178 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6179
6180         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6181         special key-press grab handling for widgets within
6182         GtkWindows. Otherwise, fall through to normal case.
6183
6184         This prevents key events being sent twice to GtkInvisible
6185         widgets, which can cause all sorts of mischief.
6186
6187 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6188
6189         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6190         widget is in effect, give the grab widget a first
6191         crack at KEY_PRESS/RELEASE events. (#424)
6192
6193 2001-03-06  James Henstridge  <james@daa.com.au>
6194
6195         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
6196         offset for the window_state_event to point at window_state_event
6197         rather than no_expose_event.
6198
6199 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
6200
6201         * gtk/gtkimmodule.h: fix busted /* comment */
6202
6203 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
6204
6205         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
6206         object properties.
6207
6208 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
6209
6210         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
6211         add object properties.
6212
6213         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
6214         to add object properties.
6215
6216         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
6217         object properties.
6218
6219         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
6220         add object properties.
6221
6222         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
6223         object properties.
6224
6225 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
6226
6227         * gtk/gtktreemodel.c: renamed "child_toggled" to
6228         "has_child_toggled".
6229
6230         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
6231         handle new signal name.
6232
6233         * gtk/gtktreestore.c: Updated to handle new signal name.
6234         * gtk/gtklisttore.c: Updated to handle new signal name.
6235         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
6236
6237 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6238
6239         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
6240         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
6241
6242 2001-03-05  Michael Natterer  <mitch@gimp.org>
6243
6244         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
6245         pixbuf-engine coincidentially also failed to make one of it's
6246         parent_class pointers static, causing overwriting of GtkLabel's
6247         parent_class pointer in pixbuf_style_class_init().
6248         (Will commit the fix to the pixbuf-engine too).
6249
6250 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6251
6252         * gdk/gdkwindow.h:
6253         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
6254         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
6255         gdk_window_set_icon_list for net wmspec functionality.
6256
6257         * gdk/x11/gdkwindow-x11.c:
6258         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
6259         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
6260         gdk_window_set_icon_list.
6261         Added gdk_wmspec_change_state helper function and used it in the code.
6262         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
6263
6264         * gtk/gtkdialog.c (gtk_dialog_init):
6265         Set GDK_WINDOW_TYPE_HINT_DIALOG.
6266
6267         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
6268         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
6269
6270         * gtk/gtkwindow.c:
6271         new function gtk_window_set_type_hint.
6272         On realize, set type hint and modal hint.
6273
6274         * gtk/gtkwindow.h:
6275         Added type_hint field and gtk_window_set_type_hint.
6276
6277 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6278
6279         * gtk/gtklabel.[ch]:
6280         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
6281         New function gtk_label_get_accel_keyval () to get the underline accelerator
6282         of the label. Setting the label pattern overrides other attributes.
6283
6284 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
6285
6286         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
6287         Added missing initializers to gtk_rc_style_init().
6288
6289 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
6290
6291         * gtk/gtktextview.c: fixed bug #51097 about setting 
6292         gtk_text_view_set_border_window_size() if the widget is 
6293         already realized.
6294
6295 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
6296
6297         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
6298
6299         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
6300         comment. Won't do to have duplicated doc comments between
6301         the platform subdirs.
6302
6303 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
6304
6305         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
6306           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
6307
6308         Detectable auto-repeat - make a repeating key generate
6309         press/press/press/release instead of press/release pairs.
6310
6311         If we have Xkb and XkbSetDectableAutoRepeat supports
6312         that, we do it that way. Otherwise, when we get
6313         a release event, we check ahead with XPending to see
6314         if the next key is a KeyPress with the same keycode
6315         and timestamp. (Not 100% reliable, but pretty close.)
6316           
6317 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6318         
6319         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6320         special key-press grab handling for widgets within
6321         GtkWindows. Otherwise, fall through to normal case.
6322  
6323         This prevents key events being sent twice to GtkInvisible
6324         widgets, which can cause all sorts of mischief.
6325  
6326 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6327  
6328         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6329         widget is in effect, give the grab widget a first
6330         crack at KEY_PRESS/RELEASE events. (#424)
6331  
6332 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
6333
6334         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
6335         to extend the selection. (Roughly based on patch
6336         from Jay Cox, #50939)
6337
6338         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
6339         to properly handle previous GDK_BUTTON_PRESS. 
6340         (Patch from Jay Cox, #50938)
6341
6342         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
6343         '\0' back along with the deleted text. (#51148)
6344
6345 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
6346
6347         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
6348         the group when extracting it from the X keyboard event.
6349
6350         * modules/input/Makefile.am modules/input/imipa.c: 
6351         Simple module for entering IPA. (Do we need a 
6352         gtk-stupid-input-tricks CVS module?)
6353
6354 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
6355
6356         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
6357         const.
6358
6359         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
6360
6361         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
6362         is no focus widget for the dialog currently, grab the focus as well
6363         as the default.
6364
6365         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
6366         the action area's children to iterate through, not the
6367         dialog's children.
6368
6369 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
6370
6371         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
6372         Add plug-socket tests. (Won't work worth a darn until I commit
6373         the rest of the plug-socket changes, but no reason these
6374         can't go into CVS now.)
6375
6376 2001-03-02  Havoc Pennington  <hp@redhat.com>
6377
6378         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
6379         _gdk_region_get_xrectangles()
6380
6381         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
6382
6383         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
6384
6385         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
6386         function, contributed by Ron Steinke    
6387
6388         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
6389         gdk_net_wm_supports
6390
6391         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
6392         New function, contributed by Ron Steinke
6393
6394         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
6395         used to line up the text in the entry when using the entry for
6396         editable sheet cell hacks
6397
6398         * gtk/testgtk.c (create_entry): test the activate_default setting
6399         on GtkEntry
6400
6401         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
6402         cause the entry to activate the default button for a dialog when 
6403         activated
6404         (gtk_entry_get_activates_default): new function
6405
6406 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
6407
6408         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
6409         Hwang to move call to sync_selection() up a few lines
6410         to before the row list is modified, to fix crash when
6411         removing rows in the undo_selection list.
6412
6413         (Test case provided by Daniel Elstner:
6414
6415         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
6416
6417 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
6418
6419         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
6420         of tree->root_tree in parent_set rather than _map(), 
6421         fixing #50892 in a bit better manner.
6422
6423 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
6424
6425         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
6426
6427 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
6428
6429         * gtk/gtkstyle.c : Remove duplicate fwd decl for
6430         gtk_default_draw_shadow.
6431
6432 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6433
6434         * gdk/gdkimage.c (gdk_image_new): Remove excess 
6435         warning, make warnings more verbose, treat a error
6436         in shmat as permanent, and don't try again.
6437         (#51163, Ed Randall.)
6438
6439 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
6440
6441         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
6442         delay for the first click before starting to scroll.
6443         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
6444
6445         * gtk/gtktext.c: GtkText should have I-beam cursor. 
6446         (based on gtk-enf-990513-1.patch, Eric Fisher.)
6447
6448 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
6449
6450         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
6451         cleanup to remove some references to unused
6452         ->xoffset, ->yoffset.
6453
6454 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
6455
6456         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
6457         mask. (#51039, fix from Martin Maierhofer)
6458
6459 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
6460
6461         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
6462         for unshifted + and shifted = for non-us keyboards.
6463         Make <Control>+ and <Control>- work as well as 
6464         <Control>KP_Plus, <Control>KP_Minus for recursive
6465         open/close.  (#2682, René Seindal)
6466
6467 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6468
6469         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6470         the active menu item before deactivating the menu,
6471         so gtk_menu_popdown doesn't change the history. (#50964)
6472         
6473 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6474
6475         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6476         draw lines with text_gc rather than black_gc.
6477         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6478
6479 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6480
6481         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6482         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6483         less interrelated then it was, but it still requires the
6484         GtkTreeView to map it.
6485
6486         * test/testtreecolumn.c: Now I can add a column to one view,
6487         remove it, add it to the another view, remove it, then re-add it
6488         to the first.  Nifty.
6489
6490 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6491
6492         * docs/tutorial/gtk-tut.sgml: Minor corrections
6493
6494 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6495
6496         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6497         GtkRowReference.
6498
6499 2001-02-28  Havoc Pennington  <hp@redhat.com>
6500
6501         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6502         draw_default
6503         (gtk_widget_draw_focus): remove this function; we could instead
6504         make it just gtk_widget_draw(), but in most cases I think the
6505         result would be broken user code, so think it's better to have
6506         that code not compile and get fixed
6507         (gtk_widget_draw_default): ditto
6508
6509         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
6510         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
6511         
6512         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
6513         widgets lose/get the default, instead of calling draw_default
6514         
6515         * docs/Changes-2.0.txt: note about all this
6516
6517         Then fixed every widget in GTK, I won't list all the filenames.
6518
6519 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
6520
6521         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
6522         _gtk_tree_row_reference_deleted.
6523         (inserted_callback): Proxy out to
6524         _gtk_tree_row_reference_inserted.
6525         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
6526         get around signal emission ordering problem.
6527
6528         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6529         fix to work with SINGLE 
6530         (_gtk_tree_selection_internal_select_node): Major sanitization on
6531         selections.  SINGLE now seems to work.
6532
6533         * tests/Makefile.am: add testtreecolumn.c:
6534
6535         * tests/testtreecolumn.c: New test.  Mostly points out selection
6536         bugs currently, but will test columns later.
6537
6538         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
6539         selection bug.  I hate touching this code -- it's scary.
6540
6541 2001-02-26  Havoc Pennington  <hp@redhat.com>
6542
6543         * gtk/testgtk.c: test the window state stuff
6544
6545         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
6546         window come to the user's attention as if it were just created
6547         (gtk_window_iconify): new function
6548         (gtk_window_deiconify): new function
6549         (gtk_window_stick): new function
6550         (gtk_window_unstick): new function
6551         (gtk_window_maximize): new function
6552         (gtk_window_unmaximize): new function
6553
6554         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
6555
6556         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
6557
6558         * gdk/x11/gdkevents-x11.c: create window state events when
6559         appropriate
6560         (gdk_wmspec_supported): new function
6561
6562         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
6563         iconification before showing the window
6564         (gdk_window_deiconify): new function
6565         (gdk_window_stick): new function
6566         (gdk_window_unstick): new function
6567         (gdk_window_maximize): new function
6568         (gdk_window_unmaximize): new function
6569
6570         * gdk/gdkwindow.c: store the window state in the window; 
6571         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
6572         window->mapped.
6573         (gdk_window_get_state): return the current window state
6574
6575         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
6576         (gdk_event_get_state): handle GDK_WINDOW_STATE
6577         (gdk_synthesize_window_state): function to create the window state
6578         events
6579
6580         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
6581         event, for changes to "window state" such as maximized, sticky, 
6582         etc.
6583         
6584         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
6585         focuses a window
6586
6587         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
6588         finds out if we support a given WM spec hint
6589
6590 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
6591
6592         * docs/faq/gtk-faq.sgml: New question re memory leaks.
6593
6594 2001-02-25  Hans Breuer  <hans@breuer.org>
6595
6596         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
6597         cause we want to loose those prototypes only in the latter case
6598
6599         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
6600         GdkPixmapImplWin32 because it itsn't derived from it. Use the
6601         impl member variable instead
6602
6603         * gtk/gtk.def : updated
6604
6605         * gtk/gtklist.c : 
6606         * gtk/gtkmenus.c : include <string.h> for memset ()
6607
6608         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
6609         for everthing built here, but for gtk-x.x.dll only. This solves
6610         problem of indifferent gtk type definitions
6611
6612 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
6613
6614         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
6615
6616 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
6617
6618         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
6619         column that is exposed.
6620
6621         (_gtk_tree_view_update_size): Changed name from set_size, and
6622         changed function to do more work, and not force people calling it
6623         to figure out the size.  Simplifies a lot of code elsewhere.
6624
6625 2001-02-23  Alexander Larsson  <alexl@redhat.com>
6626
6627         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
6628         return solid masks for xpms that have no transparent color.
6629         This makes the ..._create_from_xpm... API backwards
6630         compatible.
6631
6632 2001-02-23  Tor Lillqvist  <tml@iki.fi>
6633
6634         * README.win32: Update. Mention the gtk-1-3-win32-production
6635         branch.
6636
6637         * gdk/win32/bdfcursor.c: New file. A program that generates
6638         xcursors.h. Thanks to Stefan Ondrejicka.
6639
6640         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
6641         compact format.
6642
6643         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
6644
6645         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
6646         function, uses xcursors.h.
6647         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
6648         cursor from inline data instead of using LoadCursor() to generate
6649         it from a resource.
6650
6651         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
6652         event, must check the Windows message for mouse button state, as
6653         the GDK event state might not have been built if it is
6654         undelivered. Remove one goto.
6655
6656         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
6657         SetCursor() if the current cursor as returned by GetCursor() is
6658         the window's previous cursor. The ChildWindowFromPoint() test
6659         apparently didn't work correctly.
6660
6661         * gdk/win32/rc/*.cur: Remove.
6662
6663         * gdk/win32/rc/gdk.rc.in: Remove cursors.
6664
6665         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
6666
6667         * gtk/makefile.{mingw,msc}.in: Updates.
6668
6669 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
6670
6671         * gtk/gtktreemodel.h: add functions for signal emission.
6672
6673         * gtk/gtktreestore.c: move to use above functions instead of
6674         g_signal_emit.
6675
6676         * gtk/gtkliststore.c: ditto
6677
6678 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
6679
6680         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
6681         GObject instead of GtkObject.
6682
6683         * gtk/gtkliststore.c: ditto.
6684
6685         * gtk/gtktreemodelsort.c: ditto.
6686
6687         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
6688         GtkTreeModelIface, instead of in each model.
6689
6690 2001-02-21  Havoc Pennington  <hp@redhat.com>
6691
6692         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
6693         unbreak this function
6694
6695         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
6696         properties
6697
6698         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
6699         properties
6700
6701         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
6702         properties
6703
6704         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
6705         mean unset the max length
6706
6707 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
6708
6709         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
6710         Changed name to be set_cell_data_func to make it clear what
6711         the functino does.  Close bug #51069.
6712
6713 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
6714
6715         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
6716         have memory actually freed.  Keeps box running longer.
6717
6718 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6719         
6720         * gtk/gtkseparatormenuitem.[ch]:
6721         Added new menu separator item. The drawing and size handling
6722         is still done in GtkMenuItem, but the API is a bit more sane.
6723         
6724         * gtk/Makefile.am:
6725         Add gtkseparatormenuitem.[ch].
6726
6727         * gtk/gtk.h:
6728         Add gtkseparatormenuitem.h.
6729         
6730         * gtk/gtkentry.c:
6731         * gtk/gtkmenufactory.c:
6732         * gtk/gtktextview.c:
6733         Use the new API for menu separators.
6734         
6735         * demos/gtk-demo/menus.c (create_menu):
6736         Add some GtkSeparatorMenuItem demo code.
6737
6738 2001-02-20  Havoc Pennington  <hp@redhat.com>
6739
6740         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6741         Lee Mallabone
6742
6743         * gtk/gtkarrow.c: Convert to new property API, patch from 
6744         Lee Mallabone
6745
6746 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6747
6748         * tests/testtreeview.c (toggled_callback): fix to reflect change
6749         in GtkTreeModelStore.
6750
6751 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6752
6753         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6754         function to create an icon set from a pixbuf.
6755
6756 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6757
6758         * gtk/gtkcellrenderertext.[ch]:
6759         Add a "markup" property.
6760
6761         * gtk/treestoretest.c:
6762         Use the markup property, remove some leftover stuff from
6763         GtkTreeModelMapping.
6764
6765 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6766
6767         * gtk/gtklabel.c (gtk_label_set_selectable):
6768         Queue a redraw if the selectable setting was changed.
6769
6770 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6771
6772         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6773         Actually copy the whole gc, not just the public parts.
6774         
6775         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6776         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6777         labels.
6778
6779 2001-02-19  Havoc Pennington  <hp@pobox.com>
6780
6781         * gdk/gdkwindow.c: docs
6782
6783         * gdk/gdkrgb.c: docs
6784
6785         * gdk/gdkregion-generic.c: docs
6786
6787         * gdk/gdkgc.c (gdk_gc_set_values): docs
6788
6789         * gdk/gdkdraw.c: docs
6790
6791         * gdk/gdkdrawable.h: deprecate drawable get/set data
6792
6793 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6794
6795         * demos/gtk-demo/dialog.c: Add simple new demo.
6796
6797 2001-02-19  Havoc Pennington  <hp@redhat.com>
6798
6799         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6800         insert_child_anchor signal, bug #50245
6801
6802         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6803         from create_child_anchor, so the anchor is passed in
6804
6805         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6806         (_gtk_widget_segment_new): have the child anchor object passed in, 
6807         instead of creating it.
6808
6809         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6810         to gtk_text_buffer_get_modified
6811
6812 2001-02-19  Havoc Pennington  <hp@redhat.com>
6813
6814         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6815         changed GLib without fixing GTK
6816
6817         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6818         functions to have an underscore in front. Most of them should 
6819         probably just go away, but for starters don't export them.
6820         Bug #50482
6821
6822 2001-02-19  Havoc Pennington  <hp@redhat.com>
6823
6824         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6825         excluded by default
6826
6827         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6828         clean up the old code a bit
6829
6830         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6831         inconsistent state
6832
6833         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6834         draw inconsistent state
6835
6836         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6837         (create_menu): add inconsistent test
6838
6839         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6840         new function
6841         (gtk_check_menu_item_get_inconsistent): new function
6842         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6843         state (using etched in for now)
6844
6845         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6846         draw inconsistent state
6847
6848         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6849         function, used when the user has selected a range of stuff in
6850         different states
6851         (gtk_toggle_button_get_inconsistent): accessor for that
6852         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6853         don't know what else to do)
6854
6855 2001-02-19  Hans Breuer <hans@breuer.org>
6856
6857         * gtk/gtk.def : updated exported symbols
6858
6859         * gtk/makefile.msc.in : updated
6860
6861         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6862         a colormap, when invoked from testgtk::entry. I'm not sure where
6863         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6864         avoids immediate crashing ...
6865
6866         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6867         any objections ?
6868
6869         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6870         0 parameter. At least msvc doesn't like macros with var args. 
6871         I simply removed the extra 0, was it a feature or a typo ?
6872
6873         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6874         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6875         because the value assignment to the internal struct wasn't working.
6876         I'm not absolutely sure. The problem could have been resolved by
6877         changing the "func" declartion in the struct, but was the pointer
6878         to the function pointer intended ?
6879
6880         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6881
6882         * gdk/gdk.def : updated exported symbols
6883
6884         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6885         only use SetDIBitsToDevice if there is a palette at the drawable
6886         and the image is GDK_VISUAL_PSEUDO_COLOR
6887
6888         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6889
6890         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6891
6892         * gdk/*/makefile.msc : updated
6893
6894 2001-02-19  Havoc Pennington  <hp@redhat.com>
6895
6896         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6897         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6898
6899         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6900         (gdk_key_repeat_restore): nuke
6901
6902         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6903         (gdk_init_check): no atexit func
6904
6905         * gdk/gdkrgb.h: mark some stuff deprecated
6906
6907         * gdk/gdkcolor.h: mark some stuff deprecated
6908         
6909         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6910
6911         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6912
6913 2001-02-16  Havoc Pennington  <hp@redhat.com>
6914
6915         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6916         scroll steps.
6917
6918         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6919         steps, and add Ctrl-arrow shortcuts for paging visually as with
6920         HScale, since Page Up and Page Down move logically.
6921
6922         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6923         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6924         
6925         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6926         steps
6927         (gtk_range_scroll): handle the visual steps
6928
6929         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6930         scroll steps
6931
6932         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6933         steps, not the logical ones.
6934
6935         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6936         (scroll_vertical): handle up/down steps
6937
6938 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6939
6940         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6941         Copy data and free data with free().
6942
6943         * gdk-pixbuf/gdk-pixbuf.c:
6944         * gdk-pixbuf/io-jpeg.c:
6945         * gdk-pixbuf/io-png.c:
6946         Use g_try_malloc/g_free instead malloc/free.
6947         
6948         * gdk-pixbuf/test-gdk-pixbuf.c:
6949         Must... initialize... gobject...
6950         
6951         * gdk-pixbuf/pixops/timescale.c:
6952         * gtk/gtkcalendar.c:
6953         Use g_malloc instead of malloc.
6954         
6955 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6956
6957         * gtk/testgtkrc:
6958         Comment out property assignments, these don't work yet.
6959
6960 2001-02-17  Havoc Pennington  <hp@pobox.com>
6961
6962         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6963         bit.
6964
6965 2001-02-17  Havoc Pennington  <hp@pobox.com>
6966
6967         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6968         shadowed variables that had broken size request in some cases,
6969         leading to bogus tooltips (#50996)
6970
6971 2001-02-06  Jon K Hellan  <hellan@acm.org>
6972
6973         Implement fast browsing of tooltips, bug #50619
6974         
6975         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6976         and last_popdown
6977         
6978         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6979         use_sticky_delay and last_popdown.
6980         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6981         time of popdown.
6982         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6983         is NULL.
6984         (gtk_tooltips_recently_shown): New static function.  Return true
6985         if < sticky_delay has elapsed since last popdown.
6986         (gtk_tooltips_event_handler): Display window after sticky_delay
6987         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6988         since last popdown.
6989         
6990 2001-02-17  Havoc Pennington  <hp@pobox.com>
6991
6992         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6993         instead of (). #6394
6994
6995         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6996         G_CONST_RETURN, make it return by reference, #50473
6997         
6998 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6999
7000         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
7001         generated ENTER_NOTIFY event with 0, otherwise not explicitely
7002         setup fields contain garbage (e.g. subwindow, breaking
7003         gdk_drawable_ref() upon event copy).
7004         (gtk_menu_stop_navigating_submenu_cb): same here.
7005
7006         * gtk/gtklist.c (gtk_list_vertical_timeout): 
7007         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
7008         * gtk/gtkclist.c (vertical_timeout): 
7009         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
7010         default-zero-intialization for unions to memset(,0,), as unions are
7011         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
7012         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
7013
7014         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
7015         g_closure_sink() warning.
7016
7017         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
7018         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
7019         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
7020         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
7021         
7022 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
7023
7024         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
7025         gtk_*_store_get, and moved to GtkTreeModel.
7026
7027         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
7028
7029         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
7030
7031         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
7032
7033         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
7034         set the func.
7035
7036         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7037         freeze/thaw notify between setting all the properties for a cell.
7038
7039         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
7040
7041 2001-02-15  Havoc Pennington  <hp@redhat.com>
7042
7043         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
7044         the X coordinates so they're with respect to the line, rather than 
7045         with respect to the layout.
7046
7047         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
7048         Mallabone
7049
7050         * gtk/testgtk.c (create_range_controls): add vscale tests, 
7051         and inverted test
7052
7053         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
7054         #50806
7055
7056         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
7057
7058         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
7059         gtk_text_iter_is_end
7060
7061         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
7062         rename gtk_text_buffer_get_end_iter
7063
7064         * gtk/testgtk.c (create_labels): Add test for selectable
7065
7066         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
7067         the selection stuff. This code is kind of broken since it doesn't 
7068         use the theme engine.
7069
7070         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
7071         fix infinite loop and y offset problem
7072         (gdk_draw_layout_line_with_colors): fix foreground color handling
7073
7074         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
7075         that makes the label selectable.
7076         
7077         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
7078         layout when the style is set, since fonts etc. could have changed.      
7079
7080 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
7081
7082         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
7083
7084         * gtk/gtktreemodelsimple.[ch]: removed.
7085
7086 2001-02-16  Alexander Larsson  <alexl@redhat.com>
7087
7088         * gtk/gtktreemodelmapping.[ch]:
7089         New files. Implement GtkTreeModelMapping.
7090         
7091         * gtk/Makefile.am:
7092         Add gtktreemodelmapping.[ch].
7093         
7094         * gtk/gtk.h:
7095         Add gtktreemodelmapping.h
7096
7097         * gtk/treestoretest.c:
7098         Test the GtkTreeModelMapping
7099
7100 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
7101
7102         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
7103         have a demo, we might as well pass in real values.  Thanks to
7104         clahey for pointing this out.
7105
7106 2001-02-14  Havoc Pennington  <hp@pobox.com>
7107
7108         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
7109         "static" to a private function
7110         (gtk_image_menu_item_class_init): remove destroy handler,
7111         add "image" object property
7112
7113 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
7114
7115         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
7116         Add a shortcut if the window and the current clip_region doesn't
7117         overlap. This is needed when there are a lot of windows in a
7118         window. The layout test in testgtk is a good test.
7119
7120         * gdk/linux-fb/gdkwindow-fb.c:
7121         Whitespace fix.
7122
7123 2001-02-13  Sven Neumann  <sven@convergence.de>
7124
7125         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
7126
7127 2001-02-13  Alexander Larsson  <alexl@redhat.com>
7128
7129         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
7130         Don't reference last_cursor if it is null. Fixes crash when rotating
7131         the screen before having moved the mouse.
7132
7133         * gdk/linux-fb/gdkcc-fb.c: Zapp!
7134
7135         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
7136
7137         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
7138         when using 90 or 270 degrees rotation.
7139
7140 2001-02-12  Havoc Pennington  <hp@pobox.com>
7141
7142         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
7143         it always set the foreground, even if we were only using
7144         a stipple.
7145         (gdk_draw_layout_line_with_colors): new function, allow
7146         override colors
7147         (gdk_draw_layout_with_colors): new function, allow override
7148         colors
7149         (gdk_pango_layout_line_get_clip_region): function to get the clip
7150         region for a logical text range
7151         (gdk_pango_layout_get_clip_region): get the clip region for a
7152         logical text range
7153
7154         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
7155         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
7156         the right number of arguments.
7157
7158         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
7159         enhance the function to check that node data corresponds to a 
7160         view still belonging to the tree.
7161
7162         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
7163         GtkTreePath
7164         (gtk_tree_view_inserted): ditto
7165         (gtk_tree_view_child_toggled): ditto
7166
7167         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
7168         simplify this code.
7169
7170         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
7171         a PangoAttrList
7172
7173         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
7174
7175         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
7176
7177         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
7178         size in the size request 
7179         (gtk_menu_bar_size_allocate): consider toggle size here
7180
7181         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
7182         that displays a widget in the toggle slot
7183
7184         * gtk/testgtk.c: test GtkImageMenuItem
7185
7186         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
7187         
7188         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
7189         request and allocation
7190
7191         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
7192
7193         * gtk/gtkcheckmenuitem.c
7194         (gtk_check_menu_item_toggle_size_request): ditto
7195         
7196 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
7197
7198         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
7199         reference.
7200
7201         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
7202         and refuse to initialize GTK+ if they fail.
7203
7204 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
7205
7206         * configure.in: Add check for gtk-doc version.
7207
7208 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
7209
7210         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
7211         where the xpad/ypad was only being used on one side!
7212
7213 2001-02-11  Tor Lillqvist  <tml@iki.fi>
7214
7215         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
7216         function, copied from X11 version.
7217
7218         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
7219         DestroyCursor failures. The reason for the problem (despite the
7220         inconsistent messages from GetLastError()) was that
7221         DestroyCursor() cannot be called while a cursor is set in a
7222         window. Set the new cursor first and then destroy the old one.
7223         Thanks to jpe@archaeopteryx.com.
7224
7225         * gdk/win32/gdkcc-win32.c: Remove.
7226
7227         * gdk/win32/Makefile.am: Remove from here, too.
7228         
7229         * gdk/gdk.def
7230         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
7231
7232         * gtk/gtk.def
7233         * gtk/makefile.mingw.in: Updates.
7234
7235 2001-02-08  Havoc Pennington  <hp@redhat.com>
7236
7237         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
7238         add a widget to a bin that already has a child.
7239
7240         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
7241
7242         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
7243         
7244         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
7245
7246         * gdk/gdk.h: remove gdkcc.h
7247
7248         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
7249
7250         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
7251         GdkPixbuf, since the previous implementation was GdkColorContext
7252         dependent.
7253
7254         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
7255         
7256 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
7257
7258         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
7259         a sane value!
7260
7261 2001-02-08  Havoc Pennington  <hp@redhat.com>
7262
7263         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
7264         lighten them.
7265
7266 2001-02-08  Havoc Pennington  <hp@redhat.com>
7267
7268         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
7269         validation idle
7270
7271         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
7272         cell renderer
7273
7274         * demos/pixbuf-demo.c (timeout): remove deprecated
7275         gtk_widget_draw
7276
7277         * demos/testpixbuf-save.c (main): remove deprecated
7278         gtk_drawing_area_size
7279
7280         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
7281         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
7282         at the start of the allocation.
7283         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
7284         unsetup or NULL model.
7285
7286         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
7287         even/odd/sorted cells in the tree view.
7288
7289         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7290         bugfixes
7291
7292         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
7293         backgrounds with draw_flat_box using different detail for even/odd
7294         rows.
7295
7296         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
7297         row, so we can draw the alternating colors thing
7298
7299         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
7300         property from a synonym property, notify for the synonym.
7301         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
7302         (gtk_text_tag_get_property): Always return the font, even if
7303         all its fields aren't set
7304
7305         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
7306         store the attr list; it leaves us with no way to change attributes
7307         in _render according to the render flags, and no way to implement
7308         get_property. Instead store all the specific text attributes. 
7309         Separate whether an attribute is enabled from its value. Sync all
7310         properties with GtkTextTag, make them all consistent, etc.
7311
7312         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
7313         renderers can highlight the sort row/column     
7314
7315         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
7316         accessor functions to get values; this has the side effect of
7317         showing up which accessor functions were missing. Added those.
7318
7319         * gtk/gtktreeviewcolumn.h: Replace set_justification with
7320         set_alignment, to be consistent with GtkLabel, GtkMisc
7321
7322         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
7323         arrow.
7324
7325         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
7326
7327         * gtk/gtktreesortable.h: updates in here
7328
7329 2001-02-07  Sven Neumann  <sven@convergence.de>
7330
7331         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
7332         pango dimensions after painting the background. We used to draw
7333         gigantic flat boxes here.
7334
7335 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
7336
7337         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
7338         error introduced with earlier commit) (pointed out by
7339         Ollie Lho)
7340
7341 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
7342
7343         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
7344         which are no longer necessary.
7345
7346 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
7347
7348         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
7349
7350 2001-02-04  Tor Lillqvist  <tml@iki.fi>
7351
7352         * gdk/gdk.def
7353         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
7354         Provide dummy implementations.
7355
7356 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
7357
7358         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
7359
7360         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
7361         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
7362         deprecated this function.
7363
7364         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
7365         argument.
7366
7367 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
7368
7369         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
7370
7371 2001-02-03  Havoc Pennington  <hp@pobox.com>
7372
7373         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
7374         Mikael Hermansson with patch from Mikael (if there was a toggle
7375         start one after the first character in the range, this function
7376         was broken). Bug #50380
7377
7378 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
7379
7380         * configure.in: Remove confusing comment about X11.
7381
7382 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
7383
7384         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
7385         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
7386         
7387 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
7388
7389         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
7390         it breaks things on BSD. If you want to compile GTK+ with
7391         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
7392         when configuring, since GTK+ simply can't be "pure ANSI" 
7393         in the header files it uses. (#8170, Greg Hudson)
7394
7395 2001-02-02  Havoc Pennington  <hp@redhat.com>
7396
7397         * gtk/gtkwindow.c: docs
7398
7399         * gtk/gtkwidget.c: docs
7400         (gtk_widget_set_colormap): add a reference to the colormap
7401         (gtk_widget_get_default_colormap): add a reference to the colormap
7402
7403         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
7404
7405         * gtk/gtktextiter.c: docs
7406
7407         * gtk/gtkmain.c (gtk_propagate_event): docs
7408
7409         * gtk/gtkpaned.c (gtk_paned_get_position): docs
7410         (gtk_paned_set_position): docs
7411
7412         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
7413         sort interface, no implementation yet.
7414
7415         * demos/testpixbuf.c (new_testrgb_window): replace
7416         gtk_drawing_area_size() with gtk_widget_set_usize()
7417
7418         * demos/testpixbuf-drawable.c (main): ditto
7419         
7420         * gtk/testgtk.c: remove use of GtkStatusbarMsg
7421
7422         * gtk/gtktextbuffer.c: docs
7423
7424         * gtk/gtkstock.c: docs
7425
7426         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
7427
7428         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
7429
7430         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
7431         
7432         * gtk/gtkimage.c: add some docs in here
7433         (gtk_image_size_request): change name of
7434         gtk_widget_render_stock_icon
7435         (gtk_image_get_icon_set): don't dup returned string
7436         (gtk_image_get_icon_set): don't dup returned string
7437
7438         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
7439         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
7440         and gtkiconfactory.h functions
7441
7442         * gtk/gtkiconfactory.c: add some docs in here
7443
7444         * gtk/gtkmain.c (gtk_get_default_language): document
7445         (gtk_get_current_event): document
7446         (gtk_get_current_event_state): document
7447         (gtk_get_event_widget): document
7448
7449         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
7450
7451         * gtk/gtkcontainer.c: Add some documentation
7452         (gtk_container_add): give a more explanatory warning on adding an
7453         already-parented widget, this is kind of a FAQ and also a common
7454         typo that's easier to debug with a nice warning 
7455
7456         * gtk/gtkcellrenderertoggle.c
7457         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
7458         adding this, it's useless
7459         (gtk_cell_renderer_toggle_set_active): remove
7460         (gtk_cell_renderer_toggle_get_radio): add
7461
7462         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
7463         the NULL cell renderer, that doesn't make any sense to me. 
7464
7465         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7466         demo code should never use deprecated features.
7467
7468         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7469         code should never use deprecated features.
7470
7471         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7472         gtk_widget_queue_clear_area deprecated
7473
7474         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7475         deprecated
7476
7477         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7478
7479         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7480         a GdkImage deprecated, replaced by new consistently-named
7481         functions       
7482
7483         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7484
7485         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7486
7487         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7488         deprecated
7489
7490         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7491         so it won't appear in docs and confuse people.
7492
7493         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7494
7495         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7496         macros deprecated. (can't mark the type itself deprecated, since
7497         GtkProgressBar is not deprecated and we need the type decl to use
7498         GtkProgressBar)
7499
7500         * gtk/gtkpixmap.h: Mark deprecated
7501
7502         * gtk/gtkoldeditable.h: Mark deprecated
7503
7504         * gtk/gtklist.h: Mark deprecated
7505
7506         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
7507         for anything anymore.
7508
7509         * gtk/gtkctree.h: Mark deprecated
7510
7511         * gtk/gtkclist.h: Mark deprecated
7512
7513         * gtk/gtkpreview.h: Mark deprecated
7514
7515         * gtk/gtkpacker.h: Mark deprecated
7516
7517         * gtk/gtktipsquery.h: Mark deprecated
7518
7519         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
7520
7521         * gtk/gtkvruler.h: Add comment that it will move out of GTK
7522
7523         * gtk/gtkhruler.h: Add comment that it will move out of GTK
7524
7525         * gtk/gtkruler.h: Add comment that it will move out of GTK
7526
7527         * gtk/gtkgamma.h: Add comment that it will move out of GTK
7528
7529         * gtk/gtkcurve.h: Add comment that it will move out of GTK
7530
7531 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
7532
7533         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
7534         gdk_colormap_sync private since it was never exported
7535         in a header file.
7536
7537         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
7538         colormap->colors[] for StaticGray, StaticColor colormaps.
7539
7540         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
7541         was being used as if it was image->bits_per_pixel.
7542
7543         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
7544         for the image in the GdkImage structure since it isn't
7545         reconstructable, and we need it to handle packed types
7546
7547         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
7548         the assumption that on Win32 image->bits_per_pixel == image->depth,
7549         always.
7550
7551         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
7552
7553         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
7554         warning message if no converter can be found. 
7555
7556 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
7557
7558         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
7559         chars to isupper() / tolower(). (#567)
7560
7561         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
7562         to clear up 64-bit warnings. (#567)
7563
7564 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
7565
7566         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
7567         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
7568
7569         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
7570         since some people set $(libdir) separately. (#1290, David Kaelbling)
7571
7572 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
7573
7574         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
7575         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
7576         MAXPATHLEN, but the code here depends on a fixed value.)
7577         (#4524)
7578
7579 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
7580
7581         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
7582         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
7583
7584 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
7585
7586         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
7587         viewable there is no way that moving the node will cause the 
7588         focus row to become not viewable, so omit check on the visibility
7589         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
7590
7591 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
7592
7593         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
7594         selection before inserting new text.
7595
7596 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
7597
7598         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
7599         Make the sensitivity of the reparented child track that of
7600         the original parent menu item. (#34218, David Hodson)
7601
7602         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
7603         the case where the current item is destroyed properly.
7604
7605         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
7606         some edge cases with child-less menuitems.
7607         
7608 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
7609
7610         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
7611         key pop down window. (#12074, Jon K Hellan)
7612
7613 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
7614
7615         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
7616         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
7617         The solution here isn't perfect - you get an extraneous
7618         emission of "toggle", which could conceivably confuse an app,
7619         but better than the current situation. LXR search seems to
7620         indicate that no apps in GNOME CVS connect to "toggle".
7621
7622 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
7623
7624         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
7625         gtk_public_h_sources to directly here to avoid warning when
7626         building srcdir != builddir. (#9656)
7627
7628 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
7629
7630         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
7631         handlers in gtkrange.c return the proper values (TRUE == handled)
7632         (#10316).
7633
7634         This is just the tip of the iceberg, but gtkrange.c is the
7635         most common place where the propagation is problematical,
7636         and also a place where it is almost certainly safe to change
7637         this in the stable branch.
7638
7639         (You don't want right click popups on a range control or anything...)
7640
7641 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
7642
7643         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
7644         area on focus out, even if a background pixmap isn't set.
7645         (#13941)
7646         
7647 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
7648
7649         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
7650         to deal with setting the shape properly when scrolling arrows are
7651         turned on, but not visible because there is sufficient space.
7652         (#13432)
7653
7654 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
7655
7656         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
7657         items with submenus, destroy the item along with the submenu.
7658         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
7659         properly.
7660
7661         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
7662         later.
7663
7664 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
7665
7666         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
7667         the focus widget sometimes wasn't drawn with the default if there
7668         was no default widget.
7669
7670         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
7671         unreference pixmaps. 
7672
7673         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
7674         for some extra safety.
7675
7676 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
7677
7678         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
7679         the text of a cell to the old pointer value better, by
7680         copying the new text before freeing the old text. Some code
7681         cleanup. (#8079, Karl Nelson)
7682
7683 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
7684
7685         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
7686         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
7687
7688 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
7689
7690         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
7691         item from a menu, check to see if it matches 
7692         menu->old_active_menu_item, and if so, unref and clear
7693         old_active_menu_item (Patch from Pavel Cisler)
7694
7695         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
7696         menu_shell->active_menu_item, if it is the child being
7697         removed. (Patch based on that of Gene Ragan, #50337)
7698
7699 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
7700
7701         * gdk/linux-fb/gdkselection-fb.c: 
7702         * gdk/linux-fb/gdkcolor-fb.c: 
7703         * gdk/linux-fb/gdkdrawable-fb2.c: 
7704         * gdk/linux-fb/gdkfont-fb.c: 
7705         * gdk/linux-fb/gdkim-fb.c: 
7706         * gdk/linux-fb/gdkinput.c: 
7707         * gdk/linux-fb/gdkkeyboard-fb.c: 
7708         * gdk/linux-fb/gdkmain-fb.c: 
7709         * gdk/linux-fb/gdkrender-fb.c: 
7710         A bunch of whitespace cleanup.
7711         
7712 2001-01-30  Havoc Pennington  <hp@pobox.com>
7713
7714         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
7715         #ifdef GTK_ENABLE_BROKEN.
7716
7717         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7718         GTK_ENABLE_BROKEN just before including the broken headers.
7719         
7720         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7721         deprecated types registered.
7722
7723         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7724         we have to test the broken stuff.
7725
7726         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7727         
7728 2001-01-30  Havoc Pennington  <hp@redhat.com>
7729
7730         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7731         here where prev pointer was set to the wrong thing
7732
7733         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7734         (gtk_tree_path_is_descendant): new function
7735
7736         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7737         cached length
7738         (gtk_list_store_get_iter): don't modify iter if we can't get the
7739         path.
7740
7741         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7742         
7743         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7744         GtkTreeDragDest
7745
7746         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7747         was causing segfault
7748
7749         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7750         pointer to NULL
7751
7752         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7753
7754         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7755         on returning FALSE
7756         (gtk_list_store_iter_children): ditto
7757         (gtk_list_store_iter_nth_child): ditto
7758         (gtk_list_store_iter_nth_child): ditto
7759         (gtk_list_store_iter_parent): ditto
7760
7761         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7762         on iter->user_data != NULL instead of silently accepting it.
7763         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7764         we are returning TRUE.
7765         (gtk_tree_store_iter_children): ditto
7766         (gtk_tree_store_iter_nth_child): ditto
7767         (gtk_tree_store_iter_parent): ditto
7768         (gtk_tree_store_insert): remove handling of parent->user_data ==
7769         NULL, replace with parent == NULL       
7770
7771         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7772         and a comment explaining things
7773
7774         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7775         interface support to GtkTreeStore.
7776
7777         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7778         FALSE if no prev, fix
7779
7780         * gtk/gtktreeview.c (set_source_row): use a row reference
7781         (set_dest_row): use a row reference
7782
7783 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7784
7785         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7786         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7787         (gtk_tree_selection_select_iter): The same as above.
7788
7789 2001-01-26  Havoc Pennington  <hp@redhat.com>
7790
7791         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7792         which holds a handle to a specific row (particular set of values
7793         in the model, i.e. pointer-identity row).
7794
7795         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7796         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7797         Still need to use it for the src/dest row saved on the drag context.
7798
7799 2001-01-26  Havoc Pennington  <hp@redhat.com>
7800
7801         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7802
7803         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7804         not offset by TREE_VIEW_HEADER_HEIGHT
7805         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7806         TREE_VIEW_HEADER_HEIGHT
7807
7808         * configure.in (included_loaders): for me, --with-included-loaders
7809         generates the error "the specified loader yes does not exist",
7810         i.e. the arg defaults to "yes", so change test for value ""
7811         to test for value "yes", and include all loaders in that case.
7812
7813         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7814
7815         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7816         handle TREE_VIEW_VERTICAL_SEPARATOR
7817         (gtk_tree_view_bin_expose): fix to consider the row offset as
7818         pointing halfway into vertical separator.       
7819         (gtk_tree_view_draw_node_focus_rect): ditto
7820
7821         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7822         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7823         (TRUE) to be called.
7824
7825         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7826         debug mode where the invalid region is colored in on invalidate,
7827         so you can see the flicker and know whether your redraw code is 
7828         doing a good job.
7829
7830         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7831         tree window coordinates (clip rect is in tree window coords)
7832
7833         * gtk/Makefile.am: add gtktreednd.[hc]
7834
7835         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7836
7837         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7838         drag-and-drop data operations on a model (so we can set up tree
7839         drag-and-drop automatically)
7840
7841         * gtk/testgtk.c: Add a window to change sensitivity in the
7842         GtkLabel test; add a way to change the entry frame in GtkEntry
7843         test
7844
7845         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7846         (gtk_entry_get_has_frame): new functions to remove the frame
7847         around an entry
7848         (gtk_entry_size_request): shrink requisition if no frame
7849         (gtk_entry_draw_focus): don't draw frame if no frame
7850
7851         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7852         checks inside a cell renderer
7853         (gtk_default_draw_option): ditto for options
7854
7855         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7856         children from the alignment, not the button
7857         (gtk_tree_view_column_init): ref/sink the column, to emulate
7858         GObject refcounting.
7859
7860         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7861         
7862         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7863         Use theme functions to draw the toggles 
7864
7865         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7866
7867         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7868         GdkPangoAttrEmbossed to use in rendering insensitive text
7869
7870         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7871
7872         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7873         using new GDK features
7874         
7875 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7876
7877         * gtk/gtkimage.c:
7878         Splitted gtk_image_clear into gtk_image_clear() and
7879         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7880         to avoid leaks.
7881
7882         * gtk/gtklabel.c (set_markup):
7883         Don't leak text.
7884
7885         * gtk/gtktextlayout.c:
7886         Always free display->shaped_objects.
7887
7888         * gtk/testgtk.c (create_clist):
7889         Don't leak custom style.
7890
7891 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7892
7893         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7894         Don't leak image. Simplify using gdk_colormap_query_color().
7895         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7896
7897         * linux-fb/gdkcolor-fb.c:
7898         Implemented gdk_colormap_query_color.
7899
7900 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7901
7902         * linux-fb/gdkcursor-fb.c:
7903         Don't leak built-in cursors.
7904
7905         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7906         Don't leak tmp_points.
7907
7908         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7909         Don't modify desc. Don't leak font if the PangoFont
7910         isn't found.
7911         
7912         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7913         Free dash_list.
7914
7915         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7916         Don't leak string.
7917         
7918 2001-01-20  Havoc Pennington  <hp@pobox.com>
7919
7920         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7921         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7922         me, matches Pango
7923
7924 2001-01-22  Havoc Pennington  <hp@redhat.com>
7925
7926         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7927
7928         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7929
7930         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7931         Remove, move back to gdk-pixbuf
7932
7933         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7934         to all the word functions
7935
7936         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7937         before doing anything on NULL layout or if we don't have the focus
7938
7939         * gtk/testtext.c (fill_example_buffer): "justification"
7940
7941         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7942         to be called "justification" not "justify"
7943
7944         * demos/gtk-demo/textview.c (create_tags): "justification"
7945         
7946         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7947
7948 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7949
7950         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7951         Don't leak visible_region. Use visible_region instead of region.
7952         
7953         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7954         Don't do extra gdk_drawable_ref(). This is not X.
7955         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7956         gdk_fb_focused_window is ref:ed.
7957         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7958         windows.
7959
7960 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7961
7962         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7963         Don't leak the PangoFontDescriptor.
7964
7965 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7966
7967         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7968         when not realized.
7969         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7970         (gtk_tree_view_realize): add scroll_to support
7971         (gtk_tree_view_finalize): add a finalize method.  Populate.
7972         (gtk_tree_view_insert_column): ref and sink the column.
7973         (gtk_tree_view_append_column): ref and sink the column.
7974         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7975         individual nodes.  Should make the code much more efficient, if
7976         actually used.
7977
7978 2001-01-19  Havoc Pennington  <hp@redhat.com>
7979
7980         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7981         byte_offset variable was being used to mean both "offset into
7982         layout" and "offset into buffer line" which was no longer true
7983         with addition of preedit string; fix
7984
7985 2001-01-19  Havoc Pennington  <hp@redhat.com>
7986
7987         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7988
7989         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7990         function
7991
7992         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7993         implement
7994
7995         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7996         scroll_to_cell, matches TextView scroll functions better
7997         (gtk_tree_view_tree_to_widget_coords): new function
7998         (gtk_tree_view_widget_to_tree_coords): new function
7999         (gtk_tree_view_get_visible_rect): new function
8000         (gtk_tree_view_get_path_at_pos): accept negative coordinates
8001         (gtk_tree_view_draw_node_focus_rect): new function moved from
8002         draw_focus, also, use width of bin_window as width of the focus
8003         rect
8004         (gtk_tree_view_expand_row): fix bug where it didn't recognize
8005         already-expanded rows
8006         (gtk_tree_view_get_cell_rect): new function
8007         (gtk_tree_view_get_path_at_pos): return the click position
8008         relative to the passed-in cell
8009         (gtk_tree_view_set_expander_column): new function
8010
8011         * configure.in: remove gtk-config-2.0 chmod
8012
8013         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
8014         and properly handle drags with targets we don't understand
8015         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
8016         scrolling anyway
8017         (gtk_text_view_drag_drop): stop scrolling here though, and set the
8018         mark invisible
8019
8020         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
8021         function
8022         (gtk_drag_dest_get_target_list): new function
8023         (gtk_drag_dest_set_target_list): new function
8024         
8025         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
8026
8027         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
8028         related to drag-and-drop
8029
8030 2001-01-19  Alexander Larsson  <alexl@redhat.com>
8031
8032         * gdk/linux-fb/gdkprivate-fb.h:
8033         Define EMULATE_GDKFONT.
8034         Add extra pango_font stuff to GfkFontPrivate.
8035         
8036         * gdk/linux-fb/gdkdrawable-fb2.c:
8037         * gdk/linux-fb/gdkfont-fb.c:
8038         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
8039         emulation using PangoFont.
8040
8041 2001-01-17  Havoc Pennington  <hp@pobox.com>
8042
8043         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
8044         all the non-deprecated set_foo functions. Added missing object
8045         properties, and added g_object_notify() to setters. 
8046         Wrote docs.
8047         
8048 2001-01-18  Tor Lillqvist  <tml@iki.fi>
8049
8050         * gtk/gtkmain.c
8051         * gtk/gtkrc.c: (Win32) Use the new
8052         g_win32_get_package_installation_(sub)directory() functions.
8053
8054         * config.h.win32.in: New file.
8055         
8056         * config.h.win32: Removed.
8057
8058         * configure.in: Output config.h.win32.
8059
8060         * Makefile.am: Add it to EXTRA_DIST.
8061
8062         * gtk/gtk.def: Update.
8063
8064 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
8065
8066         * gtk/gtklabel.c (gtk_label_size_request): Set the
8067         attributes onto the PangoLayout even if they are newly
8068         created from label->pattern.
8069
8070 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
8071
8072         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
8073
8074         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
8075         structures in functions. Fixes bug where gtk_dataset_*
8076         was accidentally still being used in one place, causing
8077         every dest side event to be treated independently.
8078
8079         * gtk/gtkdnd.c: Remove last vestages of handling
8080         ::draw (fixes warning)
8081         
8082         * gtk/gtkentry.[ch]: Add drag and drop support.
8083
8084         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
8085         new function gtk_check_drag_threshhold() for checking
8086         to check if (dx,dy) has exceeded the threshhold for starting
8087         a drag and use it everywhere.
8088
8089 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
8090
8091         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
8092         add -I{includedir}/gtk-2.0.
8093
8094         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
8095         gdk/gdk-pixbuf.h: Doc fixups.
8096         
8097         * gtk/gtkobject.h: Remove trailing , from enum
8098
8099 2001-01-17 Alexander Larsson <alexl@redhat.com> 
8100
8101         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
8102         Doh! Mixed up x and y.
8103
8104         * gdk/linux-fb/gdkglobals-fb.c:
8105         Removed gdk_fb_pointer_grab_window_events,
8106         added _gdk_fb_pointer_grab_owner_events and
8107         _gdk_fb_keyboard_grab_owner_events.
8108
8109         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
8110         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
8111         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
8112         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
8113         Send crossing events after ungrab finished.
8114         (gdk_keyboard_grab): Set ..._owner_events
8115         (type_masks): Move out of function.
8116         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
8117         gdk_fb_keyboard_event_window): New functions, return the
8118         window an event should be targeted at. Handles grabs and
8119         event propagation. Can return NULL.
8120         (gdk_event_make): Remove event_mask checking. Now always
8121         returns an event.
8122                 
8123         * gdk/linux-fb/gdkkeyboard-fb.c:
8124         * gdk/linux-fb/gdkproperty-fb.c:
8125         * gdk/linux-fb/gdkselection-fb.c:
8126         Use new event_window/gdk_event_make() behaviour.
8127         
8128         * gdk/linux-fb/gdkmouse-fb.c:
8129         Use new event_window/gdk_event_make() behaviour.
8130         Only send motion events if in the same window.
8131         If grabbed, use cursor from window if sibling of grabbed
8132         window, and cursor from grabbed window otherwise.
8133
8134         * gdk/linux-fb/gdkprivate-fb.h:
8135         Update gdk_fb_window_send_crossing_events, gdk_event_make
8136         and grab varaible declarations. Add gdk_fb_*_event_window().
8137
8138         * gdk/linux-fb/gdkwindow-fb.c:
8139         Use new event_window/gdk_event_make() behaviour.
8140         Keep correct track of focus window.
8141         (gdk_window_set_events): Set all specific button motion masks
8142         if GDK_BUTTON_MOTION_MASK set.
8143
8144         * gtk/gtkdnd.c (gtk_drag_update):
8145         Free info->last_event if gdk_drag_motion returned FALSE.
8146
8147 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8148
8149         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
8150         Eliminate redraws when input-only windows are shown or
8151         hidden. Thanks to jpe@archaeopteryx.com.
8152
8153 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
8154
8155         * docs/faq/gtk-faq.sgml: FAQ update:
8156           - Update to bugzilla
8157           - Add GTK+ and security/SUID/SGID
8158           - Add DnD question
8159
8160 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
8161
8162         * gdk/linux-fb/gdkdnd-fb.c:
8163         Some cleanups.
8164         
8165 2001-01-15  Havoc Pennington  <hp@pobox.com>
8166
8167         * tests/testtreeview.c: add test stuff for CellRendererToggle
8168
8169         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
8170         accessor
8171
8172         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
8173         only toggle on button press (would do release like GtkButton, but
8174         we'd need implicit grab code for treeview cells)
8175
8176 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8177
8178         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
8179
8180         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
8181         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
8182
8183         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
8184         to g_{locale,filename}_{to,from}_utf8 to match current API.
8185
8186         * gtk/makefile.msc.in (gtk_OBJECTS)
8187         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
8188
8189         * gtk/gtk.def: Update.
8190
8191 2001-01-15  Tor Lillqvist  <tml@iki.fi>
8192
8193         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
8194         implementaion that more closely mimics the events that an X server
8195         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
8196         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
8197         with nested preview widgets, for instance, more responsive when
8198         you move the mouse quickly into them.
8199         (find_window_for_pointer_event): Make it actually compile.
8200         (gdk_event_translate): Set send_event to the value of
8201         InSendMessage (). This doesn't really mean the same as X11's
8202         send_event flag, but is close enough, says jpe@archaeopteryx.com
8203
8204 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8205
8206         * gdk/linux-fb/gdkdnd-fb.c:
8207         Implemented drag and drop.
8208         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
8209         when it tries to free and then copy the same event (info->last_event).
8210         I am not sure about why this happens, but will continue looking.
8211
8212 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8213
8214         * gdk/linux-fb/gdkwindow-fb.c:
8215         Use gdk_window_invalidate_rect instead of
8216         gdk_window_invalidate_rect_clear to minimise flashing.
8217         When hiding windows you need to clear the root window though.
8218
8219 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8220
8221         * gdk/linux-fb/gdkdrawable-fb2.c:
8222         For optization, add an full_shapes argument to gdk_fb_clip_region.
8223         If this is false, only the cliprects of the shapes are used.
8224
8225         * gdk/linux-fb/gdkprivate-fb.h:
8226         Export gdk_fb_window_peek_shape.
8227         Add full_shapes to gdk_fb_clip_region.
8228
8229         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8230         When moving a window, don't clear everything under the it, just the
8231         root window. Makes stuff faster and flash less.
8232         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
8233         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
8234         offset of the shape.
8235         
8236
8237 2001-01-12  Havoc Pennington  <hp@redhat.com>
8238
8239         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
8240         current invalid region, fixes redraw bug while scrolling the 
8241         text widget
8242
8243         * gtk/gtktextview.c, gtk/gtktextview.h:
8244         Rearrange the scrolling/validation/etc. code in a major way, 
8245         so it seems to make sense to me. Probably isn't genuinely that
8246         much better, but...
8247
8248         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
8249         notifies
8250
8251         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
8252
8253 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
8254
8255         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
8256         Hide mouse pointer while rotation. Show it afterwards.
8257
8258 2001-01-12  Alexander Larsson  <alexl@redhat.com>
8259
8260         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
8261         windows in consideration when generating clip region.
8262
8263         * gdk/linux-fb/gdkfb.h:
8264         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
8265
8266         * gdk/linux-fb/gdkprivate-fb.h:
8267         Add shape to GdkWindowFBDatat.
8268         exported gdk_fb_window_get_abs_shape().
8269         removed gdk_fb_draw_lines declaration.
8270
8271         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
8272         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
8273         send focus changes when there is a grabbed window.
8274         (gdk_window_get_pointer): Handle shaped windows.
8275         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
8276         (gdk_fb_window_peek_shape): Returns the shape for a window,
8277         handles GDK_FB_USE_CHILD_SHAPE.
8278         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
8279         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
8280         (gdk_window_shape_combine_mask): Implement.
8281
8282         * gtk/gtkwindow-decorate.c:
8283         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
8284         setting the shape of a window makes the window transparent.
8285
8286 2001-01-11  Havoc Pennington  <hp@redhat.com>
8287
8288         * gtk/gtktreemodelsimple.h: Oops, broke some macros
8289
8290 2001-01-10  Havoc Pennington  <hp@redhat.com>
8291
8292         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
8293         add this function, bug 40251
8294
8295         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
8296         of type macro   
8297
8298 2001-01-11  Alexander Larsson  <alexl@redhat.com>
8299
8300         * acconfig.h:
8301         Added ENABLE_SHADOW_FB
8302
8303         * configure.in:
8304         Added --disable-shadowfb
8305
8306         * gdk/linux-fb/gdkcursor-fb.c:
8307         Update shadowfb when updating cursor
8308
8309         * gdk/linux-fb/gdkdrawable-fb2.c:
8310         Added wrappers for shadowfb that calls  the normal drawable
8311         methods, but calls gdk_shadow_fb_update(bounding box) when
8312         GdkWindows are drawed to.
8313         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
8314         which also returns the bounding box.
8315
8316         * gdk/linux-fb/gdkfb.h:
8317         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
8318
8319         * gdk/linux-fb/gdkgeometry-fb.c:
8320         Update shadowfb when scrolling window.
8321
8322         * gdk/linux-fb/gdkglobals-fb.c:
8323         Add _gdk_fb_screen_angle.
8324         
8325         * gdk/linux-fb/gdkkeyboard-fb.c:
8326         Test code for screen rotation. Shift-F2 in the xlate driver
8327         rotates the screen.
8328
8329         * gdk/linux-fb/gdkmain-fb.c:
8330         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
8331
8332         * gdk/linux-fb/gdkmouse-fb.c:
8333         Use fb_width/height instead of modeinfo.xres/yres.
8334
8335         * gdk/linux-fb/gdkprivate-fb.h:
8336         Added fb_men, fb_width, fb_height & fb_stride. When using
8337         shadow fb these can differ from the framebuffer stuff.
8338         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
8339         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
8340         _gdk_fb_screen_angle. Removed CM, RP.
8341
8342         * gdk/linux-fb/gdkrender-fb.c:
8343         Added code for shadowfb handling and screen rotation using
8344         shadowfb.
8345
8346         * gdk/linux-fb/gdkwindow-fb.c:
8347         Use fb_mem, fb_stride, fb_width, fb_height.
8348         Added recompute_rowstride to reset the rowstride of all windows.
8349         Added gdk_fb_recompute_all() which recomputes rootwindow size,
8350         window abs positions and window rowstrides. Usefull when the
8351         rotation has changed.
8352
8353 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
8354
8355         * docs/faq/gtk-faq.sgml: update to make web site updating easier
8356
8357 2001-01-10  Havoc Pennington  <hp@redhat.com>
8358
8359         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
8360         where sibling == iter
8361         (gtk_tree_store_insert_after): handle sibling == iter
8362         (gtk_tree_store_prepend): remove stamp checks
8363         (gtk_tree_store_insert_before): ditto
8364         (gtk_tree_store_append): ditto
8365         (gtk_tree_store_get_path): ditto
8366         (gtk_tree_store_get_value): ditto
8367         (gtk_tree_store_iter_has_child): ditto
8368         (gtk_tree_store_iter_n_children): ditto
8369         (gtk_tree_store_iter_nth_child): ditto
8370         (gtk_tree_store_insert_after): ditto
8371         (gtk_tree_store_is_ancestor): ditto
8372         (gtk_tree_store_iter_depth): ditto
8373         (gtk_tree_store_insert_before): assert that sibling's parent is
8374         the same as the passed-in parent
8375         (gtk_tree_store_insert_after): assert that sibling's parent is
8376         the same as the passed-in parent
8377
8378         
8379         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
8380         function to get the first iterator in a model
8381         
8382         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
8383         conventionally the "root" in this sense is just NULL afaict.
8384
8385         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
8386         where sibling == iter
8387         (gtk_list_store_insert_after): handle case where sibling == iter
8388
8389         * tests/testtreeview.c (run_automated_tests): fairly lame basic
8390         automated tests for ListStore, TreeStore
8391
8392         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
8393         (gtk_list_store_insert): update tail pointer, and fix it to work
8394         (gtk_list_store_insert_before): update tail pointer, and fix it to work
8395         (gtk_list_store_append): use tail to be faster
8396         (gtk_list_store_prepend): fix it, update tail pointer
8397         (gtk_list_store_insert_after): fix it, update tail pointer
8398
8399         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
8400         the list
8401
8402 2001-01-09  Havoc Pennington  <hp@redhat.com>
8403
8404         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
8405         is NULL due to a pending resize
8406
8407         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
8408         column width to values less than 1
8409
8410         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
8411         width to be between min/max width, and still set the width 
8412         even if autosize is turned on, so the tree view can use this 
8413         function in order to autosize.
8414         (gtk_tree_view_column_init): set initial width to 1 not 0
8415
8416         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
8417         setter function to modify column width, so we get notification
8418         (gtk_tree_view_insert_iter_height): ditto
8419         (gtk_tree_view_calc_size): ditto
8420         (gtk_tree_view_check_dirty): ditto
8421
8422         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
8423         properties to change all the interesting attributes of the tree
8424         view column.
8425         (gtk_tree_view_column_set_header_clickable): rename set_clickable
8426         (gtk_tree_view_column_get_clickable): add
8427         (gtk_tree_view_column_set_cell_renderer): don't unset the current
8428         attributes; assume a cell renderer with equivalent object
8429         properties has been swapped in. Do g_object_notify().
8430         (gtk_tree_view_column_set_visible): g_object_notify
8431         (gtk_tree_view_column_get_sizing): rename from get_col_type
8432         (gtk_tree_view_column_set_sizing): g_object_notify
8433         (gtk_tree_view_column_set_width): add g_object_notify
8434         (gtk_tree_view_column_set_min_width): ditto
8435         (gtk_tree_view_column_set_max_width): ditto
8436         (gtk_tree_view_column_set_title): ditto
8437         (gtk_tree_view_column_set_clickable): ditto
8438         (gtk_tree_view_column_set_widget): ditto
8439         (gtk_tree_view_column_set_justification): ditto
8440
8441 2001-01-09  Havoc Pennington  <hp@redhat.com>
8442
8443         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
8444         there are no rows in the model
8445
8446         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
8447         NULL, then return the start of the list
8448
8449         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
8450         if we can't get any rows from an empty model 
8451
8452         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
8453         extraneous * after function pointer typedef usage
8454
8455         * Makefile.am: don't specify full path to cp and rm
8456
8457         * gtk/gtkcellrenderertextpixbuf.c
8458         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
8459         NULL before dereferencing, fixes a segfault that happened from
8460         time to time
8461
8462         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8463         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
8464         and reindent the function
8465         (gtk_cell_renderer_pixbuf_get_size): indentation
8466
8467         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8468         we quit it
8469         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8470         (gtk_dialog_set_default_response): New function, to set default
8471         button
8472         (gtk_dialog_set_response_sensitive): New function, to set 
8473         sensitivity of buttons
8474
8475         * gtk/gtkcellrendererpixbuf.c
8476         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8477         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8478
8479         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8480         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8481         also boxed types.
8482         (_gtk_tree_data_list_value_to_node): ditto
8483
8484         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8485         --gtk-debug=tree
8486
8487         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8488
8489         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8490
8491 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8492
8493         * gdk/win32/gdkevents-win32.c: Implement better mouse
8494         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8495         (find_window_for_pointer_event): New function.
8496         (gdk_event_translate): Use it when handling mouse events.
8497
8498 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8499
8500         * configure.in:
8501         Added --with-included-loaders option
8502
8503         * gdk-pixbuf/Makefile.am:
8504         * gdk-pixbuf/gdk-pixbuf-io.c:
8505         Add support for including selected gdk-pixbuf loaders only.
8506
8507         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
8508         gtk_window_set_has_frame):
8509         Added inline documentation.
8510
8511         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
8512         * docs/reference/gdk/tmpl/windows.sgml:
8513         Added inline documentation.
8514
8515 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
8516
8517         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
8518         realizing buttons that have already been realized.
8519
8520 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
8521
8522         * tests/testtreeview.c (main): Show menu items before adding to
8523         option menu.
8524
8525         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
8526         around if we kill them.
8527
8528         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8529         Return if we pass in a NULL model.
8530
8531 2001-01-08  Havoc Pennington  <hp@redhat.com>
8532
8533         * tests/testtreeview.c: hack on this some
8534
8535         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
8536         gtk_tree_store_set_valist, v is for arrays, valist for varargs
8537         list
8538         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
8539
8540         * gtk/gtkliststore.h: Add varargs set() and get() convenience
8541         functions
8542
8543 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8544
8545         * gtk/gtkwindow-decorate.[hc]:
8546         * gtk/Makefile.am:
8547         New files. Contains an implementation of a minimal WM for
8548         linux-fb.
8549
8550         * gtk/gtkwindow.h:
8551         Add the possibility for GtkWindows to specify a frame. This
8552         is used for the window decoration code, but could concievably
8553         be used for X programs too (xmms style windows).
8554         GtkWindow->frame is the toplevel window if the window is framed.
8555         The signal frame_event gets all events that are targeted to
8556         GtkWindow->frame.
8557         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
8558         
8559         * gtk/gtkwindow.c:
8560         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
8561         Call out to gtkwindow-decorate.c for WM support in linx-fb.
8562
8563 2001-01-08  Alexander Larsson  <alexl@redhat.com>
8564
8565         * docs/README.linux-fb:
8566         Correct filename ~/.pangoft2_aliases
8567
8568         * gdk/gdkwindow.h:
8569         Added new function gdk_window_get_decorations.
8570
8571         * gdk/linux-fb/gdkfb.h:
8572         Removed _gdk_window_get_decorations declaration.
8573         Renamed _gdk_window_set_child_handler to
8574         gdk_fb_window_set_child_handler.
8575
8576         * gdk/linux-fb/gdkwindow-fb.c:
8577         Renamed _gdk_window_set_child_handler to
8578         gdk_fb_window_set_child_handler.
8579
8580         * gdk/x11/gdkwindow-x11.c:
8581         New function gdk_window_get_mwm_hints().
8582         Implemented gdk_window_get_decorations.
8583
8584         * docs/reference/gdk/tmpl/windows.sgml:
8585         * docs/reference/gdk/gdk-sections.txt:
8586         Added gdk_window_get_decorations docs.
8587         
8588 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
8589
8590         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
8591         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
8592         gdk_fb_window_send_crossing_events):
8593         Possibly send focus events when the mouse moves from one
8594         window to another.
8595
8596 2001-01-07  Tor Lillqvist  <tml@iki.fi>
8597
8598         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
8599         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
8600         to match current API.
8601
8602         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
8603         environment variable is set, don't call g_error when on a
8604         palettized (PseudoColor) display. Some people want to use GTK+ 
8605         in 256-colour mode even though works only partially.
8606
8607         * gdk/gdk.def
8608         * gtk/gtk.def
8609         * gtk/makefile.mingw.in: Update.
8610
8611 2001-01-05  Havoc Pennington  <hp@redhat.com>
8612
8613         * tests/testtreeview.c: hack on this a bit
8614
8615         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
8616         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
8617
8618         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
8619         was spelled incorrectly
8620         (GTK_IS_TREE_MODEL_SIMPLE): ditto
8621
8622         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
8623         from gtk_tree_view_set_headers_active   
8624
8625         * gtk/gtktexttag.c:
8626         (gtk_text_tag_get_property): handle PROP_DIRECTION
8627         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
8628         properties, bug 40235
8629
8630         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
8631         forward_to_line_end
8632
8633 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
8634
8635         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
8636         modules/input/gtkimcontextxim.c: Adapt to new prototypes
8637         for unicode,locale,filename conversion functions.
8638
8639 2001-01-05  Havoc Pennington  <hp@redhat.com>
8640
8641         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
8642         broken if called on the first position in the buffer.
8643
8644         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
8645         forward_to_delimiters to be called only if we aren't already at
8646         the delimiters.
8647
8648 2001-01-05  Havoc Pennington  <hp@redhat.com>
8649
8650         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
8651
8652 2001-01-05  Alexander Larsson  <alexl@redhat.com>
8653
8654         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
8655         colormap in here. Sync from X port.
8656         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
8657         Sync from X port.
8658         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
8659         This happens now and then, and i don't think it is a bug.
8660         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
8661         != endpoint.
8662         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
8663         GDK_LINE_SOLID.
8664
8665         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
8666         some of the fields filled in at least.
8667
8668         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
8669         miLineArcD is no more, remove it from the function definition.
8670
8671 2001-01-04  Havoc Pennington  <hp@redhat.com>
8672
8673         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
8674         this
8675
8676         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
8677         user_data instead of tree_node
8678
8679         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
8680         TREE_VIEW_COLUMN_SIZE
8681
8682         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
8683         "size" field to "width" finishes bug 40061
8684
8685         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
8686         for bitfields, bug 40268
8687
8688 2001-01-04  Havoc Pennington  <hp@redhat.com>
8689
8690         Rename some stuff:
8691         
8692         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
8693
8694         s/GtkModelSimple/GtkTreeModelSimple/g;
8695         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
8696         s/gtk_model_simple/gtk_tree_model_simple/g;
8697         s/gtkmodelsimple/gtktreemodelsimple/g;
8698
8699         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
8700
8701         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
8702         s/column_set_col_type/column_set_sizing/g;
8703
8704         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
8705         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
8706
8707         s/GtkCellRendererType/GtkCellRendererState/g;
8708         
8709         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
8710         (gtk_cell_renderer_toggle_class_init): change "state" property to
8711         "active", to match GtkToggleButton
8712         (gtk_cell_renderer_toggle_get_active): new function, bug
8713         40269
8714         (gtk_cell_renderer_toggle_set_active): new function
8715         (gtk_cell_renderer_toggle_set_property): route changes to toggle
8716         state through gtk_cell_renderer_set_active
8717
8718 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8719
8720         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8721         temporarily until they work again.  Brought up to date with
8722         changes in the model.
8723         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8724         model.
8725
8726 2001-01-04  Havoc Pennington  <hp@redhat.com>
8727
8728         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8729         equal to the line length, then position iterator before paragraph 
8730         separators. Fixes crash reported by Mikael Hermansson when
8731         pressing left arrow from the start of a line.   
8732
8733         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8734         about byte indexes off the end
8735         (iter_set_from_char_offset): add g_error about char offsets
8736         off the end
8737
8738 2001-01-03  Havoc Pennington  <hp@redhat.com>
8739
8740         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8741
8742         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8743         of private functions; remove inclusion of private headers.
8744
8745         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8746         function, so we don't need private functions in gtktextdisplay.c
8747
8748         * gtk/gtktextiterprivate.h: underscore-ification
8749
8750         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8751         to instead say "only useful to implement widgets"
8752
8753         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8754         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8755         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8756
8757         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8758         This function was completely broken
8759
8760         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8761
8762         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8763
8764         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8765
8766         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8767
8768         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8769
8770         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8771
8772         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8773         gtk_paint_layout
8774
8775         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8776         gtk_paint_layout
8777
8778         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8779         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8780         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8781         which were not implemented.     
8782
8783         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8784         insert_pixbuf signal. Rename delete_text to delete_range since it
8785         also deletes pixbufs and child anchors. This almost closes bug
8786         40245 (still need to deal with child anchors)
8787
8788         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8789         insert_pixbuf, change signal names as appropriate, change types of
8790         signals taking marks/tags to have the specific type, not just
8791         G_TYPE_OBJECT
8792         
8793         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8794         closes bug 40051
8795
8796         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8797         unnecessary remove_contents() call
8798         (gtk_option_menu_class_init): add a "changed" signal, closes
8799         bug 40039
8800         (gtk_option_menu_update_contents): emit "changed" if the 
8801         active menu item changes
8802
8803         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8804         cast to GtkObject, reported by Jonas Borgstrom
8805         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8806         we can't do stuff with side effects in finalize. Instead, spew a
8807         warning if the loader isn't closed.
8808
8809         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8810         colormap in here, non-X ports probably need to sync to this change
8811
8812         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8813         assertion that colormap != NULL, you can set the colormap to NULL
8814         if you like.
8815         
8816         * Makefile.am: remove gtk-config-2.0
8817
8818         * configure.in: Use pkg-config to locate GLib. Remove
8819         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8820         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8821         Use pkg-config to locate Pango. Output correct Pango libs to
8822         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8823
8824         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8825         files
8826         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8827         X11 pc files
8828
8829         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8830         unref from here
8831
8832 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8833
8834         * configure.in:
8835         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8836
8837 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8838
8839         * gtk/gtktextlayout.c
8840         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8841         variable when moving back onto a single line.
8842
8843 2001-01-01  Havoc Pennington  <hp@redhat.com>
8844
8845         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8846
8847         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8848
8849         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8850         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8851
8852 2001-01-01  Havoc Pennington  <hp@redhat.com>
8853
8854         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8855
8856         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8857         GtkTextAttributes
8858
8859         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8860         #40246
8861         (gtk_text_attributes_copy_values): rename from 
8862         gtk_text_attributes_copy
8863         (gtk_text_attributes_copy): a more standard GTK copy function, 
8864         which returns a new object
8865
8866 2001-01-01  Havoc Pennington  <hp@redhat.com>
8867
8868         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8869         
8870         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8871         don't fill in tree_view->priv->selection, kind of an unexpected
8872         side effect
8873
8874         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8875         gtkintl.h
8876         
8877         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8878         gtkintl.h
8879         (gtk_cell_renderer_get_property): remove calls to g_value_init
8880
8881         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8882         gtkintl.h
8883
8884         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8885         and include gtkintl.h
8886         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8887         property names
8888
8889         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8890         GtkTreeSelection
8891         (_gtk_tree_selection_new_from_with_view): rename, return
8892         GtkTreeSelection
8893         (_gtk_tree_selection_set_tree_view): rename with uscore
8894         (gtk_tree_selection_get_selected): fill in the "model" out param
8895         first, so it gets filled in even if we return at the top of the 
8896         function
8897         (gtk_tree_selection_real_select_all): add a comment and an else{}
8898         to clarify this a bit
8899         (gtk_tree_selection_real_unselect_all): add the same else{}
8900
8901         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8902         set_tree_view to have underscore prefixes, move them to the
8903         private header, fix return type of new_with_tree_view
8904         (struct _GtkTreeSelection): mark struct
8905         fields private  
8906
8907         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8908         GtkTreeModelFlags, not a guint
8909         (gtk_tree_path_prev): return gboolean not gint
8910         (gtk_tree_path_up): return gboolean not gint
8911
8912         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8913         return GtkTreeModelFlags, not a guint
8914
8915         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8916         that child model is non-null before unrefing it
8917         (g_value_int_compare_func): make this a qsort compare func, not 
8918         a boolean predicate
8919
8920         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8921         (add -umn to the end), and mark it unimplemented
8922         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8923         I don't see what it's for - doesn't the model always sort itself?
8924         (gtk_tree_model_sort_set_compare): this had the wrong signature
8925
8926         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8927         Fix the docs to say that it destructively replaces existing
8928         attributes (previously said that it added attributes).
8929         (gtk_tree_view_column_set_visible): canonicalize bool before
8930         equality testing. Also, check for realization before
8931         hiding/showing the tree_column->window; if this window could exist
8932         before realization, then it's busted and needs fixing, we can't 
8933         create GDK resources pre-realization. Also, remove
8934         superfluous queue_resize(), since set_size() does that for us.
8935         (gtk_tree_view_column_set_col_type): check realization before 
8936         using tree_column->window
8937
8938         * gtk/gtktreedatalist.c: fix filename in copyright notice
8939
8940 2000-12-31  Havoc Pennington  <hp@pobox.com>
8941
8942         * gtk/gtktextview.c: Rearrange all the
8943         scroll-while-dragging-or-selecting code to be different, not
8944         necessarily better. ;-)
8945         (gtk_text_view_scroll_to_mark): Change this
8946         function to take within_margin as a fraction instead of a pixel
8947         value, and to take alignment arguments (indicating where to align 
8948         the mark inside the visible area)
8949         
8950         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8951         to GtkObject
8952
8953         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8954         behavior so that offsets past the end of the line are not 
8955         allowed, and an offset equal to the line length moves the iterator
8956         to the next line
8957         (gtk_text_iter_set_line_index): make parallel change
8958         (gtk_text_iter_get_bytes_in_line): add this function
8959         
8960         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8961         of byte indexes off the end of the line; byte index at the end of
8962         the line now returns FALSE and doesn't fill in the requested
8963         values, byte index past the end of the line is an error.  Also,
8964         don't allow -1 offset anymore, since its meaning is unclear.
8965
8966         This change exposes some bug in visual cursor motion, where we
8967         end up with a huge invalid byte index; needs fixing. Symptom of 
8968         bug is a crash when you hit up arrow.
8969         
8970         (_gtk_text_line_char_locate): match the change to byte_locate
8971
8972         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8973         from start of line properly. fixes bug reported by Mikael
8974         Hermansson where backspace would delete all text before the
8975         cursor.
8976
8977 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8978
8979         * gdk/win32/gdkwindow-win32.c
8980         (gdk_window_impl_win32_get_visible_region): New function, as in
8981         the X11 backend.
8982         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8983         instead of duplicating the same code here.
8984
8985         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8986         GDK_COLORMAP macro.
8987
8988         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8989         destroy function.
8990         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8991         access that.
8992
8993         * gtk/gtk.def: Update.
8994
8995         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8996
8997 2000-12-30  Havoc Pennington  <hp@pobox.com>
8998
8999         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
9000         colormap on input only windows, to avoid special cases all over
9001         the code for these windows.
9002
9003 2000-12-26  Tor Lillqvist  <tml@iki.fi>
9004
9005         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
9006         we are on a palettized display ("PseudoColor" in X11), as the code
9007         for that doesn't work anyway, and never has.
9008
9009 2000-12-22  Alexander Larsson  <alexl@redhat.com>
9010
9011         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
9012         Don't use isprint() for chars > 255.
9013
9014 2000-12-21  Havoc Pennington  <hp@redhat.com>
9015
9016         * tests/testtreeview.c: more work
9017
9018 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9019
9020         * docs/README.linux-fb:
9021         Update the docs to the new pangoft2 way.
9022
9023 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9024
9025         * configure.in:
9026         For linux-fb get the pangoft2 cflags and libs. This needs a recent
9027         pango version.
9028         Remove modules/linux-fb/Makefile.
9029
9030         * gdk/linux-fb/gdkdrawable-fb2.c:
9031         Render glyphs using freetype.
9032
9033         * gdk/linux-fb/gdkfb.h:
9034         Add new fb-specific functions needed for managing windows.
9035
9036         * gdk/linux-fb/gdkmain-fb.c:
9037         Remove gdk_font_init/fini() calls.
9038
9039         * gdk/linux-fb/gdkpango-fb.c:
9040         Remove old implementation. Use pangoft2 instead.
9041
9042         * gdk/linux-fb/gdkprivate-fb.h:
9043         Remove PangoFBFont and related stuff.
9044
9045         * gdk/linux-fb/gdkwindow-fb.c:
9046         Implement drawable->get_visible_region.
9047         Implement support for _gdk_window_set_child_handler () and
9048         _gdk_window_get_decorations().
9049
9050         * modules/Makefile.am:
9051         Remove linux-fb subdir.
9052
9053         * modules/linux-fb/*:
9054         Removed all.
9055         
9056 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
9057
9058         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
9059         calls, as they are no longer needed.
9060
9061         * gtk/gtktreemodelsort.c: Fix up the comparison code.
9062         
9063         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
9064         figure out how to emit a signal on an interface.
9065
9066 2000-12-20  Havoc Pennington  <hp@redhat.com>
9067
9068         * tests: new directory to contain tests, gtk/test* should move
9069         here sometime (with appropriate on-cvs-server hackery)
9070
9071         * tests/testtreeview.c, tests/Makefile.am: a test
9072         
9073         * configure.in (AC_OUTPUT): add tests/Makefile
9074
9075         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
9076         and "invisible_set" which were missing
9077
9078         * gtk/gtkrbtree.h: some cheesy indentation fix
9079         
9080 2000-12-20  Alexander Larsson  <alexl@redhat.com>
9081
9082         * gtk/gtkinvisible.c (gtk_invisible_realize):
9083         Attach the style to the window so that the style it is not
9084         leaked when unrealizing the window.
9085
9086 2000-12-18  Havoc Pennington  <hp@redhat.com>
9087
9088         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
9089         begin/end user action where appropriate
9090         (gtk_text_view_commit_handler): add begin/end user action
9091
9092         * gtk/gtktextbuffer.c: add begin/end user action signals, and
9093         bracket interactive operations with begin/end user action pair.
9094         
9095         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
9096         "interactive" arg from insert_text and delete_text signals.
9097         Add begin_user_action, end_user_action signals
9098         (gtk_text_buffer_begin_user_action): 
9099         (gtk_text_buffer_end_user_action): New functions to delimit 
9100         a user-visible action
9101
9102         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
9103         signals.
9104         
9105 2000-12-18  Havoc Pennington  <hp@redhat.com>
9106
9107         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
9108         was pretty non-working.
9109
9110         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
9111         by passing the length to g_utf8_validate().
9112
9113 2000-12-16  Havoc Pennington  <hp@pobox.com>
9114
9115         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
9116         Port to GObject, can go back in gdk-pixbuf after setting up 
9117         a gdk-pixbuf-marshal.h header over there.
9118
9119         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
9120         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
9121         args
9122         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
9123         set
9124         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
9125         here, do it when we create the buttons later
9126         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
9127         (gtk_tree_view_map): paranoia checks that column->button is shown 
9128         and unmapped
9129         (gtk_tree_view_size_request): only request visible children.
9130         Move header size calculation in here, for cleanliness, and 
9131         to maintain invariants for child widgets if we eventually 
9132         let users set different children inside the buttons
9133         (gtk_tree_view_map_buttons): factor out code to map buttons,
9134         since it was being called several times
9135         (gtk_tree_view_size_allocate_buttons): move_resize the drag
9136         windows instead of just moving them; their height may change 
9137         if we allow random widgets in there, or the theme changes.
9138         (gtk_tree_view_size_allocate): move button size allocation 
9139         above emitting the scroll signals, to ensure a sane state when we
9140         hit user code
9141         (gtk_tree_view_button_release): remove queue_resize after
9142         tree_view_set_size(), set_size() will handle any resize queuing
9143         that's needed
9144         (gtk_tree_view_focus_in): just queue a draw, don't fool with
9145         draw_focus goo
9146         (gtk_tree_view_focus): use gtk_get_current_event() and
9147         gdk_event_get_state()
9148         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
9149         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
9150         semicolon
9151         (gtk_tree_view_create_button): show the button here
9152         (gtk_tree_view_button_clicked): actually emit the clicked signal
9153         on the column
9154         (_gtk_tree_view_set_size): return right away if the size is
9155         unchanged, as a cheesy optimization
9156         (gtk_tree_view_setup_model): rename set_model_realized to 
9157         setup_model to match the flag that indicates whether we've 
9158         called it
9159         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
9160         exist, because set_scroll_adjustment does that and it shouldn't
9161         matter what order you call these in
9162         (gtk_tree_view_get_vadjustment): ditto
9163         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
9164         for paranoia
9165         (gtk_tree_view_set_headers_visible): call
9166         gtk_tree_view_map_buttons() instead of using cut-and-paste code
9167         (gtk_tree_view_append_column): clarify whether the return value
9168         is the count of columns before or after, and do the increment 
9169         separately from the return statement so you can tell from the code.
9170         (gtk_tree_view_remove_column): ditto
9171         (gtk_tree_view_insert_column): ditto
9172         (gtk_tree_view_get_column): remove g_return_if_fail for columns
9173         outside the existing range, the docs say that outside-range
9174         columns are allowed, so we handle them as documented. (Presumably
9175         this allows a nice loop with column != NULL as test.)
9176         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
9177         mean (left/right/center etc.).
9178         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
9179         (gtk_tree_view_expand_row): add docs
9180         (gtk_tree_view_collapse_row): add docs
9181
9182         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
9183         function to emit the clicked signal on a column
9184         
9185         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
9186         state of an event
9187         (gdk_event_get_time): don't treat GDK_SCROLL 
9188         as a button event, remove default case from switch so gcc 
9189         will whine if we don't explicitly handle all event types
9190
9191         * gtk/gtktreeselection.h: added some FIXME 
9192         
9193         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
9194         "columns" to "n_columns" and "column" to "columns" for clarity
9195
9196 2000-12-16  Havoc Pennington  <hp@pobox.com>
9197         
9198         * gtk/gtktextiter.c: General cleanup of the log attr iteration
9199         stuff. This should make e.g. the delete key work again in the
9200         text widget...
9201         (gtk_text_iter_forward_cursor_positions): handle negative count
9202         (gtk_text_iter_backward_cursor_positions): handle negative count
9203         (gtk_text_iter_forward_word_ends): handle negative count
9204         (gtk_text_iter_backward_word_starts): handle negative count
9205
9206         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
9207         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
9208         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
9209         GObject. No doubt will cause breakage.
9210
9211         * demos/gtk-demo/textview.c: remove hacks around
9212         non-GObject-ification of the text objects
9213
9214         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
9215         the text tag
9216         
9217 2000-12-14  Havoc Pennington  <hp@pobox.com>
9218
9219         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
9220         that we have Xrender
9221
9222 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
9223
9224         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
9225         Add two virtualized functions gdk_drawable_get_clip_region - to
9226         get the clip region when drawing.
9227         
9228         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
9229         use invalidate_region.
9230
9231         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
9232         region.
9233
9234         * acconfig.h configure.in: Check for Xft. For now, assume
9235         that if Xft is found, Pango was compiled with Xft support
9236         as well.
9237
9238         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
9239         gdk_colormap_query_color().
9240         
9241         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
9242         with Xft if appropriate.
9243
9244         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
9245         a pangoxft context if we have XFT and the environment
9246         variable GD_USE_XFT is set.
9247         
9248         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
9249         and also possibly an XftDraw structure.
9250
9251         * gtk/gtkfontsel.c: Handle the case where the font from the
9252         style doesn't match any of the fonts a bit better.
9253         
9254         * gtk/testgtk.c: Add tabs between directional segments for
9255         hebrew/arabic test. (Not really necessary, just a little
9256         prettier.)
9257
9258 2000-12-14  Havoc Pennington  <hp@redhat.com>
9259
9260         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
9261         reading a file
9262
9263 2000-12-14  Havoc Pennington  <hp@redhat.com>
9264
9265         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
9266         unused call to get_last_line()
9267
9268         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
9269         here until boxed is working (and maybe after that - we should
9270         really not gratuitously break old code)
9271
9272         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
9273         specific types for font_desc and tabs args, move them to
9274         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
9275         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
9276
9277         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
9278         use GTK_TYPE_POINTER for signal signatures as a hack-around
9279
9280         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
9281         PangoTabArray
9282
9283         * gtk/gtktextlayout.c (line_display_iter_to_index): 
9284         make static
9285         (line_display_index_to_iter): make static
9286
9287         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9288         to marshal a string not a boxed
9289
9290         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
9291
9292         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
9293         since the UTF-8 isn't validated yet
9294
9295         * gtk/gtktextsegment.c (char_segment_check_func): don't require
9296         lines to end in '\n'
9297         
9298         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
9299         forward_to_delimiters, and grapheme boundaries
9300         (gtk_text_view_delete_from_cursor): properly handle non-newline
9301         delimiters, and grapheme boundaries
9302
9303         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
9304         to gtk_text_iter_forward_to_delimiters, and make it work properly
9305         if empty lines end with a character other than '\n'
9306
9307         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
9308         position
9309
9310 2000-12-15  Tor Lillqvist  <tml@iki.fi>
9311
9312         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
9313
9314         * gtk/gtk.def
9315         * gdk/gdk.def: Update.
9316
9317         * gdk/win32/gdkmain-win32.c
9318         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
9319         gdkmain-win32.c here.
9320
9321         * gdk/win32/makefile.mingw.in (all): No need to make
9322         gdk-win32res.o here, the makefile one step up will call us to make
9323         it.
9324
9325         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
9326         gdkkeys-win32.
9327
9328         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
9329
9330         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
9331         call to g_source_add().
9332
9333         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
9334         leak. Thanks to Andreas Kemnade.
9335
9336 2000-12-13  Havoc Pennington  <hp@pobox.com>
9337
9338         * gtk/gtktextbtree.h: Remove double _ in front of some functions
9339
9340         * gtk/gtktext*.[hc]: update accordingly
9341         
9342 2000-12-13  Havoc Pennington  <hp@pobox.com>
9343
9344         * gtk/gtktextbtree.h: Put _ in front of every function in this 
9345         header file
9346
9347         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
9348
9349 2000-12-13  Alex Larsson  <alexl@redhat.com>
9350
9351         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
9352         Add support for ps2 intellimouse.
9353
9354         * gdkkeyboard-fb.c:
9355         Move shift-F1 repaint handling to xlate handler only.
9356         
9357         * docs/README.linux-fb:
9358         Add imps2 to docs.
9359         Document the new refresh keys.
9360         
9361 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
9362
9363         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
9364
9365         * gtk/gtkbox.c: change property types from (u)long to (u)int for
9366         ::position and ::padding.
9367
9368         * gtk/gtkcontainer.c: make ::border_width an INT property.
9369
9370         * gtk/gtkpacker.c: make ::position an INT property.
9371
9372         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
9373         guard against NULL h/v scrollbars, since this is used at construction
9374         time.
9375
9376         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
9377         internal gtk_clist_constructor().
9378
9379         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
9380         gtk_ctree_constructor().
9381
9382         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
9383         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
9384
9385         * docs/reference/Makefile.am: fun stuff, disabled docs generation
9386         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
9387
9388         * gtk/gtkwidget.[hc]:
9389         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
9390         and gtk_widget_get().
9391         (gtk_widget_new): use g_object_new_valist().
9392         (gtk_widget_set): use g_object_set_valist().
9393
9394         * gtk/gtkobject.[hc]:
9395         removed gtk_object_arg_get_info(), gtk_object_getv(),
9396         gtk_object_query_args(), gtk_object_newv(),
9397         gtk_object_class_add_signals(),
9398         gtk_object_class_user_signal_new(),
9399         gtk_object_class_user_signal_newv(),
9400         gtk_object_arg_set(), gtk_object_arg_get(),
9401         gtk_object_args_collect(),
9402         gtk_object_default_construct(),
9403         gtk_object_constructed(),
9404         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
9405         removed nsignals, signals and n_args members from GtkObjectClass.
9406         (gtk_object_new): use g_object_new_valist().
9407         (gtk_object_set): use g_object_set_valist().
9408         (gtk_object_get): use g_object_get_valist().
9409         
9410         * gtk/gtkcompat.h: define gtk_object_default_construct().
9411         
9412         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
9413         g_object_new().
9414
9415         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
9416         fucntions, cleaned up method assignments (make sure your structures
9417         are setup properly before calling out). removed all GTK_CONSTRUCTED
9418         hacks ;)
9419
9420 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
9421
9422         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
9423         off-by-one error in checks. (Dave Lambert)
9424
9425 2000-12-12  Alexander Larsson  <alexl@redhat.com>
9426
9427         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
9428         Don't free gdk_fb_keyboard twice.
9429
9430 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
9431
9432         * gtk/testgtk.c:
9433         (create_tooltips): 
9434         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
9435         use GObject swapped_signal:: properties instead.
9436
9437         * gtk/gtkcellrenderertoggle.c: 
9438         * gtk/gtkcellrenderertextpixbuf.c: 
9439         * gtk/gtkcellrenderertext.c: 
9440         * gtk/gtkcellrendererpixbuf.c: 
9441         * gtk/gtkcellrenderer.c:
9442         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
9443         missing warnings for invalid property ids, install properties
9444         with g_object_class_install_property() now.
9445         
9446         * gtk/gtksignal.c:
9447         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
9448         
9449 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
9450         
9451         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
9452         to determine if a window is the focus widget within
9453         its toplevel.
9454
9455         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
9456         to be boolean.
9457
9458         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
9459         of the case where the container CAN_FOCUS to here instead
9460         of having it in each individual move-the-focus place.
9461
9462         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
9463         focusing to be geometric in a much more obvious sense. Arrowing
9464         around is still non-intuitive because it isn't perfect and
9465         because entries, etc, grab the arrow keys, but it at least
9466         usually will do what you expect now.
9467         
9468         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9469         file.
9470
9471         * gtk/gtknotebook.c: Change tabs to be a single item in
9472         the focus chain. Make movement of focus on tabs with arrow
9473         keys wrap around.
9474         
9475         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9476         CHECK_FIND_CHILD macro to give informative error messages
9477         instead of silent returns.
9478
9479         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9480         flag since we handle GdkReturn on the tabs.
9481
9482         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9483         windows rather than sending expose events directly.
9484
9485         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9486         definition for GtkNotebookPage into .c file, since it is private.
9487
9488         * gtk/testgtk.c (create_notebook): Add option for 
9489         testing borderless notebook.
9490
9491         * gtk/testgtk.c (page_switch): Removed egregious poking
9492         around in GTK+ internals.
9493
9494         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9495
9496         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9497         properly through gtk_clist_focus. Make the title headers a
9498         single item in the tab-focus chain, and make left-right wrap
9499         around.
9500
9501         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9502         focus method so that wrapping around works properly.
9503
9504         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9505         that is handled for the widget now. 
9506
9507 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
9508
9509         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
9510         widgets as TOPLEVEL.
9511
9512         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
9513         TOPLEVEL widgets are containers.
9514
9515         * gtk/gtkinvisible.h: Remove useless include.
9516
9517 2000-12-11  Havoc Pennington  <hp@redhat.com>
9518
9519         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
9520         Handle chopping off \r\n and 0x2029 in addition to \n before
9521         passing to PangoLayout
9522
9523         * gtk/gtkimcontextsimple.c
9524         (gtk_im_context_simple_get_preedit_string): 
9525         return an empty string if no match is pending
9526
9527         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
9528         assertion that the returned preedit string was sane
9529
9530         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
9531         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
9532         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
9533
9534 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
9535
9536         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
9537         Fix up finalizer to chain to its parent.
9538
9539 2000-12-11  Alexander Larsson  <alexl@redhat.com>
9540
9541         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
9542         Clearified the difference between the keyboard types. Wrote a note
9543         about the magic sysrq key to get out of raw mode.
9544
9545 2000-12-09  James Henstridge  <james@daa.com.au>
9546
9547         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
9548         member to hold masks for detecting the start of a protocol packet.
9549         (mouse_devs): add packet start masks for ps2 and ms device types.
9550         Left the mask for fidmour blank, as I have no idea what it should
9551         be.
9552         (handle_mouse_io): skip bytes until we get to the start of a
9553         packet.  My Logitech mouse seems to be passing an extra NULL pad
9554         byte, and GPM does a similar thing here.
9555         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
9556         this is the ms mouse driver.
9557         (gdk_fb_mouse_ms_packet): fix up button handling, which was
9558         completely broken except for button1.  It was checking the wrong
9559         bit in the packet for the status of the right mouse button, and
9560         wrongly assuming right == button2 rather than 3.  I fixed that and
9561         also added support for middle button (button2).
9562
9563 2000-12-08  Havoc Pennington  <hp@redhat.com>
9564
9565         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
9566         that cause a segfault on text insertion
9567
9568         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
9569         warning
9570
9571         * gtk/gtktextiter.c (test_log_attrs): use
9572         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
9573
9574         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
9575         Get log attrs for a line, using a cache stored on the buffer
9576         
9577         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
9578         reported by Jeff Franks
9579
9580 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9581
9582         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
9583         /dev/ttyS0 -> /dev/mouse
9584
9585 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9586
9587         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
9588         Added dummy gdk_fontset_load.
9589
9590 2000-12-08  Alexander Larsson  <alexl@redhat.com>
9591
9592         * docs/README.linux-fb:
9593         * docs/Makefile.am:
9594         Initial GtkFB docs.
9595         
9596         * gdk/linux-fb/Makefile.am:
9597         Define GDK_DATA_PREFIX.
9598
9599         * gdk/linux-fb/gdkmain-fb.c:
9600         Fix typo.
9601         Change default display to /dev/fb0.
9602
9603         * gdk/linux-fb/gdkpango-fb.c:
9604         Add $(prefix)/share/fonts/ to font path.
9605         
9606 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
9607
9608         * gdk/linux-fb/gdkkeyboard-fb.c:
9609         New file containing the abstracted keyboard driver. Most code
9610         taken from gdkinput-ps2.c
9611
9612         * gdk/linux-fb/gdkinput-ps2.c:
9613         Removed file.
9614         
9615         * gdk/linux-fb/Makefile.am:
9616         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
9617
9618         * gdk/linux-fb/gdkcolor-fb.c:
9619         display->fb was renamed to display->fb_fd.
9620
9621         * gdk/linux-fb/gdkcursor-fb.c:
9622         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9623
9624         * gdk/linux-fb/gdkinput.c:
9625         Moved gdk_input_init here from gdkinput-ps2.c
9626
9627         * gdk/linux-fb/gdkmain-fb.c:
9628         display->fb was renamed to display->fb_fd.
9629         Now the tty and the console is opened here instead
9630         of in the keyboard driver. Also check GDK_VT to see what
9631         tty to open.
9632         Move gdk_beep () here from gdkinput-ps2.c
9633         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9634
9635         * gdk/linux-fb/gdkmouse-fb.c:
9636         Add header.
9637         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9638         Return correct keyboard modifiers.
9639         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
9640
9641         * gdk/linux-fb/gdkprivate-fb.h:
9642         Add tty and vt info to display.
9643         Add orignal modeinfo storage to display
9644         Update global functions
9645
9646         * gdk/linux-fb/gdkwindow-fb.c:
9647         Added gdk_fb_window_find_focus().
9648         gdk_mouse_get_info -> gdk_fb_mouse_get_info
9649
9650 2000-12-07  Havoc Pennington  <hp@pobox.com>
9651
9652         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
9653         function, noticed by Alex
9654
9655 2000-12-06  Elliot Lee  <sopwith@redhat.com>
9656
9657         * configure.in: Detect freetype properly
9658
9659         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
9660         above.
9661
9662 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9663
9664         * gdk/linux-fb/Makefile.am:
9665         Add gdkmouse-fb.c
9666         
9667         * gdk/linux-fb/gdkmouse-fb.c:
9668         New file. Abstracted the mouse drivers a bit.
9669
9670         * gdk/linux-fb/gdkcursor-fb.c:
9671         The cursor hide/show functions was moved here from gdkinput-ps2.c.
9672
9673         * gdk/linux-fb/gdkinput-ps2.c:
9674         Removed old mouse handling code. Moved cursor handling code
9675         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
9676         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
9677         gdk_mouse_get_info.
9678
9679         * gdk/linux-fb/gdkmain-fb.c:
9680         Pass NULL pointers for x,y in gdk_mouse_get_info call.
9681
9682         * gdk/linux-fb/gdkprivate-fb.h:
9683         Removed public gdk_fb_find_common_ancestor, added and renamed
9684         functions for the new mouse handling code.
9685
9686         * gdk/linux-fb/gdkwindow-fb.c:
9687         Moved gdk_fb_window_send_crossing_events here. added global
9688         variable gdk_fb_window_containing_pointer. made
9689         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
9690         renamed to gdk_mouse_get_info.
9691
9692 2000-12-06  Alexander Larsson  <alexl@redhat.com>
9693
9694         * gdk/linux-fb/gdkevents-fb.c:
9695         Update to match latest gmain/gsource changes.
9696
9697         * gdk/linux-fb/gdkinput-ps2.c:
9698         Bogus gdk_keymap_get_entries_for_keycode implementation so that
9699         it links. Will be implemented later.
9700
9701 2000-12-03  Havoc Pennington  <hp@pobox.com>
9702
9703         * gdk/Makefile.am: add gdkkeys.[hc]
9704
9705         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
9706         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
9707
9708         * acconfig.h, configure.in: add checks and command line options
9709         for XKB
9710
9711         * gdk/x11/gdkkeys-x11.c: Implement the above functions
9712         
9713         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
9714         and group in the key event
9715
9716         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
9717         field with the low-level hardware key code, and a group
9718         field with the keyboard group
9719
9720         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9721         and declare a couple globals used for keymap handling
9722         
9723         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9724         hold down Shift-Control and type a hex number to get a Unicode 
9725         character corresponding to the hex number
9726         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9727         (return bytes not chars)
9728
9729 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9730
9731         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9732         to avoid waste on 64-bit platforms.
9733
9734 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9735
9736         * INSTALL: Fix link to PNG home, remove reference
9737         to fribidi.
9738
9739         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9740         
9741         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9742         tested.)
9743
9744         * gtk/gtkcheckmenuitem.c: Permanently turn on
9745         always_show_toggle.
9746
9747         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9748         be NULL. (Vladimir Klebanov, #26545)
9749
9750         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9751         some signed/unsigned comparison problems. (#6510,
9752         David Kaelbling)
9753
9754         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9755         return type to boolean (Oskar Liljeblad, #18648)
9756
9757 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9758
9759         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9760         Remove bogus colormap setting.
9761
9762 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9763
9764         * gdk/linux-fb/gdkcolor-fb.c:
9765         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9766
9767         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9768         Must set colormap.
9769         
9770 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9771
9772         * docs/tutorial/gtk-tut.sgml: DND updates
9773
9774 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9775
9776         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9777         Remove old debug g_warning().
9778         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9779         or an implementation, just pass the implementation to draw_drawable_2.
9780         
9781         * gdk/linux-fb/gdkprivate-fb.h:
9782         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9783
9784         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9785         clear and invalidate area when window is destroyed.
9786         (send_map_events): Remove old commented out code.
9787
9788 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9789
9790         * gdk/linux-fb/gdkpango-fb.c:
9791         Use italic instead of oblique in font aliases.
9792         
9793         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9794         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9795         other unsupported functions.
9796
9797 2000-12-04  Havoc Pennington  <hp@redhat.com>
9798
9799         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9800
9801         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9802
9803         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9804
9805         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9806         hack to avoid infinite loops (synthetic expose event) - 
9807         Owen has more appropriate fixes in a branch he'll check in later.
9808
9809         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9810         separator, CR, and CRLF as line ends
9811
9812         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9813         into lines using pango_find_paragraph_boundary(); other bits of
9814         the widget are still going to be broken if the boundary isn't '\n'
9815         though
9816
9817 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9818
9819         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9820         multiply.
9821
9822         * gdk/linux-fb/gdkpango-fb.c:
9823         Copied some 26.6 scaling macros from pango to clean up the rounding.
9824         (pango_fb_font_get_glyph_info): Correct sign on x value.
9825
9826         * gdk/linux-fb/gdkprivate-fb.h:
9827         Removed unreferenced external functions.
9828
9829         * modules/linux-fb/Makefile.am: Use ` instead of '.
9830
9831         * modules/linux-fb/basic.c:
9832         Remove dead code. In particular the dummy lang engine which broke all
9833         pango layouts in GtkFB. Don't include tables-big.i anymore.
9834
9835         * modules/linux-fb/tables-big.i:
9836         Upgrade to latest version from pango. Left for reference, basic_ranges
9837         moved to basic.c.
9838         
9839 2000-12-04  Havoc Pennington  <hp@redhat.com>
9840
9841         Fix bugs Alex found:
9842         
9843         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9844         to "draw"
9845
9846         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9847
9848         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9849
9850         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9851         implementation in here, apparently the expose() implementation was
9852         dead code.
9853
9854 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9855
9856         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9857         Return positive descent.
9858
9859 2000-12-02  Havoc Pennington  <hp@pobox.com>
9860
9861         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9862         method and signal
9863         
9864         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9865         calls gdk_window_process_updates() to push the exposes through
9866         (gtk_widget_class_init): No more draw signal, no
9867         gtk_widget_real_draw()  
9868         
9869         * gtk/gtkbin.c (gtk_bin_draw): remove
9870
9871         * gtk/gtkbox.c (gtk_box_draw): remove
9872
9873         * gtk/gtkbutton.c (gtk_button_draw): remove
9874
9875         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9876
9877         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9878
9879         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9880
9881         * gtk/gtkclist.c (gtk_clist_draw): remove
9882
9883         * gtk/gtkentry.c (gtk_entry_draw): remove
9884
9885         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9886
9887         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9888
9889         * gtk/gtkframe.c (gtk_frame_draw): remove
9890
9891         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9892
9893         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9894
9895         * gtk/gtklayout.c (gtk_layout_draw): remove
9896
9897         * gtk/gtklist.c (gtk_list_draw): remove
9898
9899         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9900
9901         * gtk/gtkmenu.c (gtk_menu_draw): remove
9902
9903         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9904
9905         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9906
9907         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9908
9909         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9910
9911         * gtk/gtkpacker.c (gtk_packer_draw): remove
9912
9913         * gtk/gtkrange.c (gtk_range_draw): remove
9914
9915         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9916
9917         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9918
9919         * gtk/gtktable.c (gtk_table_draw): remove
9920
9921         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9922
9923         * gtk/gtktext.c (gtk_text_draw): remove
9924
9925         * gtk/gtktextview.c (gtk_text_view_draw): remove
9926
9927         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9928
9929         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9930
9931         * gtk/gtktree.c (gtk_tree_draw): remove
9932
9933         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9934
9935         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9936
9937         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9938
9939         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9940
9941         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9942
9943         * gtk/gtkwindow.c (gtk_window_draw): remove
9944
9945 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9946
9947         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9948         a GtkToggleButton is both insensitive and active, it was being
9949         drawn by the GtkButton draw handler which doesn't check the
9950         state. Now it's calling gtk_toggle_button_paint instead.
9951         
9952 2000-12-01  Havoc Pennington  <hp@redhat.com>
9953
9954         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9955         dangling pointers to the appearance attributes from the 
9956         line display
9957
9958         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9959         width/height to mean "full width/height of drawable"
9960
9961         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9962         click to select word/line
9963         
9964         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9965         when getting log attrs. Get a slice, so that pixmaps and stuff
9966         are properly handled.
9967
9968         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9969         paste into the selection (replaces selection now, previously
9970         crashed or added to selection). Reveals longstanding btree bug -
9971         select multiple lines, middle-click on the selection, boom. This
9972         isn't related to my changes though.
9973
9974         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9975         PangoLogAttrs changes
9976         (gtk_entry_move_backward_word): ditto
9977
9978         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9979         functions return bool whether the iter moved onto a
9980         dereferenceable position.
9981  
9982         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9983         functions for motion in terms of display lines.
9984
9985         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9986         get the buffer a mark is inside
9987         
9988 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9989
9990         * gdk/linux-fb/Makefile.am:
9991         * modules/linux-fb/Makefile.am:
9992         Freetype 2 final uses freetype-config
9993
9994         * gdk/linux-fb/gdkpango-fb.c:
9995         Upgrade to use Freetype 2 final.
9996         More flexible support for font aliases, this also fixes a bug with
9997         GtkFontSelector, as the aliases must be visible in the font/family list,
9998         or GtkFontSelector reads uninitialized memory.
9999
10000 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
10001
10002         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
10003         XGetIMValues to properly terminate variable argument list, and do
10004         NULL return check for ic_values and xim_styles.
10005
10006         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
10007         Restore preedit state after XmbResetIC().
10008         
10009         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
10010         XvaCreateNestedList() should take XvaNestedList, but not
10011         XvaNestedList*.
10012
10013         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
10014         preedit_draw_callback, preedit_caret_callback): Match
10015         "preedit-changed" signal name to "preedit_changed" to be
10016         consistent to the spec.
10017
10018         * gtk/gtkimcontextsimple.c (check_table):
10019         Match "preedit-changed" to "preedit_changed" to be consistent
10020         to the spec.
10021
10022 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
10023
10024         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
10025         gc->clip_region == NULL>
10026
10027 2000-11-30  Tor Lillqvist  <tml@iki.fi>
10028
10029         Changes by Hans Breuer:
10030         
10031         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
10032         Dont't use negative width and height as max_hints. This fixes
10033         Owen's recent testgtk changes for win32.
10034
10035         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
10036         gdk_win32_hdc_release): These are exported and may be called with
10037         other drawable types than our GdkDrawableImplWin32 (?).
10038
10039         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
10040         so always #define USE_BACKING_STORE.
10041
10042         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
10043         of printf for debugging output.
10044
10045         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
10046         
10047         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
10048
10049         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
10050         declaration.
10051
10052         * gtk/gtktexttypes.h: Ditto.
10053
10054         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
10055         (GDK_VoidSymbol) also if in case of arg check failure.
10056
10057         * gtk/gtkimcontextsimple.c
10058         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
10059         position to the pointer, but to the variable it points to.
10060
10061         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
10062
10063         * gtk/gtk.def: Updates.
10064
10065 2000-11-29  Elliot Lee  <sopwith@redhat.com>
10066
10067         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
10068         GTK_TYPE_TREE_MODEL.
10069
10070 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10071
10072         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
10073         Set the size of the font from the description.
10074         (gdk_text_width): Gross hack that calculates the width
10075         of text by text_length * size/2. This is necessary because
10076         GtkLabel does some ugly gtk_string_width call to calculate
10077         an good size.
10078         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
10079
10080 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
10081
10082         * docs/tutorial/gtk-tut.sgml: DND updates
10083
10084 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10085
10086         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
10087         If you pass width or height == 0 to gdk_window_clear_area they
10088         should be calculated from the window size.
10089
10090 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10091
10092         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
10093         a grab, but no grab-cursor, use the cursor from the grabbed
10094         window. (gdk_fb_window_send_crossing_events): Send normal
10095         enter/leave notifications if grab and owner_events == TRUE.
10096
10097 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10098
10099         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10100         Do implicit button grabs, even if the window doesn't
10101         want the event.
10102         (gdk_fb_window_send_crossing_events): If there is a
10103         grab, only the grabbed window gets normal enter/leave
10104         notifications. On ungrab go from grabbed window to current.
10105         Don't send any notification to b when propagating from c -> b.
10106         If setting a grab on window, don't set prev_window.
10107         (handle_mouse_input): Send enter/leave events to the window the
10108         mouse is over, not the grabbed one.
10109         
10110 2000-11-28  Elliot Lee  <sopwith@redhat.com>
10111
10112         * gdk/gdkregion-generic.c: Zap warning.
10113         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
10114         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
10115
10116 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
10117
10118         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10119         The cursor should be hidden if it is part of either the
10120         source or destination region. Not only if it is in both.
10121         (gdk_window_set_transient_for): Silence warnings.
10122
10123 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10124
10125         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
10126         The default mode in X is Pie Arcs, therefore that is
10127         what Gtk+ uses.
10128
10129 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10130
10131         * gdk/linux-fb/gdkinput-ps2.c:
10132         Implement correct EnterNotify/LeaveNotify:
10133         (gdk_fb_window_send_crossing_events): New function that sends
10134         all GdkCrossingEvents from the last mouse-window to the specified
10135         destination.
10136         (gdk_fb_window_visibility_crossing): Removed function.
10137         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
10138         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
10139         instead of gdk_window_get_pointer() for better readability.
10140
10141         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
10142         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
10143
10144         * gdk/linux-fb/gdkprivate-fb.h:
10145         removed gdk_fb_window_visibility_crossing, added
10146         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
10147
10148         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
10149         New function that finds the least common ancestor of two windows.
10150         (gdk_window_show, gdk_window_hide):
10151         Use gdk_fb_window_send_crossing_events.
10152         (gdk_fb_window_move_resize): Send configure events to toplevel
10153         windows. Use gdk_fb_window_send_crossing_events.
10154
10155 2000-11-27  Havoc Pennington  <hp@redhat.com>
10156
10157         * gtk/gtkprivate.h (enum): Remove a trailing comma
10158
10159 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
10160
10161         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
10162         the "changed" callback of the adjustment.  We need to redraw the
10163         spin button's arrows when the adjustment's range changes.
10164         (adjustment_changed_cb): Draw the arrows.
10165         (gtk_spin_button_value_changed): Draw the arrows.
10166
10167 2000-11-23  Alexander Larsson  <alexl@redhat.com>
10168
10169         * gdk/linux-fb/gdkselection-fb.c:
10170         Initial selection implementation.
10171
10172         * gtk/gtkselection.c:
10173         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
10174         requestor in gtk_selection_request.
10175         
10176         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
10177         Added gdk_selection_property atom.
10178
10179         * gdk/linux-fb/gdkprivate-fb.h:
10180         Export _gdk_selection_window_destroyed.
10181         Removed mask_off_x/y from GdkCursorPrivateFB.
10182         Removed hbearing, added top, left to PangoFBGlyphInfo.
10183
10184         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10185         Call _gdk_selection_window_destroyed
10186         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
10187         the root window has been created.
10188         (static_dx_hack, static_dy_hack, compare_draw_rects,
10189         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
10190         in region. They are already sorted. Instead just traverse them in
10191         reverse if draw_direction < 0.
10192         
10193         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10194         Double-clicks must be sent after the normal button_press.
10195         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
10196         
10197         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
10198         Pass _gdk_fb_screen_gc instead of NULL.
10199
10200         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
10201         Initialize gdk_selection_property.
10202         (gdk_event_make): Remove unused code.
10203
10204         * gdk/linux-fb/gdkcursor-fb.c:
10205         Make the pixmap for the cursor the same size as the mask. Also remove
10206         the mask_off_x/y fields in GdkCursorPrivateFB and combine
10207         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
10208         Now the whole cursor is visible.
10209
10210         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10211         Fix bug where xdest+height instead of ydest+height was used
10212         to calculate if the source and dest overlapped. This fixes the
10213         redraw bug when the main window in testgtk was scrolled when
10214         partially covered by a tall window.
10215         Copy rectangles in region in order depending on draw_direction.
10216         Also moved the draw_direction flipping of start_y and end_y into
10217         the gc functions, as this might not be what all of them want.
10218         (gdk_fb_draw_lines): Support dashed lines.
10219         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
10220         so that the text is positioned correctly (was 1 pixel high).
10221
10222         gdk/linux-fb/gdkgc-fb.c:
10223         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
10224         all lines were drawn a pixel to short. Also checked the default of
10225         the rest of the values, and they're the same as X now.
10226
10227         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
10228         Clean up pixel positioning of the glyphs. Just use bgy->top and
10229         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
10230         to all divisions to get correct rounding behaviour.
10231
10232         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
10233         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
10234         Moved start_y/end_y flip into draw_drawable implementations.
10235         Flip also x rendering when draw_direction < 0.
10236         Remove unneccesary multiply with draw_direction.
10237
10238 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
10239
10240         * docs/tutorial/gtk-tut.sgml:
10241           - get rid of gtk_toggle_button_toggled FUD
10242           - start DND section - needs work - based on:
10243                 http://wolfpack.twu.net/docs/gtkdnd/
10244
10245 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10246
10247         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10248         Correct calculation of font metrics. Now GtkEntrys have sane
10249         size.
10250
10251 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10252
10253         * gdk/gdktypes.h:
10254         Add new type GdkSpan
10255         
10256         * docs/reference/gdk/gdk-sections.txt,
10257         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
10258         gdk/gdkregion.h:
10259         Implement and document gdk_region_spans_intersect_foreach.
10260
10261         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
10262         Add new file gdkrender-fb.c which contains all core
10263         rendering code.
10264         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
10265         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
10266         (optimized rectangle fillers).
10267
10268         * gdk/linux-fb/gdkdrawable-fb2.c:
10269         Move all rendering code to gdkrender-fb.c.
10270         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
10271         Use the new span intersection functions in gdk_fb_fill_spans.
10272         gdk_fb_draw_rectangle() clips filled rectangles and calls
10273         gc->fill_rectangle with the result.
10274         gdk_fb_fill_spans() gets extra argument "sorted".
10275
10276         * gdk/linux-fb/gdkevents-fb.c:
10277         Remove unused includes and defines.
10278         New function gdk_fb_get_time() to get correct time for events.
10279
10280         * gdk/linux-fb/gdkinput-ps2.c:
10281         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
10282         Make sure to set the time of all events.
10283
10284         * gdk/linux-fb/gdkmain-fb.c:
10285         Use gdk_fb_get_time ().
10286
10287         * gdk/linux-fb/gdkprivate-fb.h:
10288         New virtual GC calls: fill_span & fill_rectangle.
10289         Export gdk_fb_get_time().
10290         gdk_fb_fill_spans() gets extra argument "sorted".
10291
10292         * gdk/linux-fb/mi*.c:
10293         Use GdkSpan instead of GdkRectangle.
10294         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
10295         from XFree 4 source)
10296         
10297 2000-11-22    <jrb@redhat.com>
10298
10299         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
10300         reversing the order in an if statement will do.  Doing so managed
10301         to make the treemodelsort half work.  Other half will follow after
10302         I get the insert function fully fixed.
10303
10304 2000-11-21  Elliot Lee  <sopwith@redhat.com>
10305         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
10306         more than 2 bits. Besides, I need to implement an evil hack. :)
10307
10308 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
10309
10310         * docs/tutorial/gtk-tut.sgml: minor corrections
10311
10312 2000-11-20  Jonathan Blandford <jrb@redhat.com>
10313         * gtk/gtktreemodelsort.h: Add convertion functions to let you
10314           convert to and from relative path's and iters.
10315
10316         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
10317           testing sorting functions a bit better.  Currently broken -- will
10318           fix in morning.
10319
10320 2000-11-20  Havoc Pennington  <hp@redhat.com>
10321
10322         * gtk/gtkwidget.c: Documented a bunch of functions in here
10323         (gtk_widget_realize): Warn if you try to realize
10324         a widget with no parent that isn't a toplevel
10325         (gtk_widget_intersect): return a gboolean
10326
10327 2000-11-20  Havoc Pennington  <hp@redhat.com>
10328
10329         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
10330         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
10331         scrolling to be implemented in GDK to finish. Also, right now
10332         we just size_allocate all children on every layout change,
10333         which is pretty lame. Test commented out of testtext.c, 
10334         until it works better.
10335
10336 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
10337
10338         * gdk/linux-fb/gdkdrawable-fb2.c:
10339         Removed unused arguments from gdk_fb_drawable_get_pixel().
10340
10341         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
10342         Renamed fidur specific mouse packet data in MouseDevice to
10343         generic. Used it in ps2 mouse handling code to avoid blocking
10344         reads.
10345
10346 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
10347
10348         * demos/gtk-demo/main.c: Changed to have the list become
10349         non-italic when the demo window is destroyed through an external
10350         event (like a close button).  Doing so found three bugs in the
10351         widget.
10352
10353         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
10354
10355         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
10356         we actually set the cell.
10357
10358         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
10359
10360         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
10361         free a leaked path.  Thanks memprof.
10362
10363 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
10364
10365         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
10366         off-by-one error when destroying allocated segments
10367         on failure. (Elliot)
10368
10369 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
10370
10371         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
10372         memleaks found by Evan Martin.
10373
10374 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
10375
10376         * Released 1.3.2
10377         
10378         * NEWS: Updates for 1.3.2
10379
10380 2000-11-17  Tor Lillqvist  <tml@iki.fi>
10381
10382         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
10383         but in general for window system specific events.
10384
10385         * gtk/gtk.def
10386         * gtk/makefile.mingw.in
10387         * gtk/makefile.msc.in: Update.
10388         
10389         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
10390
10391 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
10392
10393         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
10394         distribute gtk.immodules.
10395
10396         * gtk/Makefile.am (install-data-local): Don't install the
10397         gtk.immodules file created for the uninstalled modules;
10398         instead run gtk-query-immodules after install
10399
10400 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10401
10402         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
10403         -rpath to the right install location.
10404
10405         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
10406         -export-dynamic.
10407
10408         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10409         properly.
10410
10411 2000-11-15  Havoc Pennington  <hp@pobox.com>
10412
10413         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
10414         patch from Mikael Hermansson to temporarily stop blinking while
10415         the user is using the keyboard to type or navigate. 
10416
10417         Also, when blinking, stay on for longer than we stay off. Also,
10418         return from start_cursor_blink if !cursor_visible, to save
10419         checking that flag all over the place before we call
10420         start_cursor_blink.
10421
10422 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
10423
10424         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
10425         only contain a "fontset" line, which is now ignored.
10426
10427         * gtk/gtkentry.c (gtk_entry_button_release): Make 
10428         double-click-to-select-word work.
10429         
10430 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
10431
10432         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
10433         Don't move back one char when we are actually at the end of the 
10434         paragraph.
10435
10436 2000-11-15  Robert Brady  <robert@suse.co.uk>
10437
10438         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
10439         'o' < 'p'.
10440         
10441         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
10442         bind_textdomain_codeset.
10443
10444         (gtk_init_check): Make the warning about translating default:LTR
10445         sterner.
10446         
10447 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
10448
10449         * **/Makefile.am : remove unecessary rules for win32-specific
10450         config-substituted targets. If you want these rules, use
10451         --enable-maintainer-mode (called automatically by autogen.sh).
10452         Stops a lot of unneccessary make-time warnings.
10453
10454         * gtk/gtktext{layout,display}.c: Factor in total width as
10455         well as screen when figuring alignment for word-wrap as well as
10456         no wrap; this is necessary to handle lines that cannot be wrapped
10457         at all.
10458
10459 2000-11-15  Havoc Pennington  <hp@redhat.com>
10460
10461         * gtk/testtext.c: Implement essential color cycling feature
10462
10463 2000-11-15  Havoc Pennington  <hp@redhat.com>
10464
10465         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10466         when we invalidate the main window.
10467
10468         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10469         GtkTextView will now invalidate the side windows for us when text
10470         changes.
10471
10472 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10473
10474         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10475         unconditionally, since we may need to update the horizontal
10476         scrollbars even if the height didn't change.
10477
10478         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10479         the extra attrs, since some of them affect size.
10480
10481         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10482         x_offset correctly.
10483
10484 2000-11-15  Havoc Pennington  <hp@redhat.com>
10485
10486         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10487         don't move the first line out into the margin, instead move the
10488         whole paragraph in order to make space for the first line within 
10489         the margin
10490
10491 2000-11-15  Havoc Pennington  <hp@redhat.com>
10492
10493         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10494         xoffset in addition to yoffset, so horizontal scrolling doesn't
10495         break redraws
10496
10497 2000-11-15  Havoc Pennington  <hp@redhat.com>
10498
10499         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10500         from the cursor
10501         (render_layout_line): fix reversed test that caused weird
10502         underlines to get drawn
10503
10504 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10505
10506         * gdk/linux-fb/gdkprivate-fb.h:
10507         Fix debug macros.
10508         
10509 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10510
10511         * gdk/linux-fb/gdkprivate-fb.h:
10512         Added virtual functions set_pixel, get_color,
10513         fill_span and draw_drawable to the GC.
10514         Added global _gdk_fb_screen_gc to use instead of
10515         NULL when drawing to the screen.
10516         Added _gdk_fb_gc_calc_state() prototype.
10517
10518         * gdk/linux-fb/gdkgc-fb.c:
10519         Call _gdk_fb_gc_calc_state() on any gc state change.
10520
10521         * gdk/linux-fb/gdkglobals-fb.c:
10522         Add _gdk_fb_screen_gc
10523                 
10524         * gdk/linux-fb/gdkdrawable-fb2.c:
10525         _gdk_fb_gc_calc_state() calculates best functions
10526         for the GC state and depth.
10527         Moved bpp specialized code to separate functions.
10528         Added optimized 24 bpp AA draw_drawable.
10529
10530         * gdk/linux-fb/gdkevents-fb.c:
10531         Silence gcc warning.
10532
10533         * gdk/linux-fb/gdkimage-fb.c:
10534         Use _gdk_fb_screen_gc
10535
10536         * gdk/linux-fb/gdkwindow-fb.c:
10537         Init and use _gdk_fb_screen_gc
10538
10539         * gdk/linux-fb/mitypes.h:
10540         Remove unused types.
10541
10542 2000-11-14  Havoc Pennington  <hp@pobox.com>
10543
10544         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
10545         to pixels
10546
10547 2000-11-14  Havoc Pennington  <hp@pobox.com>
10548
10549         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
10550
10551         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
10552         unknown char, no real reason we were using a variable. 
10553         Remove gtk_text_unknown_char variable. Fix all the text widget
10554         files accordingly.
10555
10556         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
10557         since the Unicode spec seems to prefer that character for our
10558         purposes.
10559
10560 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
10561
10562         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
10563         value of g_getenv() isn't freeable, so g_strdup it.
10564
10565         * modules/input/inuktitut.c: Inuktitut input method.
10566
10567         * modules/input/Makefile.am: Build this.
10568         
10569 2000-11-14  Elliot Lee  <sopwith@redhat.com>
10570
10571         * gtk/Makefile.am: Install gtk.immodules, needed for operation
10572         of gtk programs.
10573
10574 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
10575
10576         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
10577         reversed > that was causing Home to go to end of previous line.
10578
10579         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
10580         modified-keypresses (leave for bindings.)
10581
10582         * modules/input/Makefile.am: Remove useless -export-dynamic
10583         from module LDFLAGS.
10584
10585 2000-11-14  Havoc Pennington  <hp@redhat.com>
10586
10587         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
10588         higher.
10589
10590         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
10591         account. Also, render rise, underline, background, etc. for
10592         pixbufs as well as text. Also, draw underlines one pixel higher.
10593
10594         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
10595         PangoAttribute for the rise, so it gets drawn properly. Also,
10596         add the GtkTextAppearance attribute for pixbuf/widget segments
10597         as well; we should go ahead and have rise, underline, background,
10598         stipple work for those
10599
10600         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
10601         Pango
10602
10603 2000-11-15  Tor Lillqvist  <tml@iki.fi>
10604
10605         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
10606
10607         * gtk/gtk.def: Update.
10608
10609         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
10610         included.
10611         (gtk_rc_get_im_module_file): Use run-time installation directory
10612         on Win32.
10613
10614         * gdk/win32/rc/gdk.rc: Remove.
10615         * gdk/win32/rc/gdk.rc.in: New file.
10616         * gdk/win32/rc/Makefile.am: New file
10617         * gdk/win32/Makefile.am: Corresponding changes.
10618
10619         * gtk/gtk.rc: Remove.
10620         * gtk/gtk-win32.rc.in: New file.
10621         * gtk/Makefile.am: Corresponding changes.
10622
10623         * configure.in: Corresponding changes.
10624
10625         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
10626         has a built gtkcompat.h. Developers using CVS code on Win32 can
10627         hand-edit it from gtkcompat.h.in.
10628
10629         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
10630         gtkcompat.h from gtkcompat.h.win32.
10631
10632 2000-11-14  Havoc Pennington  <hp@redhat.com>
10633
10634         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
10635         to default to GDK_ACTION_MOVE if the drag is within a single
10636         widget. Defaults to GDK_ACTION_COPY between widgets.
10637
10638 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
10639
10640         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
10641
10642         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
10643
10644         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
10645         srcdir != builddir
10646
10647         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
10648
10649         * configure.in (GTK_VERSION): Up to 1.3.2
10650
10651         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
10652         gtkimcontextxim.h
10653
10654         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
10655         missing doc comment.
10656
10657 2000-11-14  Alexander Larsson  <alexl@redhat.com>
10658
10659         * modules/linux-fb/basic.c:
10660         Use the glib iconv wrappers.
10661
10662 2000-11-13  Havoc Pennington  <hp@pobox.com>
10663
10664         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
10665         still more bugs.
10666
10667         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
10668         scroll the GdkWindows before realization.
10669
10670 2000-11-13  Havoc Pennington  <hp@redhat.com>
10671
10672         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
10673         where GC didn't always get updated properly
10674
10675         * demos/gtk-demo/textview.c (create_tags): Use subattributes
10676         of fonts instead of setting the entire font
10677
10678         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
10679         setting entire font
10680
10681         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
10682
10683         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
10684         a bunch of individually-settable font attributes. You can still 
10685         use the "font" and "font_desc" args, they just set all the font
10686         attributes at once.
10687
10688 2000-11-13 Elliot Lee <sopwith@redhat.com>
10689
10690         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
10691
10692 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
10693
10694         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
10695         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
10696
10697         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
10698         work better.
10699
10700 2000-11-13  Havoc Pennington  <hp@redhat.com>
10701
10702         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
10703         the module file.
10704
10705         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
10706         dest->language
10707
10708         * gtk/testtext.c: Test pixels above/below/inside paragraphs
10709         settings
10710
10711         * gtk/gtktextview.c: Implement object args and setters/getters for
10712         all the aspects of the GtkTextAttributes that are not set from
10713         GtkWidget attributes. This is spacing, justification, margins,
10714         etc.
10715
10716         (gtk_text_view_set_arg)
10717         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10718         args
10719         (gtk_text_view_class_init): Add args for justify, left_margin,
10720         right_margin, indent, and tabs
10721         
10722
10723         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10724         attribute properly
10725
10726         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10727         replace with indent attribute
10728
10729         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10730         PANGO_SCALE
10731
10732         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10733         rearranging code to do that
10734         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10735         i.e. don't subtract the top_margin first, just to keep
10736         all margin-futzing in one place.
10737
10738         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10739
10740         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10741         special case of last line, Pango now handles this itself.
10742         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10743         Y coordinate
10744         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10745         (find_display_line_above): wasn't moving the byte index as it
10746         iterated over lines, so always returned byte 0. Also, port to use
10747         PangoLayoutIter.
10748         (find_display_line_below): same problem as
10749         find_display_line_above. Also, port to use PangoLayoutIter.
10750
10751 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10752
10753         * gdk/linux-fb/*.[ch]:
10754         Massive reindent to gtk+ standard. My hands hurt.
10755
10756         * gdk/linux-fb/gdkcolor-fb.c:
10757         Move GdkColorPrivateFB from inherited to windowing_data
10758
10759         * gdk/linux-fb/gdkcursor-fb.c:
10760         _gdk_cursor_new_from_pixmap made static
10761
10762         * gdk/linux-fb/gdkdnd-fb.c:
10763         GdkDragContextPrivate moved to windowing_data
10764
10765         * gdk/linux-fb/gdkdrawable-fb2.c:
10766         Removed endian.h, use glib endianness macros instead
10767         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10768         and GDK_DRAWABLE_IMPL_FBDATA
10769
10770         * gdk/linux-fb/gdkfont-fb.c:
10771         Add empty gdk_font_load(). Needed for linking of Gtk+.
10772
10773         * gdk/linux-fb/gdkimage-fb.c:
10774         Removed endian.h, use glib endianness macros instead
10775         Moved GdkImagePrivateFB to windowing_data
10776         gdk_image_new_bitmap didn't always allocate enough
10777         memory.
10778
10779         * gdk/linux-fb/gdkinput-ps2.c:
10780         Added semi-working support for MS serial mice.
10781
10782         * gdk/linux-fb/gdkprivate-fb.h:
10783         s/GdkWindowPrivate/GdkWindowObject/
10784         Removed GdkWindowPrivate typedef
10785         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10786         Removed GDK_DRAWABLE_P
10787         Move GdkColorPrivateFB from inherited to windowing_data
10788         Moved GdkImagePrivateFB to windowing_data
10789
10790         * gdk/linux-fb/gdkvisual-fb.c:
10791         Removed some unused debug code.
10792
10793         * gdk/linux-fb/gdkwindow-fb.c:
10794         Use stock cursors instead of including X headers.
10795         s/GdkWindowPrivate/GdkWindowObject/
10796
10797         * gdk/linux-fb/mitypes.h:
10798         Removed unused types.
10799
10800         * modules/linux-fb/basic.c:
10801         Use the pango fribidi wrappers.
10802
10803 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10804
10805         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10806         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10807         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10808         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10809         GEqualFunc where applicable.
10810         
10811         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10812         pango_font_description_equal as changed in pango.
10813         
10814         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10815
10816         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10817
10818         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10819
10820         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10821
10822         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10823
10824         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10825
10826         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10827         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10828
10829         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10830         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10831
10832 2000-11-12  Havoc Pennington  <hp@pobox.com>
10833
10834         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10835         dir to datadir/gtk+-2.0/demo
10836
10837         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10838         sorts of text widget and Pango font bugs. Urgh.
10839
10840         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10841
10842         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10843         tree that you should double click to see the demo. Fix 
10844         types of variables to reflect changed return values from 
10845         GtkTreeStore and GtkTreeViewColumn constructors.
10846
10847         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10848         newly-created buffer to prepare for GObject semantics
10849
10850         * gtk/testtext.c: don't leak the buffer with GObject semantics
10851
10852         * gtk/testtextbuffer.c: ditto
10853         
10854 2000-11-12  Havoc Pennington  <hp@pobox.com>
10855
10856         Rename this testgtk to gtk-demo to avoid confusion, and 
10857         install it so people can use it as a supplement to 
10858         the documentation.
10859         
10860         * demos/gtk-demo: Moved from demos/testgtk
10861
10862         * demos/testgtk: Removed
10863
10864         * configure.in: make Makefile in gtk-demo
10865         
10866         * demos/gtk-demo/Makefile.am: Install sample source to 
10867         datadir/gtk-demo (maybe there's a better place?), and 
10868         rename the binary to gtk-demo
10869         
10870         * demos/gtk-demo/main.c (load_file): Load installed sample
10871         source if source isn't found in pwd.
10872
10873 2000-11-09  Havoc Pennington  <hp@pobox.com>
10874
10875         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10876         argument to set the char displayed when visibility == FALSE
10877         (gtk_entry_create_layout): If !entry->visible, replace 
10878         all chars with the "invisible char"
10879
10880         * gtk/testgtk.c: Test the invisible_char deal
10881         
10882 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10883
10884         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10885         can't get a native font in the right encoding.
10886
10887 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10888
10889         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10890         respectively.
10891
10892 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10893
10894         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10895         Fix warning when moving between paragraphs.
10896
10897         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10898         delete => delete_from_cursor, insert => insert_at_cursor
10899
10900 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10901
10902         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10903
10904         * modules/input/imthai-broken.c: A Thai input method for use if
10905         Thai keys are really generating Latin1 keysyms.
10906
10907         * modules/input/Makefile.am: Build these.
10908
10909 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10910
10911         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10912         g_filename_{to,from}_utf8 now takes an extra parameter.
10913
10914         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10915         strftime into UTF-8.
10916
10917         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10918         calendars.
10919
10920         (gtk_calendar_paint_day_names): Draw day names in the right 
10921         place.
10922         
10923 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10924
10925         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10926         problem with using result of g_get_charset() backwards -
10927         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10928
10929         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10930         negative min_width/height and max_width/height to
10931         mean "requisition"; this allows setting a window
10932         to be user-resizable in only one direction easily.
10933
10934         * gtk/testgtk.c (create_main_window): Remove hard-coded
10935         usize - set a default size in the vertical direction.
10936
10937 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10938
10939         * gtk/gtkrange.c: Add some missing casts. Support 
10940         2 and 3 button clicks on the arrows to mean 
10941         "move by pages" and "jump to end". (Like gtkspinbutton)
10942
10943 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10944
10945         * gdk/win32/makefile.msc : reflect build module changes
10946
10947         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10948         from GdkPixmap*, cast implementation member instead.
10949
10950         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10951         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10952         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10953         more Gdi functions return value checking. 
10954         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10955         GdkImagePrivateWin32 *.
10956
10957         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10958         menus useable again. Add #pragma message to keep reminded on this issue.
10959         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10960         windows. This allows to enable backing store on Win32!
10961
10962         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10963         in drawable is of impl type. Correct specific type checks appropriate.
10964  
10965         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10966         GDK_WINDOW_DESTROYED before allocating new resources.
10967
10968         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10969
10970         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10971         (gdk_window_foreign_new) initialize parent handle.
10972         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10973
10974         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10975         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10976         problems (e.g. main buttons in testgtk). 
10977
10978 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10979
10980         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10981         gtk_widget_activate for GDK_Return.
10982
10983         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10984         of preedit cursor position.
10985
10986 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10987
10988         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10989         static.
10990
10991 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10992
10993         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10994         out support for multiple locales; that simple doesn't
10995         work reliably with current Xlib
10996
10997         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10998         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10999         Add support for positioning the cursor within the preedit string.
11000
11001 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
11002
11003         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
11004         at XIM input method module.
11005
11006         * gtk/gtktextview.c: Check for bindings after passing
11007         events to im context filter.
11008
11009 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
11010
11011         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
11012         empty attribute lists properly.
11013
11014 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
11015
11016         * gtk/queryimmodules.c (main): Return non-zero exit
11017         status if errors were encountered querying any
11018         modules.
11019
11020         * modules/input/Makefile.am (moduledir): remove
11021         leftover bin program target.
11022
11023         * docs/make-todo: Fix typo in error message.
11024
11025 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
11026
11027         * configure.in: Add modules/input/Makefile
11028
11029 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
11030
11031         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
11032         don't include gtkthemes.h.
11033
11034         * gtk/testgtk.c gtk/testtext.c: Set environment variables
11035         to point
11036
11037         * gtk/Makefile.am: Add new .c and .h files, build 
11038         gtk-query-immodules and use it to create a gtk.immodules
11039         file for use of test programs.
11040
11041         * gtk/gtkpreview.c: remove extra blank line.
11042
11043 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
11044
11045         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
11046         Add the ability to add extra tables beyond the default
11047         one, and also the ability to have compose sequences 
11048         that are prefixes of other compose sequences. 
11049
11050         * gtk/gtkimcontextsimple.c: Export a preedit string which
11051         consists of possible candidates for keystrokes that have
11052         been entered but not yet committed.
11053
11054         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
11055         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
11056
11057         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
11058         Add a function to add input-method switching menu items
11059         to a menu.
11060
11061         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
11062         when switching input methods.
11063
11064         * gtk/gtkimcontextsimple.[ch]: Change the format of
11065         the compose table to allow compose tables of different
11066         lengths / sequence.
11067
11068 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
11069
11070         * gtk/gtkimmodule.[ch]: Support routines for loading
11071         GtkIMContext implementations dynamically at runtime.
11072
11073         * modules/input/imcyrillic-translit.c: A sample input
11074         method (based on GtkIMContextSimple with an extra table),
11075         which demonstrates preedit strings and the module
11076         system for input modules
11077
11078         * gtk/queryimmodules.c: Program to query the available
11079         input modules and write the results into a file.
11080          
11081         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
11082         extra config options "im_module_file" (cache file for
11083         input method modules), and "im_module_path" - path
11084         to look for modules when generating cache file.
11085
11086         This doesn't scale.
11087
11088 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
11089
11090         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
11091         generic code from gtkthemes into a new abstraction
11092         GtkModule which has the logic for implementing
11093         a loadable module which implements a number of 
11094         GObject types.
11095
11096 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
11097
11098         * gtk/gtkeditable.[ch]: Convert GtkEditable from
11099         a class into an interface  
11100         
11101         * gtk/gtkoldeditable.[ch]: Move the old editable
11102         implementation into here, so legacy widgets can
11103         still rely on the implemenation. GtkOldEditable
11104         exports GtkEditable. Make selection handling
11105         code use new text conversion functions (and
11106         handle UTF-8 as a side-effect). Use GtkClipboard
11107         for CLIPBOARD.
11108
11109         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
11110         Adopt to match above changes.
11111
11112         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
11113         avoid GtkOldEditable implementation. Restructure
11114         to reduce number of places that modify state directly.
11115         Move to GtkBindingSet. Display the preedit string.
11116         Queue recomputation of PangoLayout and scroll position
11117         to improve effiency of doing complex changes naively.
11118         Add a menu with cut/copy/paste and input method selection.
11119
11120 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
11121
11122         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
11123         to set preedit string and attributes; display preedit string by
11124         inserting string and attributes at cursor when creating the
11125         GtkTextLineDisplay.
11126
11127         * gtk/gtktextlayout.c: Move all conversions between byte
11128         positions in PangoLayout and GtkTextIter into new functions
11129         line_display_iter_to_index/index_to_iter that properly
11130         handle the preedit string.
11131
11132         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
11133         it to return const char * (eventually will end up
11134         as GCONST char *, most likely.)
11135
11136         * gtk/gtktextview.[ch]: Handle the preedit string, call
11137         gtk_im_context_reset() as necessary, add a menu to switch
11138         input methods.
11139         
11140         * gtk/gtktextlayout.[ch]: Remove useless
11141         gtk_text_layout_get_log_attrs() function.
11142
11143 2000-11-11  Tor Lillqvist  <tml@iki.fi>
11144
11145         * gdk/gdk.def
11146         * gtk/gtk.def: Update.
11147
11148         * gdk/win32/*.c: Add last argument to g_type_register_static()
11149         calls.
11150
11151         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
11152
11153         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
11154         generated by older wheel mouse drivers. Get the correct y
11155         coordinate from WM_MOUSEWHEEL messages.
11156
11157         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
11158         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
11159         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
11160         Debugging functions.
11161
11162         * gdk/win32/gdkprivate-win32.h: Declare them.
11163
11164         * gdk/win32/gdkinput-win32.h: Add declaration for
11165         gdk_input_window_destroy().
11166
11167         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
11168
11169 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
11170
11171         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
11172         function to help handle keeping things in sync.
11173
11174 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
11175
11176         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
11177         BOXED marshallers.
11178
11179         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
11180         (gtk_list_store_class_init): use the new BOXED marshallers.
11181
11182         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
11183         new_with_values to new_with_types.
11184         (gtk_tree_store_get_column_type): add this.
11185         (gtk_tree_store_class_init): use the new BOXED marshallers.
11186
11187         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
11188         mirror some POINTER marshallers.
11189
11190 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
11191
11192         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
11193         allow more interesting iterators.  Also, made the lifecycle of
11194         iterators more explicit.
11195
11196         * gtk/gtktreemodelsort.[ch]: New model for sorting.
11197
11198         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
11199         types.
11200
11201 2000-11-09  Alexander Larsson  <alexl@redhat.com>
11202
11203         * demos/testgtk/menus.c:
11204         Changes to make the new testgtk compile after
11205         gtk_menu_append was removed.
11206
11207         * gdk/linux-fb/gdkdrawable-fb2.c
11208         (gdk_fb_get_depth, gdk_fb_get_visual,
11209         gdk_drawable_impl_fb_class_init): Implement
11210         these drawable functions. Now GtkImages work again.
11211
11212         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
11213
11214         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
11215         
11216         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
11217         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
11218         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
11219         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
11220
11221 2000-11-08  Havoc Pennington  <hp@pobox.com>
11222
11223         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
11224         visible_set args, don't know where these had gone, I thought they
11225         used to be there
11226
11227         * gtk/testtext.c: Add a menu item to apply invisibility tag;
11228         now we can test the feature and see that it's totally broken.
11229
11230 2000-11-08  Havoc Pennington  <hp@pobox.com>
11231
11232         Make DND copy pixbufs and tags when source and target share a 
11233         tag table.
11234         
11235         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
11236         in-process GTK_TEXT_BUFFER_CONTENTS target
11237         (gtk_text_view_drag_data_received): Paste from
11238         GTK_TEXT_BUFFER_CONTENTS if we receive it.
11239
11240 2000-11-08  Alexander Larsson  <alexl@redhat.com>
11241
11242         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
11243         API changes.
11244
11245         * gtk/gtkmenu.c: Add support for scrolling menus.
11246         Remove gtk_menu_append/prepend/insert, these have been moved to
11247         gtkcompat.h as #defines.
11248
11249         * gtk/gtkcompat.h.in:
11250         Add compatibility #defines for gtk_menu_append/prepend/insert
11251
11252         * gtk/gtkmenu.h: Add data needed for scrolling menus.
11253         GtkMenuPositionFunc gets an extra argument push_in.
11254         gtk_menu_append/prepend/insert removed.
11255         
11256         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
11257         positioning behaviour to fit to scrolling menus.
11258
11259         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
11260         into menuitem->submeny. That is wrong, and broke torn
11261         off submenus of torn off menus, since they were unrealized
11262         when the first menu was unrealized.
11263
11264         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
11265         gtk_menu_shell_select_item() since these need to be overridden in
11266         GtkMenu.
11267
11268         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
11269         positioning behaviour to fit to scrolling menus.
11270         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
11271         the current item so that it is prelighted when the menu pops up.
11272         This is a workaround to the fact that the menu doesn't get the
11273         initial enter event (due to grabs).
11274
11275         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
11276         s/gtk_menu_append/gtk_menu_shell_append/
11277
11278         * gtk/gtknotebook.c:
11279         s/gtk_menu_insert/gtk_menu_shell_insert/
11280
11281         * gtk/testgtk.c (create_menu, create_menus):
11282         Create the first menu with 50 items so that menu scrolling
11283         can be tested.
11284         
11285         
11286         Patch from Jonathan Blandford  <jrb@redhat.com>
11287
11288         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
11289         system to handle size requests.  First, we ask what the size of
11290         the toggle is.  Then, when allocating the size, we allocate the
11291         toggle_size first.  This way we can have multiple menu-item
11292         classes w/o needing a seperate class for each.
11293
11294         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
11295         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
11296
11297         * gtk/gtkcheckmenuitem.c
11298         (gtk_check_menu_item_toggle_size_request): New function to handle
11299         the toggle size-request.
11300
11301 2000-11-07  Havoc Pennington  <hp@redhat.com>
11302
11303         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
11304         Half-ass somewhat fix this function, so that scrolling to the
11305         insertion point works. Pango hacking is in the future to really
11306         fix it.
11307
11308         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
11309         length of data, no longer used.
11310
11311         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
11312         method contents in here, get rid of destroy method
11313         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
11314         that were backward. Remove debug spew.
11315         (cut_or_copy): Make the clipboard work with insert_range to
11316         preserve tags and pixbufs, not just the primary selection.
11317
11318 2000-11-07  Havoc Pennington  <hp@redhat.com>
11319
11320         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
11321         to gtk_text_mark_get_visible
11322
11323         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
11324         bug that was generating an invalid iterator
11325
11326         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
11327         ensure_char_offsets() in front of code placing the iter in an
11328         invalid state.
11329
11330         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
11331         make override_location arg const
11332         (paste): Replace the selection if we paste into the 
11333         current selection
11334
11335         * gtk/gtkselection.h: Remove "GtkSelectioData"
11336         (struct _GtkSelectionData): move the definition here.
11337
11338         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
11339         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
11340
11341         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
11342
11343         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
11344         (gtk_text_buffer_insert_range_interactive): implement
11345         (gtk_text_buffer_get_tags): Remove, replaced by
11346         gtk_text_iter_get_tags()
11347
11348         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
11349         limit parameter, to avoid infinite linear scan.
11350         (gtk_text_iter_backward_search): Add search limit
11351         (gtk_text_iter_forward_find_char): Add search limit
11352         (gtk_text_iter_backward_find_char): Add search limit
11353
11354 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
11355
11356         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11357         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
11358         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
11359         gdk/linux-fb/gdkwindow-fb.c:
11360         use g_object_new() instead of g_type_create_instance() which
11361         is a private function for fundamental type implementations.
11362
11363         * gdk/linux-fb/gdkinput-ps2.c:
11364         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
11365         instead just store the current modifier state. Add a (somewhat broken)
11366         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
11367         Rename exported function gdk_input_ps2_get_mouseinfo to
11368         gdk_input_get_mouseinfo.
11369
11370         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
11371         gdk/linux-fb/gdkwindow-fb.c:
11372         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
11373         
11374
11375 2000-11-02  Havoc Pennington  <hp@redhat.com>
11376
11377         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
11378         use stock buttons. Should be 100% source compatible, appropriate
11379         filesel fields now point to dialog->vbox and dialog->action_area.
11380         On the bizarre side, dialog->action_area and filesel->action_area
11381         are not the same widget.
11382         (gtk_file_selection_init): Put some padding around the selection
11383         entry, so it isn't touching the GtkDialog separator.    
11384
11385         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
11386         use stock buttons, etc. Should also be source compatible.
11387         Set the dialog default title in _init not _new().
11388         
11389         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
11390         Use stock buttons; don't put a button box inside the existing
11391         dialog button box. Don't bother with push/pop colormap anymore.
11392
11393         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
11394         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
11395         for message dialog, and necessary for the font selection and color
11396         selection with help and apply buttons.
11397         
11398         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
11399         to the created button widget. Set GTK_CAN_DEFAULT on the button.
11400         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
11401         between buttons, put less padding around the action area.
11402         (gtk_dialog_run): Exit on unmap rather than on destroy. 
11403         This will also exit the loop if the widget is hidden.
11404         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
11405         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
11406         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
11407         special-case delete event.
11408
11409         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
11410         formatting
11411         
11412 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
11413
11414         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
11415         button to temporarily disable position recording in the
11416         "saved position" test.
11417
11418 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
11419
11420         * gtk/gtkthemes.c: added compat code that temporarily implements
11421         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
11422         going to be revamped by owen's upcoming GtkModule patches, but
11423         untill then people want gtk to build, right? ;)
11424
11425 2000-11-04  Havoc Pennington  <hp@pobox.com>
11426
11427         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
11428         list
11429
11430         * docs/Changes-2.0.txt: Add note about
11431         gtk_container_get_toplevels()
11432
11433         * gtk/gtktextview.h: formatting
11434         
11435         * gtk/gtktextview.c: don't start descriptions with "Returns",
11436         confuses gtk-doc
11437
11438 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
11439
11440         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
11441         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
11442
11443 2000-11-03  Havoc Pennington  <hp@redhat.com>
11444
11445         * gtk/gtktexttagtable.c: Docs
11446         (gtk_text_tag_table_size): return a signed int
11447
11448         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
11449         (gtk_text_tag_event): make the event_object a GObject
11450
11451         * gtk/gtktextview.c: Write API docs for all functions.
11452
11453         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
11454         for gtk_text_view_get_window_type() called on one of the private
11455         windows.
11456
11457         * gtk/gtktextview.c: Instead of accessing text_view->buffer
11458         directly, call get_buffer() which demand-creates a default
11459         buffer. So gtk_text_view_new() can be used to create a view with a
11460         default buffer in it, if you just want an empty text box users can
11461         put data in. Useful for GUI builders also.
11462
11463 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
11464
11465         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11466         the charset encodign portion MUST be in lowercase.
11467         * gtk/gtkrc.az: added file for Azeri language
11468
11469 2000-11-03  Havoc Pennington  <hp@redhat.com>
11470
11471         Get widgets working on the btree/buffer side. Display of them 
11472         still doesn't work.
11473         
11474         * gtk/gtktextview.c: start implementing child widget stuff
11475
11476         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11477
11478         * gtk/gtktextlayout.c: handle embedded widgets
11479
11480         * gtk/gtktextdisplay.c: handle embedded widgets
11481
11482         * gtk/gtktextchild.c: Implement all the child anchor goo
11483
11484         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11485         function
11486
11487         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11488         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11489         creating a child anchor or a pixbuf segment.
11490         (gtk_text_btree_create_child_anchor): new function
11491         (gtk_text_btree_unregister_child_anchor): new function
11492
11493         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11494         allocate_child signal on GtkTextLayout
11495
11496         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11497         values
11498         (gtk_text_iter_get_child_anchor): new function
11499
11500         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11501         default handler for the changed signal, which calls
11502         gtk_text_buffer_set_modified(), instead of just always emitting
11503         changed then calling set_modified() manually. I guess this is
11504         maybe more flexible. It seems logical.
11505
11506 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
11507
11508         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
11509         now.
11510
11511         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
11512
11513 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
11514
11515         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
11516         been marked static.
11517
11518 2000-11-02  Havoc Pennington  <hp@redhat.com>
11519
11520         * gtk/testgtk.c (create_labels): had a test backward
11521
11522         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
11523         fields, so the dest GC ends up with the correct clip origin, 
11524         etc. Fixes a bug where colored labels didn't redraw 
11525         properly.
11526
11527 2000-11-02  Alexander Larsson  <alexl@redhat.com>
11528
11529         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11530         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
11531         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
11532         Add last argument to t_type_register_static call.
11533         
11534         * gdk/linux-fb/gdkdrawable-fb2.c:
11535         Add last argument to t_type_register_static call.
11536         export the get_image drawable virtual function.
11537
11538         * gdk/linux-fb/gdkimage-fb.c:
11539         Add last argument to t_type_register_static call.
11540         rename gtk_image_get to _gdk_fb_get_image and
11541         export it for use by gdkdrawable-fb2.
11542
11543         * gdk/linux-fb/gdkprivate-fb.h:
11544         export _gdk_fb_get_image.
11545
11546         * gdk/linux-fb/gdkselection-fb.c:
11547         Add new api call stubs.
11548
11549         * gtk/Makefile.am:
11550         Missing ( in linux-fb part.
11551
11552         * modules/linux-fb/Makefile.am:
11553         Must link with gdk_pixbuf or get unresolved symbol.
11554
11555 2000-11-01  Havoc Pennington  <hp@pobox.com>
11556
11557         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
11558         GTK_TYPE_TEXT_ITER and BOXED marshallers
11559
11560         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
11561
11562         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
11563         
11564         * gtk/gtk-boxed.defs: add GtkTextIter
11565
11566         * gtk/gtkmarshal.list: Add marshallers for text widget that 
11567         properly use OBJECT and BOXED
11568
11569 2000-11-01  Havoc Pennington  <hp@redhat.com>
11570
11571         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
11572
11573         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
11574         before returning it. 
11575         
11576 2000-11-01  Havoc Pennington  <hp@redhat.com>
11577
11578         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11579         Clip the rectangle to be rendered to the drawable, since
11580         get_from_drawable() requires a region within the drawable
11581
11582 2000-11-01  Havoc Pennington  <hp@redhat.com>
11583
11584         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
11585         from coordinates.
11586
11587 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
11588
11589         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
11590         it isn't NULL.
11591
11592 2000-11-01  Havoc Pennington  <hp@pobox.com>
11593
11594         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
11595         on a label
11596         (gtk_label_finalize): unref the attr list if any.
11597
11598         * gtk/testgtk.c (create_get_image): close test on second click
11599         (make_message_dialog): close dialog if it exists
11600
11601         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
11602
11603         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
11604         gdk-pixbuf
11605
11606         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
11607         from Pango markup format
11608         (gtk_label_set_markup_with_accel): ditto but with accelerator
11609         parsing
11610
11611         * gtk/gtkimage.c (gtk_image_expose): reformatting.
11612
11613         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
11614         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
11615         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
11616         call gdk_window_get_origin().
11617
11618         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
11619         implement GDK_PIXBUF_ALPHA_FULL
11620         
11621 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
11622
11623         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
11624         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
11625         g_signal_handlers_disconnect_matched to block/unblock and disconnect
11626         multiple handlers respectively, instead of only treating the
11627         first handler found (bug reported by owen).
11628
11629 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
11630
11631         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
11632
11633         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
11634
11635         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
11636         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
11637         gtk/gtktreeviewcolumn.h: Fixed inline docs.
11638
11639         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
11640         widget.  Needs writing someday.
11641
11642         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
11643         the docs.
11644
11645 2000-10-30  Havoc Pennington  <hp@redhat.com>
11646
11647         * gtk/gtktextview.h, gtk/gtktextview.c:
11648         Rename delete_at_cursor delete_from_cursor, and 
11649         move to move_cursor.
11650
11651 2000-10-30  Havoc Pennington  <hp@redhat.com>
11652
11653         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
11654         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
11655         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
11656         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
11657         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
11658         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
11659         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
11660         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
11661         gtktexttypes.h, gtktextview.c, gtktextview.h:
11662
11663         Massive reindentation and reformatting. Arg alignment and comments
11664         still need fixing in various places.
11665
11666 2000-10-30  Havoc Pennington  <hp@redhat.com>
11667
11668         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
11669         to be named insert_at_cursor and delete_at_cursor so C++ can
11670         handle them.
11671
11672 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11673
11674         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
11675         to get a double directory separator in case the home directory
11676         ends with one. This would cause trouble especially on Windows,
11677         where the path will be confused with the syntax for an an UNC
11678         (network share) path \\server\share\path.
11679         (gtk_rc_add_initial_default_files): Ditto.
11680
11681 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
11682
11683         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
11684
11685         * gtk/gtktextview.c: Use correct marshallers.
11686
11687 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
11688
11689         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
11690         use new iter stuff, and added all the appropriate signals et al.
11691
11692         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
11693         code is internal to gtk only.
11694
11695 2000-10-28  Tor Lillqvist  <tml@iki.fi>
11696
11697         * gtk/gtk.def
11698         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
11699         glib-genmarshal etc.
11700
11701 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
11702
11703         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
11704         parallel builds.
11705
11706 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
11707
11708         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
11709
11710 2000-10-27  Robert Brady  <robert@suse.co.uk>
11711
11712         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
11713         en_GB (British), ia (Interlingua).
11714
11715 2000-10-26  Havoc Pennington  <hp@redhat.com>
11716
11717         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11718
11719         Fixed output of:
11720         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11721         
11722         * gtk/gtktextsegment.c (char_segment_new): rename
11723         (_char_segment_new_from_two_strings): rename
11724         (_toggle_segment_new): rename
11725         
11726         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11727         (make_clipboard_widget): make it static
11728         (text_get_func): static
11729         (text_clear_func): static
11730
11731         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11732         static
11733         (hex_changed): make it static
11734         (hsv_changed): make it static
11735         (opacity_entry_changed): make it static
11736
11737         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11738         (toggle_segment_check_func): rename with _gtk
11739
11740         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11741         (_widget_segment_new): rename
11742         (_widget_segment_add): rename
11743         (_widget_segment_remove): rename
11744         (_widget_segment_ref): rename
11745         (_widget_segment_unref): rename
11746
11747         * gtk/gtktextmark.c (_mark_segment_new): Rename
11748         _gtk_mark_segment_new   
11749
11750 2000-10-26  Havoc Pennington  <hp@redhat.com>
11751
11752         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11753         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11754         types
11755
11756         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11757         marshaller types
11758
11759         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11760         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11761         license on these files.
11762
11763         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11764         work.
11765
11766         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11767         runtime random number different for each tree, instead of 
11768         a constant I made up.
11769
11770 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11771
11772         * gtk/Makefile.am: buncha cleanups, kludged build sources
11773         dependencies with a Makefile: oldest-source-stamp dependancy
11774         for the moment. automake is really fighting us here, with
11775         intentionally not allowing user-defined rules or dependancies
11776         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11777
11778         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11779         to public headers. tehy have a comment stating that they are
11780         "semi-public" aren't included by gtk.h and if enums popup there,
11781         they can be /*< skip >*/-ed.
11782
11783         * gtk/gtktextlayout.h: 
11784         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11785         added LGPL... <SIGH>
11786
11787 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11788
11789         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11790         GtkTreeIter.  Added iterators everywhere.
11791
11792         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11793
11794         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11795
11796         * gtk/gtktreestore.c: Changed to use the iterators.
11797
11798         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11799         iterators tomorrow.
11800
11801         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11802         iterators tomorrow.
11803
11804         * gtk/treestoretest.c: Changed to use iterators.
11805
11806         * demos/testgtk/main.c: Moved to use the new iterator system.
11807
11808 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11809
11810         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11811         localization misbehaviour.
11812
11813         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11814         a useless type without copy/free.
11815
11816         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11817         of GTK_TYPE_CTREE_NODE.
11818
11819 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11820
11821         * gtk/gtksignal.c:
11822         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11823         applicable.
11824
11825         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11826         gtk_selection_data_copy and gtk_selection_data_free
11827         do GtkSelectionData work as params in signals.
11828
11829 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11830
11831         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11832         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11833         couldn't they at least give it a non-standard name?
11834         
11835         * gtk/gtktextlayout.c: arg! yet another implementation of
11836         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11837
11838         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11839         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11840         home. now i know this _is_ a conspiracy.
11841
11842         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11843         ::state-changed.
11844
11845         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11846         (gtk_accel_group_create_add): marshaller signature fixups.
11847
11848         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11849         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11850
11851         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11852         anymore.
11853
11854 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11855
11856         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11857         due to the signal system changes, it wouldn't build currently. to
11858         be fixed soon.
11859
11860         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11861
11862         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11863         so it needs gtk_marshal_VOID__ENUM() instead of
11864         gtk_marshal_NONE__UINT().
11865
11866         * gdk/gdk*.c: adapted type registration functions.
11867
11868         * gtk/gtkbindings.c:
11869         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11870         gone.
11871
11872         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11873
11874         * gtk/gtkobject.c:
11875         (gtk_object_destroy):
11876         (gtk_object_shutdown): fixed recursion guards. basically we have to
11877         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11878         is called during ::destroy, and avoid recursion there.
11879
11880         * gtk/gtktypeutils.c:
11881         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11882         boxed_copy/boxed_free. this needs a more general solution based on a
11883         publically installed code-generator utility.
11884
11885         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11886         glib's gobject has support for that now.
11887         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11888
11889 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11890
11891         * gtk/gtksignal.[hc]:
11892         * gtk/gtkmarshal.[hc]:
11893         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11894         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11895         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11896         care of that.
11897
11898         * *.c: marshaller name fixups.
11899
11900         * gtk/gtkmarshal.list: added a comment briefing the format.
11901
11902 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11903
11904         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11905         compatibility macros here now. more specifically, most of
11906         the API is preserved (yes, _most_, nonwithstanding the
11907         following exceptions listed, the API is stil lHUGE ;)
11908         things that got removed completely:
11909         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11910         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11911         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11912         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11913         gtk_signal_remove_emission_hook().
11914         non-functional functions variants:
11915         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11916         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11917         not supported anymore.
11918         (gtk_signal_compat_matched): new internal function to aid
11919         implementation of the compatibility macros, it  provides
11920         functionality to block/unblock/disconnect handlers based
11921         on func/data.
11922
11923         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11924
11925         * *.c: adaptions to new type registration API signatures.
11926
11927 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11928
11929         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11930
11931 2000-10-25  Robert Brady  <robert@suse.co.uk>
11932
11933         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11934         gdk_property_delete): If window == NULL, assume the root window.
11935         (restoring the behaviour that was in 1.2).
11936         
11937         * gtk/testtext.c (save_buffer): Allow creation of new files when
11938         saving.
11939
11940         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11941         calls to read().
11942
11943 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11944
11945         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11946
11947         * gdk/win32/gdkdrawable-win32.c
11948         * gdk/win32/gdkimage-win32.c
11949         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11950         X11 backend.
11951
11952         * gdk/win32/gdkcc-win32.c
11953         * gdk/win32/gdkcolor-win32.c
11954         * gdk/win32/gdkfont-win32.c
11955         * gdk/win32/gdkinput-win32.c
11956         * gdk/win32/gdkmain-win32.c
11957         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11958
11959 2000-10-24  Havoc Pennington  <hp@redhat.com>
11960
11961         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11962         it a static function
11963
11964         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11965         redraw text when a tag is applied to it.
11966
11967         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11968         (gtk_text_tag_affects_nonsize_appearance): private functions to
11969         see if a tag requires various kinds of redraw/layout to be queued
11970         up.
11971
11972         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11973
11974         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11975         at the start of the buffer, so search works by default
11976
11977         * gtk/gtktextiter.c (lines_match): init match_start always
11978
11979         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11980         function, get iter at a line + a byte index
11981
11982         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11983         to set byte position within a line
11984         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11985
11986 2000-10-23  Havoc Pennington  <hp@redhat.com>
11987
11988         * gtk/testtext.c: Re-enable the "find" dialog
11989
11990         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11991         
11992         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11993         the arguments to gdk_draw_drawable were in the wrong order
11994         (gdk_window_paint_init_bg): This function was ignoring the
11995         init_region, instead of clipping to it, so the entire backing
11996         pixmap was cleared on every begin_paint()
11997         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11998         was in here again, the loop kept using the same GtkWindowPaint
11999         over and over.
12000         (gdk_window_begin_paint_region): Fix a bug where we had two
12001         x_offset instead of x_offset and y_offset
12002
12003         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
12004         before we get the image.
12005         (gdk_draw_drawable): get the composite before we draw the drawable.
12006         (gdk_drawable_real_get_composite_drawable): default
12007         get_composite_drawable implementation that returns the drawable 
12008         itself
12009
12010         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
12011         get_composite_drawable virtual function
12012
12013         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
12014         list-walking bug
12015
12016         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
12017         make this work if the source drawable is a GdkDrawableImplX11
12018         instead of a public drawable type. This is really broken; the
12019         problem is that GdkDrawable needs a virtual method get_xid(), but
12020         of course that doesn't work in practice. Enter RTTI.
12021
12022         Also, improve mismatched depth message.
12023
12024         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
12025         GdkPixmap
12026
12027         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
12028         install _gdk_x11_get_image as our implementation of get_image
12029         
12030         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
12031         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
12032
12033         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
12034         gdk_drawable_get_image
12035
12036         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
12037
12038         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
12039         get_image
12040
12041         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
12042         trailing semicolon after for loop
12043
12044 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
12045
12046         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
12047         where font_desc for widget's context lagged widget's font_desc by
12048         one step.
12049
12050 2000-10-22  Tor Lillqvist  <tml@iki.fi>
12051
12052         * gdk/win32/gdkgc-win32.c
12053         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
12054
12055         * gtk/makefile.mingw.in
12056         * gtk/gtk.def: Updates.
12057
12058         * gtk/testgtk.c: sleep() is called _sleep in MS's C
12059         library.
12060
12061         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
12062
12063         * gtk/makefile.msc: Remove
12064
12065         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
12066
12067         * gtk/Makefile.am: Add it.
12068
12069         * configure.in: Generate it.
12070
12071         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
12072         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
12073         something even if not implemented, to satisfy picky MSVC.
12074
12075         Patches by Hans Breuer:
12076         
12077         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
12078         SetBkMode() and SetTextAlign() before calling
12079         pango_win32_render().
12080
12081         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
12082         Set hcliprgn to NULL after destroying it.
12083         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
12084
12085         * gdk/win32/gdkgeometry-win32.c
12086         (_gdk_windowing_window_queue_antiexpose): More effective
12087         implementation.
12088
12089         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
12090         depth as default, not the visual's.
12091
12092         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
12093         against empty title.
12094
12095         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
12096         IMAGE_PRIVATE_DATA.
12097
12098         * gdk/win32/gdkimage-win32.c: Use it.
12099
12100 2000-10-22  Robert Brady  <robert@suse.co.uk>
12101
12102         * configure.in: Check for bind_textdomain_codeset
12103
12104         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
12105         present, make use of it.
12106
12107         Add a translatable string "default:LTR" which, if translated
12108         to "default:RTL", will cause the default direction to be
12109         Right-to-Left.
12110
12111         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
12112         direction if marked as flippable.
12113
12114         * gtk/gtkhscale.c: Mark widget as flippable.
12115         
12116 2000-10-04  Havoc Pennington  <hp@redhat.com>
12117
12118         * gtk/testgtk.c (create_buttons): create some stock buttons
12119         with the default accel group
12120         (create_image): test some new GtkImage features
12121         (make_message_dialog): test GtkMessageDialog
12122         (create_modal_window): fix someone's bizzarro indentation
12123
12124         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
12125         GTK_WIN_POS_CENTER_ON_PARENT. 
12126         Add "destroy with parent" setting, which means the window goes
12127         away with its transient parent.
12128         (gtk_window_get_default_accel_group): get the default accel group
12129         for the window.
12130         (gtk_window_set_destroy_with_parent): set/unset destroy with
12131         parent flag
12132         (gtk_window_read_rcfiles): invalidate icon set caches
12133         after reloading rcfiles 
12134
12135         * gtk/gtkenums.h (GtkWindowPosition): add
12136         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
12137         on its parent window when the dialog is mapped for the first time.
12138
12139         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
12140         a simple message dialog class
12141         
12142         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
12143         handler to emit response signal, and maybe later it would
12144         honor a hide_on_delete flag - though that isn't there yet.
12145         Set border width on the vbox to 2, so we get some padding.      
12146         Use a button box for the action area.
12147         (gtk_dialog_key_press): synthesize a delete event if Esc
12148         is pressed and the GtkWidget key press handler didn't 
12149         handle the escape key.
12150         (gtk_dialog_new_with_buttons): new function creates a dialog
12151         with some default buttons in it.
12152         (gtk_dialog_add_action_widget): add an activatable widget
12153         as a button in the dialog - you can also add a non-activatable
12154         widget by accessing the action area directly.
12155         (gtk_dialog_add_button): add a simple button - stock ID or 
12156         label - to the action area
12157         (gtk_dialog_response): emit response signal
12158         (gtk_dialog_run): block waiting for the dialog, return 
12159         the response. Override normal delete_event behavior, so that 
12160         delete_event does nothing inside gtk_dialog_run().
12161
12162         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
12163         emitted when an action widget is clicked or the dialog gets
12164         delete_event
12165
12166         * gtk/gtk.h: add gtkmessagedialog.h
12167
12168         * gtk/Makefile.am: add gtkmessagedialog.[hc]
12169
12170 2000-10-18  Havoc Pennington  <hp@redhat.com>
12171
12172         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
12173         where any number of empty lines would get skipped
12174
12175         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
12176         edge.
12177
12178         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
12179         warning about invalid iterators (explain more thoroughly)
12180         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
12181
12182         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
12183         big
12184
12185         * demos/*.c: Add error handling
12186
12187         * gtk/gtktextbuffer.c: don't modify const iterators
12188
12189         * gtk/gdk-pixbuf-loader.c: Add full error handling here
12190
12191         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
12192         on file load
12193
12194         * gtk/gtkiconfactory.c: Update to reflect addition of error
12195         handling to gdk-pixbuf loaders
12196
12197 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
12198
12199         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
12200         move to new modularized testgtk.
12201
12202 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
12203
12204         * gtk/gtktreeview.c: Draw the arrows correctly.
12205
12206         * gtk/gtktreemodel.c: Added user docs.
12207
12208         * gtk/gtk.h: remove gtktreedatalist.h.
12209
12210         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
12211         parent when generating my type.
12212
12213         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
12214         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
12215
12216 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12217
12218         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
12219         GtkTreeModel from object to interface.
12220
12221 2000-10-16  Havoc Pennington  <hp@redhat.com>
12222
12223         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
12224         compilation
12225
12226 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12227
12228         * gtk/gtktreeselection.c: Add API documentation to all public
12229         functions.
12230
12231         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
12232         functions.
12233
12234 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
12235
12236         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
12237         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
12238         docs to all public functions.
12239
12240         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
12241         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
12242         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
12243         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
12244         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
12245         issue.
12246
12247 2000-10-14  Robert Brady  <robert@suse.co.uk>
12248
12249         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
12250
12251 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
12252
12253         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
12254         values other then G_TYPE_STRING.
12255         * gtk/gtktreeselection.c: Minor commenting updates.
12256         * gtk/gtktreeview.c: Format updates.
12257
12258 2000-10-09  Tor Lillqvist  <tml@iki.fi>
12259
12260         * README.win32: Update.
12261
12262         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
12263         lines that had been deleted by mistake (?).
12264
12265         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
12266         also the case fg==white and bg==black (but still not randomly
12267         coloured cursors). Thanks to Wolfgang Sourdeau.
12268
12269         * gdk/win32/*.c: Silence gcc -Wall.
12270
12271         * gtk/gtk.def: Add missing entry points.
12272
12273         Fixes by Hans Breuer:
12274
12275         * gdk/makefile.msc
12276         * gdk/win32/makefile.msc: Update.
12277
12278         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
12279         some MSVC thing, presumably), cause breakpoint on failures. Add
12280         GDK_NOR case. Call g_log_set_always_fatal.
12281
12282         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
12283         should be pased by reference.
12284         
12285         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
12286         
12287         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
12288
12289         * gdk/win32/gdkevents-win32.c
12290         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
12291
12292         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
12293         implementation object.
12294
12295         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
12296         not just windows.
12297         
12298         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
12299         Use the wrapper object.
12300         
12301 2000-10-06  Havoc Pennington  <hp@redhat.com>
12302
12303         * Makefile.am (SRC_SUBDIRS): contrib subdir
12304
12305         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
12306         so it can be used in Xlib version
12307
12308         * demos/testpixbuf.c (update_timeout): error checking from 1.0
12309         tree
12310
12311         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
12312         change from 1.0 tree that returns first frame of animation
12313         if the loaded file is an animation.
12314
12315         * contrib: add new directory to hold stuff that comes with GTK+
12316         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
12317         
12318         * configure.in: add contrib/*
12319
12320 2000-10-05  Havoc Pennington  <hp@redhat.com>
12321
12322         * demos/testpixbuf-save.c: add pixbuf save test
12323
12324         * demos/Makefile.am: add testpixbuf-save.c
12325
12326 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
12327
12328         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
12329         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
12330         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
12331         * gtk/gtktreeselection.[ch]: Replaced
12332         "node_selected"/"node_unselected" signal with "selection_changed"
12333         signal.
12334
12335 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12336
12337         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
12338         tree widget.
12339
12340 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12341
12342         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
12343         drawing.
12344
12345 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
12346
12347         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
12348         Move list pointer forwards before removing item from
12349         list. (Crash reported by Salmaso Raffaele)
12350
12351         * gdk/gdkwindow.h: Remove spurious trailing ,
12352
12353         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
12354         dependencies on uninstalled libraries, sorry folks.
12355
12356 2000-10-04  Havoc Pennington  <hp@redhat.com>
12357
12358         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
12359         gtk/gtkiconfactory.c: Fix copyrights    
12360
12361         * demos/testpixbuf.c: add inline pixbuf test
12362         
12363 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
12364
12365         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
12366         Add gdk_window_iconify.
12367
12368         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
12369         (gdk_window_set_geometry_hints): Add win_gravity
12370         to geometry structure.
12371
12372         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
12373         Implement _NET_WM_PING.
12374
12375         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
12376         Set _NET_WM_PID on the client leader.
12377
12378         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
12379         Handle UTF-8 better.
12380
12381         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
12382         UTF-8 better, set _NET_WM_NAME as well. Only set
12383         icon name if it hasn't previously been explicitely 
12384         set.
12385
12386 2000-10-03  Havoc Pennington  <hp@redhat.com>
12387
12388         * gtk/testtextbuffer.c: clean up trailing whitespace,
12389         add extensive tests for tag toggle iteration.
12390         
12391         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
12392         distance
12393
12394         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12395         optimize case where the tag root is on level 1
12396         (gtk_text_line_previous_could_contain_tag): attempt to implement
12397         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
12398         functionality
12399
12400         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
12401         Implement this, though not very efficiently.
12402
12403         * gtk/gtktextiterprivate.h: reformat
12404
12405         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
12406         iterator
12407
12408         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
12409         this to properly revalidate the iterators.
12410
12411         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
12412         properly at the end of the line (and therefore on empty lines)
12413
12414         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
12415         maybe we should return a value...
12416
12417 2000-10-03  Tor Lillqvist  <tml@iki.fi>
12418
12419         * config.h.win32: Guard definition of alloca(). glib.h now handles
12420         that.
12421
12422         * gdk/gdk.def
12423         * gtk/gtk.def: Add new entry points.
12424
12425         Changes just to make GTK+ build without errors on Win32. No hope
12426         of it working in its current state, though...:
12427         
12428         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
12429         some functions from the X11 backend, just to make GTK+ build.
12430
12431         * gdk/makefile.mingw.in
12432         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
12433         number. Add new object files.
12434
12435         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
12436         GetMessageTime to get timestamp (where on X11 uses
12437         gdk_x11_get_server_time()).
12438
12439 2000-10-02  Havoc Pennington  <hp@pobox.com>
12440
12441         * gtk/gtktextview.c: text_window_* weren't static and should have
12442         been.
12443         Start work on child widgets; not yet complete, syncing to 
12444         office computer.
12445
12446         * gtk/gtktextchild.h: change this to contain a public interface,
12447         starting work on child interfaces.
12448         * gtk/gtktextchildprivate.h: move private interfaces here
12449
12450         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
12451
12452         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
12453         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
12454         gtk/gtktextmark.c: copyright notices
12455
12456         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
12457         internal functions      
12458
12459         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
12460         internal function
12461
12462         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
12463         Reformatting    
12464
12465 2000-09-30  Havoc Pennington  <hp@pobox.com>
12466
12467         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12468         NULL start/end pointers
12469
12470         * gtk/gtktextbuffer.c: Write some docs
12471         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12472         NULL, so you can just check whether there's a selection.        
12473
12474         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12475         cleanup_line or segments_changed ourselves, it gets done 
12476         in unlink_segment
12477
12478         * gtk/gtktextmark.h:
12479         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12480         
12481         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12482
12483         * gtk/gtktextmark.c: delete some more old Tk cruft
12484
12485         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12486         mark before removing it, so we can emit MARK_DELETED with a valid
12487         pointer.
12488         (gtk_text_buffer_mark_set): hold ref across signal emission
12489
12490         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12491         whining about attempts to delete special marks
12492
12493         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12494         underscore, since it's internal.
12495
12496         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12497         now implemented in terms of iterators in gtktextiter.h
12498
12499         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12500         New function, destructively sets contents of buffer. Also 
12501         a convenient way to clear the buffer by setting text to ""
12502
12503         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12504         multiline string literal
12505
12506         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
12507         text changes.
12508
12509         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
12510         is not dereferenceable
12511         (gtk_text_iter_forward_lines): fix return value
12512
12513 2000-09-29  Havoc Pennington  <hp@redhat.com>
12514
12515         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
12516
12517         * gtk/gtktextview.c: Implement drag thresholding; change functions 
12518         that set border window size to have nicer name
12519         (gtk_text_view_mark_set_handler):  Fix this to have the 
12520         right signature.
12521
12522         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
12523
12524         * gtk/testtext.c: Update with API changes, put line numbers on 
12525         both sides.
12526         
12527         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
12528         with this
12529
12530         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
12531         pixbuf; delete a big block of #if 0 Tk code
12532
12533         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
12534         insert_pixmap with insert_pixbuf
12535
12536 2000-09-29  Martin Baulig  <baulig@suse.de>
12537
12538         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
12539         confusion with the GdkPixbuf of the GNOME 1.x platform.
12540
12541 2000-09-29  Havoc Pennington  <hp@pobox.com>
12542
12543         * gtk/gtktextview.c: Implement the side windows.
12544
12545         * gtk/testtext.c: Implement simple line numbering in the 
12546         left side window; seems to make scrolling sloooow. Oops.
12547         Also, cursor blink is for some reason causing redraws
12548         of the line numbers. Should investigate...
12549
12550 2000-09-28  Havoc Pennington  <hp@redhat.com>
12551
12552         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
12553         scrolling child windows, and draw focus rectangle properly.
12554         
12555         (gtk_text_view_buffer_to_window_coords):
12556         Coordinate transformation to deal with all these freaking windows
12557         and offsets
12558         (gtk_text_view_window_to_buffer_coords): transform the other way
12559
12560         * gtk/testtext.c (create_buffer): Update to match Pango API change
12561
12562         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
12563         anonymous tags
12564         (foreach_unref): don't emit remove signal from finalize, just
12565         set tag's parent to NULL
12566
12567 2000-09-26  Havoc Pennington  <hp@redhat.com>
12568
12569         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
12570         Fix some warnings       
12571
12572 2000-09-26  Havoc Pennington  <hp@redhat.com>
12573
12574         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
12575         headers into the private header list
12576
12577         * Makefile.am (pkgconfig_DATA): install pkg-config files
12578
12579         * configure.in: add pkg-config files
12580
12581         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
12582
12583         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
12584         outstanding icon caches on theme change.
12585
12586         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
12587         important types:
12588
12589         (GtkIconSource): Specification for creating a pixbuf 
12590         appropriate for a direction/state/size triplet from 
12591         a source pixbuf or filename
12592
12593         (GtkIconSet): List of GtkIconSource objects that are used to
12594         create the "same" icon (e.g. an OK button icon), and cache for
12595         rendered icons
12596
12597         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
12598         up the icon set for a given stock ID.  GTK maintains a stack of
12599         GtkIconFactory to search, and applications or libraries can add
12600         additional icon factories on top of the stack
12601         
12602         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
12603         the set of GtkIconSource specified for a given stock ID into 
12604         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
12605         RcStyle, under the specified stock ID.
12606
12607         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
12608         render_icon used to derive a GdkPixbuf from a GtkIconSource.
12609         This allows people to theme how prelight, insensitive, etc. are
12610         done.
12611
12612         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
12613         icon factories for a style, and return the resulting 
12614         icon set if any.
12615
12616         (gtk_style_render_icon): Render an icon using the render_icon 
12617         method in the GtkStyleClass.
12618
12619         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
12620         Use the style for a given widget to look up a stock ID, get the
12621         icon set, and render an icon using the render_icon method 
12622         of the style
12623
12624         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
12625         (contains information about a stock item), the built-in stock item
12626         IDs, and functions to add/lookup stock items.
12627
12628         * gtk/stock-icons/*: Stock icons that come with GTK
12629
12630         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
12631         a button based on a GtkStockItem
12632         (gtk_button_new_accel): Takes a uline string and accel group, and
12633         installs the accelerator.
12634
12635         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
12636         image-display widget.
12637
12638 2000-09-25  Havoc Pennington  <hp@redhat.com>
12639
12640         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
12641
12642         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
12643         Fix a bug when removing node data, we didn't properly 
12644         re-splice the linked list after removing the data.
12645
12646         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
12647         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
12648
12649         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
12650
12651         * gtk/gtktextlayout.c (set_para_values): Set tab array 
12652         for the layout from the GtkTextTag.
12653
12654         * gtk/gtktexttypes.h: delete tab and search cruft, 
12655         remove g_convert() in favor of GLib version
12656
12657         * gtk/gtktexttypes.c: remove tab implementation from here,
12658         move to Pango
12659
12660         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
12661         tab stuff using new PangoTabArray from Pango
12662
12663         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
12664         unused border_width stuff
12665
12666 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
12667
12668         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
12669         glib) and now useless utf_to_latin1() latin1_to_utf()
12670
12671         * gtk/gtktextview.[ch]: Change ::move_insert and
12672         ::delete_text action signals to ::move and ::delete;
12673         create the signals with the right enumeration type,
12674         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
12675         C-v bindings, change Home, End to move to beginning/end
12676         of line, Add C-Home C-End to move to beginning/end
12677         of buffer. Change ::cut_text to ::cut_clipboard, etc;
12678         combine ::scroll_text into ::move; use new GtkSelectionData
12679         functions to simplify DND text handling.
12680         
12681         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
12682         deletion enumerations here, rename enumeration values to 
12683         be consistently plural.
12684
12685         * gtk/gtktextbuffer.c: Use new clipboard interfaces
12686         for cut/copy/paste and primary selection.
12687
12688         * gtk/gtktextbuffer.[ch]: Remove excess time and
12689         'interactive' arguments from cut/copy/paste;
12690         rename cut to cut_clipboard, etc; remove
12691         gtk_text_buffer_get_clipboard_contents().
12692
12693         * gtk/gtktextlayout.[ch]: Add 
12694         gtk_text_layout_move_iter_to_line_end() to move the iter to 
12695         line ends.
12696
12697         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
12698         Functions to set or get a UTF-8 string on the selection
12699         data.
12700
12701         * gtk/gtkclipboard.[ch]: New, simplified selection handling
12702         interfaces.
12703
12704         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
12705         created widgets - one of these is useless if we don't.
12706
12707         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
12708         a public function clear all targets registered for the
12709         widget.
12710
12711         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
12712         Never call gtk_widget_realize() - that was just asking
12713         for bizarre side-effects.
12714
12715         * gtk/gtkselection.c (gtk_selection_owner_set): Call
12716         gdk_selection_owner_set even if the widget is the
12717         same so that we reliably update the timestamp on
12718         the server.
12719
12720         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12721         gdk_x11_get_server_time() function.
12722         
12723         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12724         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12725         Add some tricky filtering on serial numbers for
12726         selection clear events to fix up long-standard
12727         race condition FIXME's in gtkselection.c.
12728
12729         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12730         routines to convert from utf8 to compound text or
12731         STRING and from a text property to UTF-8.
12732
12733         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12734         a convenience function gdk_get_current_event_time().
12735
12736         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12737         and free selection_data->data properly
12738
12739 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12740
12741         * gtk/gtkthemes.c: Remove some unecessary includes.
12742
12743 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12744
12745         * gtk/gtktextdisplay.c
12746         * gtk/gtktextlayout.c
12747         * gtk/gtktexttag.c
12748         * gtk/gtktexttag.h
12749         * gtk/testtext.c: Change the overstrike property to strikethrough,
12750         to closer match pango.
12751
12752 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12753
12754         * gtk/gtktextview.c: Fix up visibility so that focus,
12755         cursor_visible and blink interact properly.  Reenable cursor blink
12756         which had been roughly disabled. Make blink and focus
12757         properly per-view.
12758
12759         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12760         Add a flag for whether to display insertion cursor and
12761         a function to set the flag.
12762
12763         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12764         get_line_y() to get_line_yrange(), to be a bit more generally
12765         useful.
12766
12767 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12768
12769         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12770           do stop_navigating_submenu, to clear last timeout properly.
12771           Also in gtk_menu_motion_notify move ignore_enter above
12772           the conditional to make it always happen as suggested by Owen
12773
12774 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12775
12776         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12777
12778         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12779         w32api headers.
12780
12781         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12782         declarations.
12783
12784         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12785         (gdk_win32_get_colormap): A line had been deleted by mistake.
12786
12787         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12788         (gdk_event_translate): Handle more virtual keycodes to be able to
12789         generate GDK events for Control-comma, Control-period, etc.
12790
12791         * gtk/gtk.def: Add some missing entry points.
12792
12793 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12794
12795         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12796         Doc comment fixing. (Mostly non-matching parameter names.)
12797
12798         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12799         comments a little to avoid looking like a doc comment.
12800
12801         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12802         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12803         conversions be changed to GError?)
12804
12805         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12806         Move private #defines into .c file.
12807
12808         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12809         order of argument addition, remove duplicates.
12810
12811         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12812         parent class is FrameClass, not BinClass.
12813
12814         * gtk/gtk.h: Add gtkinvisible, which was missing.
12815         (It's occasionalyl useful for client apps, if seldom.)
12816
12817         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12818         #define.
12819
12820 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12821
12822         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12823         coordinates when creating window, instead of GDK-space
12824         coordinates. (Avoid BadValue on too large windows.)
12825
12826 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12827
12828         * configure.in (use_mmx_asm): Remove conftest* after use along the
12829         lines of AC_TRY_COMPILE.        
12830         
12831         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12832         of g_dirname, which is deprecated.
12833         (gtk_rc_parse_any): Removed calls to
12834         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12835
12836         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12837         Removed calls to g_hash_table_{freeze,thaw}, as they are
12838         deprecated now.
12839
12840         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12841         instead of g_basename.
12842         
12843 2000-09-04 Elliot Lee <sopwith@redhat.com>
12844         
12845         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12846         ANSI warning.
12847
12848 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12849
12850         * gtk/gtkwidget.h:  Add some documenting comments about 
12851           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12852           just as owen said on irc.
12853
12854         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12855           set HAS_DEFAULT.  Only set it if there isn't another window
12856           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12857           it if the widget is not the focused window with RECEIVES_DEFAULT.
12858           This fixes weird double default bugs in dialogs which has things
12859           call gtk_window_set_default at times.
12860
12861 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12862
12863         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12864         Nils Barth and David Santiago to improve submenu
12865         navigation. The patch does this by creating a triangular
12866         region from the point where the pointer leaves the
12867         menu to the submenu.  While the pointer is in
12868         that region and a timeout has not expired, events 
12869         that would cause the active submenu to change are
12870         ignored.
12871
12872 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12873
12874         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12875         moving a toplevel window immediately after sizing it would
12876         result in it being sized back to the old size since 
12877         impl->width, impl->height aren't updated until we hear
12878         back from the server. There is still a (longstanding) bug
12879         here that gdk_window_get_size() will give the wrong size
12880         until we do hear back.
12881
12882 2000-08-31  Havoc Pennington  <hp@redhat.com>
12883
12884         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12885         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12886         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12887         Rename GtkTextStyleValues to GtkTextAttributes
12888
12889 2000-08-31  Havoc Pennington  <hp@pobox.com>
12890
12891         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12892         for rapid testing whether an iterator is the end iterator
12893         (gtk_text_btree_new): init end line cache
12894         (gtk_text_line_is_last): use fast cached line to 
12895         see if we're the last line.
12896         (get_last_line): use cached line here too, should 
12897         speed up some random unrelated code.
12898         
12899 2000-08-30  Havoc Pennington  <hp@pobox.com>
12900
12901         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12902         signals.
12903
12904         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12905         delete_text signals. This allows the signals to be used for
12906         implementing undo.
12907
12908         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12909         provide "interactive" argument when emitting insert_text or
12910         delete_text signal.
12911         
12912 2000-08-30  Havoc Pennington  <hp@pobox.com>
12913
12914         * gtk/gtktextbuffer.c: Docs
12915
12916 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12917
12918         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12919         from switch statements, since Tor removed the enumeration
12920         value.
12921         
12922         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12923         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12924
12925 2000-08-29 Elliot Lee <sopwith@redhat.com>
12926         * */*.h: Use G_GNUC_CONST.
12927
12928 2000-08-27  Havoc Pennington  <hp@pobox.com>
12929
12930         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12931         minor indentation fixes, inserted some FIXME about stuff I
12932         realized was broken while documenting it.
12933         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12934         GTK convention  
12935
12936 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12937
12938         * gtk/testgtk.c (create_styles): Fix double free of
12939         font desc.
12940
12941 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12942
12943         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12944         
12945         * gtk/testgtk.c (create_styles): Add a test for modifying
12946         the style through gtk_widget_modify_*.
12947
12948         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12949         a function to get the current modifier style.
12950
12951         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12952         of the passed in GtkRcStyle instead of ref'ing it.
12953
12954         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12955
12956 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12957
12958         * gdk/gdkimage.h
12959         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12960         shared memory image+pixmap GdkImage type, or
12961         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12962         I am dropping that.
12963
12964         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12965         actually call gtk_init_abi_check(), passing also
12966         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12967
12968         * gtk/gtk.def
12969         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12970         New functions, used to check that the GTK+-using code has been
12971         compiled using the correct compiler and switches. In particular,
12972         with gcc one has to use the -fnative-struct switch as GTK+ is
12973         compiled with that.
12974
12975 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12976
12977         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12978         ->prev fields when merging lists. (Found simultaneously
12979         by Pawel Salek and Jakub Jelinek)
12980
12981 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12982
12983         * gdk/gdk.def
12984         * gtk/gtk.def: Add missing entries.
12985
12986         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12987         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12988
12989         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12990         function. Dummy implementation at this point.
12991
12992         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12993         rules. Undefine GTK_COMPILATION when compiling the test programs.
12994         
12995         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12996
12997 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12998
12999         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
13000         to convert back and forth from UTF-8 and the "system" (or "current
13001         locale") charset when necessary. Indentation/spacing cleanup.
13002
13003 2000-08-10  Havoc Pennington  <hp@redhat.com>
13004
13005         * Makefile.am (snapshot): Change the format of the snapshot
13006         version to match glib
13007
13008         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
13009         from EXTRA_DIST since it doesn't seem to exist
13010
13011 2000-08-10  Tor Lillqvist  <tml@iki.fi>
13012
13013         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
13014         version of the directory name (not the UTF-8 one) when building
13015         the path name to stat().
13016
13017 2000-08-03  Elliot Lee  <sopwith@redhat.com>
13018
13019         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
13020         PANGO_ATTR_SHAPE set.
13021
13022 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
13023
13024         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
13025         Peter Osterlund to simplify the code while keeping the
13026         functionality the same.
13027
13028 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
13029
13030         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
13031         is_viewable() test further inside the function, since removing the 
13032         window from the redraw list without clearing ->update_area
13033         was also very broken.
13034
13035 2000-08-02  Tor Lillqvist  <tml@iki.fi>
13036
13037         * configure.in: Check for <unistd.h>.
13038
13039 2000-08-01  Martin Baulig  <baulig@suse.de>
13040
13041         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
13042         to display the message that this is a development version of GTK+.
13043
13044 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
13045
13046         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
13047         was depending on widget->allocation instead of the width of text_area,
13048         which was incorrect for subclasses like GtkSpinButton.
13049
13050         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
13051         with width == 1 tests that should be width == -1.
13052
13053 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
13054
13055         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
13056         (broken, Elliot, every single window blank on X) custom code with call
13057         to gdk_window_is_viewable() which a) prevents code duplicate and
13058         b) works. 
13059
13060 2000-07-31  Elliot Lee  <sopwith@redhat.com>
13061
13062         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
13063         to get the GDK_PARENT_ROOT() macro to work.
13064         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
13065         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
13066         of, windows that aren't shown.
13067         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
13068         pointer grab stuff.
13069
13070 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
13071
13072         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
13073           s/gtk_main_iteration/g_main_iteration/
13074
13075           Did this already in change:
13076                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13077           don't know how it got reverted.
13078
13079 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
13080
13081         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
13082         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
13083
13084         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
13085         not gdk_pixbuf.
13086
13087 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
13088
13089         * configure.in,po/{sp,sr}.po: Added Serbian files
13090
13091 2000-07-30  Tor Lillqvist  <tml@iki.fi>
13092
13093         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
13094
13095         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
13096         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
13097         GIOChannel implementation.
13098
13099         * gdk/win32/gdkinput.c
13100         * gdk/win32/gdkpango-win32.c: Update license name here, too.
13101
13102         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
13103         definition to match prototype.
13104
13105         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
13106
13107 2000-07-27  Elliot Lee  <sopwith@redhat.com>
13108
13109         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
13110         function, to allow handling image formats that cannot be detected
13111         by looking at content alone.
13112
13113 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
13114
13115         * docs/tutorial/*.gif *.jpg *.eps
13116           Update these to the same look-n-feel.
13117           Why does including images in DocBook suck so badly?
13118
13119 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
13120
13121         * gtk/gtktable.c: applied patch from Phil Thompson
13122         <phil@river-bank.demon.co.uk> that enables space settings for
13123         the last row/columns as well.
13124
13125 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
13126
13127         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
13128         updates the license headers to the GNU Lesser General Public License,
13129         as well as updating the copyright year to 2000.
13130
13131 2000-07-26  Robert Brady  <rwb197@zepler.org>
13132
13133         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
13134           and po/Makefile, was installing and looking for them under gtk20
13135           and gtk2 respectively.
13136
13137 2000-07-25  Havoc Pennington  <hp@redhat.com>
13138
13139         * gtk/testtext.c: Comment out some stuff that depends on the rest
13140         of my patches.
13141
13142 2000-07-25  Havoc Pennington  <hp@redhat.com>
13143
13144         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
13145         buffer
13146
13147 2000-07-25  Havoc Pennington  <hp@redhat.com>
13148
13149         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
13150         widget changes.
13151
13152         * gtk/gtktextview.h: To be consistent with usage of "line"
13153         throughout the API to mean "newline-terminated thingy", change
13154         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
13155         to MOVEMENT_LINE.
13156
13157         (GtkTextView): Add flags for default editability, and whether to
13158         show the cursor. Add functions to get/set that. Add 
13159
13160         (gtk_text_view_get_iter_location): new function
13161
13162         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
13163         gtktextlayout.h
13164         (g_convert): Add g_convert temporarily, will go in glib in a bit
13165         
13166         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
13167         GtkTextTagTableForeach instead of brokenly using GHFunc.
13168         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
13169
13170         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
13171         moved to public header.
13172
13173         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
13174         "invisible", since "elide" was a bad name.
13175         (gtk_text_tag_get_priority): Added
13176
13177         (GtkTextStyleValues): put this in public header, along with
13178         functions to use it.
13179
13180         * gtk/gtktextmarkprivate.h: Include more headers, since we no
13181         longer include gtktextbtree.h.
13182
13183         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
13184         gtk_text_mark_deleted
13185
13186         * gtk/gtktextlayout.h: Don't include the "really private" headers,
13187         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
13188         to make this possible. Now we only need to install
13189         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
13190         (However the Makefile.am isn't changed yet because of the
13191         logistics of merging gtk-hp-patches piecemeal)
13192
13193         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
13194         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
13195         gtk_text_iter_get_line is now used in the public API for a
13196         different purpose.
13197
13198         * gtk/gtktextiter.h: Clean up function names to be more
13199         consistent. Always call char offset "offset" and byte index
13200         "index". A "line" is always a line number. 
13201
13202         (gtk_text_iter_is_last): new function, more efficient than 
13203         the existing way to check
13204         (gtk_text_iter_is_first): new function, also more efficient
13205
13206         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
13207
13208         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
13209         gtk_text_iter_forward_char, etc.
13210
13211         (gtk_text_iter_forward_to_tag_toggle): Renamed from
13212         forward_find_tag_toggle, since this isn't a linear search
13213
13214         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
13215
13216         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
13217         New functions, search for a buffer substring.
13218
13219         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
13220         interactive and default editable (since we need to store that info
13221         until we receive the selection data).
13222
13223         Remove all the _at_char and at_line etc. versions of functions;
13224         only have iterator versions.
13225
13226         Add _interactive() versions of functions, that consider the
13227         editability of text. (FIXME add interactive flag to the 
13228         insert/delete signals per Darin's suggestion)
13229
13230         (gtk_text_buffer_get_tag_table): new function, demand-creates the
13231         tag table if necessary
13232
13233         Remove declaration of gtk_text_buffer_get_iter_from_string
13234
13235         (_gtk_text_buffer_get_btree): private/internal function, added.
13236         
13237
13238         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
13239         (gtk_text_line_is_last): new function
13240
13241 2000-07-25  Havoc Pennington  <hp@redhat.com>
13242
13243         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
13244         using GtkProgressBar. See Changes-2.0.txt for details.
13245
13246         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
13247         "pulse_step" which are the equivalent of
13248         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
13249         Implement new API.
13250         
13251         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
13252         (use_text_format) to mark whether text set on the progress bar is
13253         a format string. Deprecate entire GtkProgress interface.
13254
13255         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
13256         (gtk_progress_build_string): make this a no-op if use_text_format
13257         is FALSE
13258
13259         * docs/Changes-2.0.txt: Describe progress bar changes.
13260
13261 2000-07-25  Tor Lillqvist  <tml@iki.fi>
13262
13263         * Makefile.am: Include the build directory.
13264
13265         * configure.in: Generate build/Makefile, build/win32/Makefile,
13266         gdk/, gdk/win32/, and gtk/makefile.mingw.
13267
13268         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
13269         Add GETTEXT_PACKAGE.
13270         
13271         * gdk/gdk.def
13272         * gtk/gtk.def: Updates.
13273
13274         * gdk/gdkfont.h
13275         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
13276         need them any longer.
13277
13278         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
13279
13280         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
13281         PANGOWIN32_LIBS and gdk_pixbuf.
13282
13283         * gdk/win32: Compiles, but no doubt doesn't work at all.
13284
13285         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
13286
13287         * gdk/win32/gdkinput.c: New file, temporarily.
13288         
13289         * gdk/win32/gdkinput-win32.h: New file
13290
13291         * gdk/win32/gdkinputprivate.h: Remove.
13292
13293         * gdk/win32/gdkpango-win32.c: New file.
13294
13295         * gtk/makefile.mingw.in: New file
13296
13297         * gtk/makefile.cygwin: Removed
13298         
13299         * gtk/Makefile.am: Update accordingly.
13300
13301         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
13302         made externally visible.
13303
13304         * gtk/gtkmain.c: Use it.
13305         
13306         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
13307         is enough.
13308
13309         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
13310
13311 2000-07-24 Elliot Lee <sopwith@redhat.com>
13312         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
13313         individual backends already.
13314         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
13315         again. Yes, there really is a good reason for this, if you are using the gdkregion
13316         internals, and if you're not, why do you care?
13317         * gdk/gdkwindow.c: Fix inverted condition
13318         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
13319         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
13320         * gtk/gtkrange.c: Redraw trough when moving.
13321         * gtk/gtktypeutils.c: Fix warning by adding const cast.
13322         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
13323
13324 2000-07-23  Tor Lillqvist  <tml@iki.fi>
13325
13326         * configure.in: Check for mkstemp and sigsetjmp. Output
13327         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
13328
13329         More work on GDK for Win32. Still in an intermediate state.
13330
13331         * gdk/makefile.cygwin
13332         * gdk/win32/makefile.cygwin: Removed.
13333         
13334         * gdk/makefile.mingw.in
13335         * gdk/win32/makefile.mingw.in: New files.
13336
13337         * gdk/Makefile.am
13338         * gdk/win32/Makefile.am: Generate and distribute them.
13339
13340         * gdk/win32/gdkwindow-win32.h
13341         * gdk/win32/gdkdrawable-win32.h
13342         * gdk/win32/gdkpixmap-win32.h: New files.
13343
13344         * gdk/win32/gdkcolor-win32.c
13345         * gdk/win32/gdkcursor-win32.c
13346         * gdk/win32/gdkdrawable-win32.c
13347         * gdk/win32/gdkgc-win32.c
13348         * gdk/win32/gdkimage-win32.c
13349         * gdk/win32/gdkprivate-win32.h
13350         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
13351         Rename fields and variables called xcursor, xid, etc (these names
13352         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
13353
13354 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
13355
13356         * gtk/gtkentry.[ch]: Fix some problems with vertical
13357         alignment.
13358
13359         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
13360         char/byte confusion.
13361
13362 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
13363
13364         * gtk/gtktextview.c (changed_handler): Fix bug where
13365         redraw wasn't being done properly when height of
13366         dirty region changed.
13367
13368         * demos/Makefile.am: Remove various references to
13369         -lgmodule
13370
13371 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
13372
13373         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
13374         PangoAttrShape to reserve space for pixmaps, add 
13375         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
13376         in the display functions.
13377         
13378         * gtk/testgtk.c (create_layout): Set some more exotic
13379         scrolled window options
13380
13381         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
13382         Add function to set the shadow type of a window, to allow
13383         putting a shadow around widgets such as GtkLayout or GnomeCanvas
13384         which don't draw their own frame.
13385
13386 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
13387
13388         * docs/tutorial/package-db-tutorial.sh: New file for
13389           packaging DocBook format tutorial
13390
13391 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
13392
13393         * docs/tutorial/gtk-tut.sgml: Minor updates
13394
13395         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
13396
13397 2000-07-19  Tor Lillqvist  <tml@iki.fi>
13398
13399         * gtk/gtksignal.c: Fix C++ comment.
13400
13401         * gtk/gtkimmulticontext.c
13402         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
13403         don't return value from void functions.
13404
13405         * gtk/gtk.def: Add gtk_rc_style_unref.
13406
13407 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13408
13409         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
13410         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
13411         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
13412         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
13413         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
13414         gtk/gtktypeutils.h: Include files outside of the extern "C"
13415         block. Makes some C++ compiler happy. Reported by Denis Vakatov
13416         <vakatov@peony.nlm.nih.gov>.
13417
13418 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
13419
13420         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
13421           Completes first pass. Hurrah!
13422
13423 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
13424
13425         * docs/tutorial/gtk-tut.sgml: More clean ups.
13426
13427 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
13428
13429         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
13430         paint the background of the text area which was accidentally
13431         removed at some point.
13432
13433         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
13434           
13435          - Move most of the functionality from the theme vtable
13436            into GtkRcStyleClass and GtkStyleClass. The moved
13437            vtable functions were changed a bit in the move to
13438            work better in their new home.
13439
13440          - Get rid of the engine and engine_data fields from
13441            GtkRcStyle and GtkStyle; instead the theme
13442            engine derives theme-specific subclasses of GtkRcStyle
13443            and GtkStyle
13444
13445          - Add extra dlsym() found entry point to themes,
13446            theme_create_rc_style().
13447
13448         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
13449         in gtk_style_real_copy.
13450
13451         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
13452         to register a type associated with an engine. (The engine
13453         won't be unloaded as there is an instance of the type.)
13454
13455
13456 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
13457
13458         * docs/tutorial/gtk-tut.sgml: Clean ups.
13459
13460 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
13461
13462         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
13463           of cleaning up to do.
13464
13465 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13466
13467         * gdk/testgdk.c: New file, quick hack to test backends for
13468         pixel-by-pixel correctness of the most simple graphic operations.
13469
13470 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13471
13472         * Really release 1.3.1
13473         
13474         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13475         include structure.
13476
13477 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13478
13479         * Released 1.3.1
13480
13481 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13482
13483         * gtk/gtktextlayout.c: use FALSE for size_only most
13484         of the time when calling gtk_text_layout_get_line_display()
13485         to avoid causing double reshapes when a redraw follows
13486         immediately after.
13487
13488 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13489
13490         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13491         appropriate region and gdk_window_process_updates() so trough
13492         updating doesn't lag behind the window being scrolled.
13493
13494         * gdk/gdkgc.c: Make parent_class pointer static.
13495          
13496 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13497
13498         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13499         include <string.h>.
13500          
13501         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13502         cut-and-paste error in computing memory offset for 4 channels.
13503
13504 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13505
13506         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
13507         gtk_rc_append_default_pixmap_path(), since it wasn't
13508         adding an interesting path and we don't have a meaningful
13509         default for this value.
13510
13511 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
13512
13513         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
13514         gtk-config to gtk-config-2.0 move gtk_.m4 to
13515         gtk-2.0.m4
13516
13517         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13518         gdk/Makefile.am demos/Makefile.am: Change 
13519         library names to libgtk-1.3.la, etc, so that we
13520         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
13521
13522         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
13523         gdk/Makefile.am gdk/x11/Makfile.am
13524         Move include files into /usr/include/gtk-2.0, 
13525         /usr/lib/gtk-2.0/include/
13526          
13527         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
13528         gtk/gtkintl.h: Change package for gettext from 
13529         gtk+ to gtk20. Put hack in autogen.sh to modify
13530         po/Makefile.in.in after gettextize to make this
13531         possible.
13532
13533         * gtk+.spec: Some updates, not tested.
13534
13535         * gdk-pixbuf/Makefile.am: Move loaders into
13536         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
13537
13538         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
13539         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
13540         to THEMENAME/gtk-2.0/. Move engine directory  to
13541         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
13542         
13543 2000-07-12  Tor Lillqvist  <tml@iki.fi>
13544
13545         Win32 changes, still doesn't build though.
13546
13547         * gdk/makefile.cygwin
13548         * gdk/win32/makefile.cygwin
13549         * gtk/makefile.cygwin: Updates.
13550
13551         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
13552         default values for fg and bg pixel as X11 does (0 and 1), not
13553         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
13554         Use 0 for pen width by default (treated as 1 anyway later, but for
13555         apps that might check the value in the GdkGC).
13556         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
13557         interface to gdk_gc_predraw and _postdraw.
13558
13559         * gdk/win32/gdkwin32.h
13560         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
13561
13562         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
13563         extraneous semicolon.
13564
13565         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
13566
13567         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
13568         not the Win32 bitspixel value.
13569
13570         * gdk/win32/gdkcc-win32.c:
13571         * gdk/win32/gdkcolor-win32.c 
13572         * gdk/win32/gdkprivate-win32.h
13573         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
13574         GDK object structure.
13575
13576 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
13577
13578         * docs/tutorial/gtk_tut_12.es.sgml (name): 
13579         * docs/tutorial/gtk_tut_it.sgml (name): 
13580         * docs/tutorial/gtk_tut_fr.sgml (name): 
13581         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
13582         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
13583
13584 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
13585
13586         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
13587           small changes.
13588
13589 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
13590
13591         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
13592         a bug here, never been here and never fixed anything ;(
13593         (don't segfault if tree->root_tree is NULL, which happens prior
13594         to widget realization, but puke instead).
13595
13596 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
13597
13598         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
13599         add the necessary tokens.
13600
13601         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
13602         (gtk_rc_style_to_style): copy thicknesses.
13603         (gtk_rc_init_style): apply thicknesses.
13604         (gtk_rc_parse_style): parse xthickness and ythickness.
13605
13606         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
13607
13608         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
13609         (gdk_window_new): 
13610         (_gdk_windowing_window_init): 
13611         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
13612         (gdk_pixmap_create_from_data): 
13613         (gdk_bitmap_create_from_data): 
13614         (gdk_pixmap_new): 
13615         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13616         (gdk_image_new): 
13617         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
13618         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
13619         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
13620         (gdk_colormap_get_system): 
13621         (gdk_colormap_new): 
13622         * gdk/gdkwindow.c (gdk_window_init): 
13623         * gtk/gtkstyle.c (gtk_style_new):
13624         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
13625         * gdk/gdkpixmap.c (gdk_pixmap_init): 
13626         * gtk/gtkrc.c (gtk_rc_style_new):
13627         use g_object_new() instead of g_type_create_instance() which
13628         is a private function for fundamental type implementations.
13629
13630 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
13631
13632         * configure.in: Add check for db2html
13633
13634 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
13635
13636         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
13637         hack to set glib_debug_objects based on gtk_debug_flags.
13638
13639 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
13640
13641         * INSTALL.in: Update the Prerequisites section.
13642
13643         * Makefile.am demos/Makefile.am docs/Makefile.am
13644         docs/tutorial/Makefile.am gdk/x11/Makefile.am
13645         gdk/linux-fb/Makefile.am: Dist fixes
13646
13647 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
13648
13649         * NEWS: 10,000 foot view of 1.3.1 changes.
13650
13651 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
13652
13653         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
13654         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
13655         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
13656         gdk/x11/gdkmain-x11.c: 
13657
13658         Patch from George Lebl to add a GdkGrabStatus enumeration to use
13659         as a return value of gdk_*_grab(). Previously, we just
13660         returned the X11 values directly.
13661
13662 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * gdk/x11/Makefile.am: Patch from George Lebl to 
13665         install all the headers in the right place.
13666
13667 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
13668
13669         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
13670           initial conversion to DocBook.
13671
13672 2000-07-04  Tor Lillqvist  <tml@iki.fi>
13673
13674         * README.win32: Improve a bit.
13675
13676         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
13677         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
13678         Alt+0nnn on the numpad (used to enter characters by numeric code
13679         from current DOS or ANSI codepage) working correctly, as in other
13680         Windows apps.
13681
13682         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
13683         same argument validity tests as in X11 version.
13684         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
13685
13686         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
13687         definitions in case missing from headers.
13688
13689         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
13690         destroy the window-specific cursor.
13691         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
13692         calling GetModuleHandle(NULL).
13693         (gdk_window_set_cursor): Reworked to always copy the passed cursor
13694         with CopyCursor before setting it as the window-specific
13695         cursor. It is OK for the caller to destroy the GdkCursor (and thus
13696         also its Windows cursor) after calling this function. Destroy any
13697         previous window-specific cursor.
13698
13699 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
13700
13701         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
13702         font charset is iso8859-1, not iso-8859-1.
13703
13704 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
13705
13706         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
13707         Use g_get_charset() instead of g_get_codeset().
13708
13709         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
13710         Comment out some strdup'ing functions to keep timj
13711         happy until we finish fighting this out.
13712
13713 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
13714
13715         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
13716         <= width or height.
13717
13718         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13719         from 1.2 for parent/child states.
13720
13721         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13722         of typos.
13723
13724         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13725         event structures, replace with a generic axes field. Replace 
13726         deviceid/sourec with GdkDevice *device.
13727
13728         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13729         to extract particular axis use value from event. (Also
13730         can be used for normal X/Y.)
13731
13732         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13733         allow for arbitrary number of axes, namespace everything
13734         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13735         everywhere.
13736
13737         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13738         Get rid of the gdk_input_vtable setup if favor of simply
13739         defining the functions in gdkinput-none/gxi/xfree.c in
13740         a similar fashion to the way that the port structure is 
13741         done.
13742
13743         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13744         for new event structures. 
13745
13746         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13747         new device interfaces.
13748
13749 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13750
13751         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13752         set the initial text.
13753
13754         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13755         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13756         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13757         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
13758
13759         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13760         pango_layout_set_font_description to simplify.
13761
13762 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13763
13764         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13765         pango_layout_set_font_description to simplify.
13766
13767 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13768
13769         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13770         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13771         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13772
13773         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13774         PANGO_PIXELS() macro.
13775
13776 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13777
13778         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13779         that returns a PangoContext owned by the widget and updated to
13780         match future changes in the widget. Also, make 
13781         gtk_widget_create_pango_layout() use this context. If we ever
13782         add a ::changed signal to PangoContext, this will make things
13783         much more convenient. 
13784
13785         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13786         in the appropriate places instead of destroying the layouts and
13787         creating new ones.
13788
13789         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13790         in a few strategic places.
13791
13792 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13793
13794         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13795         gtk_widget_size_request() on reparented child, if one. Otherwise,
13796         queue_resize() on the child never results in it getting size-requested
13797         at all.
13798
13799         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13800         in option menus, so that (with luck) people won't copy it into
13801         their apps in the future.
13802
13803         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13804         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13805         a lot of problems with changing the size of the menu's menu
13806         items after adding it to the option menu.
13807
13808         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13809
13810         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13811         the text direction for a widget changes.
13812
13813         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13814         ::direction_changed to get rid of various hacks.
13815
13816 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13817
13818         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13819         name.
13820
13821 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13822
13823         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13824         flag to the structure. Do not call XFreePixmap on pixmaps created
13825         by gdk_pixmap_foreign_new().
13826
13827 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13828
13829         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13830         value using GdkRGB functionality given GdkColormap and GdkColor.
13831         (name not final, waiting for inspiration.)
13832         
13833         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13834         set the foreground/background of a GC using the GC's colormap
13835         and GdkRGB. (name not final, waiting for inspiration.)
13836
13837         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13838         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13839
13840         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13841         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13842         purely a function of the corresponding colormap. Make
13843         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13844
13845         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13846         gdk_pixbuf_*create_from_xpm_* in terms of
13847         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13848         code.
13849
13850         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13851         advantage of the new draw_rgb_32_image_dithalign.
13852
13853         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13854
13855         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13856         on each created GC.
13857
13858         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13859
13860         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13861         which we initialize from the drawable when the GC is created,
13862         if the drawable has a colormap.
13863
13864         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13865
13866         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13867
13868         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13869
13870 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13871
13872         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13873         actually returning expose events, make sure to set
13874         the count field properly.
13875
13876         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13877         accidentally reintroced bug which always cleared
13878         the graphics_exposures value. 
13879
13880 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13881
13882         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13883
13884 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13885
13886         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13887
13888 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13889
13890         * docs/faq/gtk-faq.sgml: Start of Section 6.
13891
13892 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13893
13894         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13895         
13896         (Fixes problem with drawing childless frames. Pointed out
13897         by and a first patch from Anders)
13898         
13899         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13900         compute a child_allocation, even if we don't have a child.
13901
13902         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13903         Always chain to the parent's impl, even if we don't have a child.
13904
13905 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13906
13907         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13908         use multiple parts of it instead of creating a bunch of separate
13909         segments, since the maximum number of segments per system is not
13910         large. (This might be worth backporting to GTK+-1.2.x if we make a
13911         new release )
13912
13913         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13914         structure in preparation for per-colormap GdkRGB.
13915
13916         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13917         to False when we get EINVAL from shmget so that the caller of
13918         gdk_image_new can retry with a smaller segment size.
13919
13920 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13921
13922         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13923
13924 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13925
13926         * configure.in: make the current version number 1.3.1 (binary age 0,
13927         interface age 0).
13928         
13929         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13930         gtkcompat.h is all we want.
13931
13932         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13933         GLib primitive types. fixed g_type_register_fundamental() argument
13934         ordering.
13935
13936         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13937         compiles.
13938
13939         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13940         object code cleanup, comment trigraph fixes, etc...
13941
13942 2000-06-23  Havoc Pennington  <hp@redhat.com>
13943
13944         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13945         instead of making up a bogus name for first_para_mark
13946
13947         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13948         0 as a context ID
13949
13950 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13951
13952         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13953
13954 2000-06-21  Havoc Pennington  <hp@pobox.com>
13955
13956         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13957         we didn't check window->bg_pixmap != GDK_NO_BG.
13958
13959         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13960         gdk-pixbuf
13961
13962 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13963
13964         * docs/faq/gtk-faq.sgm: Move file to here.
13965           TODO: Update Makfile.am 
13966
13967 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13968
13969         * docs/gtk-faq.sgm: Add Section 2
13970
13971 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13972
13973         * docs/gtk-faq.sgm: New file. Start of DocBook
13974           version of the FAQ.
13975
13976 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13977
13978         * configure.in (GDK_PIXBUF_MAJOR): Define version
13979         numbers for GDK_PIXBUF_*, as they get substituted
13980         into a header file. Need to consider versioning
13981         for gdk-pixbuf more carefully later.
13982
13983 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13984
13985         Work with srcdir != builddir.   
13986         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13987         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13988         * demos/testpixbuf.c: Likewise.
13989         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13990         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13991         <gdk/x11/gdkx.h>.
13992         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13993         "gdk-pixbuf.h".
13994         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13995
13996 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13997
13998         * TODO.xml: Change 1.4 version numbers to 2.0.
13999
14000 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
14001
14002         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
14003         fixups to GTK+ standard.
14004
14005 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
14006
14007         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
14008         gdk-pixbuf.
14009
14010         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
14011         fixups for GObject.
14012
14013         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
14014         gdk-pixbuf with GDK dependencies moved into GDK.
14015         
14016         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
14017         move gdk-pixbuf-loader here until GObject has signals.
14018
14019         * demos/: New directory of demos. Move demos from
14020         gdk-pixbuf here.
14021
14022         * demos/pixbuf-init.c: Small bit of code to check for
14023         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
14024         set GDK_PIXBUF_MODULEDIR appropriately.
14025
14026         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
14027         define which no longer makes sense.
14028
14029 2000-06-21  Havoc Pennington  <hp@redhat.com>
14030
14031         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
14032         gtk_get_default_language
14033
14034         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
14035         new function to get the default language
14036
14037         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
14038         s/gtk_text_view_style_values/gtk_text_style_values/
14039
14040         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
14041         Add a "language" field to tags.
14042
14043         (gtk_text_tag_set_arg): Fix bug in setting
14044         "bg_full_height_set" tag.
14045
14046 2000-06-21  Havoc Pennington  <hp@redhat.com>
14047
14048         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
14049         in the interfaces
14050
14051         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
14052         stuff instead when possible.
14053
14054         * gtk/gtktexttypes.h: Delete some unused constants
14055
14056         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
14057         testtextbuffer.c: use glib instead of custom unicode routines
14058
14059 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
14060
14061         * docs/es/: Removed mistakenly added generated sgml
14062
14063         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
14064         Remove outdated info files.
14065
14066         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
14067         Moved tutorial files into subdir
14068
14069         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
14070         subdir.
14071
14072         * docs/man/gtk_button.pod: Remove. (contents will be
14073         integrated into gtk-reference button page.)
14074
14075         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
14076         docs/faq/Makefile.am: Adjust for new organization
14077
14078 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
14079
14080         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
14081         not $(MKINSTALLDIRS)
14082
14083 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
14084
14085         * gtk/testgtk.c (create_text): Finish the job Elliot started
14086         of removing font setting test for text widget. (Since text widget
14087         and GdkFont are not deprecated, and cause portability problems.)
14088
14089 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
14090
14091         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
14092         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
14093         Remove use of libunicode in favor of new GLib functions.
14094
14095         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
14096         nano-x, framebuffer. The X11 include is just a hack until we get
14097         the necessary functions in gdkcolor.h, so there is no reason to
14098         add other includes of platforms.
14099
14100         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
14101         window bigger than the screen change.
14102
14103         * gtk/testgtk.c: Revert some random changes from Elliot
14104         that had no particular point and were causing testgtkrc
14105         not to function correctly.
14106         
14107         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
14108         because GdkSegment and GdkRegionBox have the same fields,
14109         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
14110         results in clearer code.
14111
14112         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
14113         gdk_input_translate_coordinates): Fix missed GdkObjectification
14114
14115 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14116
14117         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
14118         * gtk/gtk{plug,socket}.h: Missed commits from previous.
14119
14120 2000-06-20  Havoc Pennington  <hp@redhat.com>
14121
14122         * modules/linux-fb/Makefile.am: Make this compile
14123         without framebuffer enabled
14124
14125         * gdk/linux-fb/Makefile.am: Add conditional to not build
14126         framebuffer unless specified in configure
14127
14128         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
14129         the size of the target instead of source if -1 was passed for
14130         width/height
14131
14132         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
14133         width/height confusion.
14134
14135 2000-06-19  Havoc Pennington  <hp@redhat.com>
14136
14137         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
14138         GDK_DRAWABLE_XID. In the future, we probably want to make it
14139         faster with G_DISABLE_CHECKS turned on.
14140
14141 2000-06-14  Havoc Pennington  <hp@redhat.com>
14142
14143         * gdk/Makefile.am: add gdkpixmap.c
14144
14145         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
14146         s/gdk_image_init/_gdk_windowing_image_init
14147
14148         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
14149         ref/unref
14150
14151         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
14152
14153         * gdk/gdkcompat.h: remove GdkWindowType compat, since
14154         GdkWindowType is now non-deprecated; 
14155         change gdk_window_get_type() compat to be
14156         gdk_window_get_window_type().
14157
14158         * gdk/gdkdnd.h: make GdkDragContext a GObject.
14159
14160         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
14161         virtual GObject. Make all functions call into the vtable.
14162         Move gdk_image_put() guts in here. Remove GdkDrawableType
14163         and gdk_drawable_get_type(), these are now GdkWindow-specific.
14164         draw_image, get_depth, get_size, set_colormap, get_colormap,
14165         get_visual added to the vtable.
14166         
14167         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
14168         GObject. Virtualize everything. 
14169         (gdk_gc_new_with_values): remove check for destroyed window,
14170         because now GdkWindow::create_gc will check this.
14171         (gdk_gc_set_values): New function to set GC values, this 
14172         was already implemented but wasn't in the header
14173
14174         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
14175
14176         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
14177         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
14178         remove _gdk_window_class; add _gdk_window_impl_get_type() and
14179         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
14180         _gdk_windowing_window_init, rename gdk_image_init to
14181         _gdk_windowing_image_init.
14182         
14183         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
14184         (gdk_draw_layout): Remove check for destroyed window, 
14185         because all the drawable methods already check it.
14186         
14187         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
14188         Add gdkpixmap.c which contains implementation of GdkDrawable
14189         virtual table (by chaining to a platform-specific implementation
14190         object).
14191         
14192         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
14193         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
14194         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
14195         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
14196         GdkColormapPrivate. 
14197
14198         * gdk/gdktypes.h: #include <glib-object.h>
14199
14200         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
14201         Move most functionality to platform-specific implementation
14202         object. GdkWindow itself now handles the backing store, then
14203         chains to the platform-specific implementation.
14204         (gdk_window_get_window_type): return GdkWindowType of the window.
14205         (gdk_window_peek_children): New routine, returns the children of 
14206         a GdkWindow
14207         (gdk_window_get_children): Was in X11-specific code and did 
14208         XQueryTree. Changed to simply return a copy of window->children; 
14209         so it can go in cross-platform code.
14210         
14211         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
14212
14213         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
14214         GdkColormap; just changed to use the new private data instead
14215         of casting to GdkColormapPrivate.
14216
14217         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
14218         gdk_cursor_new().
14219
14220         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
14221         (private data member in the GObject). 
14222         (xdnd_manager_source_filter): Function had broken 
14223         error handling, fix it (use gdk_error_trap_push).
14224
14225         * gdk/x11/gdkdrawable-x11.c: This file now implements
14226         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
14227         base class is purely for the convenience of the X port,
14228         and not part of the interface to cross-platform GDK.
14229
14230         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
14231         
14232         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
14233         specific to X, and returned by the create_gc virtual method
14234         of GdkDrawableImplX11. 
14235         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
14236         rather than gchar, this was also changed in the GdkGC vtable.
14237         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
14238         mask is 0, return immediately, instead of checking every flag.
14239         This is faster, and keeps us from segfaulting if values is NULL
14240         and the mask contains some nonzero flags.
14241
14242         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
14243         GdkWindow.
14244
14245         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
14246         GdkWindowPrivate is gone.
14247
14248         * gdk/x11/gdkim-x11.c: rename things that got renamed.
14249
14250         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
14251         remove the image_put stuff that got transferred to GdkDrawable.
14252         
14253         * gdk/x11/gdkinput.c: renamings
14254
14255         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
14256
14257         * gdk/x11/gdkpixmap-x11.c: GObject conversion
14258
14259         * gdk/x11/gdkprivate-x11.h: indentation fixes
14260
14261         * gdk/x11/gdkproperty-x11.c: renamings
14262
14263         * gdk/x11/gdkselection-x11.c: renamings
14264
14265         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
14266         implements the platform-specific "impl" object.
14267         Moved gdk_window_get_children to gdk/gdkwindow.c
14268
14269         * gdk/x11/gdkx.h: Remove all the private structs and private datas
14270         that no longer exist. Add declaration of GdkGCX11 object here.
14271         Fix all the macros to still work. 
14272
14273         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
14274         GdkDragContext from the boxed types since they are now GObjects.
14275
14276         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
14277         moved xthickness/ythickness into the instance. GtkStyleClass
14278         functions are now in the standard vtable for GtkStyle, so you have
14279         to create a GObject subclass to write a theme engine.
14280         (gtk_style_copy): fixed a leaked PangoFontDescription
14281         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
14282         can be the standard GObject function.
14283         
14284         * Throughout GTK:
14285         s/style->klass->[xy]thickness/style->[xy]thickness
14286         s/pango_layout_unref/g_object_unref/
14287
14288         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
14289         
14290         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
14291         accessing GDK internals.
14292
14293         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
14294         accessing GDK internals.
14295
14296 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14297
14298         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
14299
14300         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
14301         problem by calculating event position relative to the trough
14302         rather than the slider.
14303         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
14304
14305         * gdk/gdkgc.h: Add GDK_NOR.
14306
14307         * configure.in, Makefile.am: Add modules top level dir
14308         * configure.in: Only use pangox library if building x11 target.
14309         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
14310
14311 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14312
14313         * gtk/gtkcolorsel.c: Change private class member to be named
14314         private_data throughout the file.
14315
14316         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
14317         private_data to avoid clashing with keyword.
14318
14319 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14320
14321         * gdk/gdkdnd.h: Add comment to remove warning.
14322
14323 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
14324
14325         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
14326         Byelorussian language; changed the Makefile and file names 
14327         to reflect that.
14328
14329 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
14330
14331         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
14332         rather than gdk_window_hide; this makes things work
14333         correctly if the window is programmatically hidden while
14334         iconified.
14335
14336 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
14337
14338         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
14339         cut and paste typo where wrong pixmap was being
14340         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
14341
14342 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
14343
14344         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
14345         Add helper function to compute format / bytes 
14346         relationship. Use in a couple places to fix up
14347         errors which assume 8 * format.
14348
14349         * gtk/gtkselection.c (gtk_selection_request): Use 32
14350         rather than 8 * sizeof (GdkAtom), to work correctly
14351         on Alpha.
14352
14353 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
14354
14355         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
14356         libgtk.la
14357         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
14358         versions
14359
14360         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
14361         checking macros return NULL since the function has a return value.
14362
14363 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
14364
14365         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
14366         GTK+ from building at all.
14367
14368         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
14369
14370 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
14371
14372         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
14373         gtk/Makefile.am: make it possible to configure gtk for different
14374         targets on the same platform. The library name is now 
14375         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
14376         flag. Only the x11 target compiles right now.
14377         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
14378         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
14379         * gdk/nanox/gdk*generic*: delete generic region code.
14380         * gdk/linux-fb/gdk*generic*: delete generic region code.
14381         * README.nanox: update information.
14382         
14383 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
14384
14385         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
14386         prepend not append. (Pointed out by Brett Hall.)
14387
14388 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
14389
14390         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
14391
14392 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
14393
14394         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
14395         need this later, and this makes sure that the atexit for
14396         glib gets called after that for GDK, so atexits are
14397         properly ordered for object leak checking.
14398
14399         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
14400
14401         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
14402         pango_x_shutdown_display()
14403
14404         * gtk/simple.c (main): Close window on destroy.
14405
14406 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
14407
14408         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
14409         to treat initial creation different from setting with 
14410         regards to the graphics-exposures parameter, so add a parameter
14411         indicating whether this is initial or not.
14412
14413 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
14414
14415         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
14416         to sort of work by adding an extra return_exposes arg
14417         to gdk_event_translate() - it might be better to simply
14418         deprecate the function altogether and force people to rewrite
14419         without it. gdk_window_scroll() handles most of it, and where
14420         gdk_window_scroll() doesn't work, simply redrawing more does.
14421
14422         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
14423         assertion.
14424
14425         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
14426
14427         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
14428         bunch of pretty much useless /* Print debugging info */ comments 
14429         which had drifted away from the code they were commenting.
14430
14431 2000-06-02  Havoc Pennington  <hp@pobox.com>
14432
14433         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
14434         is in working order.
14435         
14436         * gtk/testtext.c: Change to reflect anonymous mark API
14437
14438         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
14439
14440         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
14441         field, which was unused.
14442
14443         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
14444         saves some typing.
14445
14446         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
14447
14448         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
14449         flag on the insertion point and selection bound
14450
14451         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
14452         make mark-manipulation functions take a GtkTextMark* instead of a
14453         mark name.
14454         
14455         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
14456         GtkTextMarkBody; will be used to detect attempts to delete
14457         the permanent marks (insert and selection bound)
14458
14459         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
14460
14461 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
14462
14463         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
14464         flag to on.
14465
14466         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14467         Honor DOUBLE_BUFFRED_FLAG
14468
14469         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14470         function to set the DOUBLE_BUFFERED flag.
14471
14472         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14473         or not exposes done on the widget should be double-buffered.
14474
14475         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14476         to be what would be expected. (Fixes problem with a
14477         g_return_if_fail() validating a TextDirection enumeration)
14478
14479 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14480
14481         * gtk/gtkwidget.c: Remove all references to 
14482         offscreen flag which was no longer used.
14483
14484         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14485
14486         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14487         for non-null label_widget->parent.
14488
14489         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14490         which no longer was used.
14491
14492         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14493
14494         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14495         for null arguments.
14496
14497         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14498         check for destroyed windows.
14499
14500 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14501
14502         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14503         the slave context there.
14504
14505         * gtk/gtkinvisible.[ch]: Make reference counting behavior
14506         identical to GtkWindow.
14507
14508 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
14509
14510         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
14511         pangox to here, so we can write them independent of rendering
14512         system, using GDK primitives.
14513
14514         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
14515         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
14516         since we have a rendering-system independent implementation in
14517         terms of draw_glyphs().
14518         
14519         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
14520         function to render a single line.
14521
14522         * gdk/x11/gdkpango.c: Move the guts of this file mostly
14523         into ../gdkpango.c, which simplifies things, since we
14524         don't have to deal with raw X gc's.
14525
14526 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
14527
14528         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
14529         get the logical attributes for a given GtkTextLine.
14530
14531 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
14532
14533         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
14534         g_locale_get_codeset() to g_get_codeset() change.
14535
14536 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
14537
14538         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
14539         descriptions.
14540
14541         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
14542         the entry.
14543
14544         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
14545         redoing (vastly simplifying) for Pango. Still needs quite
14546         a bit of work. (Size selection is currently poor. List of 
14547         predefined sizes is not a good idea, since all of these
14548         sizes won't necessarily be distinct.)
14549
14550 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
14551
14552         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
14553         CODESET results for LANG=C.
14554
14555 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
14556
14557         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
14558         which takes a stringized pango font description;
14559         ignore the older 'font' and 'fontset' declarations.
14560
14561         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
14562         field with a GdkFont derived via gdk_font_from_description(),
14563         for compatibility. (Should we just remove it entirely?
14564         Probably too much compatibility breakage, but people
14565         should be migrating to the new Pango stuff as quickly
14566         as possible.)
14567
14568 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
14569
14570         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
14571
14572 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
14573
14574         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
14575         redoing; there are some bugs in size allocation right
14576         now, the semi-existant distinction between header / day
14577         fonts was removed, but, with Pango, could actually
14578         be made functional in a nice way.
14579         
14580         * gtk/testcalender: Move calender from examples into this
14581         directory as a test program. (We really need to restrcture
14582         testgtk into a whole directory full of tests for every
14583         widget or functionality group, separated into multiple .c
14584         files.)
14585
14586 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
14587
14588         * gtk/testgtk.c (file_exists): Fix stupid typo that
14589         was keeping RC file from being loaded.
14590
14591         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
14592         RC file font code.
14593
14594 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
14595
14596         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
14597         Add function to load a GdkFont from a PangoFontDescription.
14598
14599 2000-05-29  Tor Lillqvist  <tml@iki.fi>
14600
14601         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
14602         variable should be of type GdkEventPrivate.
14603
14604 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
14605
14606         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
14607         to have any widget for the label, use a GtkLabel widget
14608         to display the text. (Based partially on a patch from
14609         Anders Carlson.)
14610
14611         (Quite a bit of code reorganization - strip 90% of the
14612         guts out of gtkaspectframe and add a single virtual
14613         func to GtkFrameClass - compute_child_allocation.)
14614
14615 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
14616
14617         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
14618         (Removed clist->row_center_offset field because caching
14619         it wasn't saving time or code, added private function
14620         _gtk_clist_create_cell_layout()).
14621
14622 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
14623
14624         * gtk/gtkaccellabel.c: Pangoized.
14625
14626         * gtk/[hv]ruler.c: Pangoized
14627
14628 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
14629
14630         * gtk/gtkfilesel.c (gtk_file_selection_init):
14631         Use gtk_clist_set_column_auto_resize() to remove need
14632         need for manual column width computations.
14633
14634 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
14635
14636         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
14637         ensuring Pango correctness, and considerably simplifying the
14638         code.
14639         
14640         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
14641
14642         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
14643         getting of numbers of lines.
14644
14645         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
14646         to the actual requested width of the lable, not to the wrap
14647         width we set.
14648
14649         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
14650
14651         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
14652           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
14653
14654         * gtk/gtktextview.c: Fix structure inheritance.
14655
14656         * gtk/gtkprogressbar.c: Pangoize.
14657
14658 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
14659
14660         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
14661         in a function.
14662
14663         * gtk/gtktextlayout.c (find_display_line_above): Fixed
14664         bug with computing line tops.
14665
14666         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
14667
14668 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14669
14670         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
14671         and y_offset coordinates to do what we need now. (The offset between
14672         buffer and layout coordinates has been reintroduced, but is a 
14673         bit different than before.)
14674
14675         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
14676         handle the adjustments ourselves, and scroll as necessary using
14677         the new gdk_window_scroll().
14678         
14679         The advantage of this is that when we are incrementally revalidating,
14680         we are essentially rearranging things around the visible portion
14681         of the screen. With the old setup, the visible portion of the
14682         screen was moved around in the layout, so scrolling and redrawing
14683         to track that caused jumping of the display. Since we now
14684         control the scrolling ourselves, we can suppress this and
14685         only redraw when things actually change.
14686
14687 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
14688
14689         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
14690         the region not just redisplay it after-all, since we store the
14691         cursors in the LineDisplay. (Ugly interactions here between
14692         GtkLayout and GtkTextBTree here.)
14693         
14694         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
14695
14696 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
14697
14698         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
14699         Added function to scroll contents of a window while keeping the
14700         window constant. Works by XCopyArea or guffaw-scrolling depending
14701         on the details of how the window is set up. (guffaw-scrolling
14702         still needs to be filled in.)
14703
14704 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
14705
14706         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
14707         move the debugging that was tied to a global variable
14708         to that.
14709
14710         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
14711
14712         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
14713         validated flag, in line data instead of setting height/width to
14714         -1. This allows us to perform operations with partially invalid
14715         buffer (using the old size for invalid lines) and thus to do
14716         incremental vaidation. Keep height/width aggregates up to date
14717         when deleting text and rebalancing the tree.
14718
14719         * gtk/gtktextbtree.[ch]: Add functions validate a line
14720         (gtk_text_btree_validate_line), and to validate up
14721         to a number of pixels (gtk_text_btree_validate).
14722
14723         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14724         that indicates that something is changed and a revalidation
14725         pass is needed. Change ::need_repaint to ::changed, and
14726         make it take old and new yranges instead of a rectangle.
14727
14728         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14729         the line_data_destroy() function from 
14730         gtk_text_btree_add_view() to a virtual function in 
14731         GtkTextLayout
14732
14733         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14734         since we are handling partial repaints in a different fashion
14735         now.
14736
14737         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14738         of the selection instead of queueing a repaint on the
14739         entire widget.
14740
14741         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14742         get_selection_bounds() down to btree, make the function
14743         in buffer a wrapper around the btree function.
14744
14745         * gtk/gtktextlayout.[ch]: Add functions to check if the
14746         layout is valid and to recompute either a range of pixels
14747         aroudn a line or a certain total number of pixels.
14748
14749         * gtk/gtktextlayout.[ch]: Cache a single line display;
14750         now that we only redraw the needed portions, the hit rate
14751         for this cache is quite high.
14752         
14753         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14754         on the screen so that when re-laying-out the buffer, we can
14755         keep the same place. This requires connecting to ::value_changed
14756         on the adjustments
14757
14758         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14759         the buffer after we receive an ::invalidated signal.
14760         
14761 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14762
14763         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14764         to max of allocation and layout size, not just to the
14765         layout size.
14766
14767         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14768         Invalidate window so it gets redrawn properly.
14769
14770         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14771         to mean the entire window.
14772
14773         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14774         into public header.
14775
14776 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14777
14778         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14779         to get the name of a mark.
14780
14781         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14782         to find the paragraph from a y position.
14783
14784 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14785
14786         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14787         nodes have width/height >= 0, not > 0.
14788
14789 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14790
14791         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14792         Add a size_only flag, so when we only need the size, we don't create
14793         useless appearance attributes.
14794
14795         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14796         duplicate setting of font description.
14797
14798         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14799
14800 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14801
14802         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14803         EXTRA_DIST. It does not work well when the file that
14804         everything depends on is not in the tarball.
14805
14806 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14807
14808         * gtk/testgtk.c: Some hacks and fixes so that it basically
14809         works when not sitting in the GTK+ build tree.
14810
14811 2000-05-03  Havoc Pennington  <hp@redhat.com>
14812
14813         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14814         Properly determine the ordering of the tag root and the current
14815         line within the tree. Previous algorithm only worked if the tag
14816         root's immediate parent was the common root of both the current
14817         line and the tag root.
14818
14819 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14820
14821         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14822         alignment.
14823
14824         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14825         the widget text directional dynamically.
14826
14827         * gtk/gtktextview.[ch]: Added functions to get and set default
14828         wrap mode.
14829
14830 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14831
14832         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14833         in cursor location computation.
14834
14835 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14836
14837         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14838         vadjusment values properly when layout gets smaller.
14839
14840         * gtk/gtktextview.c (need_repaint_handler): Areas being
14841         passed in are far completely inaccurate, and sometimes
14842         too small, so, for now, just queue a redraw on the
14843         whole visible region.
14844
14845 2000-04-25  Havoc Pennington  <hp@redhat.com>
14846
14847         * gtk/gtktextbtree.c (summary_destroy): new function to 
14848         destroy tag summary nodes
14849         (gtk_text_line_next_could_contain_tag): this function was 
14850         totally broken if the line passed in wasn't below the tag
14851         root. Fix it.
14852         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14853         "wildcard" case, we have to do a linear scan. Blah.
14854         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14855         we have to do the linear scan
14856         (tag_removed_cb): When a tag is removed from the tag table, 
14857         remove the GtkTextTagInfo node from the btree.
14858         (gtk_text_btree_spew): Implement the spew function, for 
14859         our debugging pleasure.
14860
14861 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14862
14863         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14864         a problem with referring to the wrong buffer.
14865
14866         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14867
14868         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14869         font description to gtk_style_new() - otherwise things
14870         don't work without a .gtkrc file.
14871
14872         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14873         tags table if we create it ourself, too.
14874
14875         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14876         it was conflicting with XKB modifiers.
14877
14878         * gtk/gtktextview.[ch]: Add simple support for 
14879         GtkIMContext.
14880
14881 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14882
14883         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14884         with deletion from last commit.
14885
14886 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14887
14888         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14889         in the context from the current locale.
14890         
14891         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14892         context, not hardcoded value.
14893
14894         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14895         not logical.
14896
14897 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14898
14899         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14900         attributes - that doesn't handle partial-glyph selection
14901         properly. Instead use new pango_layout_line_get_x_ranges()
14902         functionality to draw the selection.
14903
14904         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14905         now properly handles out-of-range coordinates.
14906
14907         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14908
14909         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14910         public.
14911
14912         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14913         for paragraphs opposite to the base direction of the widget.
14914
14915         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14916
14917         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14918         causes Arabic words to reshape as you cursor through.
14919
14920         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14921         cursor position when moving vertically with the arrow keys and
14922         scrolling with page-up/page-down. (Arrow keys save only the X,
14923         scrolling saves both X and Y.)
14924
14925         This means you can line-up / line-down or page-up / page-down
14926         without losing your place, and also that moving vertically
14927         with the cursor keys keeps the same X position, not the same
14928         character count:
14929
14930         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14931         arrow keys move by display lines, not paragraphs.
14932
14933 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14934
14935         * gtk/gtklayout.c: Make sure that the bin window is at least
14936         as big as the allocation. (Should we also make sure that the
14937         bin window is big enough to completely cover widget->window?)
14938
14939         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14940         function to get the onscreen rectangle.
14941
14942         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14943         for offsets in window coordinates.
14944
14945 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14946
14947         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14948         confusion.
14949
14950         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14951         from the widget direction.
14952
14953         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14954         Add a "direction" attribute.
14955
14956         * gtk/gtktextview.c: global s/tkxt/text_view/.
14957
14958         * gtk/testtext.c: Added long block of text in Arabic, to test out
14959         the direction attributes. (Some problems with the shaping system
14960         for arabic become obvious - like the fact the cursor splits words
14961         into unjoined pieces.)
14962
14963 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14964
14965         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14966
14967         * gtk/gtktextlayout.c: Fix up alignment.
14968
14969         * gtk/testtext.c: Add some tests for centering, wrapping.
14970
14971 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14972
14973         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14974         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14975         If we wrote GTK+-specific layout-render function this could just replace
14976         the draw_layout() operation in the vtable.
14977
14978         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14979         pango_layout_get_cursor_pos() and use that function.
14980
14981         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14982         is a non-static symbol.
14983
14984         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14985         with gtk_text_btree_find_line_by_y()
14986
14987         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14988         renderer that handles GtkTextAppearance attributes.
14989
14990         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14991
14992           - Move the values in the style that don't affect geometry into a
14993             GtkTextAppearance structure.
14994           - Change underline to take a PangoUnderline and "font" a string
14995             representation of a font description
14996           - Add a "font_desc" attribute which takes a FontDescription structure.
14997
14998         * gtk/gtktextlayout.[ch]:
14999
15000           - Get rid of the display-line list per each line. Instead, we
15001             generate, on demand, a GtkTextLineDisplay structure which]
15002             contains a PangoLayout * and other necesary information
15003             (offsets, cursor locations) for displaying a paragraph.
15004           - Get rid of the code to wrap lines, create display chunks,
15005             etc. Instead, we just go through a paragraph and convert
15006             it into the necessary inputs to a PangoLayout.
15007           - Implement a new attribute type, GtkTextAttrAppearance. This
15008             holds a GtkTextAppearance, and is used to pass colors, 
15009             stipple, etc, through from the layout to the display without
15010             having to use lots and lots of individual attributes.
15011           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
15012             in terms of PangoLayout functions.
15013         
15014         * gtk/gtktextview.c: 
15015          
15016           - Handle passing the necessary PangoContext to the layout
15017           - Some fixups in painting to deal with the automatic backing store
15018             and offsetting of GTK+-1.4
15019           - Add a style_set handler so that the default style reacts
15020             properly to theme changes.
15021         
15022         * gtk/gtktext?*.[ch]: Random code-style fixes.
15023
15024         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
15025
15026 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
15027
15028         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
15029         in original form preparatory to Pango-ization and gdkimcontext-ization.
15030
15031 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
15032
15033         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
15034         so that we can derive from gtkimcontext in language bindings properly.
15035
15036 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
15037
15038         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
15039         Add a compose table including (almost) all the compose combinations
15040         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
15041         data in the XIM implementation.
15042
15043         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
15044         Moved functions to convert keyvalues from and to unicode here from
15045         the win32 port and made them public.
15046
15047 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15048
15049         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
15050
15051 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
15052
15053         * gtk/gtkimcontext.[ch]: Base class for new input context system
15054
15055         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
15056         the real input context implementation to be loaded from modules
15057         and switched on the fly.
15058
15059         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
15060         context that just does direct keysymbol => unicode translation.
15061
15062         * gtk/gtkentry.[ch]: Start switching editing over to using
15063         GtkInputContext. (No handling of preedit yet.)
15064
15065 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
15066
15067         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
15068         many substitutions. (klass should not be subsituted.)
15069
15070 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
15071
15072         * configure.in: Add checks for Pango
15073
15074         * configure.in docs/Makefile.am: Add test for sgml2html
15075         and allow 'make dist' without building html, but print out
15076         warnings in that case. (For making snapshots)
15077
15078         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
15079         Add Pango libraries and C flags
15080
15081         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15082         Add function (gdk_draw_layout) to draw a pango layout.
15083
15084         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
15085         for getting Pango contexts for GDK.
15086
15087         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
15088
15089         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
15090         editing.
15091
15092         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
15093         keysym => unicode translations. More languages can be added
15094         here, but real input-method support is needed.
15095
15096         * docs/Changes-1.4.txt: Added note about entry behavior.
15097         
15098         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
15099         to set the reading direction for a widget and the global direction.
15100         Add test which allows toggling the global direction. Two private
15101         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
15102
15103         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
15104           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
15105
15106         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
15107
15108         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
15109         underlining now handled by Pango.
15110
15111         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
15112         to RCStyle and Style. (Having both this and the old font name and GdkFont 
15113         is temporary.)
15114
15115         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
15116         convenience functions for creating contexts and layouts for widgets.
15117
15118         * gtk/testgtk.c: Enhance label tests with multilingual labels.
15119
15120 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
15121
15122         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
15123         titles to be active, even if they aren't visible.
15124         (gtk_clist_column_titles_passive):  Ditto.
15125
15126 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
15127
15128         * gtkmenu.c:
15129         * gtkmenu.h:
15130         * gtktypeutils.h: Spelling/grammar fixes in comments.
15131
15132 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
15133
15134         * gdk/nanox/*.h: add missing header files.
15135
15136 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
15137
15138         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
15139         send_event to TRUE.
15140         (gtk_drawing_area_size): queue a resize.
15141
15142 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
15143
15144         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
15145         the handlers, also invalidate them. bug nailed down by Karl Nelson
15146         <kenelson@ece.ucdavis.edu>.
15147
15148 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
15149
15150         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
15151         "(nil)" foundries, patch from Grigorios Magklis.
15152
15153         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
15154         on non-available fonts, based on a patch by Grigorios Magklis
15155         <maglis@cs.rochester.edu>.
15156
15157 2000-05-18  Elliot Lee  <sopwith@redhat.com>
15158
15159         * gdk/x11/gdkregion-generic.c: If a region does not have any
15160         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
15161         instead of GDK_OVERLAP_RECTANGLE_IN.
15162
15163 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
15164
15165         * gtk/gtklayout.c (gtk_layout_map): Remove references to
15166         OFFSCREEN, as it is no longer necessary.
15167
15168 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
15169
15170         * gtk/gtkcolorsel.c: Patch from David Santiago
15171         <mrcooger@cyberverse.com> to change things so that the 
15172         indicator of the active palette entry is done independently,
15173         not via the focus, since it should always be visible.
15174
15175 2000-05-17  Tor Lillqvist  <tml@iki.fi>
15176
15177         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
15178         refcount leaks as in the X11 backend.
15179
15180         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
15181         cosmetics.
15182
15183         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
15184         backend. Add _gdk_windowing_window_destroy().
15185
15186         * gtk/gtkcolorsel.c: Include correct backend-specific header.
15187         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
15188         either, but these probably do exist on nanox?)
15189         
15190         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
15191         which isn't necessarily defined by <math.h>.
15192
15193         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
15194         ancestry past GtkObject.
15195
15196         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
15197         from DLL on Win32.
15198
15199         * gtk/gtk.def: Update corresponding to recent changes.
15200
15201         * gtk/makefile.{cygwin,msc}: Updates.
15202
15203 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
15204
15205         * docs/Changes-1.4.txt: A bit of editing.
15206
15207         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
15208         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
15209         to clear the update area for the window, and clear it
15210         when hiding a window.
15211
15212         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
15213         if window destroyed.
15214
15215         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
15216
15217         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
15218         gdk_window_destroy() to the generic code, since there was a lot of 
15219         window-system-independent logic it in. Add a function:
15220         
15221          _gdk_window_destroy() 
15222
15223         to the internal API to destroy a window without unreferencing it.
15224         Add a function:
15225
15226          _gdk_windowing_window_destroy()
15227
15228         That does the windowing-system-dependent part of destroying 
15229         the window.
15230
15231 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
15232
15233         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
15234
15235 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
15236
15237         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
15238         Make gtk_widget_shape_combine_mask() keep a reference count on
15239         the pixmap since it keeps it around.
15240
15241 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
15242
15243         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
15244         leak.
15245
15246         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
15247         leak with event filters.
15248
15249 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
15250
15251         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
15252         signal handlers with the right data arguments. (Fixes
15253         some warnings when a widget was repeatedly set as a drag
15254         destination.)
15255
15256         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
15257         window so we can avoid avoid setting the DND properties on the
15258         toplevel window repeatedly.
15259
15260 2000-05-13  Tor Lillqvist  <tml@iki.fi>
15261
15262         * gdk/win32/gdkwin32.h: Define more message types missing from
15263         mingw headers.
15264
15265         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
15266         call gdk_window_destroy_notify(). It was never called. This
15267         probably meant that the GdkWindow was never freed. Thanks Owen for
15268         noticing (!).
15269
15270         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
15271         window as destroyed before calling DestroyWindow(). DestroyWindow()
15272         causes a call to the window procedure (gdk_WindowProc), which
15273         calls gdk_event_translate(), which calls
15274         gdk_window_destroy_notify(), which gets confused unless the window
15275         is set as destroyed.
15276
15277         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
15278         this function to indicate it's win32 only. Put inside #ifdef
15279         G_ENABLE_DEBUG.
15280
15281         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
15282         debugging function. (gdk_event_translate:) Add a default branch
15283         that uses the above function to print debug messages with all
15284         Windows messages symbolically.
15285
15286         * gdk/win32/gdkprivate-win32.h: Declare it, and
15287         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
15288
15289 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
15290
15291         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
15292         public header file.
15293
15294 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
15295
15296         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
15297
15298         * gtk/gtktext.c: made the adjustments no-construct args, simply
15299         provide default adjustments.
15300         (gtk_text_destroy): release adjustments.
15301
15302         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
15303         adjustment argument non-construct.
15304
15305         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
15306         instead of in finalize.
15307         (gtk_progress_get_text_from_value): 
15308         (gtk_progress_get_current_text): 
15309         (gtk_progress_set_value): 
15310         (gtk_progress_get_percentage_from_value): 
15311         (gtk_progress_get_current_percentage): 
15312         (gtk_progress_set_percentage): 
15313         (gtk_progress_configure): ensure an adjustment is present.
15314
15315 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
15316
15317         * gtk/gtkcolorsel.[hc]:
15318         * gtk/gtkcolorseldialog.[hc]:
15319         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
15320         their parent implementation, use bit fields for boolean values, don't
15321         create unused widgets, usage of glib types, braces go on their own
15322         lines, function argument alignment, #include directives etc. etc. etc..
15323
15324         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
15325
15326 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
15327
15328         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
15329
15330         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
15331         of NULL.
15332
15333         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
15334         to freed data.
15335         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
15336
15337         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
15338         to NULL when the toplevel is getting destroyed.
15339         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
15340         (gtk_menu_destroy): 
15341         (gtk_menu_init): store the information of whether we have to
15342         readd the initial child ref_count during destruction in a new
15343         GtkMenu field needs_destruction_ref_count.
15344
15345         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
15346         here, those reading: learn from my mistake! ;)
15347         in order for set_?adjustment to support a default adjustemnt if
15348         invoked with an adjustment pointer of NULL, the code read (pseudo):
15349         if (v->adjustment) unref (v->adjustment);
15350         if (!adjustment) adjustment = adjustment_new ();
15351         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
15352         now imagine the first unref to actually free the old adjustment and
15353         adjustment_new() creating a new adjustment from the very same memory
15354         portion. here, the latter comparision will unintendedly fail, and
15355         all hell breaks loose.
15356         (gtk_viewport_set_hadjustment):
15357         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
15358         after unreferencing it.
15359
15360         * gtk/gtkcontainer.[hc]: removed toplevel registration
15361         functions: gtk_container_register_toplevel(),
15362         gtk_container_unregister_toplevel() and
15363         gtk_container_get_toplevels() which had wrong semantics
15364         anyways: it didn't reference and copy the list.
15365
15366         * gtk/gtkwindow.c: we take over the container toplevel registration
15367         bussiness now. windows are registered across multiple destructions,
15368         untill they are finalized. the initial implicit reference count
15369         users are holding on windows is removed with the first destruction
15370         though.
15371         (gtk_window_init): ref & sink and set has_user_ref_count, got
15372         rid of gtk_container_register_toplevel() call. add window to
15373         toplevel_list.
15374         (gtk_window_destroy): unref the window if has_user_ref_count
15375         is still set, got rid of call to
15376         gtk_container_unregister_toplevel().
15377         (gtk_window_finalize): remove window from toplevel list.
15378         (gtk_window_list_toplevels): new function to return a newly
15379         created list with referenced toplevels.
15380         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
15381
15382         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
15383         adjustment a non-construct arg.
15384         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
15385         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
15386         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
15387
15388         * gtk/gtkrange.c: added some realized checks.
15389         (gtk_range_destroy): get rid of the h/v adjustments in the
15390         destroy handler instead of finalize. remove timer.
15391         (gtk_range_get_adjustment): demand create adjustment.
15392
15393         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
15394         we simply create them on demand now and get rid of them in
15395         the destroy handler.
15396         (gtk_viewport_destroy): get rid of the h/v adjustments in the
15397         destroy handler instead of finalize.
15398         (gtk_viewport_get_hadjustment): 
15399         (gtk_viewport_get_vadjustment): 
15400         (gtk_viewport_size_allocate): demand create h/v adjustment
15401         if required.
15402
15403         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
15404         gtk_widget_real_destroy () functionality.
15405         (gtk_widget_real_destroy): reinitialize with a new style, instead
15406         of setting widget->style to NULL.
15407
15408 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
15409
15410         * gtk/gtkcalendar.c:
15411         * gtk/gtkbutton.c: ported _get_type() implementation over to
15412         GType, either to preserve memchunks allocation facilities,
15413         or because Gtk+ 1.0 GtkTypeInfo was still being used.
15414
15415         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
15416         over. prepare for ::destroy to be emitted multiple times.
15417         removed reference tracer magic. chain into GObjectClass.shutdown()
15418         to emit ::destroy signal.
15419
15420         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
15421         fundamental.
15422
15423         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
15424         cludge.
15425
15426         * gtk/gtksocket.c:
15427         * gtk/gtkplug.c:
15428         * gtk/gtklayout.c:
15429         * gtk/gtklabel.c:
15430         * gtk/gtkargcollector.c:
15431         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
15432         not being a fundamental anymore, and to work with the new
15433         type system (nuked fundamental type varargs clutter).
15434
15435         * gtk/*.c: install finalize handlers in the GObjectClass
15436         part of the class structure.
15437         changed direct GTK_OBJECT()->klass accesses to
15438         GTK_*_GET_CLASS().
15439         changed direct object_class->type accesses to GTK_CLASS_TYPE().
15440
15441         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
15442         GType. made most of the GTK_*() type macros and Gtk* typedefs
15443         simple wrappers around macros and types provided by GType.
15444         most notably, a significant portion of the old API vanished:
15445         GTK_TYPE_MAKE(),
15446         GTK_TYPE_SEQNO(),
15447         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
15448         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
15449         GTK_TYPE_ARGS,
15450         GTK_TYPE_CALLBACK,
15451         GTK_TYPE_C_CALLBACK,
15452         GTK_TYPE_FOREIGN,
15453         GtkTypeQuery,
15454         gtk_type_query(),
15455         gtk_type_set_varargs_type(),
15456         gtk_type_get_varargs_type(),
15457         gtk_type_check_object_cast(),
15458         gtk_type_check_class_cast(),
15459         gtk_type_describe_tree(),
15460         gtk_type_describe_heritage(),
15461         gtk_type_free(),
15462         gtk_type_children_types(),
15463         gtk_type_set_chunk_alloc(),
15464         gtk_type_register_enum(),
15465         gtk_type_register_flags(),
15466         gtk_type_parent_class().
15467         replacements, where available are described in ../docs/Changes-1.4.txt.
15468         implemented compatibility functions for the remaining API.
15469
15470         * configure.in: depend on glib 1.3.1, use gobject module.
15471
15472 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15473
15474         * TODO.xml: Various updates to current status.
15475
15476 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15477
15478         * gtk.m4: Print out version when test succeeds.
15479
15480 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15481
15482         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15483         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15484         
15485         (Original triangle color selector from Simon Budig
15486         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15487         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15488         Santiago <mrcooger@cyberverse.com>)
15489
15490         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15491         out into a separate widget.
15492
15493         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15494         and opacity controls.
15495
15496 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15497
15498         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15499         snuck in prematurely.
15500
15501 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15502
15503         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15504         had deleted a ! operator by mistake, which caused
15505         GDK_SELECTION_CLEAR events never to be generated, which caused
15506         only the first copy to the clipboard from an gtkeditable to
15507         actually cause a copy to the Windows clipboard.
15508
15509 2000-05-06  Tor Lillqvist  <tml@iki.fi>
15510
15511         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
15512         compilation, too. Current mingw gcc distributions include the
15513         necessary headers. Also the necessary IIDs are now in mingw
15514         headers/libraries, and own definitions unnecessary.
15515
15516         More hacking on OLE2 DND, still doesn't work though, and thus
15517         ifdeffed out.
15518
15519         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
15520         here, too.
15521
15522 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
15523
15524         * gdk/nanox/*: nano-X port work in progress.
15525         * gdk/simple.c: simple test for Gdk.
15526         * README.nanox: notes about the port: read this first!
15527         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
15528         with nano-X.
15529
15530 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
15531
15532         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
15533         gdk_window_clear() into common code, implement in terms of
15534         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
15535         not redirected to the backing rectangle.
15536
15537 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15538
15539         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15540         EXTRA_DIST. It does not work well when the file that
15541         everything depends on is not in the tarball.
15542
15543 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
15544
15545         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
15546         with recursion where process_updates() is called from
15547         an expose handler. (GtkTextView is highly broken in
15548         doing this, but it should work, so it is a nice test
15549         case.)
15550
15551 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15552
15553         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
15554         handle the case where updates are queued during processing of
15555         updates.
15556
15557 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15558
15559         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
15560         window is on gdk_display - use that instead of segfaulting.
15561
15562 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
15563
15564         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
15565         broken and require an empty arg, give it to them.
15566
15567 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
15568
15569         * gtk/gtklabel.h: indentation fixes.
15570
15571 2000-05-02  Tor Lillqvist  <tml@iki.fi>
15572
15573         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
15574         draw too narrow or too low arcs, they seem to fail, at least with
15575         some display drivers.
15576
15577         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
15578
15579         Large changes to the Win32 backend, partially made necessary by
15580         the changes to the backend-independent internal
15581         structures. Attempts to implement similar backing store stuff as
15582         on X11. The current (CVS) version of the Win32 backend is *not* as
15583         stable as it was before the no-flicker branch was merged. A
15584         zipfile with that version is available from
15585         http://www.gimp.org/win32/. That should be use by "production"
15586         code until this CVS version is usable. (But note, the Win32
15587         backend has never been claimed to be "production quality".)
15588
15589         * README.win32: Add the above comment about versions.
15590
15591         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
15592
15593         * gdk/gdk.def: Update.
15594
15595         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
15596         presumably be replaced by some more better mechanism as 1.4 gets
15597         closer to release shape.
15598
15599         * gdk/makefile.{cygwin,msc}: Update.
15600
15601         * gdk/win32/*.c: Correct inclusions of the backend-specific and
15602         internal headers. Change code according to changes in these. Use
15603         gdk_drawable_*, not gdk_window_* where necessary.
15604
15605         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
15606         our old DND.
15607
15608         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
15609         to interpret single characters as UTF-8. Thanks to Hans Breuer.
15610         Use correct function name in warning messages.
15611
15612         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
15613         GSourceFuncs gdk_event_prepare and gdk_event_check.
15614         (gdk_event_get_graphics_expose): Do implement, use
15615         PeekMessage. Thanks to Hans Breuer.
15616         (event_mask_string): Debugging function to print an GdkEventMask.
15617         (gdk_pointer_grab): Use it.
15618
15619         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
15620         (old) book I used claimed was Hangul actually is CJK Unified
15621         Ideographs Extension A. Also, Hangul Syllables were missing.
15622         Improve logging.
15623
15624         * gdk/win32/gdkgc-win32.c: Largish changes.
15625
15626         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
15627         g_win32_getlocale() from GLib, and not setlocale() to get current
15628         locale name.
15629
15630         * gdk/win32/gdkprivate-win32.h
15631         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
15632         gdkwin32.h, similarily as in the X11 backend.
15633
15634         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
15635         assignment was used instead of equals in if test. Thanks to Hans
15636         Breuer.
15637
15638         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
15639         the X11 version.
15640
15641         * gdk/win32/makefile.{cygwin,msc}
15642         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
15643         path to the Win32 headers that works also with the mingw compiler.
15644
15645         * gtk/gtkstyle.c: Include <string.h>.
15646
15647 2000-04-26  Havoc Pennington  <hp@redhat.com>
15648
15649         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
15650         replacing the broken gtk_label_get ()
15651
15652 2000-04-15  Havoc Pennington  <hp@pobox.com>
15653
15654         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
15655         this keeps scanner scripts from getting confused.
15656
15657         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
15658         data, rather than void
15659
15660 2000-04-15  Tor Lillqvist  <tml@iki.fi>
15661
15662         * gtk/gtkclist.c (gtk_clist_motion)
15663         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
15664         with is_hint FALSE, get x and y from the event. They used to be
15665         used uninitialised. The Win32 backend never sends motion events
15666         marked as hints. This for instance fixes the annoying file and
15667         font selector behaviour in the Win32 version.
15668
15669 2000-04-14  Tor Lillqvist  <tml@iki.fi>
15670
15671         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
15672         gtk_private_n_signals variables, they are used by some software,
15673         sigh.
15674
15675         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
15676         installation directory from the Registry, where the installer
15677         should have put it.
15678
15679 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
15680
15681         * gdk/x11/Makefile.am: Fix problem with installation directory for
15682         gdkx.h
15683
15684         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
15685         <mrcooger@cyberverse.com> so that when selecting menus with the
15686         mouse, the first item will not be selected, but when selecting
15687         with an accelerator, or navigating left-right on a menubar with
15688         the menus popped up, the first item will be selected.
15689
15690 2000-04-05  Dan Damian  <dand@dnttm.ro>
15691
15692         * configure.in: Added "ro" to ALL_LINGUAS.
15693
15694 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
15695
15696         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
15697         indentation.
15698
15699         * Makefile.am (EXTRA_DIST): Fix typo.
15700
15701         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
15702         to catch gdkconfig.h
15703
15704         * gtk/gtkitemfactory.c: Added FIXME.
15705
15706 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
15707
15708         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
15709         s/return_if_fail/return_val_if_fail/g and add a return value.
15710
15711 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15712
15713         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
15714         merge slipup.
15715
15716         * gdk/gdkinput.h: Fix missing line from merge.
15717
15718 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15719
15720         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15721         instead of gdkprivate.h.
15722
15723 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15724
15725         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15726         parent class to correctly be GtkDialogClass.
15727
15728 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15729
15730         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15731         toplevel windows and their immediate children by their parents,
15732         since the size of toplevel windows is out of our immediate
15733         control and we don't get any real benefit from trying to track
15734         this size for clipping.
15735
15736         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15737         for input_only windows.
15738
15739         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15740         to fix some hacks and make sure that we don't try to set the
15741         background of input only windows.
15742
15743 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15744
15745         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15746         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15747         stuff that we've traditionally exposed.
15748
15749         * gdk/**.c: Use gdkinternals.h where appropriate.
15750
15751         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15752         not include gdkprivate-x11.h, move all stuff of conceivable public
15753         interest into gdkx.h; keep all really private stuff in
15754         uninstalled header gdkprivate-x11.h.
15755
15756         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15757         image->image_put on windows through a new function _gdk_window_draw_image()
15758         to allow us to do backing store for images. (Sort of ugly)
15759
15760         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15761         contexts locally so that we can offset them properly when drawing 
15762         onto backing pixmaps.
15763
15764         * gdk/gdkinput.h: Reindented
15765
15766         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15767         pixmap or color for the window, so we can properly initialize
15768         our double-buffer pixmaps, and also so that we temporarily set
15769         a background of None while scrolling.
15770
15771         * gdk/gdkregion.h: Revise region boolean operators to have an
15772         interface that is actually convenient - switch from creating new
15773         regions on every op, to "methods" that modify existing regions
15774         (A = A OP B). 3 argument forms which allow dest == src, would also
15775         be possible, but the current interfaces seem to map nicely
15776         onto what needs to be done. (There is quite a lot of region
15777         code in GDK now.)
15778
15779         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15780         operator.
15781
15782         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15783         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15784         to 32 bit coordinates, modify it to be mostly GTK+ style
15785         and to have interfaces that match gdkregion.h.
15786
15787         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15788         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15789         create a backing pixmap and redirect all drawing to
15790         that backing pixmap until a matching gdk_window_end_paint().
15791
15792         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15793         Create a special drawable class for GtkWindow's that 
15794         redirects the drawing to the backing pixmap as necessary
15795         and then calls the real operations in _gdk_windowing_window_class.
15796
15797         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15798         Store invalid region for each window. Generate expose events for invalid
15799         region in an idle. This replaces both the expose compression
15800         and the redrawing queuing in GTK+. It is both more efficient and
15801         simpler than either one individually and far more so then the
15802         combination.
15803
15804         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15805         Emulate 32 bit coordinates for windows with 16 bit coordinates
15806         by offsetting drawing, guffaw scrolling techniques and
15807         mapping/unmapping child windows as necessary.
15808
15809         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15810         where, when invalid regions are processed, the region is stored,
15811         and if expose events come in that are detectably duplicate
15812         the processed exposes (by comparison of event serial numbers),
15813         the stored region is subtracted out of those exposes.
15814
15815         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15816         regions newly exposed when scrolling or resizing windows.
15817         This, combined with forcing processesing of queued invalidated
15818         regions, gives nice flicker-free scrolling.
15819
15820         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15821         invalidated regions after every scroll.
15822
15823         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15824         emulation in GDK. Its, for all practical purposes just a
15825         GtkViewport/GtkFixed hybrid now.
15826
15827         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15828         (16-bit) structures as necessary instead of just casting.
15829
15830         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15831         in terms of the structures from gdkregion-generic.c, using appropriate
15832         offsets from GDK to X11 coordinates. Cache clip mask and
15833         origin and ts origin locally and only flush to the server
15834         when drawing, to avoid constantly setting and resetting these
15835         values when offsetting GC's for scrolling and backing pixmaps.
15836
15837         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15838
15839         * gtk/gtkcontainer.c: Call process_all_updates at end
15840         of resizing to reduce flicker. (Avoids having redraw
15841         lag arbitrarily behind resize under some circumstances)
15842
15843         * gtk/gtkentry.c: Remove old backing store code, and simply take
15844         advantage of the new backing store capabilities of GDK.
15845
15846         * gtk/gtkmain.c: Simple implementation of widget backing
15847         store - simply push a paint while handling each expose.
15848         (Should really be configurable widget for widget.)
15849         
15850         * gtk/gtkwidget.c: Remove all the old complicated redraw
15851         code, and simply invalidate the GDK windows from
15852         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15853         debugged complexity ... gone to the winds.)
15854
15855         Remove all the code for suppressing expose events while
15856         resizes are pending; this isn't needed since the invalid
15857         areas won't be processed until after the resizes are
15858         processed, since they are in a lower priority idle.
15859
15860 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15861
15862         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15863         and height of dest rectangle for non-intersecting rectangles.
15864
15865 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15866
15867         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15868         for GdkRectangle.
15869
15870 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15871
15872         * gdk/gdk{events,image,private,types,window}.h
15873          gdk/x11/gdkinputprivate.h: Change all coordinates
15874          from int16 to int. Also, Change width and height from
15875          unsigned to signed to avoid all the stupid C 
15876          signedness bugs.
15877
15878 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15879
15880         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15881         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15882         Add some more detailed checking.
15883
15884         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15885         New function to retrieve the depth of a drawable.
15886
15887         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15888         field, reorder fields to save memory. 
15889
15890 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15891
15892         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15893         of the background image instead of scaling the background down to
15894         a line.
15895
15896         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15897         which temporarily set slider to wrong size.
15898
15899         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15900         queue_clear().
15901
15902 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15903
15904 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15905
15906         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15907
15908 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15909
15910         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15911         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15912
15913         * gdk/win32/gdkfont-win32.c
15914         * gdk/win32/gdkproperty-win32.c
15915         * gdk/win32/gdkselection-win32.c
15916         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15917         now declared such.
15918
15919 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15920
15921         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15922
15923 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15924
15925         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15926         is called without trapping X errors.
15927
15928 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15929
15930         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15931         way into the fontset lists.
15932
15933 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15934
15935         * gtk/gtkthemes.h: add extern "C" scope.
15936
15937 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15938
15939         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15940         to make appends to the list constant. (gtk-guy-990901-0.patch)
15941
15942 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15943
15944         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15945         for the typename hash table.
15946
15947 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15948
15949         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15950         to make sure we never divide by zero. 
15951         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15952
15953 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15954
15955         * gtk/gtkfontsel.c: Apply patch from
15956         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15957         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15958
15959         Also, some cleanups in atom handling.
15960
15961 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15962
15963         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15964         not GtkWidget.
15965
15966 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15967
15968         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15969         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15970         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15971         more guint wrap-around bugs before going to bed.
15972
15973 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15974
15975         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15976         guint wrap arounds in allocation.width.
15977
15978         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15979         process untill we fit the allocation given.
15980
15981 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15982
15983         * gtk/gtkwidget.c:
15984         (gtk_widget_unrealize): guard widget access with ref/unref
15985         around signal emission.
15986         (gtk_widget_hide): same here, but also check its destroyed
15987         state before queueing a resize.
15988
15989 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15990
15991         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15992         of gtk_default_insensitive_bg as insensitive base color.
15993
15994         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15995         to the widget's state.
15996         (gtk_text_realize): same here.
15997         (gtk_text_state_changed): same here.
15998         (draw_bg_rect): compare background color against base[] from
15999         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
16000
16001 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
16002
16003         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
16004         grabs are active, unless a delete event is send to the toplevel
16005         of the currently grab holding widget.
16006
16007 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
16008
16009         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
16010         debugging g_print's.
16011
16012 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
16013
16014         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
16015         ever make the scrolled-window requisition ever depend on the 
16016         visibility state of the scrollbars for the AUTOMATIC policy. 
16017         This breaks the GTK+ requisition model, and causes loops.
16018
16019 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
16020
16021         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
16022         the default font to avoid problems with XFree86-4.0 where the
16023         default charset is iso10646-1, not iso8859-1.
16024
16025 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
16026
16027         * acinclude.m4
16028         * config.guess
16029         * config.sub
16030         * ltconfig
16031         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
16032
16033         * gtk/Makefile.am: minor cosmetic consistency tweak
16034
16035 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
16036
16037         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
16038         the activate_time to 0, so that we handle a quick
16039         press/release press/release properly and don't suppress
16040         the second release. (Red Hat bug #7545)
16041
16042 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
16043
16044         * gtk/gtkctree.c (row_delete):
16045         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
16046         bugs with destruction notifier, *always* update internal
16047         structures *before* calling user code.
16048
16049 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
16050
16051         A few more fixes for bug #5487, #2051, #2677.
16052         * gtk/gtkclist.c : 
16053         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
16054         not GDK_BUTTON_PRESS.
16055         (resync_selection): resync only if selection_mode is
16056         GTK_SELECTION_EXTENDED
16057         * gtk/gtkctree.c (resync_selection): same here
16058
16059 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
16060
16061         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
16062         gdk_drag_get_selection() and gtk_menu_detach().
16063
16064         [ From Jeroen Ruigrok/Asmodai ]
16065
16066 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
16067
16068         * gtk/gtknotebook.c (gtk_notebook_size_request): 
16069         page->tab_label can be NULL.
16070
16071 2000-01-25  Havoc Pennington  <hp@pobox.com>
16072         
16073         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
16074         arg is boolean
16075
16076         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
16077
16078         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
16079
16080         * gdk/gdkproperty.c (gdk_property_get): return boolean
16081
16082         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
16083
16084         * gdk/gdkim.c (gdk_im_ready): return boolean
16085
16086         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
16087
16088         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
16089         glib clash, should fix glib)
16090
16091         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
16092         (gdk_get_show_events): return gboolean, and canonicalize 
16093         to TRUE/FALSE
16094
16095         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
16096         colormap is private
16097         (gdk_colors_alloc): gboolean whether to be contiguous
16098         (gdk_color_equal): return gboolean since we are a predicate
16099         and not a qsort() (this looks semi-wrong due to glib breakage,
16100         IMO glib should be fixed)
16101         
16102         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
16103         (gdk_get_use_xshm): return gboolean
16104         (gdk_pointer_is_grabbed): return gboolean
16105
16106         * gdk/gdk.h: Change prototypes to match all the above changes,
16107         and re-run egtk-format-protos as required.
16108
16109 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
16110
16111         * gtk/gtkctree.c (resync_selection): 
16112         * gtk/gtkclist.c (resync_selection):
16113
16114         Return immediately if clist->drag_pos < 0. This is a workaround
16115         for the corrupt state that the clist gets into when a
16116         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
16117
16118         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
16119         
16120         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
16121         variable from recent commit.
16122
16123 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
16124
16125         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
16126
16127 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
16128
16129         * gtk/Makefile.am: prefix all autogenerated source that get build in
16130         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
16131         in builddir. since we subsequently cd into srcdir for autogeneration,
16132         the paths have to be stripped from the target file names, thusly we
16133         use $(@F) as target names now.
16134         put a comment about configure.in's --disable-rebuilds option,
16135         which can be used for non-writable source directories, for development
16136         setups though, srcdir has to be *writable*.
16137
16138 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
16139
16140         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
16141           Finish the job of allowing event to be NULL.
16142           (Fixes bug #4283, reported by Chris Blizzard)
16143
16144         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
16145           things so that the cursor appears on screen, properly
16146           take into account INNER_BORDER.
16147           (Fixes bug #4754, reported by Antonio Campos)
16148
16149 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
16150
16151         * gtk/gtknotebook.c (gtk_notebook_map): Don't
16152           show the tab_label unless it itself is visible.
16153
16154           gtk/gtknotebook.c (gtk_notebook_size_request):
16155           Do a better job of making sure that the visibility
16156           of the tab label corresponds to whether it should
16157           be mapped or not.
16158
16159 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
16160
16161         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
16162           Use the requisition, not the allocation, since the
16163           allocation has not necessarily been computed yet.
16164           (Pointed out by Eugene Osintsev)
16165
16166 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
16167
16168         * gtk/gtkstyle.c (gtk_style_new): Dont' set
16169           style/base[GTK_STATE_INSENSITIVE] both to
16170           gtk_default_insensitive_bg!
16171           (Bug #2187, reported by Jonathan Blandford)
16172
16173         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
16174           Add Alt_L, Alt_R to list of invalid accelerators.
16175           (Bug #3736, reported by Vlad Harchev)
16176
16177 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
16178
16179         * gtk/gtkfilesel.c (open_ref_dir): Fix several
16180         bugs which occured after an attempt to open 
16181         invalid home directory left cmpl_state->reference_dir == NULL.
16182
16183          - completion on files in home directory didn't work
16184          - completion on an empty string caused  segfault
16185
16186          (Bug #3678, reported by Steve Ratcliffe)
16187
16188         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
16189         cut and paste error that was causing scales to
16190         be incorrectly positioned.
16191         (Bug #2956,
16192          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
16193
16194 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
16195
16196         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
16197         when checking for dcgettext, if we've found we needed
16198         it for dgettext.
16199 +
16200 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
16201
16202         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16203         queue_clear on NO_WINDOW widgets during a reparent,
16204         since at that point the window and widget heirarchies
16205         are out of sync. This stops crashing in some cases
16206         (the scrolled window reparent test, for instance), and
16207         _probably_ won't cause drawing errors.
16208
16209         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
16210         test do what it was supposed to do and be robust against
16211         window closings, etc. (Bug #2443)
16212
16213 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
16214
16215         * gtk/gtkentry.c: Fix return values on mouse events.
16216         (Bug #2686, Sky <seb_sky@yahoo.com>)
16217
16218         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
16219         (pointed out by George Lebl)
16220
16221         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
16222         (From Ettore Perazzoli  <ettore@helixcode.com>)
16223  
16224 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
16225
16226         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
16227         clicks between rows or outside calender area correctly.
16228         (Patch from Damon Chaplin)
16229
16230         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
16231         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
16232           Call destroy function when overwriting existing data. 
16233           (Pointed out by Damon Chaplin)
16234
16235 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
16236
16237         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
16238           which was causing problems on various systems with Xmu.
16239           This hasn't been needed for a very long time.
16240           (Fixes #1185 3167)
16241
16242 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
16243
16244         * gdk/gdki18n.h: Include <ctype.h> when defining
16245           gdk_isw* in terms of is* as a fallback.
16246           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
16247
16248 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
16249
16250         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
16251           realize the widget when it is size allocated!
16252           (old, old bug)
16253
16254         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
16255           Removed unused call to gdk_window_get_size() that
16256           showed up when the above was fixed.
16257
16258 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
16259
16260         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
16261           fix up widget->window when the widget is a
16262           NO_WINDOW container widget.
16263
16264 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
16265
16266         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
16267           to account for the fact that feof() does _not_ 
16268           return TRUE on errors, and thus avoid infinite loops
16269           when trying to use gdk_pixmap_create_from_xpm()
16270           on unreadable values.
16271
16272 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
16273
16274         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
16275
16276 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
16277
16278         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
16279           gdk_gc_set_dashes to take gint8 instead of gchar to
16280           make it clearer that it is _not_ a NULL terminated string.
16281
16282         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
16283           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
16284           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
16285           arguments.
16286
16287 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
16288
16289         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
16290         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
16291         background size relative to our allocation, guard against small
16292         allocations, we may have not yet been size allocated.
16293
16294 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
16295
16296         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
16297         not just version == 3. We implement all 3 + most of 4 - 
16298         (we don't support matching text/plain;charset=iso-8859-1
16299         to a dest that expects text/plain). We'll still advertise
16300         3 to be safe, but any client implementing version >= 3
16301         must interoperate with 3.
16302         
16303 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16304
16305         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
16306         background and gc members, add a warning in gtk_tooltips_set_color()
16307         indicating that this function is deprecated.
16308
16309 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
16310
16311         * docs/gtkfaq.sgml: FAQ Update:
16312           - Minor cleanups (Emmanuel, me)
16313           - New questions:
16314                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
16315                 How can I retrieve the text from a GtkMenuItem? (timj)
16316                 How do I validate/limit/filter the input to a GtkEntry? (me)
16317                 Memory does not seem to be released when I free the list
16318                         nodes I've allocated (timj)
16319
16320 2000-03-07  Tor Lillqvist  <tml@iki.fi>
16321
16322         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
16323         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
16324         for which it is no use to call GetLastError onWin9x.
16325         (gdk_other_api_failed) New function, for general error
16326         reporting without calling GetLastError.
16327         (gdk_win32_api_failed) OTOH, this function always calls
16328         GetLastError. (gdk_win32_last_error_string) Remove this function,
16329         GLib has the equivalent now.
16330
16331         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
16332         call them with function name, file name and line number in the
16333         arguments.
16334
16335         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
16336         functions.
16337         
16338         * gtk/gtk.def: Add some missing entry points.
16339
16340         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16341         gtk_paned_set_gutter_size, which don't exist any longer, as void.
16342         
16343         Fixes by Hans Breuer:
16344
16345         * gdk/makefile.msc: Update for debugging.
16346
16347         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
16348         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
16349         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
16350         in the dash_list.
16351
16352         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
16353         the x11 backend.
16354
16355         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
16356
16357         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
16358
16359 2000-03-04  Tor Lillqvist  <tml@iki.fi>
16360
16361         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
16362         just pixel value of background colour.
16363
16364         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
16365         containing code snippet previously duplicated in a couple of
16366         places.
16367         
16368         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
16369         gdk_colormap_color.
16370
16371         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
16372         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
16373         events for autorepeated Shift, Control and Alt keys. Use
16374         gdk_colormap_color.
16375
16376         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
16377         pointer is inside the window the cursor of which we are setting,
16378         call SetCursor immediately.
16379
16380         * gdk/win32/makefile.cygwin
16381         * gtk/makefile.cygwin: If we don't have the build number stamp
16382         file, use zero.
16383
16384         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16385         gtk_paned_set_gutter_size as empty.
16386
16387         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
16388         
16389 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
16390
16391         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
16392           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
16393           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
16394           docs/gtk_tut.sgml docs/gtk.texi TODO:
16395
16396           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
16397
16398 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
16399
16400         * gtk/gtkcalendar.c: Implement num_marked_dates,
16401           and don't emit mutiple day_selected signals on
16402           month_prev.
16403
16404 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
16405
16406         * docs/make-todo (lineno): let title and logo be configurable so
16407         that GNOME can use this script too.
16408
16409         * TODO.xml: added logourl and a title
16410
16411 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
16412
16413         * TODO.xml: Added some UI items, and an explanatory
16414         comment at the top of the file.
16415
16416 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
16417
16418         * TODO.xml: some updates, added abunch of new entries.
16419         a note for those fiddeling with this file, when done
16420         with it, invoke:
16421         $ ./docs/make-todo TODO.xml >/dev/null
16422         and correct output errors before comitting changes.
16423
16424 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
16425
16426         * TODO.xml: Added XML-structured TODO file.
16427         * docs/make-todo: python script to turn TODO.xml into
16428           pretty XML output. 
16429
16430 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
16431
16432         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
16433         the function to let it draw the seven dots, instead of the old,
16434         much maligned, method.
16435         (draw_dot): New function to draw a dot.
16436
16437         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
16438         to draw the handle inside the border width as opposed to outside.
16439         Use paint function instead of gdk_draw_point.
16440
16441         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
16442         to draw the handle inside the border width as opposed to outside.
16443         Use paint function instead of gdk_draw_point.
16444
16445         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
16446         Change indenting to be more GTK like.
16447
16448 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
16449
16450         * docs/gtk_tut.sgml: New section on GtkCalendar
16451         * examples/calendar: Update example code
16452
16453 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
16454
16455         * docs/gtkfaq.sgml: FAQ Update
16456
16457 2000-02-19  Anders Carlsson  <andersca@gnu.org>
16458
16459         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
16460         to prevent the scroll event to be propagated upwards.
16461
16462 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16463
16464         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16465         OwnerGrabButtonMask from button entries for
16466         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16467
16468         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16469         to the event mask (which will result in button/press release
16470         being added to the event mask on Unix) so scrolling works
16471         for layouts in scroll windows.
16472
16473         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16474
16475         Patch from Anders Carlsson  <andersca@gnu.org> to add
16476         a scroll event.
16477
16478         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16479         scrolling to the "Test Scrolling" part of testgtk.
16480  
16481         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16482  
16483         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16484         it against GDK_SCROLL.
16485  
16486         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16487         way of mouse wheel scrolling.
16488  
16489         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16490  
16491         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16492  
16493         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16494  
16495         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16496         gdk_event_mask_table.
16497  
16498         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16499         GdkEventScroll handler.
16500  
16501         * gdk/gdkevents.h: Added GdkEventScroll structure.
16502  
16503 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16504
16505         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
16506         and Anders Carlsson to change the Paned widgets so that they
16507         can be dragged from anywhere along the length. Also change
16508         the way that this is drawn to make this apparent.
16509
16510         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
16511         from George Lebl to check that option_menu->menu is present
16512         before getting history.
16513
16514 2000-02-14  Tor Lillqvist  <tml@iki.fi>
16515
16516         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
16517         before the assertion for non-NULL segment list.
16518
16519         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
16520         Seems that pattern brushes *must* be 8x8 pixels! At least on my
16521         machine, but it might be display driver dependent. Sigh, so make
16522         sure the stipple is that size. Does Windows suck or what?
16523
16524         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
16525         places.
16526
16527 2000-02-13  Havoc Pennington  <hp@pobox.com>
16528
16529         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
16530         refcount to 1
16531         (gdk_cursor_new): init refcount to 1
16532
16533         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
16534
16535 2000-02-13  Tor Lillqvist  <tml@iki.fi>
16536
16537         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
16538         so that we don't have to do unnecessary settings to the HDC.
16539
16540         * gdk/win32/gdkdrawable-win32.c
16541         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
16542         gdk_gc_predraw.
16543
16544         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
16545         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
16546         GDI paths, call WidenPath to get the outline of the stroken path,
16547         and then fill the outline (with the brush that was built from the
16548         stipple).
16549
16550         * gdk/win32/gdkgc-win32.c: Factor out common code from
16551         _gdk_win32_gc_new and gdk_win32_gc_set_values into
16552         gdk_win32_gc_values_to_win32values. Use correct colour for
16553         SetBkColor() (Until now the code actually used a random colour in
16554         the call to SetBkColor()... but that didn't show up as not many
16555         GDI APIs use the background colour. Pattern (opaque stippled)
16556         brushes do.)
16557
16558         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
16559         gdk_win32_api_failed): New functions for error logging.
16560
16561         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
16562         WIN32_API_FAILED to call them, passing function or file name and
16563         line number.
16564
16565         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
16566
16567         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
16568         GdkColor for foreground and background in GdkGCWin32Data.
16569
16570         * gdk/makefile.cygwin: Link in the resource object separately.
16571
16572         * gdk/win32/rc/gdk.rc
16573         * gtk/gtk.rc (New file)
16574         * gdk/win32/makefile.cygwin
16575         * gtk/makefile.cygwin: Update build number in DLLs automatically,
16576         as in GLib.
16577
16578 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
16579
16580         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
16581         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
16582         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
16583         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
16584         parameters given and cursor->ref_count. coding style fixups.
16585
16586         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16587         not GtkWidget.
16588         
16589         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
16590         fix up widget macros and add _GET_CLASS() variant.
16591         
16592         * gtk/*.c: some GtkType fixups.
16593
16594 2000-02-09  Tor Lillqvist  <tml@iki.fi>
16595
16596         * gdk/win32/gdkproperty-win32.c
16597         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
16598         were reversed.
16599
16600 2000-02-04  Tor Lillqvist  <tml@iki.fi>
16601
16602         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
16603         g_filename_to_utf8 to convert the font names Windows gives us from
16604         whatever is the default codepage to UTF-8.
16605         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
16606         in the other direction.
16607
16608         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
16609         error in debugging output.
16610
16611 2000-02-02  Tor Lillqvist  <tml@iki.fi>
16612
16613         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
16614         and height parameters to gdk_window_clear_area(). Not minus one.
16615
16616 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
16617
16618         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
16619         checks if the widget passed to gtk_drag_get_data() was not the
16620         dest widget.
16621
16622 2000-02-01  Tor Lillqvist  <tml@iki.fi>
16623
16624         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
16625         g_filename_from_utf8 functions (which were added a moment ago to
16626         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
16627         size buffers.
16628
16629         gtk_file_selection_get_filename returns the filename in the C
16630         runtime encoding. It calls g_filename_from_utf8, but copies the
16631         returned string to a static buffer, which is returned. I think
16632         this is better than returning the result from g_filename_from_utf8
16633         directly, which would mean all apps that use it would have to free
16634         the return value. Or should this function care about this issue at
16635         all? Maybe a new function with clearly defined semantics.
16636
16637         * gtk/gtkfilesel.h: Add comment about
16638         gtk_file_selection_get_filename returning the filename in the C
16639         runtime's encoding.
16640
16641         * README.win32
16642         * gdk/gdk.def
16643         * gdk/makefile.{cygwin,msc}
16644         * gtk/gtk.def: Updates.
16645
16646         * gdk/gdkcursor-win32.c: Initialise refcount.
16647
16648 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
16649
16650         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
16651
16652 2000-01-30  Havoc Pennington  <hp@pobox.com>
16653
16654         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
16655         destroy
16656
16657         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
16658
16659         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
16660         implemented in platform-specific code
16661
16662         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
16663
16664         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
16665         underscore in front
16666
16667         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
16668         put an underscore in front
16669
16670         * gdk/gdkcursor.c: new file, implements
16671         gdk_cursor_ref/gdk_cursor_unref
16672
16673         * gdk/gdkcursor.h: Refcount GdkCursor
16674
16675         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
16676
16677 2000-01-29  Tor Lillqvist  <tml@iki.fi>
16678
16679         * gdk/gdkwindow.h
16680         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
16681
16682 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16683
16684         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
16685         structures to properly inherit from GtkWidget not GtkBin.
16686
16687 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
16688
16689         * gtk+.spec.in: Added lib/gtk+/include/* to %files
16690         (bug #5178 - Peter Wainright)
16691         
16692         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
16693         so that it will be installed.
16694         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
16695
16696 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
16697
16698         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
16699         for the GtkStyleClass vtable const.
16700
16701         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
16702         take a const string argument like GtkTranslateFunc. This will
16703         require changes in use code.
16704
16705 2000-01-19  Tor Lillqvist  <tml@iki.fi>
16706
16707         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
16708         semantics (to mimic the X11 backend, which just calls XClearArea)
16709         is to check for zero width (and height), and in that case use the
16710         window's width minus x (height minus y). This fixes for instance
16711         some redraw problems with gtkclist, which were easily noticeable
16712         in the gtk file selection widget.
16713
16714         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
16715         windows.
16716
16717 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16718
16719         * configure.in
16720         * gdk/Makefile.am
16721         * gdk/x11/Makefile.am
16722         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16723         (bug #5177).
16724         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16725         out later.
16726
16727 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16728
16729         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16730         WM_MOVE for iconified or invisible windows. This fixes various
16731         problems when minimising windows. Thanks to Bernd Herd.
16732
16733 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16734
16735         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16736         backend's draw_lines method, not draw_points.
16737
16738 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16739
16740         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16741         before Owen's reorganisation: Don't have queued_events and
16742         queued_tail statics in this file, but use gdk_queued_events and
16743         gdk_queued_tail. This makes exposure event compression work again.
16744
16745         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16746         seem to be needed?
16747
16748 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16749
16750         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16751         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16752         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16753         doesn't do anything.
16754
16755         * gdk/gdk.def: Add gdk_xid_table_insert.
16756
16757         * gdk/win32/gdkprivate-win32.h
16758         * gdk/win32/gdkevents-win32.c
16759         * gdk/win32/gdkinput-win32.c
16760         
16761         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16762         extension_events field in the GdkWindowWin32Data struct. Use only
16763         the extension_events field in GdkWindowPrivate. Previously one was
16764         set, and the other one tested, which broke tablet
16765         functionality. Thanks to Keishi Suenaga for pointing this out.
16766
16767 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16768
16769         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16770         When handling a single character (text length == 1), don't handle
16771         it as if it was UTF-8.
16772
16773 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16774
16775         * Makefile.am: Distribute README.win32.
16776         
16777         * gdk/Makefile.am
16778         * gdk/win32/Makefile.am: Distribute Win32 files.
16779
16780         * gdk/makefile.msc: New file.
16781
16782         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16783         after label).
16784
16785         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16786         gdk_error_code as GDKVAR, as they are referred outside GDK.
16787
16788         * gdk/win32/makefile.msc: Update.
16789
16790         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16791         tweaks. Check only if at least one of those Unicode subrange bits
16792         we care for is set. If no code page bits are set, guess (wildly)
16793         based on the charset.
16794
16795         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16796
16797         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16798         non-NULL.
16799
16800         * gtk/gtkdnd.c
16801         * gtk/gtklayout.c
16802         * gtk/gtkplug.c
16803         * gtk/gtkselection.c
16804         * gtk/gtksocket.c
16805         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16806         appropriate. There must be a cleaner way to handle this?
16807
16808         * gtk/gtkrc.c: Must include windows.h on Win32.
16809
16810         * gtk/testgtk.c: No need to include gdkx.h.
16811
16812         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16813
16814 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16815
16816         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16817         the rbearing is set to the same as the width, but this should be
16818         fixed.
16819
16820 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16821
16822         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16823         function. If Windows doesn't tell us what Unicode subranges a font
16824         covers, guesstimate based on the codepages it covers. This will
16825         hopefully help those Windows versions or fonts that don't give us
16826         any useful Unicode subrange information with GetTextCharsetInfo.
16827         Call this function in gdk_font_load_internal.
16828
16829         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16830         minor changes.
16831
16832 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16833
16834         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16835         New function, long needed.
16836
16837 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16838
16839         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16840         only_if_exists argument of gdk_atom_intern to
16841         bool.
16842
16843 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16844
16845         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16846         Fix two copy&paste errors.
16847
16848         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16849         win32 has changed.
16850
16851         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16852         GdkWin32SingleFont struct.
16853
16854         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16855         subranges of loaded fonts. Clear font signature first, in case
16856         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16857         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16858
16859         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16860         Unoffset clip region.
16861
16862 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16863
16864         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16865         event->any.window before calling filter functions.
16866
16867 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16868
16869         * gtk/gtkgamma.h: Adapt cast macros to standard.
16870
16871 [ Merges from 1.2 ]
16872
16873 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16874
16875         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16876         If translation does not include a '/', use entire
16877         translation instead of crashing.
16878
16879 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16880
16881         * docs/gtk_tut.sgml:
16882         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16883
16884 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16885
16886         * gtk/gtkselection.c (gtk_target_list_remove): Use
16887         g_list_remove_link, not g_list_remove.
16888
16889         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16890         
16891 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16892
16893         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16894         statement upon unselection (how the heck did that slip in?).
16895
16896 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16897
16898         * gtk/gtktext.c (gtk_text_freeze): 
16899         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16900         in frozen state (and aparently crashes). patch provided by Anders
16901         Melchiorsen <and@kampsax.dtu.dk>.
16902
16903 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16904
16905         * fix insensitive default/focus widget activation,
16906         reported by Matt Goodall <mgg@isotek.co.uk>.
16907
16908         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16909         (gtk_window_activate_default):
16910         (gtk_window_activate_focus):
16911         return handled=FALSE for actiavtion of insensitive default
16912         widgets. return handled=TRUE for activation of insensitive
16913         focus widgets. don't activate in either case.
16914
16915 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16916
16917         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16918         and $glib_cflags to match library order and in the
16919         theory that an old version of GLib is more likely to
16920         be in the include directory for X then vice-versa.
16921         (Bug #2776)
16922
16923 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16924
16925         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16926         to determine the locale for fontsets, not LC_MESSAGES;
16927         the user may want English messages with a handling
16928         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16929         will still be broken) (Bug #2891)
16930
16931 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16932
16933         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16934
16935 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16936
16937         * gtk/gtkrc.ko: Changed the Korean default fontset.
16938
16939 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16940
16941         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16942         where when scrolling to the left or top double exposes
16943         were done, causing major slowdowns.
16944
16945 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16946
16947         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16948         names to lowercase and alphanumeric, before looking
16949         them up.
16950
16951         * gtk/Makefile.am: Install codeset variant gtkrc files
16952         with normalized names.
16953
16954 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16955
16956         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16957         popup menus when the menu is already visible, but its parent
16958         is still hidden, (happens after tornoff window got hidden).
16959
16960 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16961
16962         * gtk/Makefile.am (install-data-local): Fix
16963         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16964         deleted, causing error messages on install.
16965
16966 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16967
16968         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16969         the handle as well, since we now sometimes ignore
16970         exposes on the handle while resizing.
16971
16972 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16973
16974         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16975         extra g_free introduced in one of the last one or two 
16976         commits.
16977
16978 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16979
16980         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16981         consistent, put each style that a gtkrc.* file creates
16982         in a unique namespace, remove old files before installing.
16983
16984 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16985
16986         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16987         gtk_rc_init is called multiple times. (Yes, people who
16988         do that have bugs in their code.)
16989
16990 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16991
16992         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16993         Remove it since it's generated by the Makefile anyway
16994
16995 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16996
16997         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16998         device->info.axes for core pointer.
16999
17000 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
17001
17002         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
17003         idle_id, to deal with obsolete, broken C libraries.
17004
17005 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
17006
17007         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
17008         allocation->x/y twice!
17009
17010         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
17011         consistent with gtk_vscale_pos_trough().
17012
17013 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
17014
17015         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
17016         be queueing a resize on a toplevel container between
17017         the time we show it and when we map it. So, we need
17018         to test GTK_WIDGET_VISIBLE() for toplevels, and only
17019         use GTK_WIDGET_DRAWABLE() for child windows.
17020
17021 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
17022
17023         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
17024         (fixes bug #2144)
17025
17026 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
17027
17028         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
17029         container DRAWABLE (instead of VISIBLE), so we don't queue
17030         resizes on non-toplevel containers.
17031
17032 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
17033
17034         * gtk/gtkselection.[ch]: Make the data argument
17035         const guchar *.
17036
17037 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
17038
17039         * gtk/gtkwindow.c: Try to behave sensibly if 
17040         the focus widget is the window itself. (Should
17041         we allow this at all?)
17042
17043 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17044
17045         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
17046         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
17047         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
17048         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
17049         in prototypes and implementations consistent (Tomas Ogren).
17050
17051         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
17052         before the widget is unparented (reported by damon).
17053
17054         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
17055         since we provide unsigned data anyways.
17056
17057 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
17058
17059         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
17060         the call to gtk_tooltips_layout_text() until later.
17061
17062         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
17063         Call gtk_widget_ensure_style() before using the style.
17064
17065 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
17066
17067         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
17068         for old widgets that don't propagate draws to all
17069         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
17070
17071 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
17072
17073         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
17074         for a redraw but just the widget that requested the resize.
17075
17076 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
17077
17078         * gtk/gtkcontainer.c: added new widget level method
17079         gtk_container_set_reallocate_redraws() and a GtkContainer flag
17080         reallocate_redraws : 1 to reflect the setting, exported this through
17081         the argument system as a boolean ::reallocate_redraws.
17082
17083         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
17084         on the widget because the allocation changes, do so as well for
17085         widget->parent if the parent has reallocate_redraws set to TRUE.
17086         with that containers requesting reallocation redraws get automatically
17087         redrawn if their children changed allocation (this unfortunately
17088         affects also other children that didn't change allocation, but we
17089         cannot work around that before 1.3).
17090
17091 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17092
17093         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
17094         _and_ height are >0 (not _or_).
17095
17096         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
17097         instead of gtk_container_queue_resize(), which is a core gtk internal
17098         function (must have been on crack when i queued that).
17099
17100         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
17101         we can check more reliably if we want to discard expose events.
17102         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
17103         flag.
17104         
17105         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
17106         we simply trust these events. for deciding whether to discard exposes,
17107         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
17108         
17109 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
17110
17111         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17112         queues of areas that are completely off screen.
17113
17114         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
17115         logic for handleboxes.
17116
17117         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
17118         check on width/height.
17119
17120 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
17121
17122         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
17123         we are fine with using $@ the way we do (if we actually encounter
17124         brokeness with $@ in VPATH builds because of additional path prefixes,
17125         we need to use $(@F) actually).
17126
17127 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
17128
17129         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
17130         short lived bugs, that would allow language bindings to do surgeries
17131         to our guts.
17132
17133 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
17134
17135         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
17136         where comparison was being done against an uninitialized
17137         value causing intermittant results depending on
17138         compiler flags. Also make it clearer that we aren't
17139         ever initializing the child as 0x0 (though this will
17140         be caught in gtk_widget_size_allocate())
17141
17142 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
17143
17144         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
17145         gtk_window_unset_transient_for() call after we do checks
17146         involving the old transient parent.
17147         [ From Lance Capser <lmc@cyberhighway.net> ]
17148
17149 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
17150
17151         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
17152         an empty file.
17153
17154 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
17155
17156         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
17157         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
17158
17159 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
17160
17161         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
17162         `$@' is valid only in the build dir, not after we've done 
17163         `cd $srcdir'.  Also use `test -f' instead of less portable
17164         `test -e'.
17165
17166 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
17167
17168         * gtk/gtktext.c (correct_cache_insert): Rewrite
17169          for simplicity, and hopefully correctness.
17170          (Fixes bug #1322, which was a segfault when
17171           on some insertions with the properties around
17172           the insertion set up just wrong.)
17173
17174         * gtk/gtktext.c (gtk_text_adjustment): When we receive
17175          a "changed" signal, clamp the new value to the adjustment
17176          bounds to avoid segfaulting if someone tries to change
17177          the adjustment to a bogus value. (Bug #1795)
17178
17179 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17180
17181         * gtk/gtkmain.c: Ignore unexpected destroy notifies
17182         for children, for toplevel windows handle them
17183         like delete_event.
17184
17185         * gtk/gtkplug.c: Add an unrealize handler so that
17186         we unref plug->socket_window when we are done
17187         with it.
17188
17189 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
17190
17191         * gtk/gtktext.c (clear_area): Fix stupid signedness
17192          problem that was causing background to sometimes
17193          be misaligned.
17194
17195 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
17196
17197         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
17198         
17199         * gtk/gtkmenu.c (gtk_menu_position): Make
17200          sure we never position menus with negative x, y,
17201          since gtk_widget_set_uposition() can't handle that.
17202
17203         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
17204          Modify the positioning code a bit so that we always
17205          put the top-left corner onscreen. (This is for
17206          UI reasons, gtk_menu_position() now takes care of
17207          gtk_widet_set_uposition() brokeness.)
17208
17209 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
17210
17211         * gtk/Makefile.am: fixed up things for -jx, x > 1.
17212
17213 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
17214
17215         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
17216           RC style that is passed in. The lack of the ref
17217           before was a bug. If people worked around this
17218           bug, this will introduce a slight memory leak
17219           in their code. The code should typically look like:
17220
17221             rc_style = gtk_rc_style_new ();
17222             [...]
17223             gtk_widget_modify_style (widget, rc_style);
17224             gtk_rc_style_unref (rc_style);
17225
17226         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
17227           the style if it was already set.
17228
17229         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
17230           style if it was set before.
17231
17232 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17233
17234         * gtk/testgtk.c (main): Add a check to see if we
17235           are being run from the correct directory and
17236           to quit nicely if we are not.
17237
17238         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
17239           static.
17240
17241 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
17242
17243         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
17244
17245         * gtk/gtkwindow.c:
17246         queue resizes unconditionally (gtk_widget_queue_resize will figure
17247         what to do if the window is not realized).
17248         (gtk_window_move_resize): only recenter the window
17249         for GTK_WIN_POS_CENTER_ALWAYS.
17250         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
17251         the same way as GTK_WIN_POS_CENTER.
17252
17253 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
17254
17255         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
17256         with (!(info->last_flags & GDK_HINT_POS)) instead of
17257         (!info->last_flags & GDK_HINT_POS).
17258
17259         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
17260         new_height unconditionally, because we use these values even if
17261         !default_size_changed && !hints_changed.
17262         comented the (default_size_changed || hints_changed) case with
17263         respect to resize rejects from the window manager.
17264
17265         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
17266         in the zvt condition hack, since this includes the window hints, set
17267         the hints after the handling_resize case.
17268
17269         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
17270         window is initially shown with to the geometry.
17271
17272 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
17273
17274         * gtk/gtkwindow.c (gtk_window_move_resize):
17275         s/size_changed/default_size_changed/g so i know what's
17276         really going on (frying brain on smaller flame now).
17277
17278 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
17279
17280         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
17281         we have size_changed upon handling_resize. this is a gross
17282         workaround for the broken zvt widget and should be removed in
17283         1.3 again (search for FIXME).
17284         Owen provided an accurate comment for this:
17285
17286         /* We could be here for two reasons
17287          *  1) We coincidentally got a resize while handling
17288          *     another resize.
17289          *  2) Our computation of size_changed was completely
17290          *     screwed up, probably because one of our children
17291          *     is broken. It's probably a zvt widget.
17292          *
17293          * For 1), we could just go ahead and ask for the
17294          * new size right now, but doing that for 2)
17295          * might well be fighting the user (and can even
17296          * trigger a loop). Since we really don't want to
17297          * do that, we requeue a resize in hopes that
17298          * by the time it gets handled, the child has seen
17299          * the light and is willing to go along with the
17300          * new size. (this happens for the zvt widget, since
17301          * the size_allocate() above will have stored the
17302          * requisition corresponding to the new size in the
17303          * zvt widget)
17304          *
17305          * This doesn't buy us anything for 1), but it shouldn't
17306          * hurt us too badly, since it is what would have
17307          * happened if we had gotten the configure event before
17308          * the new size had been set.
17309          */
17310
17311 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
17312
17313         * gtk/gtkrc.c: deal properly with the fact that RC
17314           style lists may include rc styles more than once.
17315
17316         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
17317           unused static function.
17318
17319         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
17320           stack of directories of RC files currently being
17321           parsed and implicitely add them to pixmap path.
17322           
17323           This fixes a bug where the directory would get
17324           appended then overwritten by pixmap_path declarations.
17325
17326           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
17327
17328         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
17329           theme's exit function. (Patch from Peter Wainwright,
17330           bug #1454)
17331
17332         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
17333           Add a destroy() handler to take care of removing
17334           group for menu item. (Fixes bug #1197)
17335
17336         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
17337           in warning message.
17338
17339 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
17340
17341         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
17342         roundtrip to figure window's width and height, since we know that
17343         anyways from widget->allocation.
17344
17345 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
17346
17347         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
17348           the hints after we request the new size.
17349
17350 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
17351
17352         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
17353           GTK_WIDGET_REALIZED() assertion - we can compute the
17354           hints before we are realized.
17355
17356         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
17357           hint changing so that we have a value of hints_changed
17358           when we decide whether to constrain the window size.
17359
17360         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
17361
17362         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
17363         change back to G_MAXINT.
17364
17365 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
17366
17367         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
17368         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
17369         contain uncluttered values.
17370         (gtk_window_compute_hints): simply assert that window is realized
17371         and that geometry_info is valid, since we rely on this anyways.
17372         (gtk_window_constrain_size): major cleanups to the code.
17373         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
17374         for the base size, instead of the minimums. use 32767 as max width
17375         and height (like in gtkwindow.c) instead of G_MAXINT.
17376
17377 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
17378
17379         * cleaned up the GtkContainer.need_resize flag handling mess, we
17380         only need to force resize requests when we were prematurely
17381         realized, or our widget tree was modified when we were temporarily
17382         hidden. handling these cases directly upon showing the window (i.e.
17383         while the GdkWindow is still unmapped) avoids the need to wait for
17384         a configure event response and therefore makes the GUI more snappier
17385         and avoids blank windows during the roundtrip.
17386
17387         * gtk/gtkwidget.c:
17388         (gtk_widget_hide): 
17389         (gtk_widget_show): don't queue resizes on toplevels, they know how
17390         to deal with matters.
17391
17392         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
17393         flag directly for not visible resize containers and spare us unecessary
17394         signal emissions.
17395
17396         * gtk/gtkwindow.c:
17397         (gtk_window_realize): if we need to enforce premature size allocation,
17398         queue a container resize so we are correctly resized later on.
17399         (gtk_window_init):
17400         (gtk_window_size_request):
17401         don't freak around with the ->need_resize flag,
17402         gtk_container_queue_resize() will care about that.
17403         (gtk_window_show):
17404         handle initial resizing issues here, we can handle matters better in
17405         this place, especially since we know that our GdkWindow is still
17406         unmapped.
17407         (gtk_window_move_resize):
17408         don't care about ->need_resize at all.
17409         handle size changes properly that occoured while we waited for a
17410         configure event.
17411
17412 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
17413
17414         * gtk/gtkwidget.c (gtk_widget_set_uposition):
17415         * gtk/gtkwindow.[hc] (gtk_window_reposition):
17416         Move the hint setting code from gtk_widget_set_uposition
17417         to here; set the hints so that we respect any previously
17418         set geometry hints.
17419
17420         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
17421         change the window hints here or move the window here,
17422         let that happen in gtk_window_move_resize().
17423
17424 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
17425
17426         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
17427         to already queued resizes (and therefore redraws) on a widget, check
17428         its anchestry as well.
17429
17430         * gtk/gtkcontainer.c:
17431         (gtk_container_queue_resize): clear resize widgets for resize
17432         containers before aborting prematurely. this is especially important
17433         for toplevels which may need imemdiate processing or their resize
17434         handler to be queued.
17435         (gtk_container_dequeue_resize_handler): added new internal function for
17436         gtkwindow.c.
17437
17438         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
17439         configure event, take possible changes in window position into account
17440         as well.
17441         if we request a new window size, queue up a resize handler that will
17442         last until the configure event response arrives.
17443         combined the ->need_resize case (initial show) with the general size
17444         (hints) changed case and added even more comments.
17445         if !auto_shrink, only revert to the old allocation if the new size
17446         is smaller than the current allocation.
17447
17448 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
17449
17450         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
17451                            gtk_window_set_geometry_hints
17452                            gtk_window_set_default_size):
17453         When hints are set, queue a resize so that the hints will
17454         be eventually reset on the toplevel.
17455
17456         * gtk/gtkwindow.c (gtk_window_show): Use
17457         gtk_window_compute_default_size(). Clear the need_resize flag
17458         on the initail map so that we don't unnecessarily trigger the
17459         resize code.
17460
17461         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
17462         into separate functions. Compare the hints we are setting
17463         with what we set last time so that we can accurately
17464         tell when we need to reset the hints.
17465
17466         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17467         function to figure out the size from requisition
17468         and default_size.
17469
17470         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17471         from fvwm to constrain a size to the geometry hints.
17472
17473         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17474         to compare two sets of geometry hints.
17475
17476         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17477         from gtk_window_set_hints(), just compute the hints,
17478         don't set them.
17479
17480         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17481         code from gtk_window_move_resize() to separate function,
17482         rationalize a bit.
17483
17484 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17485
17486         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17487         structure into a new private structure.
17488
17489         * gtkrc.c: Split GtkRcStyle into public/private.
17490         In the private part, add a list of pointers to the
17491         RcStyle lists this RcStyle participates in.
17492
17493         * gtkrc.c: When a RcStyle is free, remove all
17494         lists referencing it from the 
17495         realized_style_ht hash, and free those lists.
17496         
17497         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17498         gtk_rc_init(), since that adds the default styles
17499         to the list of parsed RC files again.
17500
17501         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17502         
17503 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17504
17505         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
17506         checks that ensure that a widget's allocation is at least 1 in width
17507         and height. (GNOME note: this doesn't affect old panel code anymore,
17508         because GtkSocket will request width and height of at least 1 since
17509         Fri Jul 23).
17510
17511         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
17512         allocated yet (happens if the user realizes the window prematurely),
17513         size request and allocate it.
17514         (gtk_window_size_allocate): guard against guint underflows.
17515
17516 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
17517
17518         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
17519         in gtk_built_sources, so gtk.defs gets built prior to all other
17520         sources.
17521
17522 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17523
17524         * gtk/Makefile.am:
17525         invoke indent on gtkmarshal.*. 
17526         rewrote source generation rules, use COPYING as oldest source tag for
17527         a piggyback rule to generate all sources from (don't touch it ;).
17528         major cleanups, strip spaces on build rules for GNU Make.
17529
17530         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
17531         source and target files from commandline arguments. don't invoke indent.
17532
17533 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17534
17535         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17536         notebook after switch to avoid drawing problems.
17537         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17538         
17539         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17540         show them instead. 
17541         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17542
17543 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
17544
17545         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
17546         notebook after switch to avoid drawing problems.
17547         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
17548         
17549         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
17550         show them instead. 
17551         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
17552
17553 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
17554
17555         * gtk/gtkwindow.c:
17556         we use window->need_resize from configure_event now, to indicate that
17557         the gtkwindow should keep its allocation (e.g. because the user resized
17558         the window through window manager handles). resize_count is now reliably
17559         used to figure whether we got the allocation we requested from the
17560         window manager.
17561         configure events get queued as resizes now, the real stuff (size
17562         computation and allocation) now only goes on in gtk_window_move_resize().
17563         GtkWindow's requisition now contains its *real* requisition (like all
17564         other widgets), *not* taking usize into account.
17565         geometry_info->last_{width|height} is now updated from set_hints() only
17566         so it always contains the last hints we set for the window manager.
17567         made some event handlers return TRUE instead of FALSE.
17568         the overall code should be much more straight forward now, and the
17569         significant code portions are accompanied by comments now.
17570         (gtk_window_set_hints):
17571         removed requisition argument and made it
17572         fetch the requisition through gtk_widget_get_child_requisition.
17573         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
17574         does that now.
17575         (gtk_window_show):
17576         ensure that the widget is realized before calling 
17577         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
17578         ensure that we got properly size requested and allocated before
17579         realization.
17580         (gtk_window_configure_event):
17581         ignore plain window moves, or reallocate the widget tree through the
17582         resize queue otherwise.
17583         (gtk_window_move_resize):
17584         mostly rewrote this function to figure window manager hints more
17585         reliably, coalesce window moves and resizes to reduce configure events
17586         and do actuall size allocations.
17587
17588 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17589
17590         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
17591         that have a resize pending, because a redraw is already queued for them.
17592
17593         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
17594         hack to clear resize_widgets.
17595
17596         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
17597         for resize containers prior to size allocation. (this is also a bit
17598         ugly, but avoids side effects for stopped emissions and is thus more
17599         reliable).
17600         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
17601
17602         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
17603         function from gtk_tooltips_expose, as we connect to ::expose_event
17604         *and* ::draw now.
17605
17606 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17607
17608         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
17609         checks.
17610         (gtk_target_list_unref): Likewise.
17611
17612         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
17613
17614 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
17615
17616         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
17617         guard against division by zero. (Fixes bug #1339)
17618
17619 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
17620
17621         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
17622         Prevent the trivial leak of information of allowing
17623         word motion when the entry is not visible.
17624
17625 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
17626
17627         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
17628         modality to error dialog as well as confirmation dialogs.
17629         (Bug #1803, reported by Rosanna Wing Sze Yuen)
17630
17631 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17632
17633         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
17634         tree->view_lines.
17635         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
17636
17637         * gtk/Makefile.am (install-data-local): Solaris apparently
17638         has various troubles with ln -f; use rm first instead.
17639         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
17640
17641 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
17642
17643         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
17644         use `cp' followed by `rm' (the `rm' was already there).
17645
17646 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17647         
17648         * configure.in: Fix autoconf warnings about cross compilation by
17649         trying to provide sane defaults for AC_TRY_RUN.
17650         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
17651         put them into $(srcdir) when generated. Also add a dependency of
17652         gtksignal.h on gtkmarshal.h for -j builds. 
17653         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
17654
17655 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
17656
17657         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
17658         GDK_THREADS_{LEAVE,ENTER} pair.
17659         (From Paul Fisher <pnfisher@redhat.com>)
17660
17661 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
17662
17663         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
17664         width and height are always >0 (owen).
17665
17666 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
17667
17668         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
17669         change that assured that a widget's allocated with and height are
17670         always >1, since this breaks *buggy* panel code. unfortunately this
17671         back-breaks the gimp's color selector.
17672
17673         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
17674         allocation is always >0 in width and height, before sending the
17675         configure event; this is a *gross* hack to get the gimp back to work.
17676         
17677         * marked both cases with TODO-1.3
17678
17679 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
17680
17681         * gtk/gtktext.c: Don't display wrap indicators when
17682         text is not editable and word wrap is on.
17683
17684 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
17685
17686         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
17687         option menus here as they are not derived from menu shell, assure that
17688         the option menu has a menu we can add items to.
17689
17690 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
17691
17692         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
17693         width/height to (gint) before calculations and check against < 0 to
17694         avoid guint wraparounds.
17695
17696 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
17697
17698         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
17699         width and height is never zero. sanity check both dimensions against
17700         32767 and issue a warning if the allocation is greater than that.
17701
17702 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
17703
17704         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
17705         to g_main_pending() as well.
17706
17707 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
17708
17709         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
17710         call to g_main_iteration() - since that will regrab
17711         GTK+ lock to process events.
17712
17713 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
17714
17715         * gtk/gtkwindow.c
17716         - Regularize with the rest of GTK+ by making widget->requisition
17717           not reflect the set_usize()
17718         - Always recompute geometry hints, then check if they
17719           changed before sending them to the X server. The
17720           previous checks for changes would fail in a number
17721           of circumstances. 
17722
17723 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17724
17725         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17726
17727 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17728
17729         * gtk/gtkdnd.c:
17730         - Code cleanups
17731         - Instantaneously update on modifier key presses
17732         - Allow cancellation of the drag with Escape.
17733
17734 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17735
17736         * gtk/testgtk.c (create_handle_box): Set the policy
17737         to auto_shrink - otherwise the appearance is rather
17738         strange when flipping between horizontal and vertical.
17739
17740 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17741
17742         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17743         (gtk_window_set_default_size): don't change a value if it's < 0.
17744         queue a resize.
17745
17746 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17747
17748         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17749
17750 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17751
17752         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17753         add an extra "/" when concating "/" + filename.
17754         (From Matt Grossman <mattg@oz.net>)
17755
17756 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17757
17758         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17759         for fg_gc if we set it for drawing pixmap.
17760
17761 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17762
17763         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17764         
17765         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17766         already set, call old engine's destroy function and
17767         unref the old engine.
17768
17769 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17770
17771         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17772
17773 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17774
17775         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17776
17777 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17778
17779         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17780         expand behaviour changed.
17781
17782         * gtk/gtklabel.c (gtk_label_set_pattern):
17783         (gtk_label_set_justify):
17784         (gtk_label_set_line_wrap):
17785         don't bother invoking queue_clear, the reallocation does
17786         that for us, always free_words so the upcoming resize will
17787         relayout the label's contents.
17788
17789 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17790
17791         * applied argument implementation patches from Elena Devdariani
17792         <elena@cogent.ca>.
17793
17794         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17795         ::space_style, ::relief
17796         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17797         * gtk/gtkpreview.c: ::expand
17798         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17799         * gtk/gtknotebook.c: ::homogeneous
17800         * gtk/gtklabel.c: ::wrap
17801         * gtk/gtklist.c: ::selection_mode
17802         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17803         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17804         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17805         * gtk/gtkclist.c: ::sort_type
17806         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17807         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17808
17809 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17810
17811         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17812         comment.
17813
17814 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17815
17816         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17817         counting right when we have to attach a new style
17818         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17819
17820         * gtk/gtkstyle.c: Documented the refcounting
17821         peculularities of gtk_style_attach.
17822
17823 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17824
17825         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17826         window types.
17827
17828         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17829         of GTK_TOPLEVEL for creating the window.
17830
17831 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17832
17833         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17834         the last argument (reported by Per Winkvist).
17835         
17836 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17837
17838         Fixes for invisible XOR lines (Frank Loemker
17839         <floemker@TechFak.Uni-Bielefeld.DE>)
17840         
17841         * gtk/gtkclist.c (gtk_clist_realize): Always use
17842         a non-zero pixel for GDK_XOR.
17843
17844         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17845         Use GDK_INVERT instead of GDK_XOR.
17846
17847 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17848
17849         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17850         signals if h/voffsets differ from adjustment values.
17851         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17852
17853 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17854
17855         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17856         ::selection-done emissions up to the topmost menu shell.
17857
17858 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17859
17860         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17861         the user data on the window before destroying it.
17862
17863         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17864         unrealize handler to take care of destroying 
17865         notebook->panel properly. 
17866         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17867
17868         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17869         of g_new and g_realloc to stop memory leak. (Actually,
17870         we could just use g_realloc(), but I'm not 100% sure
17871         that is portable).
17872         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17873
17874 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17875
17876         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17877
17878         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17879         for fontsets.
17880
17881         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17882         with bin/button confusion.
17883
17884 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17885
17886         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17887         and show how preselection of radio items is done.
17888
17889 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17890
17891         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17892         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17893         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17894         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17895         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17896         * gtk/gtktable.c (gtk_table_attach): 
17897         * gtk/gtklist.c (gtk_list_insert_items): 
17898         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17899         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17900         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17901         * gtk/gtkbin.c (gtk_bin_add): 
17902         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17903         * gtk/gtkfixed.c (gtk_fixed_put): 
17904         * gtk/gtklayout.c (gtk_layout_put):
17905         general fixups to container_add logic. always realize child if
17906         child->parent is realized, only map the child and queue a resize
17907         if child and child->parent are both visible.
17908
17909 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17910
17911         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17912         instead of gtk_container_foreach to walk and unrealize children, so
17913         composite children get also unrealized.
17914         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17915         (gtk_widget_map): assert that the widget is visible (basic constrain).
17916         (gtk_widget_real_map): assert that the widget is realized (basic
17917         constrain).
17918
17919 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17920
17921         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17922
17923 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17924
17925         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17926         file for iso-8859-2 locales.
17927
17928         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17929
17930 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17931
17932         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17933          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17934          Remove some suspicious and useless lines. 
17935
17936 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17937
17938         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17939         width,height = 0, 0 to mean - here to edge of window,
17940         instead of -1, -1, since the former is all we support.
17941
17942 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17943
17944         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17945         when removing from quit_functions list.
17946
17947 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17948
17949         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17950
17951 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17952
17953         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17954          When redrawing characters on non-visible entry, use appropriate
17955          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17956
17957 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17958
17959         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17960         from drag coordinates.
17961         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17962         use drag_dest_cell.
17963
17964         * gtk/gtktree (drag_dest_cell)
17965         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17966         (Bug #1129)
17967
17968 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17969
17970         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17971         translate_* fields.
17972         (gtk_item_factory_finalize): invoke translate_notify independant from
17973         translate_data.
17974         (gtk_item_factory_set_translate_func): likewise.
17975         (gtk_item_factory_destroy): only remove ifactory pointer from those
17976         widgets that belong to us (stupid me).
17977
17978 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17979
17980         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17981         rc_style list when lookup succeeeds.
17982
17983 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17984
17985         * gtk/gtkctree.c (resync_selection): 
17986         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17987         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17988         bug.
17989
17990 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17991
17992         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17993         Add some missing GDK_THREADS_ENTER()/LEAVE around
17994         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17995
17996 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17997
17998         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17999         rather than emit_by_name.
18000
18001         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
18002         on the widget across multiple signal emissions.
18003         (gtk_editable_delete_text): same here.
18004         (gtk_editable_class_init): set widget_class->activate_signal after
18005         editable_signals[ACTIVATE] has been created.
18006
18007 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
18008
18009         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
18010         position here prematurely -- we might not have the
18011         right ->min_position and ->max_position yet.
18012
18013 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18014
18015         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
18016         Add error traps so if the other end of the connection
18017         dies, we survive.
18018
18019         * gtk/gtkselection.c (gtk_selection_notify): Clean
18020         up properly when selection property retrieval fails.
18021         
18022         * gtk/gtkselection.c (gtk_selection_request): Correctly
18023         reject SelectionRequest notifies where the handler
18024         returns no data.
18025
18026 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18027
18028         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
18029         when we've previously highlighted.
18030
18031         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
18032         emit two "drag_leave" signals for Motif drops.
18033
18034         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
18035         back the correct status messages when dropping from
18036         Motif onto a proxy window that is rejecting the
18037         drop.
18038
18039 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
18040
18041         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
18042         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
18043         to compare two argument values. added gtk_arg_to_valueloc() to set a
18044         variable from an arg through its location (pointer).
18045
18046         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
18047         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
18048         as gfloat*, uchars are collected as guchar*, ints are collected as
18049         gint*, etc...
18050
18051 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
18052
18053         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
18054         Include <string.h> instead of <strings.h>.
18055
18056         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
18057         (actually, a lot more duplicate includes occur if
18058          you trace through the sequence of #include's)
18059         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
18060         
18061 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18062
18063         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18064         gtk-a-higuti-990322-[0-3]
18065
18066         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18067         that was causing -DX_LOCALE not to work.
18068
18069         * gtk/gtkrc.c (gtk_rc_init):
18070         X_LOCALE will never have LC_MESSAGES defined
18071
18072 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
18073
18074         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
18075         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
18076
18077         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
18078         left/right as well (gtk-michael-980726-0.patch.gz).
18079
18080         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
18081         for pointer values, use gchar instead of char. fixed uline allocation
18082         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
18083         chunks instead of G_ALLOC_ONLY.
18084         (gtk_label_size_request): always alter requisition as passed and leave
18085         widget->requisition alone.
18086         (gtk_label_set_text): allow NULL strings.
18087         (gtk_label_new): likewise.
18088
18089 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
18090
18091         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
18092
18093 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
18094
18095         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
18096         *and* mapped (i.e. drawable).
18097         (gtk_bin_expose): only send exposes to drawable children.
18098
18099         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
18100         (gtk_box_expose): only send exposes to drawable children.
18101
18102         * gtk/gtkhscale.c (gtk_hscale_draw): 
18103         * gtk/gtkvscale.c (gtk_vscale_draw):
18104         hm, this is an ugly one. we first compute the size of our trough area
18105         here (window relative) and then check intersection with the draw_area
18106         which is parent relative because we're a NO_WINDOW widget, so we need
18107         to offset the trough area by allocation.x and allocation.y before the
18108         check. (this must not be done for the background area though, since
18109         that's already computed parent relative).
18110
18111 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
18112
18113         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
18114         unrealize title buttons.
18115
18116 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
18117
18118         * gtk/gtkclist.c (gtk_clist_column_title_passive)
18119         (gtk_clist_column_title_active): 
18120         only connect/disconnect to GtkWidgetClass::event to block mouse events.
18121
18122         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
18123         zero initialize event, removed superfluous gdk_window_get_pointer call
18124
18125         * gtk/gtklist.c (gtk_list_vertical_timeout)
18126         (gtk_list_horizontal_timeout): removed superfluous
18127         gdk_window_get_pointer call
18128
18129 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18130
18131         * plugging problems reported by "Bruce Mitchener, Jr."
18132         <bruce@puremagic.com> due to a purify session.
18133
18134         * gtk/gtkstyle.c:
18135         (gtk_style_ref): 
18136         (gtk_style_unref): assert ref_count to be > 0.
18137
18138         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
18139         the requisition.
18140         (gtk_clist_set_shift): likewise.
18141
18142         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
18143         adjustments.
18144
18145         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
18146         event before sending it and set send_event to TRUE (which needs to
18147         be done for *all* synthesized events).
18148         (gtk_list_vertical_timeout): likewise.
18149
18150         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
18151         leaks.
18152
18153         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
18154         to TRUE when synthesizing events.
18155
18156 [ *** end of merges from 1.2 *** ]      
18157         
18158 1999-11-21  Tor Lillqvist  <tml@iki.fi>
18159
18160         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
18161         (or copied from gdkconfig.h.win32 on Win32, sigh).
18162
18163         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
18164
18165         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
18166
18167         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
18168
18169         * gdk/gdkconfig.h.win32: New file.
18170
18171         * gdk/win32/makefile.cygwin: Build just a static archive here.
18172
18173         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
18174         for the DLL from the static archive built above.
18175
18176         * gdk/gdk.def: Moved here from the win32 subdirectory.
18177
18178         * gdk/win32/*: Adapt for the changed private struct organisation.
18179
18180         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
18181
18182 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
18183
18184         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
18185         for wheel mice (buttons 4 and 5).
18186
18187 1999-11-18  Tor Lillqvist  <tml@iki.fi>
18188
18189         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
18190         drawables use just the pixel field in the foreground and
18191         background GdkColor of the GdkGC.
18192
18193         gdk_gc_set_{fore,back}ground() are called in the GIMP with
18194         GdkColors containing uninitialized (red,green,blue) fields, and
18195         just the pixel field filled in, and furthermore in the
18196         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
18197         It thus turns out that we really don't need to have the full
18198         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
18199         it later to have just the pixel values.
18200
18201 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
18202
18203         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
18204
18205 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
18206
18207         * docs/gtkfaq.sgml: threads example from Erik Mouw.
18208         New question on GtkLabel background colors.
18209
18210         * docs/gtk_tut.sgml:
18211           - Correct the example code callback
18212             function definitions.
18213           - Update the gtkdial example code, from Frans van Schaik.
18214           - Update setselection.c to current API.
18215
18216         * examples/Makefile examples/*/*.c: Update to code
18217         listed in tutorial.
18218
18219 1999-11-10  Tor Lillqvist  <tml@iki.fi>
18220
18221         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
18222         subrange table (from the "Developing International Software for
18223         WIndows 95 and Windows NT" book) was missing the Hangul syllable
18224         block... Get the loaded font's charset correctly.
18225
18226         (Note that this, and the other *-win32.c files, still really are
18227         the old ones, the win32 subdirectory is not ready for compilation
18228         yet after the reorg.)
18229
18230 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
18231
18232         * gtk/gtkclist.c: Fix off-by-one bug in parameter
18233         check.
18234
18235 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
18236
18237         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
18238         on results of XQueryDeviceState().
18239
18240 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
18241
18242         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
18243         we need to accesss only ->children. We need an accessor
18244         for the children.
18245
18246         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
18247         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
18248         to get rid of gdkx.h include.
18249         
18250         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
18251         and random references to 'None'.
18252
18253         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
18254         Get rid of unused #include <gdk/gdkx.h>
18255
18256         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
18257         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
18258         gdkconfig.h.
18259
18260 1999-11-08  Tor Lillqvist  <tml@iki.fi>
18261
18262         * gdk/win32/gdkdraw.c
18263         * gdk/win32/gdkfont.c
18264         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
18265         following yesterday's changes. (Unrelated to Owen's reorg.)
18266
18267 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
18268
18269         * gdk/x11/gdkinput-gxi.c: Add missing include,
18270           fix GdkWindowPrivate => GdkDrawablePrivate.
18271
18272         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
18273
18274         * gdk/x11/Makefile.am (xinput_sources): Add missing
18275         backslash to fix building with --with-xinput=none
18276
18277 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
18278
18279         Move all X specific code into the x11/ directory.
18280         Aside from shuffling things around, did the following:
18281
18282        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
18283          gdk_arg_context_* - a simple argument parsing system
18284          in the style of popt.
18285
18286        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
18287          gdk/x11/gdkprivate-x11.h:
18288          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
18289          add ->klass and ->klass_data fields. The klass_data
18290          field points to an auxilliary structure that is
18291          windowing system dependent.
18292
18293        * gdk/gdkfont.c: Make most of the measurement functions
18294          simply wrappers around gdk_text_extents().
18295
18296        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
18297          _gdk_font_strlen() function that hides the weird
18298          behavior in gtk+-1.[02] where a string is interpreted
18299          differently for 8-bit and 16-bit fonts.
18300
18301        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
18302          to store common code for synthesizing double/triple
18303          press events.
18304         
18305        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
18306          Make all the function that modify an existing GC
18307          simply wrappers around gdk_gc_set_values().
18308          
18309        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
18310          for throwing out later.
18311
18312        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
18313          GdkImagePrivate and GdkColormapPrivate to have a
18314          windowing system dependent part (GdkFontPrivateX etc.)
18315          that "derives" from the system-independent part.
18316
18317        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
18318          Got rid of the included-source-files for XInput in
18319          favor of automake conditionals. (Which didn't exist
18320          when XInput support was originally added.)
18321
18322        * gdk/gdkrgb.c: Remove the visual id from the debugging
18323          statements since that is X11 specific; print out
18324          type/depth info instead.
18325          
18326
18327 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
18328
18329         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
18330         loading duplicates of hashed fonts.
18331
18332         * gdk/gdk.c (gdk_keysym_convert_case): rename
18333         gdk_XConvertCase to gdk_keysym_convert_case, allow
18334         results to be NULL in the GTK+ style.
18335
18336         * gdk/gdkcompat.h: Started compatibility header
18337         for renames.
18338
18339 1999-11-07  Tor Lillqvist  <tml@iki.fi>
18340
18341         * gdk/win32/gdkprivate.h: New font private structures, related to
18342         fontsets.
18343
18344         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
18345         gdk_font_list_free(). On X11, will just be wrappers to
18346         XListFonts() and XFreeFontNames(). On Win32, the code previously
18347         in gtkfontsel.c is now here.
18348
18349         New function gdk_font_xlfd_create(). On X11 will get the FONT
18350         property of the font (for GDK_FONT_FONTs), or call
18351         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
18352         builds a XLFD style name from the font information in the LOGFONT
18353         struct(s).
18354
18355         New function gdk_font_xlfd_free(), which correspondingly frees the
18356         string returned by gdk_font_xlfd_create().
18357
18358         Implement fontsets on Win32. Add a function that iterates over a
18359         wide char string and calls a callback function for each substring
18360         of wide chars from the same Unicode subrange (and thus probably
18361         available in the same real font).
18362
18363         Improve the XLFD emulation a bit.
18364
18365         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
18366
18367         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
18368         Beta3, WM_IME_CHAR messages don't seem to contain the composed
18369         multi-byte char as with the Active IMM on Win9x. Oh well, handle
18370         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
18371         ImmGetCompositionStringW() to get the composed Unicode chars.
18372
18373         * gdk/win32/gdkgc.c
18374         * gdk/win32/gdkdraw.c: Changes needed because of the font private
18375         struct changes.
18376
18377         * gdk/win32/gdk.def: Add the new functions.
18378
18379 1999-11-04  Tor Lillqvist  <tml@iki.fi>
18380
18381         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
18382         get the Platform SDK to get <dimm.h>.
18383
18384         * gdk/win32/gdkevents.c: More event handling fixes and
18385         simplification. Never generate motion events with is_hint true. We
18386         used to do that on bogus grounds earlier. Windows sends
18387         WM_MOUSEMOVE messages on button events even if the mouse hasn't
18388         moved, ignore these.
18389
18390         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
18391
18392         * gdk/win32/gdkglobals.c
18393         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
18394         the TrackMouseEvent function, and use it.
18395
18396         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
18397         char before calling WideCharToMultiByte in order to get a string
18398         for the window title.
18399
18400         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
18401
18402         * gdk/win32/gdk.def: Remove obsolete functions.
18403
18404         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
18405         /nodefaultlib and /defaultlib switches.
18406
18407         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
18408
18409 1999-10-31  Tor Lillqvist  <tml@iki.fi>
18410
18411         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
18412         EuroSign).
18413
18414         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
18415         same type as GdkWChar, especially on Win32.
18416
18417         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
18418
18419         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
18420         before passing to Windows GDI for drawing etc. Convert to the
18421         system default codepage before passing to Windows as window
18422         titles.
18423
18424         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
18425         support changing input locale on the fly.
18426
18427         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
18428         on-the-fly changes. Convert incoming characters from the current
18429         codepage to Unicode (and then to a UTF-8 multi-byte string) based
18430         on the current input language. Use keysym<->Unicode mapping tables
18431         and functions borrowed from xterm sources.
18432
18433         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
18434         editions of Win9x, use the ActiveX-based Active IMM (Input Method
18435         Manager) if available. IMEs and the Active IMM are available under
18436         the disguise of Chinese, Korean and Japanese support for IE and
18437         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
18438         support is present in all editions (as long as you install it).
18439
18440         Call DispatchMessage from gdk_events_queue() (and thus
18441         gdk_WindowProc()), instead of duplicating the code in
18442         gdk_WindowProc().
18443
18444         Reworked the grab handling and propagation code, factored out
18445         duplicated code snippets into separate functions. Other cleanups,
18446         too.
18447
18448         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
18449         the <dimm.h> header describing the Active IMM.
18450
18451         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
18452         just do the same as for "single" fonts.
18453
18454         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
18455         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
18456         the new keysyms from gdkkeysyms.h.
18457
18458         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
18459         fontset, so that gtkentry uses wide characters.
18460
18461         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
18462         GTk+'s system directory "gtk+", not "gtk".
18463
18464 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18465
18466         * docs/gtkfaq.sgml: FAQ update
18467
18468 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18469
18470         * gdk/win32/gdkprivate.h: Add more font private data.
18471
18472         * gdk/win32/gdkfont.c
18473         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18474         fonts and strings. Now works much better. You still have to
18475         have a correct font selected, though. No fontset emulation yet.
18476
18477 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18478
18479         * gtk/maketypes.awk: Use G_OS_WIN32.
18480
18481         * gtk/gtk.def: Add some missing entry points. Also some non-public
18482         ones, but PyGTK porter claims to need them.
18483
18484         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18485         built-in type generation.
18486
18487 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18488
18489         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18490         GDK_FONT_FONT fonts (which is all we have for now, we don't
18491         emulate fontsets). The X11 version uses plain XDrawString in that
18492         case, too. The string passed to gdk_draw_text_wc seems to be in
18493         fact (at least, when used by gtkentry and gtktext) either in a
18494         single-byte charset, or a DBCS. Not Unicode.
18495
18496         This fixes the problem in gtkfontsel, where even if you had
18497         selected a font with a non-Latin1 charset (windows-greek, for
18498         instance), the preview still used Latin-1 glyphs.
18499
18500         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18501         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18502         (gdk_font_load): Recognize the demibold etc weights, even if we
18503         don't have the corresponding constants in the headers.
18504         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18505         version. Should save font resources a bit, when we don't have
18506         multiple HFONTs for the same font.
18507
18508         * gdk/win32/gdkprivate.h: Add the names field as in the X11
18509         version.
18510
18511 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
18512
18513         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
18514         X values
18515
18516 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
18517
18518         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
18519         layout support (as mentioned on
18520         http://www.jcinteractive.com/gnome-ui/software/widgets/)
18521
18522 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
18523
18524         * gtk/fnmatch.c
18525         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
18526
18527 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
18528
18529         * configure.in (ALL_LINGUAS): Added Galician (gl)
18530
18531 1999-10-05  Tor Lillqvist  <tml@iki.fi>
18532
18533         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
18534
18535         * gdk/win32/gdkcompat.c: New file, actually provide an
18536         implementation for the deprecated functions. (Just temporarily.)
18537
18538         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
18539
18540         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
18541
18542         * gdk/win32/gdk.def gtk/gtk.def: Updates.
18543
18544 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
18545
18546         * configure.in: Added "uk" to ALL_LINGUAS.
18547         
18548 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
18549
18550         * configure.in: correct checking for BeOS check
18551
18552         * gdk/gdktypes.h
18553         * gtk/fnmatch.c
18554         * gtk/gtkfilesel.c
18555         * gtk/gtkitemfactory.c
18556         * gtk/gtkmain.[ch]
18557         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
18558
18559 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18560
18561         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
18562         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
18563         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
18564         by Bulgarian). 
18565
18566 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
18567
18568         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
18569         Fix a reference to window_private->destroyed.   
18570
18571         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
18572         (ugly) setting of an internal GdkWindow member to use
18573         a _slightly_ cleaner macro.
18574
18575         * gdk/gdkprivate.h: Split GdkWindowPrivate into
18576         GdkDrawablePrivate and GdkWindowPrivate.
18577         Add extra macros for accessing GDK_DRAWABLE_ components.
18578
18579         * *.[ch]: Massive adjustments for the above, use the
18580         new macros in a lot of places.
18581
18582 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
18583
18584         * gdk/gdktypes.h: Make GdkDrawable the base type,
18585         not GdkWindow.
18586
18587 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
18588
18589         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
18590
18591 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
18592
18593         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
18594
18595 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
18596
18597         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
18598         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
18599
18600         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
18601
18602         * docs/gtk-config.1: Now autogenerated.
18603         * docs/Changes-1.4.txt: started
18604         
18605 1999-10-03  Tor Lillqvist  <tml@iki.fi>
18606
18607         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
18608         to #ifdef also here.
18609
18610         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
18611         Owen did to the X11 backend.
18612
18613         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
18614         ScrollWindowEx when blitting inside a window, it can't be correct
18615         in the general case.
18616
18617         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
18618         WM_GETMINMAXINFO is easier.
18619
18620         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
18621         depth equal to the bitspixel value, not the visual's depth.
18622
18623         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
18624         to 24 even if the bitspixel value is 32.
18625
18626         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
18627         need to check for depth==32 when bpp==32, depth will always be 24.
18628
18629 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
18630
18631         * docs/Changes-1.4.txt: Started
18632         
18633         * gtk/Makefile.am (gdk_headers): Include all the new headers.
18634
18635         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
18636         
18637         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
18638         into C file.
18639         
18640         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
18641         header to gdkinputprivate.h.
18642
18643         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
18644         unused since before 1.2.
18645
18646 1999-09-30  Tor Lillqvist  <tml@iki.fi>
18647
18648         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
18649         expand possible hex escapes in the font family (put there by
18650         logfont_to_xlfd if the font name isn't a legal XLFD font family,
18651         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
18652         On Win32, add hex escapes here, too.
18653
18654 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
18655
18656         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
18657         to #ifdef GDK_WINDOWING_X11.
18658
18659 [ Merges from gtk-1-2 ]
18660
18661 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
18662
18663         * configure.in: fixed "GNU Make" check to pass with new make version
18664         3.77.95.
18665
18666 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
18667
18668         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
18669         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
18670         AM_PATH_GTK() macros don't get confused by the -pre1.
18671
18672 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18673
18674         * configure.in (REBUILD): Change check for perl5
18675           to check explicitely for v >= 5.002. (5.001
18676           does not work with our scripts.)
18677
18678 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
18679
18680         * configure.in: evaluate $PERL for the perl version check. added
18681         --disable-rebuilds to give the user an option to completely disable
18682         any source autogeneration rules.
18683
18684 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
18685
18686         * configure.in: evaluate $ac_make when checking for GNU Make.
18687
18688 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18689
18690         * docs/Makefile.am: added generation.txt.
18691
18692         * Makefile.am: require automake 1.4, build README from README.in and
18693         INSTALL from INSTALL.in in dist-hook.
18694         
18695         * README.in:
18696         * INSTALL.in: new files to autogenerate README and INSTALL from.
18697
18698         * configure.in: figure whether we have GNU Make
18699
18700         * docs/generation.txt: minor additions/corrections.
18701
18702 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18703
18704         * docs/gtkfaq.sgml: FAQ Update
18705
18706 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18707         
18708         * configure.in: Fix autoconf warnings about cross compilation by
18709         trying to provide sane defaults for AC_TRY_RUN.
18710
18711 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
18712
18713         * ltconfig
18714         * ltmain.sh: upgrade to libtool 1.3.3
18715
18716 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
18717
18718         * INSTALL: Indicate that the --with-glib= configure
18719         time flag is unsupported.
18720
18721 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18722
18723         * docs/generation.txt: Added a file that gives
18724         documenation about the autogeneration process for
18725         various autogenerated files.
18726         
18727 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18728
18729         * configure.in (LIBS): Look for libgmodule in the
18730         right location.
18731
18732 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18733
18734         * docs/gtk_tut.sgml: Removed references to
18735         code examples in my directory on gtk.org as
18736         they should all be in the tutorial now.
18737
18738         * docs/gtk_tut.sgml: Added sources for dial-test
18739         and scribble-xinput programs that were previously
18740         missing.
18741
18742 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18743
18744         * TODO: Added entry about menu keyboard navigation, removed
18745         some finished items.
18746
18747 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18748
18749         * acinclude.m4: Standardize on func_dgettext
18750         not func_gettext, so that the checks for dgettext
18751         actually are paid attention to.
18752
18753 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18754
18755         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18756         directly, rather than repeating the checks for
18757         gettext.
18758
18759         * INSTALL: Added information about gettext and
18760         NLS support.
18761
18762         * acinclude.m4 (LIBM): Check for dgettext, not
18763         just gettext. This should hopefully fix things wrt
18764         systems with old versions of GNU gettext installed.
18765
18766 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18767
18768         * configure.in (LIBS): Look for libgmodule in the
18769         right location.
18770
18771 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18772
18773         * autogen.sh: add --enable-maintainer-mode
18774
18775         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18776
18777 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18778
18779         * docs/gtk-config.1.in:
18780           docs/Makefile.am:
18781           configure.in: gtk-config is now generated.
18782
18783         * docs/gtk-config.1: Removed, now generated.
18784
18785 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18786
18787         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18788         handle CreateNotify itself, still put out a debuging message for
18789         --gdk-debug=events. made the ReparentNotify debugging message more
18790         verbose.
18791         wrap xcoords translation for ConfigureEvents into an error trap,
18792         a destroy event may already be pending, and in that case, the
18793         actuall coordinate values are not at all critical.
18794
18795 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18796
18797         * gdk/gdkcc.c: Stop leaking the color_hash all over
18798         the place. Simplify and improve the logic.
18799
18800 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18801
18802         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18803         for prototypes and function implementations consistent (reported
18804         by Tomas Ogren).
18805
18806 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18807
18808         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18809         send_event set in debugging output.
18810         (gdk_compress_exposures): default initialize the event so we don't
18811         operate on bogus values (namely send_event).
18812
18813 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18814
18815         * gdk/gdkwindow.c: When we receive an unexpected
18816         destroy notify on one of our windows, don't just
18817         warn about it, also mark our windows as destroyed.
18818
18819 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18820
18821         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18822           name => font and name => fontset hashes. The 
18823           name => fontset hash is a _big_ win since we
18824           weren't previously caching fontsets at all and loading
18825           fontsets is expensive. The name => font hash
18826           is less of a win, but it does save us from doing
18827           repeated XQueryFont calls on the same font.
18828
18829         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18830           list so we can remove font/fontset from hash.
18831
18832 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18833
18834         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18835           and slightly confusing test. [ XInternAtom (,,TRUE)
18836           will never return None ].
18837
18838 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18839
18840         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18841           gdk/gdkwindow.c (gdk_window_set_hints):
18842
18843         Don't omit setting the properties if flags == 0 -
18844         there may be an existing set of properties there
18845         already. (Very old bug. Would it be better to
18846         delete the property instead?)
18847
18848         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18849           spelling error in comment.
18850
18851 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18852
18853         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18854           to avoid stomping over gdk_error_warnings.
18855
18856         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18857           as (bits_per_pixel + 7) / 8. This gives the same
18858           result as before for multiples of 8, but actually
18859           a "reasonable" value for 1bit or 4bit displays.
18860
18861 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18862
18863         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18864         GNU Make.
18865
18866 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18867
18868         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18869         discarding configure events.
18870
18871 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18872
18873         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18874         refcount is greater than zero.
18875
18876         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18877
18878         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18879
18880         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18881
18882         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18883
18884 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18885
18886         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18887         that format 32 => sizeof(item) == 4. It really is
18888         sizeof(long).
18889
18890 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18891
18892         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18893         core dump at all on X IO errors, only core dump
18894         if --enable-debug for X errors.
18895
18896 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18897
18898         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18899         unknown window:" message. disabled ConfigureNotify discarding code,
18900         because it led to events being processed out of order.
18901
18902 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18903
18904         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18905
18906         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18907         we export this function, supress error warnings and don't reset the
18908         error code in the first half of this function.
18909
18910         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18911         code (instead of just -1) so gdk_error_trap_pop() reveals something
18912         actually informative about the error that happened.
18913
18914         * gdk/*.c:
18915         don't rely on gdk_error_code being -1 if an error occoured, but just
18916         gdk_error_code != 0.
18917
18918 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18919
18920         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18921         pointer *before* invoking the filter function, so we at least don't
18922         crash if a filter is removed that is currently executed. window filters
18923         *really* need to be made truely reentrant at some point.
18924
18925 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18926
18927         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18928         PropertyNotify debug messages.
18929
18930 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18931         
18932         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18933         
18934         * gdk/gdkim.c: Fix cut-and-paste errors for 
18935         x/y and PreeditAttributes/StatusAttributes.
18936
18937 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18938
18939         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18940         G_MAXINT to 2^16 to alleviate overflow problems in
18941         various window managers.
18942
18943 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18944
18945         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18946         for fontsets.
18947
18948 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18949
18950         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18951         Initialize size_hints.x and size_hints.y because kwm
18952         brokenly pays attention to them.
18953         (Bug #1181 -  Lars Heete <hel@admin.de>)
18954
18955 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18956
18957         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18958         return value of gdk_list_visuals(). 
18959         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18960
18961 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18962
18963         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18964         XSetIMValues to (void *) when comparing to NULL, to workaround
18965         the problem of some compilers barfing since older X headers don't
18966         have the prototype for it.
18967
18968 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18969
18970         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18971         for pseudocolor where colormap->colors was double
18972         allocated.
18973
18974         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18975         color value in the hash table with the pixel filled
18976         in so when we do later hash table lookups, the color
18977         value is correct.
18978         
18979 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18980
18981         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18982         making the call
18983
18984 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18985
18986         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18987         pointed out by Morten Welinder <terra@diku.dk>.
18988
18989 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18990
18991         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18992           default filter from the list
18993
18994 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18995
18996         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18997           default filter from the list
18998
18999 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
19000
19001         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
19002
19003         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
19004         g_strdup_printf instead of calcing the length separately
19005
19006 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
19007
19008         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
19009         that we don't do in many other places. (Fixing duplicate 
19010         #include of config.h)
19011
19012         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
19013         Otherwise, #ifndef XINPUT_NONE check in the latter
19014         doesn't work. (Bug #546)
19015
19016 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
19017
19018         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
19019         "None" case insensitive.
19020
19021 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19022
19023         * gdk/gdkselection.c: 
19024         Add error traps so if the other end of the connection
19025         dies, we survive.
19026
19027 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19028
19029         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
19030         dest_xid field into two fields - one for the window
19031         to send in messages, one to indicate the last looked
19032         up window for caching purposes. This is needed, so
19033         that Leave messages get the correct window.
19034
19035 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
19036
19037         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
19038         Fix warning created by people mucking around
19039         with the gsource API.
19040
19041         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
19042         Change mapping between GIOCondition and GdkInputCondition
19043         to match the way the Linux kernel does it. This should
19044         fix problems where closed pipes were no longer signalling
19045         GDK_INPUT_READ on systems with a native poll().
19046
19047 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
19048
19049         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
19050         explicitly for the string "None" - it is in the XPM
19051         spec and some servers treat unknown colors in odd ways
19052         (like asking the user!)
19053
19054 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19055
19056         * gdk/gdkevents.c: made "->" into a "." of previous change so
19057         it compiles
19058
19059 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
19060
19061         * gdk/gdkevents.c (gdk_compress_exposures): Set the
19062         window field of the event structure before calling
19063         user filters.
19064
19065 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19066
19067         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
19068         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
19069
19070 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
19071
19072         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
19073         intermediate text property - prevents major memory
19074         leak when gdk_use_mb.
19075         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
19076
19077 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19078
19079         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19080         gtk-a-higuti-990322-[0-3]
19081
19082         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
19083         sizeof(wchar_t) != sizeof (GdkWChar)
19084
19085         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19086         that was causing -DX_LOCALE not to work.
19087
19088         * gtk/gtkrc.c (gtk_rc_init):
19089         X_LOCALE will never have LC_MESSAGES defined
19090
19091         * gdk/gdk.c (gdk_init_check):
19092         Remove --xim-preedit and --xim-status from argv properly.
19093
19094         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
19095         that the client window is present on the X server
19096         before we pass it to the input method.
19097
19098 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19099
19100         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
19101         if --display is specified on the command line, than
19102         the drag window will not be created on that display.
19103         
19104 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
19105
19106         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
19107         lookups with only_if_exists == TRUE were inserting
19108         bogus values into the atom cache.
19109
19110 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19111
19112         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
19113         then reset it to NULL.
19114
19115         * gdk/gdkcolor.c:
19116         (gdk_colors_free): 
19117         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
19118         key for g_hash_table_remove() in both functions, this prevents us
19119         from accessing possibly uninitialized portions of a GdkColor structure
19120         where we are only interested in its pixel value.
19121
19122 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19123
19124         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19125         font hash table, if we have a GdkFontPrivate entry for this font
19126         already, simply increment its reference count, provided by Olaf Dietsche
19127         <olaf.dietsche+list.gtk@netcologne.de>.
19128
19129 1999-09-21  Tor Lillqvist  <tml@iki.fi>
19130
19131         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
19132         just to be sure.
19133
19134         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
19135         unused variables, leftovers from the X11 version.
19136
19137         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
19138
19139         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
19140         downcase fields on X11.
19141
19142 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19143         
19144         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
19145         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
19146
19147 1999-09-17  Tor Lillqvist  <tml@iki.fi>
19148
19149         * gdk/win32/gdk.def: Add gdk_threads_mutex.
19150
19151         * gtk/makefile.msc: Correct path to libintl.
19152
19153         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
19154         use of gint vs. int, and gint vs. gboolean in headers and
19155         definitions. Use GtkType for the *_get_type functions. Note that
19156         these changes preserve binary compatibility.
19157
19158         * gdk/gdk.c
19159         * gdk/win32/gdk.c
19160         * gdk/gdk.h: Fix inconsistencies: gint vs int.
19161
19162         * gtk/gtkmain.c
19163         * gtk/gtkclist.c
19164         * gtk/gtkmenufactory.c
19165         * gtk/gtknotebook.c
19166         * gtk/gtkwidget.c: Fix inconsistencies, also gint
19167         vs. gboolean.
19168
19169         * gtk/gtkcolorsel.[ch]
19170         * gtk/gtkcombo.[ch]
19171         * gtk/gtkdrawingarea.[ch]
19172         * gtk/gtkgamma.[ch]
19173         * gtk/gtkhandlebox.[ch]
19174         * gtk/gtkhpaned.[ch]
19175         * gtk/gtkhruler.[ch]
19176         * gtk/gtkplug.[ch]
19177         * gtk/gtkpreview.[ch]
19178         * gtk/gtkruler.[ch]
19179         * gtk/gtksocket.[ch]
19180         * gtk/gtkstatusbar.[ch]
19181         * gtk/gtktoolbar.[ch]
19182         * gtk/gtkvbbox.[ch]
19183         * gtk/gtkvpaned.[ch]
19184         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
19185         functions.
19186
19187         * gtk/gtkgamma.h: Fix bug, missing () in call of
19188         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
19189
19190 1999-09-14  Tor Lillqvist  <tml@iki.fi>
19191
19192         * gdk/gdkcolor.c (gdk_colormap_new)
19193         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
19194         colormap->colors was allocated twice.
19195
19196         * gdk/win32/gdk.c: Remove some unused stuff.
19197
19198         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
19199         colormap.
19200
19201         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
19202         * gtk/gtklabel.h (gtk_label_get_type)
19203         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
19204         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
19205         in a couple of places, not guint.
19206
19207 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19208
19209         * configure.in,po/et.po: added Estonian language file
19210
19211 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19212
19213         * configure.in,po/da.po: added Danish file
19214
19215 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
19216
19217         * docs/gtkfaq.sgml: Minor FAQ Update
19218
19219 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
19220
19221         * docs/gtkfaq.sgml: FAQ update
19222
19223 1999-08-27  Tor Lillqvist  <tml@iki.fi>
19224
19225         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
19226         way to get window contents continually refreshed while resizing. I
19227         didn't like the effects myself, so it's not on by default.
19228
19229         * gdk/win32/gdkprivate.h: New flag variable
19230         gdk_event_func_from_window_proc, FALSE by default.
19231
19232         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
19233         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
19234         are passed --gdk-event-func-from-window-proc.
19235
19236         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
19237         and we have am event_func, call it instead of enqueing the event.
19238
19239 1999-08-23  Tor Lillqvist  <tml@iki.fi>
19240
19241         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
19242         Kelley: Set expose_count in GdkEventExposes correctly.
19243
19244         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
19245         MULTIPLE_WINDOW_CLASSES).
19246
19247         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
19248         for bug in NT, apparently NT *does* draw the end pixel, too, in
19249         LineTo with a one-pixel pen, so we don't have to do it ourselves.
19250
19251 1999-08-21  Tor Lillqvist  <tml@iki.fi>
19252
19253         Improvements by Hans Breuer: 
19254
19255         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
19256
19257         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
19258         CS_?REDRAW flags as they cause lots of (late) redraws when "show
19259         window contents while dragging" is turned on. Allocate at least
19260         one unique class for every GdkWindowType. If support for single
19261         window-specific icons is ever needed (eg. Dialog specific), every
19262         such window should get its own class.
19263
19264 1999-08-19  Tor Lillqvist  <tml@iki.fi>
19265
19266         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
19267         error that caused crashes.
19268
19269 1999-08-17  Tor Lillqvist  <tml@iki.fi>
19270
19271         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
19272         window, use ScrollWindowEx, and call UpdateWindow. This prevents
19273         bugs when for instance part of the window was outside the
19274         display. Thanks to Philippe Colantoni for finding and fixing this.
19275
19276 1999-08-16  Tor Lillqvist  <tml@iki.fi>
19277
19278         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
19279         endpoint calculations which were totally wrong. (A little RTFMing
19280         helps a lot ;-)
19281
19282         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
19283         from a separate directory, not from gettext, because of licensing
19284         issues (we want to use the LGPL version).
19285
19286         * README.win32: Mention the intl from glibc vs from gettext issue.
19287
19288 1999-08-13  Tor Lillqvist  <tml@iki.fi>
19289
19290         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
19291         in the key event handling: Now AltGr chars work again. Also,
19292         now Alt-digits are passed up as well as Control-digits.
19293         Pass keypad plus and minus as normal plus and minus.
19294
19295 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19296
19297         * docs/gtkfaq.sgml: FAQ Update
19298
19299 1999-07-25  Tor Lillqvist  <tml@iki.fi>
19300
19301         * README.win32
19302         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
19303         the Wintab SDK.
19304
19305         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
19306         OK, but getting closer. Guard against bogus tilt data from Wacom
19307         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
19308         enable easier building without Wintab.
19309
19310         * gdk/win32/gdkinput.h
19311         * gdk/win32/gdkevents.c 
19312         * gdk/win32/gdkwindow.c: Minor changes related related to above.
19313         
19314         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
19315         code. As we have just one visual on Win32, no sense to have it in a
19316         table, and no need for the hash table.
19317
19318         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
19319         better on white background.
19320
19321 1999-07-21  Tor Lillqvist  <tml@iki.fi>
19322
19323         * README.win32: Update gcc build instructions. Mention gettext is
19324         GPL.
19325
19326         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
19327         supported cursor size with GetSystemMetrics.
19328
19329         * gdk/win32/gdkfont.c
19330         * gtk/gtkfontsel.c: Guard against some font weight and charset
19331         symbols being undefined (in mingw32 headers).
19332
19333         * gdk/win32/makefile.cygwin
19334         * gtk/makefile.cygwin
19335         * gtk/gtkthemes.c: No longer need to have differently named
19336         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
19337
19338 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
19339
19340         * docs/gtkfaq.sgml: Long awaited FAQ update.
19341
19342 1999-07-15  Tor Lillqvist  <tml@iki.fi>
19343
19344         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
19345         it. Obscure bit manipulation needed.
19346
19347         * gdk/win32/gdkevents.c: Logging.
19348         
19349         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
19350         style (file name include compiler name) for theme engines.
19351
19352 1999-07-13  Tor Lillqvist  <tml@iki.fi>
19353
19354         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
19355
19356         * gdk/win32/gdkevents.c: Fix long-standing bug in key
19357         events. The key.string wasn't zero-terminated, still we strdup'ed
19358         it in gdk_event_copy(). Synthesize crossing events for button
19359         events before possible propagation.
19360
19361         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
19362
19363         * gdk/win32/makefile.cygwin
19364         * gtk/makefile.cygwin: Use new DLL naming style for the
19365         GCC-compiled ones.
19366
19367         * gdk/win32/makefile.msc
19368         * gtk/makefile.msc: Cosmetics mostly.
19369
19370         * gtk/gtk.def: Add missing entry points.
19371
19372         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
19373
19374 1999-07-09  Tor Lillqvist  <tml@iki.fi>
19375
19376         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
19377         or height is zero. Don't print a warning if Pie or Arc fails, they
19378         always fail (?) for very narrow ellipses.
19379
19380         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
19381         the part or the destination window corresponding to source area
19382         outside of the source drawable's boundary.
19383
19384         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
19385         anything if less than two points.
19386
19387         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
19388         return NULL. Gtk cut-and-paste inside a single program works
19389         better this way. (It always gets the clipboard contents from
19390         Windows, not from its own copy, which is cleared anyway. I can't
19391         say I fully understand what happens... Emulating the X selection
19392         and property stuff is a bit of a mess.)
19393
19394         * gdk/win32/gdkevents.c
19395         * gdk/win32/gdkproperty.c: A bit more verbose logging.
19396
19397         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
19398         that never got deleted). Revamp gdk_region_shrink.
19399
19400         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
19401         after use.
19402
19403         * gtk/gtk.def: Add some missing entry points.
19404
19405         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
19406         component.
19407
19408 1999-07-04  Tor Lillqvist  <tml@iki.fi>
19409
19410         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
19411         Control-digits specially.
19412
19413 1999-07-03  Tor Lillqvist  <tml@iki.fi>
19414
19415         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
19416
19417 1999-06-28  Tor Lillqvist  <tml@iki.fi>
19418
19419         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
19420         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
19421         finding this.)
19422
19423 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
19424
19425         * gtk+.spec.in: Corrected some typos in files section.
19426         
19427 1999-06-15  Tor Lillqvist  <tml@iki.fi>
19428
19429         * README.win32: Mention using GNU gettext.
19430         * config.h.win32: Enable NLS stuff.
19431         * gtk/makefile.msc: Use GNU gettext.
19432         * gdk/win32/gdkdnd.c: Minor header reorg.
19433         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
19434         cosmetics.
19435         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
19436         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
19437
19438 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
19439
19440         * acinclude.m4
19441         * config.guess
19442         * config.status
19443         * ltconfig
19444         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
19445
19446 1999-05-30  Tor Lillqvist  <tml@iki.fi>
19447
19448         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
19449         SafeAdjustWindowRectEx. Don't override all calls to
19450         AdjustWindowRectEx by it, but use it only in two places: When
19451         creating a new top-level window and when moving a top-level
19452         window.
19453
19454         Use screen coordinate rectangle, not client rectangle, in
19455         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
19456         when we try to place a window so that the decoration (mainly,
19457         title bar) isn't visible.
19458
19459         These changes fix the bug that showed up for instance as the
19460         GIMP's saved top-level windows moving right and down (by an amount
19461         equal to the window decoration) for each session. This bug showed
19462         up also in testgtk's "Saved Position".
19463
19464         gdk_window_resize also redone a bit.
19465
19466 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19467
19468         * gtk/testgtkrc: Add (commented out) Windows-style theme
19469         include line.
19470
19471         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19472
19473 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19474
19475         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19476         gdkx.h to a gdk subdirectory, so that applications can include
19477         these with <gdk/*.h> without trouble.
19478
19479         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19480         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19481         have their bitmap destroyed.
19482
19483         * gdk/win32/gdk.def: Add gdk_root_parent.
19484
19485 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19486
19487         * configure.in
19488           gtk-config.in
19489           ltconfig
19490           ltmain.sh     
19491           gtk/Makefile.am: changes to compile nicely (with xlib) 
19492           on BeOS
19493
19494 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19495
19496         * acinclude.m4
19497         * config.guess
19498         * config.sub
19499         * ltconfig
19500         * ltmain.sh: upgrade to libtool 1.3
19501
19502 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19503
19504         * gtk/gtkclist.c:
19505         * gtk/gtkctree.c: merges from gtk-1-2
19506
19507 1999-04-25  Tor Lillqvist  <tml@iki.fi>
19508
19509         Support added for building using a GNU toolchain on Win32,
19510         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
19511
19512         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
19513         * config.h.win32: Changes for gcc.
19514         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
19515         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
19516         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
19517         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
19518         Protect shl stuff unavaiilable with mingw32 headers.
19519         * gdk/win32/gdkevents.c: Fix typo.
19520         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
19521         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
19522         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
19523         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
19524         the mingw32 headers.
19525         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
19526         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
19527         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
19528         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
19529         Test for NATIVE_WIN32, not _MSC_VER.
19530         * gtk/gtkmain.c: No use warning about developer version on Win32,
19531         there aren't any non-developer versions anyhow.
19532         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
19533         * gtk/makefile.msc: Use pthread from another directory. Minor other
19534         changes. 
19535
19536 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19537
19538         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19539           default filter from the list
19540
19541 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
19542
19543         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
19544          when gtk_widget_grab_default() is called for a widget that
19545          is not within a GtkWindow.
19546
19547 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
19548
19549         * docs/gtk_tut.sgml, examples/clist.c: use a
19550           scrolled window in the clist example. Minor
19551           tutorial fixes.
19552
19553 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
19554
19555         * docs/gtk_tut.sgml: Style check from David King
19556           <dking@youvegotmail.net>
19557
19558 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
19559
19560         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
19561         compile with unknown value of GDK_WINDOWING
19562
19563 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
19564
19565         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
19566         after the rule is fired.
19567         (install-exec-local): Install gdkconfig.h only if the contents are
19568         different from the currently installed gdkconfig.h.
19569
19570 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
19571
19572         * gdk/Makefile.am (configexecincludedir): Rename from 
19573         configincludedir so that gdkconfig.h will be installed 
19574         as part of `make install-exec'. 
19575
19576 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
19577
19578         * acinclude.m4
19579         * config.guess
19580         * config.sub
19581         * ltconfig
19582         * ltmain.sh: upgrade to libtool 1.2f
19583
19584         * autogen.sh: libtool is not required to autogen gtk+
19585
19586         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
19587         needed)
19588
19589 1999-03-18  Tor Lillqvist  <tml@iki.fi>
19590
19591         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
19592         declaring gdk variables exported/imported from the DLL. New image
19593         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
19594         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
19595         GDK_DRAG_PROTO_OLE2.
19596
19597         * gdk/gdk.h: Merge in Win32 version: Two new functions,
19598         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
19599         declared only for the Win32 version, but could be in the X11
19600         version as well. (Needed for a Xlib-less gdk_imlib.)
19601         gdk_color_hash should have only one parameter. Declare
19602         gdk_threads_mutex with GDKVAR.
19603         
19604         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
19605         just one parameter.
19606
19607         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
19608         per pixel, not bits.
19609
19610         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
19611         Fetch bpp (which means bits-per-pixel here) from another place on
19612         Win32. Accept also depth==32 (which we might get on Win32) with
19613         bpp==32.
19614
19615         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
19616         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
19617         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
19618         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
19619         in the backend-dependent directory, not in the common gdk
19620         directory.
19621
19622         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
19623         headers.
19624
19625 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
19626
19627         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
19628         want to use the Gtk+ devel version (which is true, and yes - even i am
19629         currently working with the 1.2.x branch). so everyone reading this, you
19630         probably want to issue
19631         cvs checkout -r glib-1-2 glib
19632         and
19633         cvs checkout -r gtk-1-2 gtk+
19634         as your next two comands.
19635
19636 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
19637
19638         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
19639         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
19640
19641         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
19642         file. strongly deprecated the GTK_HAVE_* macros, we provide
19643         GTK_CHECK_VERSION() for people that need to check for certain
19644         Gtk+ versions.
19645
19646         * gtk/gtkcompat.h: removed this from CVS.
19647         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
19648         idea right from the start, it just didn't seem like that back then.
19649
19650 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
19651
19652         * merges from gtk-1-2:
19653
19654 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
19655
19656         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
19657         item factory class has been created.
19658         (gtk_item_factory_parse_rc): likewise.
19659
19660         * gtk/gtkmenu.c:
19661         keep proper references for old_active_menu_item.
19662         (gtk_menu_reparent): unset the usize of the new parent,
19663         so the menu can sanely be size requested and we don't get nasty screen
19664         artefacts upon next reparentation.
19665         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
19666         enter notify. only synthesize enter notifies if the pointer really is
19667         inside the event window.
19668         (gtk_menu_popdown): use gtk_menu_shell_deselect().
19669         (gtk_menu_popup): move the background setting stuff into
19670         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
19671
19672         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
19673         gtk_menu_shell_select_item() to select the new item.
19674         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
19675         do the right thing for deselection as well.
19676
19677 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
19678
19679         * gtk/gtkwidget.[hc]:
19680         (gtk_widget_accelerators_locked): return whether a widget's accelerators
19681         are locked.
19682
19683         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
19684         existing accelerators if the widget's accelerators are locked.
19685
19686 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
19687
19688         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
19689
19690         * gtk/gtkmenu.c: truely forward key press and key release events to
19691         the menu widget from the toplevel or tearoff window. we can't simply
19692         connect to that, we need to stop further processing of the events as
19693         well.
19694
19695 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
19696
19697         * gtk/gtkmenu.c:
19698         (gtk_menu_key_press): pass event->keyval, event->state to
19699         gtk_accelerator_valid, instead of event->keyval twice.
19700         refuse to install single letter accelerators for menus that use
19701         single letter shortcuts.
19702
19703         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
19704         gtk_menu_ensure_uline_accel_group().
19705
19706         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
19707         which will always return an uline accel group, made
19708         gtk_menu_get_uline_accel_group() return NULL if the group isn't
19709         yet created.
19710
19711 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
19712
19713         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
19714
19715         * gtk/gtkclist.c (gtk_clist_column_title_passive):
19716         Leave button sensitive, trap  button_press, button_release,
19717         motion_notify, enter_notify and leave_notify events instead.
19718         (gtk_clist_column_title_active): disconnect event handler.
19719         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19720         Guillaume Laurent <glaurent@worldnet.fr>
19721
19722 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19723
19724         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19725         width/height mixups.
19726
19727         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19728         if needed.
19729
19730 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19731
19732         * gtk/testgtk.c (create_item_factory): unref the item factory after
19733         window's destruction.
19734
19735         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19736         count on the menu shell around the menu item's activation, since the
19737         signal emission may cause menu shell destruction.
19738
19739         * gtk/gtkitemfactory.c:
19740         the previous code leaked one accel group per menu. we use
19741         gtk_menu_get_uline_accel_group() now to fix that, and with that
19742         also create the underline accelerator group of the menus only if
19743         required (i.e. an underline accelerator has been specified).
19744         (gtk_item_factory_construct):
19745         (gtk_item_factory_create_item): removed code that would create an
19746         extra accel group for the menu (and leak references).
19747         (gtk_item_factory_create_item): adapted the underline accelerator
19748         installation code to properly feature gtk_menu_get_uline_accel_group().
19749
19750         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19751         menu->accel_group, this may return NULL if the accelerator group
19752         hasn't been set yet.
19753         added gtk_menu_get_uline_accel_group() to retrive the underline
19754         accelerator group of the menu, this will be created on demand
19755         and proper care is taken about its reference count.
19756
19757         * gtk/gtkitemfactory.h:
19758         * gtk/gtkitemfactory.c:
19759         dumped the approach of keeping a widgets by action list on the
19760         factory since the factory<->widget destroy negotiation didn't work
19761         and would be hard to get going at all. instead we keep a list of
19762         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19763         persistant throughout a program's life time).
19764         also, i removed the static const gchar *key_* variables, and made
19765         them inline strings (they weren't actually used anyways).
19766         (gtk_item_factory_add_item): update ifactory->items.
19767         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19768         the item factory pointer from the remaining ifactory widgets).
19769         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19770         list to find the widget.
19771         (gtk_item_factory_get_item): new function that works around
19772         gtk_item_factory_get_widget() limitations, this function will only
19773         return menu items, even for <Branch> entries.
19774
19775 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19776
19777         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19778         font hash table, if we have a GdkFontPrivate entry for this font
19779         already, simply increment its reference count, provided by Olaf Dietsche
19780         <olaf.dietsche+list.gtk@netcologne.de>.
19781
19782         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19783         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19784
19785 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19786
19787         * gtk/gtkcontainer.c:
19788         (gtk_container_add_with_args):
19789         (gtk_container_addv):
19790         (gtk_container_add): before adding a child to a conatiner, make sure
19791         it is (default) constructed, this is neccessary because under certain
19792         circumstances the child will get relized and mapped immediatedly, in
19793         which case it has to be constructed already.
19794
19795 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19796
19797         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19798         values > 1 as TRUE also.
19799
19800 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19801
19802         * README.win32: New file.
19803                 
19804         * configure.in: Check for lstat.
19805
19806         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19807         completeness.
19808
19809         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19810
19811         * gtk/gtk.def: Removed CRs.
19812
19813         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19814         ..\gdk\win32).
19815
19816         * gdk/win32/makefile.msc: Correct upwards relative paths.
19817         
19818 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19819
19820         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19821           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19822           it was connecting a void function to expose_event and the int
19823           returning function to the draw signal
19824
19825 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19826
19827         * configure.in:
19828         Use correct path to libgmodule.la when ref'ing uninstalled copy
19829         of glib.  (Already in stable branch, Bug #417)
19830
19831 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19832
19833         Win32 merge and general portability stuff:
19834                 
19835         * acconfig.h,configure.in: Check for <sys/time.h>.
19836
19837         * gdk/win32: New directory (actually, been there for a while).
19838         
19839         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19840         NATIVE_WIN32, and use these. Always case fold on Win32. No
19841         backslashed escapes on native Win32.
19842
19843         * gtk/{gtk.def,makefile.msc}: New files.
19844
19845         * gtk/Makefile.am: Add above new files.
19846         
19847         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19848         instead of <strings.h>.
19849
19850         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19851         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19852         <unistd.h> appropriately.
19853
19854         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19855         Use ABS() (from <glib.h>) instead of abs().
19856         
19857         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19858         of gtk (and thus glib) headers, so that WIN32 will be
19859         defined. With MS C, include <direct.h> for mkdir prototype.
19860
19861         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19862         some casts, needed by MS C.
19863
19864         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19865         implemented).
19866
19867         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19868         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19869         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19870
19871         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19872                 
19873         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19874         the event is not a hint, or its window is not the slider. Needed
19875         on Win32, at least.
19876
19877         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19878         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19879         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19880         a subdirectory of the Windows directory as gtk system
19881         configuration directory.
19882
19883         * gtk/gtkselection.c: No chunks on Win32.
19884
19885         * gtk/gtksocket.c: Not implemented on Win32.
19886
19887         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19888
19889         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19890
19891         * gtk/maketypes.awk: Declare variables with a macro that expands to
19892         necessary export/import magic in the case of Win32.
19893                 
19894         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19895
19896 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19897
19898         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19899         since those were meant only for gdki18n.h.  
19900         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19901         for widechar tests.
19902         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19903
19904 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19905
19906         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19907         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19908
19909         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19910         installed) to CFLAGS.
19911
19912         * gdk/Makefile.am: Add rules for gdkconfig.h.
19913
19914         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19915         APIs.
19916
19917         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19918         gdkx.h anyway when compiling for X11.
19919         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19920         general): Merge in Win32 version.
19921         
19922         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19923         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19924         expansion (if we don't have HAVE_PWD_H), allow for drive
19925         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19926         included code from Craig Setera's port to Win32 (the one that uses
19927         X11, and the cygwin dll), even if it probably will be abandoned.
19928
19929         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19930         the user entered one herself.  This way one can complete *.h and
19931         don't get matches on any .help files, for instance.
19932         
19933 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19934
19935         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19936         font hash table, if we have a GdkFontPrivate entry for this font
19937         already, simply increment its reference count, provided by Olaf Dietsche
19938         <olaf.dietsche+list.gtk@netcologne.de>.
19939
19940         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19941         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19942
19943 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19944
19945         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19946         the number of calls to gdk_draw_point() (and thus to X) by
19947         clipping the points by hand.
19948
19949         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19950         the clip parameter.
19951         (gtk_handle_box_paint): Only paint the handle if the expose area
19952         intersects it.
19953
19954 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19955
19956         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19957
19958 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19959
19960         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19961         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19962
19963 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19964
19965         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19966          textmode (O_TEXT) for OS/2 version.
19967
19968 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19969
19970         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19971         GtkSpinButton, "input" and "output", to make the output more flexible.
19972         The user has to provide a mapping between adjustment->value and the
19973         output string (and vice versa, if the spin button is editable). 
19974         See testgtk for examples.
19975
19976 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19977
19978         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19979         new one.
19980         
19981         * configure.in: set gtk+ version to 1.3.0.