]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-6
Released Gtk+-1.3.3.
[~andy/gtk] / ChangeLog.pre-2-6
1 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
2
3         * Released Gtk+-1.3.3.
4
5 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
6
7         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
8
9 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
10
11         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
12         files to/from source dir. (if we don't stay in builddir, we
13         can't reach make-inline-pixbuf.
14
15         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
16         deps.
17
18         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
19         ages 0).
20
21 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
22
23         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
24         moved to the GtkTreeSortable interface.
25
26         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
27         Make more efficient (fixes #50262).
28
29 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
30
31         * NEWS: Updated.
32
33         * configure.in: Remove support for uninstalled glib.
34
35         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
36         so as not to stop emission.
37
38         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
39         is no longer supported.
40
41         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
42         into tests, change build order to build modules before
43         gtk/.
44
45         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
46         to here.
47
48 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
49
50         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
51         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
52         GPatternSpec. this is actually unlikely to cause breakage in
53         third-party apps since except for gle, pretty much ever caller
54         passes NULL here.
55
56         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
57
58         * *.c: use g_pattern_*() API.
59
60         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
61
62         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
63         directions aren't passed in.
64
65         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
66         functionality to be usable from gtkstyle.c as well, give precedence
67         for conversion to user-supplied parsers.
68         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
69
70         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
71         _gtk_settings_parse_convert() for rcporperty value conversion.
72
73 2001-04-03  Alexander Larsson  <alexl@redhat.com>
74
75         * gdk/linux-fb/gdkevents-fb.c:
76         Add empty gdk_setting_get().
77
78 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
79
80         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
81         variable names.
82         
83         * gtk/makeenums.pl: touch this so enum files get remade.
84
85 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
86
87         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
88         work again when not sorted.
89
90         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
91         and "expand_row" signal, closing bug 52578.
92
93         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
94         support.
95
96         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
97         support.
98
99 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
100
101         * gdk/gdkevents.h: Add GdkEventSetting event for notification
102         of changes to system settings, gdk_setting_get() to retrieve
103         a single system setting.
104
105         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
106         to the draft XSETTINGS mechanism.
107
108         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
109         XSETTINGS.
110
111         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
112         of GDK settings changes to the GtkSettings object.
113
114         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
115         double-click-timeout property to GDK.
116
117         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
118         Define GDK boxed types here.
119
120         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
121         gdk/gdkenumtypes.[ch] for enum definitions.
122
123         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
124         * gtk/gtk-boxed.defs: Comment out GDK types
125         * gtk/gtktypeutils.h: Remove GDK types
126         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
127
128 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
129
130         * Applied patch from Ron Steinke to add signal accumulators
131         so that signals with the convention 'TRUE return means
132         handled' stop emission on a TRUE return.
133
134         * gtk/gtkmain.[ch]: Add private accumulator 
135         _gtk_boolean_handled_accumulator, used throughout GTK+.
136         
137         * gtk/gtkspinbutton.c: Add accumulator for ::output.
138
139         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
140         
141         * gtk/gtkwidget.c: Add accumulators for event signals,
142         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
143         for ::mnemonic-activate.
144
145         * gtk/gtkwindow.c: Add accumulator for ::frame_event
146
147 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
148
149         * gtk/gtkwidget.c: Add missing include.
150
151 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
152
153         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
154         marshaller.
155
156         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
157         "changed" signal to "range_changed".
158
159         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
160         removing a tree from one model would remove all trees from that
161         model.
162         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
163         changed signal instead.
164
165 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
166
167         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
168         chaining up to parent impl, since we have a INPUT_ONLY
169         window.
170
171         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
172         foreground color for the cursor.
173
174 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
175
176         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
177         param spec when caching property values, since we unref it
178         later when we free the style.
179
180         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
181         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
182
183 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
184
185         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
186         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
187         stupidity.
188
189 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
190
191         [ First pass at adding style properties. Still needs some definite
192         fine-tuning. ]
193
194         * gtk/gtkbutton.c: Add ::default_spacing style property.
195          
196         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
197         ::indicator_spacing style properties.
198
199         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
200         style properties.
201
202         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
203         rather than a normal property.
204
205         * gtk/gtkwidget.c: Add an ::interior_focus style property to
206         draw focus inside buttons, in the Windows/Java Metal/etc. style.
207
208         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
209         Honor ::interior_focus.
210         
211         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
212         TRUE.
213
214         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
215         Add ::slider_width, ::trough_border, ::stepper_size,
216         ::stepper_spacing style properties.
217
218         * gtk/gtkscale.[ch] Add ::slider-length style property.
219
220 2001-04-02 Alexander Larsson   <alexl@redhat.com>
221
222         * gdk/linux-fb/gdkwindow-fb.c:
223         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
224         warnings that were spewed on startup.
225
226         * gtk/gtkwindow-decorate.c:
227         gtk_window_reposition -> _gtk_window_reposition
228
229 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
230
231         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
232         Add boxed type for GtkRequistion. Use it for ::size-request.
233
234         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
235         Add a new GtkBorder structure useful for geometry properties
236         for widgets. Add corresponding GTK_TYPE_BORDER.
237         
238         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
239         Support automatic parser selection like
240         gtk_settings_install_property_parser().
241
242         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
243         functionality for use by gtk_widget_class_install_style_property.
244         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
245
246 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
247
248         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
249         g_param_spec_unichar(). 
250
251 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
252
253         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
254         _NET window managers.
255
256         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
257
258 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
259
260         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
261         bad needs to be nuked, not just deprecated.
262
263         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
264         gtk_widget_popup().
265
266         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
267         
268         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
269         widget.
270         
271         * docs/Changes-2.0.txt: updates.
272         
273 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
274
275         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
276         for (i = 0; i < 100; i ++)
277           g_print ("I will confirm it compile before committing\n");
278
279 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
280
281         * gtk/gtktreestore.c: Initial work on implementing the
282         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
283
284 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
285
286         * gtk/gtkwidget.c: fixed a bunch of notifications, added
287         reference counts around emissions where the widget is used afterwards.
288         added freeze/thaws around multiple properties being notified.
289         (_gtk_widget_get_aux_info): cleanups.
290         
291         * gtk/gtksettings.c (gtk_settings_install_property): provide
292         default parsing functions for gdkcolor, enums and flags.
293
294         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
295         applied by owen.
296         backed out gtk_window_get_location(), gtk_window_set_location(),
297         gtk_window_get_size() and gtk_window_set_size(), these
298         have to be sorted out wrg x/y/width/height/default_with/default_height
299         properties.
300         kept a flag in GtkWindowGeometryInfo to handle user
301         resetting default sizes.
302         cleaned up ZVT comments.
303         bunch of assorted bug fixes, notification fixes.
304         (_gtk_window_reposition): make this a really internal function.
305         
306         * gtk/testgtk.c: fixups.
307         
308 2001-03-31  Hans Breuer  <hans@breuer.org>
309
310         * config.h.win32.in : disable USE_MMX for msvc build cause
311         the assembler doesn't fit and is out of my scope. Disable
312         USE_GMODULE for msvc build as wel. The right way to share
313         binaries on win32 would be to use libtiff.dll etc. To reduce
314         installation hassles IMO it's better to include all fileformats
315         builtin to gdk-pixbuf
316
317         * gdk-pixbuf/makefile.msc : new file
318
319         * gdk/gdk.def : updated
320
321         * gdk/win32/gdkevents-win32.c : don't erase the background if
322         .no_bg is set. It improves the scrolling (e.g. of testgtk main
323         buttons
324         * gdk/win32/gdkgeometry-win32.c : added comment about the above
325
326         * gdk/win32/gdkwindow-win32.c : added three new functions like
327         the X version. Only one is implemented, because the other two
328         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
329         be default behaviour on win32 anyway ...
330
331         * gtk/gtk.def : updated
332
333         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
334         from where it was built and add an additional rule to automagically
335         build gtkmarshal.[hc]
336
337         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
338         before array access for the current entry isn't finished
339
340         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
341         use g_return_val_if_fail
342
343         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
344         for the static array, but let the compiler calculate it. It
345         makes me wonder if gcc isn't capable to catch bugs like this ...
346
347 2001-03-31  James Henstridge  <james@daa.com.au>
348
349         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
350         constant "-1" in the aux info structure.
351
352 2001-03-30  Alexander Larsson  <alexl@redhat.com>
353
354         * gtk/gtkbutton.c (gtk_button_get_property):
355         * gtk/gtklabel.c:
356         Remove leaks.
357         
358         * gtk/gtkcontainer.c:
359         * gtk/gtkhscale.c:
360         * gtk/gtkhscrollbar.c:
361         * gtk/gtklayout.c:
362         * gtk/gtkmisc.c:
363         * gtk/gtkprogress.c:
364         * gtk/gtkprogressbar.c:
365         * gtk/gtkrange.c:
366         * gtk/gtktable.c:
367         * gtk/gtkviewport.c:
368         * gtk/gtkvscale.c:
369         * gtk/gtkvscrollbar.c:
370         * gtk/gtkwidget.c:
371         Property patches, based on patches from John Margaglione and Lee Mallabone.
372
373 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
374
375         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
376         adjustment. Cleaned redundant preconditions (spin != NULL). Added
377         inline API function docs.
378         (gtk_spin_button_new_with_range): New convenience constructor.
379         (gtk_spin_button_set_increments): New adjustment helper.
380         (gtk_spin_button_set_range): New adjustment helper.
381
382         * gtk/testgtk.c : added test of the new convenince constructor and
383         value_changed signals.
384
385 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
386
387         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
388         listen to the reorder signal.
389
390 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
391
392         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
393         to get the aux info structure fo the widget.
394
395         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
396         above function.
397
398         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
399
400         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
401         to get the size of the window manager frame, basically the same
402         code that gdk_window_get_root_origin() had
403         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
404
405         * gtk/gtkwindow.c (gtk_window_set_default_size): use
406         gdk_window_resize() if the window is realized and resizeable
407
408         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
409         typo so that setting gravity works
410
411         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
412         allocation if auto_shrink is on, even if the default size
413         has not changed.
414
415         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
416         g_return_if_fail
417
418 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
419
420         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
421         reordering/sorting work.  Now pretty much works.
422
423         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
424         reorder mostly work.  Still need to get the parity correct.
425
426         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
427         signal, so I can listen for the sort_column_changed signal so I
428         can change my "sort_indicator" property.  Cool.
429
430 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
431
432         [ Patch from Havoc Pennington, hp@redhat.com ]
433
434         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
435         Add functions gdk_window_begin_resize_drag/begin_move_drag
436         to start resizing or moving a toplevel window. This
437         is done either using the _NET_WM_MOVERESIZE protocol,
438         or, if that isn't present, by emulation.
439
440         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
441         to export the above to GTK+-land.
442
443         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
444         
445         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
446         Move this function into gdkwindow, since we need it
447         when implementing fallback resizing.
448
449         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
450         Fix typo when setting gravity.
451
452         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
453         Add an optional (but on by default) resize grip for resizing 
454         the parent window.
455
456 01-03-29  Alexander Larsson  <alexl@redhat.com>
457
458         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
459         Don't return TRUE from the event handler, that blocks all
460         event signals on the tooltip widget. Now you can press buttons
461         in toolbars again.
462
463 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
464
465         * gtk/testtext.c (create_buffer): Add missing NULL on
466         valist.
467
468         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
469         c-n-p problem with INCONSISTENT property.
470
471         [ Patch from Havoc Pennington  <hp@redhat.com> ]
472
473         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
474         hook.
475
476         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
477         signal as a hook for extending the default popup menu
478
479         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
480         use radio menu items for the input method menuitems
481
482         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
483         inserted unicode from Ctrl-Shift-hex input method
484
485         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
486         validatation here, already done at GtkTextBuffer level.
487
488         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
489         popup_menu run action signal and Shift+F10 and Menu keybindings.
490
491         * gtk/gtkentry.c: implement a default handler for popup_menu
492
493         * gtk/gtktextview.c: implement a default handler for popup_menu
494
495         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
496         from a key event
497         
498         * gtk/gtklabel.c: remove "trailer" cruft
499
500 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
501
502         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
503         handle reordering of trees.  Seems to mostly work w/ the exception
504         of the parity flag.
505
506         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
507         signal.
508
509 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
510
511         * gtk/gtkwidget.h: c++ fixes.
512
513 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
514
515         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
516         memory.
517
518 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
519
520         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
521         Nils Barth fixing event return values. (#51041)
522
523         * gtk/gtkwidget.c: Fix some return values for default
524         functions.
525
526         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
527         return values for trough_keys functions.
528
529         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
530         value for add_accelerator (shoudl have been a void
531         return.)
532
533         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
534         Fix return type of EVENT.
535
536         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
537         signal return a boolean.
538
539 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
540
541         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
542         reordered signal.
543
544         * tests/testtreesort.c (main): fix spelling.
545
546 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
547
548         * gtk/gtkliststore.c: More work on implementing sortable
549         interface.
550
551 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
552
553         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
554         reference the widgets in the resulting list. (#11821)
555         This makes this consistent with gtk_container_children.
556
557         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
558         uses of gtk_window_list_toplevels.
559
560 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
561
562         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
563         a virtual function to set whether the IM context should use 
564         the preedit string. (#51922)
565         
566 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
567
568         * gdk/gdkpango.h: Remove stale FIXME comment.
569
570 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
571
572         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
573         Fixed bug that returned NULL if a filename was selected.
574
575 2001-03-24  Havoc Pennington  <hp@pobox.com>
576
577         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
578         to contain the word "theme"
579
580 2001-03-24  Havoc Pennington  <hp@pobox.com>
581
582         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
583         slower but finer-grained
584         (gtk_hsv_focus): get initial focus on the ring or triangle 
585         according to tab direction
586
587         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
588
589 2001-03-23  Havoc Pennington  <hp@pobox.com>
590
591         * gtk/gtkhsv.c: make this somewhat key-navigable
592
593         * gtk/gtkfontsel.c: mnemonics
594
595         * gtk/gtkgamma.c: mnemonics
596
597         * gtk/gtkcolorsel.c: add mnemonics to labels
598
599 2001-03-22  Havoc Pennington  <hp@pobox.com>
600
601         Applied big patch from Seth Lytle to fix event handler return
602         values, slightly modified.
603
604         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
605         handled.
606         (gtk_calendar_key_press): return TRUE for GDK_space triggers
607         select_day
608
609         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
610         (gtk_clist_button_release): return TRUE if handled
611
612         * gtk/gtkcolorsel.c (mouse_release):
613         (palette_activate): 
614         (palette_press): 
615         (palette_new): 
616         (mouse_press): 
617         (get_screen_color): 
618         fixed return type (void to gboolean), return TRUE,
619         added GTK_SIGNAL_FUNC cast
620
621         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
622         (void to gboolean), and return TRUE
623         (gtk_combo_button_release): changed return value to TRUE after
624         gtk_grab_add on combo->popwin
625
626         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
627         collapse or expand
628
629         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
630         button/motion
631
632         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
633         press/release and motion that trigger act
634
635         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
636
637         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
638         for GDK_Return
639         
640         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
641         (gtk_list_button_release): return TRUE if selection
642
643         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
644         press
645
646         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
647         (gtk_menu_shell_button_release): chain parent_menu_shell retval
648
649         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
650         nothing triggered
651         (gtk_notebook_button_release): return TRUE if we do anything
652
653         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
654         (gtk_spin_button_button_release): return TRUE or chained retval
655
656         * gtk/gtktext.c (gtk_text_button_press): 
657         (gtk_text_button_release): return TRUE
658         (gtk_text_key_press): remove redundant retval code
659         
660         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
661         and sensitive
662         (gtk_tree_item_subtree_button_click): changed type to gint, and return
663         TRUE if sensitive
664
665         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
666         return TRUE
667
668 2001-03-23  Havoc Pennington  <hp@redhat.com>
669
670         * gtk/testgtk.c: fix warnings
671
672         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
673
674         * gtk/gtktextview.c: fix warnings
675
676         * gtk/gtktext.c (find_cursor_at_line): fix warning
677
678         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
679
680         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
681         of this function
682
683         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
684         fix warning
685
686         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
687
688         * gtk/gtkfontsel.c: fix warning
689
690         * gtk/gtkcolorsel.c: fix warnings
691
692 2001-03-23  Havoc Pennington  <hp@redhat.com>
693
694         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
695
696         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
697
698         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
699         and deprecated gtk_check_menu_item_set_show_toggle().
700         
701         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
702
703         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
704
705         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
706
707 2001-03-23  Havoc Pennington  <hp@redhat.com>
708
709         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
710         some docs
711
712 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
713
714         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
715         this.
716
717         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
718         set_cell to set_value
719
720         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
721         set_cell to set_value
722
723 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
724
725         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
726         fix braino.
727         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
728         support.
729
730         * gtk/gtktreeview.c: Addition of initial sortable support.
731
732         * gtk/gtktreestore.c: Addition of initial sortable support.
733
734         * gtk/gtkliststore.c: Addition of initial sortable support.
735
736         * gtk/gtkmarshal.list: yet another marshaller.
737
738         * gtk/gtktreedatallist.[ch]: shared code between the store models
739         for handling sorting headers.
740
741 2001-03-22  Havoc Pennington  <hp@redhat.com>
742
743         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
744         (gtk_container_unset_focus_chain): Add ability to override the 
745         focus chain for a container explicitly
746
747 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
748
749         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
750         added PROP_MNEMONIC_WIDGET.
751
752         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
753         (gtk_window_remove_mnemonic): 
754         (gtk_window_add_mnemonic): fixed assertions.
755         (gtk_window_activate_mnemonic): constrain modifier checks to those
756         permitted by gtk_accelerator_get_default_mod_mask().
757         got rid of gtk_window_get_default_accel_group().
758
759         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
760         activatable widgets either by focussing or a warning.
761         added a signal accumulator to ::activate_mnemonic which stops the
762         emission once a handler returned TRUE.
763
764 2001-03-22  Havoc Pennington  <hp@pobox.com>
765
766         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
767         the stock item label
768
769         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
770
771         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
772
773         * demos/gtk-demo/*.c: Add mnemonics all over the place
774
775         * gtk/gtklabel.h: mark parse_uline deprecated
776
777 2001-03-21  Alexander Larsson  <alexl@redhat.com>
778
779         * gtk/gtkitemfactory.[ch]:
780         Add support for stock and normal imagemenuitems.
781         
782         * gtk/testgtk.c:
783         Add some tests for mnemonics, stock toolbars, stock
784         and image menuitems in itemfactory and gdk_window_scroll.
785
786 2001-03-21  Alexander Larsson  <alexl@redhat.com>
787
788         * gtk/gtkbutton.[ch]:
789         * gtk/gtkdialog.c:
790         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
791         removed accel_group argument. Renamed gtk_button_new_accel() to
792         gtk_button_new_with_mnemonic() and removed accel_group argument.
793
794         * gtk/gtkcheckbutton.[ch]:
795         New function gtk_check_button_new_with_mnemonic().
796
797         * gtk/gtkentry.c:
798         Override activate_mnemonic and just grab focus.
799
800         * gtk/gtkitemfactory.c:
801         Don't add menu uline accel group, instead use mnemonics support.
802
803         * gtk/gtklabel.[ch]:
804         New support for mnemonics.
805
806         * gtk/gtkmarshal.list:
807         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
808
809         * gtk/gtkmenu.[c]:
810         * gtkmenushell.c:
811         Use mnemonics instead of accel groups for uline
812         support in menu items.
813         Removed gtk_menu_get_uline_accel_group() and
814         gtk_menu_ensure_uline_accel_group().
815
816         * gtk/gtkmenuitem.c:
817         Override activate_mnemonic to handle switching between
818         menu items if there are collisions.
819         
820         * gtk/gtknotebook.c:
821         Connect to activate_mnemonic on the tab_label, so that
822         activating it switches to that notebook page.
823
824         * gtk/gtkwidget.[ch]:
825         Add activate_mnemonic signal. New function
826         gtk_widget_activate_mnemonic() to emit it.
827         Default implementation does activate/grab_focus.
828
829         * gtk/gtkwindow.[ch]:
830         Add support for mnemonics in windows.
831         New functions:
832         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
833         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
834
835         * gtk/testgtk.c:
836         Update to function name changes.
837         
838 2001-03-21  Alexander Larsson  <alexl@redhat.com>
839
840         * gtk/gtkimagemenuitem.[c]:
841         Add gtk_image_menu_item_new_from_stock()
842
843 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
844
845         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
846         Fix buglet in meeting.
847
848 2001-03-19  Havoc Pennington  <hp@redhat.com>
849
850         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
851         add a bunch of accessor functions. This is because we have
852         reasonable expectations of extending what fields it contains in
853         the future.
854
855         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
856         changes
857
858         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
859         GtkIconSource   
860
861 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
862
863         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
864         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
865
866         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
867           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
868           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
869           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
870         Change float to double everywhere with the exception of 0<->1.0 alignment
871         and GtkCurve.
872
873 2001-03-19  Tor Lillqvist  <tml@iki.fi>
874
875         * gdk/win32/gdkdrawable-win32.c
876         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
877         output.
878
879         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
880         gdkwin32.h.
881
882 2001-03-18  Tor Lillqvist  <tml@iki.fi>
883
884         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
885         print_event_state, print_event): Use preprocessor macro to make
886         code more compact. Print also GDK_WINDOW_STATE events.
887         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
888         
889         * gtk/gtk.def
890         * gtk/makefile.mingw.in: Update.
891
892         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
893         to catch also Cygwin.
894
895 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
896
897         * gtk/gtkspinbutton.[hc]: added rc-style argument
898         GtkSpinButton::shadow_type.
899         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
900         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
901         rc-style settings.
902
903         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
904
905         * gtk/gtkwidget.c: quark cleanups.
906
907         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
908         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
909         to create_rc_style() (we don't do cloning in standard OO sense).
910         added per rc style properties.
911         
912         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
913         property values and for caching those. some cleanups.
914         
915         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
916         
917         * gtk/gtksettings.[hc]: new file for global rc-file properties
918         (at least currently, should get extended to support X properties
919         and other communication mechanisms).
920         
921         * gtk/gtkwidget.[hc]: added style property support:
922         (gtk_widget_class_install_style_property_parser): install style
923         property pspec with parser function for rc-file values other
924         than LONG, DOUBLE or STRING.
925         (gtk_widget_class_install_style_property): same as above without
926         parser (parsers are going to be needed quite infrequently).
927         (gtk_widget_style_get_property): retrive style property value.
928         (gtk_widget_style_get_valist): same as above with varargs support,
929         has NOCOPY semantics.
930         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
931
932 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
933
934         * demos/gtk-demo/main.c (row_activated_cb): modified to use
935         "row_activated" signal.
936
937         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
938         stupidity.  Lets actually pass in the row with this signal...
939
940 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
941
942         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
943
944         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
945
946         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
947         everything into the ::destroy function, and freed a lot more.
948
949 2001-03-16  Havoc Pennington  <hp@redhat.com>
950
951         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
952         instead of gint16, to avoid overflow issues, since sizes > 16-bit
953         are now allowed.
954
955 2001-03-16  Havoc Pennington  <hp@redhat.com>
956
957         * Applied patch from Nils Barth (bug # 51041) to 
958         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
959         in various places.
960
961 2001-03-15  Havoc Pennington  <hp@redhat.com>
962         
963         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
964         for properties to set on the tag.
965
966         * gtk/testtext.c: fixups to reflect create_tag change
967         
968         * gtk/gtktexttag.c (gtk_text_tag_set_property):
969         background/foreground stipple are objects, not boxed.
970
971         * demos/gtk-demo/textview.c: intellihancing
972
973 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
974
975         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
976         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
977
978 2001-03-16  Alexander Larsson  <alexl@redhat.com>
979
980         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
981         Fix sign error with queued region translations.
982
983 2001-03-15  HideToshi Tajima  <tajima@happy>
984
985         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
986         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
987         * gtk/gtkentry.c (update_im_cursor_location): 
988         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
989         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
990         set_cursor_pos to set_cursor_location in GtkInputContext class
991
992 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
993
994         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
995         the location of the cell relative to its area.
996         * gtk/gtkcell*: modified for above change
997         * gtk/gtktreeview.c: modified for above change.
998
999 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1000
1001         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1002          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1003         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1004
1005 2001-03-14  Havoc Pennington  <hp@redhat.com>
1006
1007         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1008         
1009         * gtk/gtk.h: remove gtkdata.h
1010
1011         * gtk/Makefile.am: remove gtkdata
1012         
1013         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1014         not "disconnect" on the adjustments.
1015         
1016         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1017         GtkData
1018
1019         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1020         not GtkData
1021
1022         * configure.in: handle case where X render exists, but Pango lacks
1023         Xft support.
1024
1025 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1026
1027         * gtk/gtktoolbar.[ch]:
1028         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1029         to add stock items to toolbars.
1030
1031         * gtk/Makefile.am:
1032         Remove ../gdk/gdkim.h from gdk_headers.
1033
1034 2001-03-15  Sven Neumann  <sven@gimp.org>
1035
1036         * gdk/gdkim.h: removed
1037         
1038         * gdk/gdkprivate.h
1039         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1040
1041 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1042
1043         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1044         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1045         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1046         set_cursor_pos() virtual method
1047
1048         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1049         (gtk_im_context_xim_set_cursor_pos): add implementation for
1050         set_cursor_pos() method
1051
1052         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1053         position to input methods
1054
1055 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1056
1057         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1058         code a lot.
1059
1060         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1061         g_mem_chunk.
1062         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1063         (_gtk_tree_data_list_node_to_value): Fix to switch on
1064         G_TYPE_FUNDAMENTAL.
1065         (_gtk_tree_data_list_value_to_node): Fix to switch on
1066         G_TYPE_FUNDAMENTAL.
1067         (_gtk_tree_data_list_node_copy): Fix to switch on
1068         G_TYPE_FUNDAMENTAL.
1069
1070 2001-03-12  Havoc Pennington  <hp@redhat.com>
1071
1072         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1073         to convert to new property API. Also, change default_width and
1074         default_height get_property to return 0 as the flag value for
1075         "unset"; -1 is not a valid value for these fields.
1076
1077 2001-03-12  Havoc Pennington  <hp@redhat.com>
1078
1079         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1080         enum with registration for icon sizes, instead of strings.
1081
1082         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1083         gtkwidget.c: Fix to reflect GtkIconSize
1084         
1085 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1086
1087         Make GtkFB compile and link.
1088         
1089         * gdk/linux-fb/gdkdrawable-fb2.c:
1090         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1091         
1092         * gdk/linux-fb/gdkwindow-fb.c:
1093         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1094         Added gdk_window_shape_combine_region.
1095         Added assorted placeholders for unimplemented new GdkWindow API calls.
1096
1097 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1098
1099         * gtk/gtkfilesel.c:
1100         Add more test when converting filenames from/to utf-8.
1101         Don't allow entering text in the filename entry which isn't allowed in
1102         a filename. Just beep instead.
1103
1104 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1105
1106         * gtk/gtkclist.c:
1107         Scroll using gdk_window_scroll(). Don't wait for exposes.
1108         Move the column headers in an order that makes them flash less.
1109
1110 2001-03-10  Hans Breuer  <hans@breuer.org>
1111
1112         * gdk/gdk.def : updated
1113
1114         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1115         to offseting the clip_mask at the right place
1116
1117         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1118         for all the gdkClasses, especially not for the input_only case.
1119         Otherwise flickering wont be avoidable, because we don't get
1120         WM_ERASEBKGND message for these windows.
1121
1122         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1123         and fixed massive redraw problems apparently triggered by Alexanders 
1124         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1125         but it seems to work quite well :-)
1126
1127         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1128         prototype
1129
1130 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1131
1132         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1133         (gtk_list_store_set_cell): Fix a stupid typo.
1134
1135 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1136
1137         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1138         select_all not work if you're in SINGLE mode (it doesn't make that
1139         much sense, anyway.)
1140
1141         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1142         handle types more sanely.
1143         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1144         (_gtk_tree_data_list_node_copy): handle types more sanely.
1145
1146         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1147         GValue better. Converts the type as well.
1148
1149         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1150         GValue better. Converts the type as well.
1151
1152 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1153
1154         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1155         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1156         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1157         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1158
1159         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1160         gdk_im/gdk_ic.
1161
1162 2001-03-09  Hans Breuer  <hans@breuer.org>
1163
1164         * gdk/gdk.def : updated
1165
1166         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1167         for their palette
1168
1169         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1170         removing
1171
1172         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1173         removing and implemented Havoc's GdkWindow state functions; 
1174         stick/unstick only as no-op, cause I don't know how to emulate 
1175         on win32 ...
1176
1177         * gtk/gtk.def : updated
1178
1179         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1180
1181         * gtk/gtktypeutils.c : #include <string.h>
1182
1183         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1184
1185 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1186
1187         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1188         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1189         not a boxed.
1190
1191 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1192
1193         * docs/Changes-2.0.txt:
1194         Document expose event->region change and that gtk_widget_event
1195         doesn't allow passing expose events.
1196
1197         * gdk/gdkevents.h:
1198         Add region to expose event.
1199         
1200         * gdk/gdkevents.c:
1201         Handle event->region in gdk_event_copy() and gdk_event_free().
1202
1203         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1204         Generate expose_event->region when creating expose events.
1205
1206         * gdk/x11/gdkevents-x11.c:
1207         Generate expose events with regions when translating X events.
1208
1209         * gtk/gtkcontainer.[ch]:
1210         Default expose handler that propagates expose events to NO_WINDOW
1211         children. New function gtk_container_propagate_expose()
1212
1213         * gtk/gtkwidget.[ch]:
1214         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1215         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1216         expose events. New function gtk_widget_send_expose() to send expose
1217         events. New function gtk_widget_region_intersect() to calculate
1218         window/region intersections.
1219         
1220         * gtk/gtkmain.c (gtk_main_do_event):
1221         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1222         Use gtk_widget_send_expose() to send expose events.
1223         
1224         * gtk/gtkbin.c:
1225         * gtk/gtkbox.c:
1226         * gtk/gtkfixed.c:
1227         * gtk/gtkimagemenuitem.c:
1228         * gtk/gtklist.c:
1229         * gtk/gtkpacker.c:
1230         * gtk/gtktable.c:
1231         * gtk/gtktree.c:
1232         Remove expose handler, using the default container implementation
1233         instead.
1234         
1235         * gtk/gtkbutton.c:
1236         * gtk/gtkcheckbutton.c:
1237         * gtk/gtkeventbox.c:
1238         * gtk/gtkfixed.c:
1239         * gtk/gtkhandlebox.c:
1240         * gtk/gtklayout.c:
1241         * gtk/gtklistitem.c:
1242         * gtk/gtkmenu.c:
1243         * gtk/gtkmenubar.c:
1244         * gtk/gtkmenuitem.c:
1245         * gtk/gtknotebook.c:
1246         * gtk/gtkoptionmenu.c:
1247         * gtk/gtkpaned.c:
1248         * gtk/gtkscrolledwindow.c:
1249         * gtk/gtktogglebutton.c:
1250         * gtk/gtktoolbar.c:
1251         * gtk/gtktreeitem.c:
1252         * gtk/gtkviewport.c:
1253         Chain expose handler to parent class handler. Use
1254         gtk_container_propagate_expose() to propagate exposes.
1255
1256         * gtk/gtkclist.c (check_exposures):
1257         * gtk/gtktext.c (process_exposes):
1258         Use gtk_widget_send_expose instead of gtk_widget_event.
1259
1260 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1261
1262         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1263
1264 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1265
1266         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1267         unref the nodes.   Fixes bug #50058.
1268
1269         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1270         "::ref_iter" to "::ref_node".
1271         (gtk_tree_model_unref_node): change "::unref_iter" to
1272         "::unref_node". Fixes bug #50064.
1273
1274 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1275
1276         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1277         support for invisible cells.
1278          (gtk_tree_view_bin_expose): ditto
1279
1280 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1281
1282         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1283         on gobjects.
1284
1285         * tests/testtreefocus.c (main): New test file.
1286
1287         * tests/testtreeview.c: update to latest glib changes.
1288
1289         * tests/testtreecolumns.c: update to latest glib changes.
1290
1291 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1292
1293         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1294
1295 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1296
1297         * *.c: added accumulator data argument to g_signal_newc()
1298         functions.
1299
1300         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1301         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1302         * gtk/treestoretest.c (make_window):
1303         s/g_signal_connect/g_signal_connectc/.
1304
1305         * gtk/gtktextbuffer.c: completed signal arg fixups,
1306         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1307
1308 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1309
1310         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1311         G_CONST_RETURN.
1312
1313         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1314         ::hierarchy-changed signal when a widget changes
1315         from anchored to unanchored or vice versa.
1316         (anchored means 
1317          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1318         Use a private flag to keep track of this efficiently.
1319
1320 2001-03-07  Havoc Pennington  <hp@redhat.com>
1321
1322         * gtk/testgtk.c (create_spins): uglify so that size request gets
1323         tested.
1324
1325         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1326         request on values for upper/lower, completes #6152
1327
1328 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1329
1330         * Makefile.am: Remove gtk-config-2.0 again.
1331         (Grrrr, pkg-config. And stops make loops.)
1332
1333 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1334
1335         * gtk/gtksignal.[hc]: removed old emission hook API.
1336         
1337         * docs/Changes-2.0.txt: fixed sections.
1338         
1339         * gtk/gtktextbuffer.c: signal arg fixups.
1340
1341 2001-03-07  Havoc Pennington  <hp@redhat.com>
1342
1343         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1344
1345         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1346         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1347         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1348         validation and the redraw which is higher priority than the
1349         validation.
1350
1351 2001-03-07  Havoc Pennington  <hp@redhat.com>
1352
1353         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1354         (gtk_entry_set_property): remove trailer
1355
1356         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1357         (gtk_entry_get_width_chars): new functions, to set size request to 
1358         a given number of characters
1359
1360         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1361
1362         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1363         (gtk_dialog_get_has_separator): new function
1364         (run_delete_handler): fix to not emit "response" signal
1365         because we already did in the delete event handler installed
1366         at dialog creation time.
1367         
1368         * gtk/gtkdialog.h: add a has_separator property,
1369         add GTK_DIALOG_NO_SEPARATOR flag
1370
1371 2001-03-07  Havoc Pennington  <hp@redhat.com>
1372
1373         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1374         off decorations for a window.
1375
1376         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1377         changes
1378
1379         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1380         to get location of PangoLayout inside the label, closes #51198
1381
1382         * gtk/testgtk.c (create_bbox): fix up button box usage
1383
1384         * gtk/testcalendar.c (create_calendar): fix up button box usage
1385
1386         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1387
1388         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1389
1390         * gtk/gtkhbbox.h: deprecations
1391
1392         * gtk/gtkvbbox.h: deprecations
1393
1394         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1395         emulate deprecated gtk_button_box_get_spacing
1396
1397         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1398         the "set global default" functions
1399         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1400         GtkBox base class
1401
1402         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1403
1404         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1405         render the icon, return the missing image icon.
1406
1407         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1408         image icon if the load fails.   
1409
1410         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1411         when no image is found; should be the Netscape "missing image"
1412         icon eventually but for now is a random image
1413
1414         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1415         role for the session manager
1416
1417         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1418
1419         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1420         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1421
1422         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1423
1424 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1425
1426         * gtk/*.c: marshaller fixes.
1427         
1428         * gtk/gtkmarshal.list: extreme cleanup.
1429
1430         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1431         param spec for now.
1432
1433         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1434         where appliable.
1435
1436         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1437         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1438         which are not reference counted:
1439         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1440         PangoFontDescription, GtkTreeIter and GtkTreePath.
1441
1442 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1443
1444         * gtk/gtktreeselection.h: 
1445         * gtk/gtktreemodel.c:
1446         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1447         file should be included directly, and gobject/gmarshal.h
1448         as well as gtk/gtkmarshal.h even can't be included directly.
1449
1450         * Makefile.am: grr, install gtk-config-2.0.
1451
1452         * gtk/testgtk.c:
1453         * gtk/simple.c:
1454         * gtk/gtkmenu.c:
1455         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1456         passing "*signal*::*" args to gtk_widget_set().
1457         
1458         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1459         
1460         * gtk/*.c: removed trailer arg from property setters and getters.
1461         macro fixups.
1462
1463 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1464
1465         * gtk/gtklabel.c (set_markup): Removed warning
1466
1467 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1468
1469         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1470         field to allow you to hide cell renderers.
1471
1472         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1473
1474         * gtk/gtktreeview.c: Add support for invisible cells.
1475
1476 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1477
1478         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1479         Add "clicked" signal back to columns.
1480
1481         * ChangeLog: remove conflict markers.
1482
1483 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1484
1485         * gtk/gtkbutton.c: Add animation of activation by, on 
1486         activate, pressing the button, and adding a timeout that 
1487         releases the button after 250ms or on key release and
1488         emits ::clicked. (#51501)
1489
1490         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1491         action area, we connect to ::clicked instead of ::activate
1492         so the dialog stays up through the animation.
1493
1494 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1495
1496         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1497         check the ignore_enter flag for the menu shell that
1498         the item is actually a child of, not for attached
1499         submenus. (#51536)
1500
1501 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1502
1503         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1504         special key-press grab handling for widgets within
1505         GtkWindows. Otherwise, fall through to normal case.
1506
1507         This prevents key events being sent twice to GtkInvisible
1508         widgets, which can cause all sorts of mischief.
1509
1510 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1511
1512         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1513         widget is in effect, give the grab widget a first
1514         crack at KEY_PRESS/RELEASE events. (#424)
1515
1516 2001-03-06  James Henstridge  <james@daa.com.au>
1517
1518         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1519         offset for the window_state_event to point at window_state_event
1520         rather than no_expose_event.
1521
1522 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1523
1524         * gtk/gtkimmodule.h: fix busted /* comment */
1525
1526 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1527
1528         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1529         object properties.
1530
1531 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1532
1533         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1534         add object properties.
1535
1536         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1537         to add object properties.
1538
1539         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1540         object properties.
1541
1542         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1543         add object properties.
1544
1545         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1546         object properties.
1547
1548 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1549
1550         * gtk/gtktreemodel.c: renamed "child_toggled" to
1551         "has_child_toggled".
1552
1553         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1554         handle new signal name.
1555
1556         * gtk/gtktreestore.c: Updated to handle new signal name.
1557         * gtk/gtklisttore.c: Updated to handle new signal name.
1558         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1559
1560 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1561
1562         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1563         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1564
1565 2001-03-05  Michael Natterer  <mitch@gimp.org>
1566
1567         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1568         pixbuf-engine coincidentially also failed to make one of it's
1569         parent_class pointers static, causing overwriting of GtkLabel's
1570         parent_class pointer in pixbuf_style_class_init().
1571         (Will commit the fix to the pixbuf-engine too).
1572
1573 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1574
1575         * gdk/gdkwindow.h:
1576         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1577         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1578         gdk_window_set_icon_list for net wmspec functionality.
1579
1580         * gdk/x11/gdkwindow-x11.c:
1581         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1582         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1583         gdk_window_set_icon_list.
1584         Added gdk_wmspec_change_state helper function and used it in the code.
1585         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1586
1587         * gtk/gtkdialog.c (gtk_dialog_init):
1588         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1589
1590         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1591         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1592
1593         * gtk/gtkwindow.c:
1594         new function gtk_window_set_type_hint.
1595         On realize, set type hint and modal hint.
1596
1597         * gtk/gtkwindow.h:
1598         Added type_hint field and gtk_window_set_type_hint.
1599
1600 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1601
1602         * gtk/gtklabel.[ch]:
1603         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1604         New function gtk_label_get_accel_keyval () to get the underline accelerator
1605         of the label. Setting the label pattern overrides other attributes.
1606
1607 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1608
1609         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1610         Added missing initializers to gtk_rc_style_init().
1611
1612 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1613
1614         * gtk/gtktextview.c: fixed bug #51097 about setting 
1615         gtk_text_view_set_border_window_size() if the widget is 
1616         already realized.
1617
1618 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1619
1620         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1621
1622         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1623         comment. Won't do to have duplicated doc comments between
1624         the platform subdirs.
1625
1626 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1627
1628         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1629           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1630
1631         Detectable auto-repeat - make a repeating key generate
1632         press/press/press/release instead of press/release pairs.
1633
1634         If we have Xkb and XkbSetDectableAutoRepeat supports
1635         that, we do it that way. Otherwise, when we get
1636         a release event, we check ahead with XPending to see
1637         if the next key is a KeyPress with the same keycode
1638         and timestamp. (Not 100% reliable, but pretty close.)
1639           
1640 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1641         
1642         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1643         special key-press grab handling for widgets within
1644         GtkWindows. Otherwise, fall through to normal case.
1645  
1646         This prevents key events being sent twice to GtkInvisible
1647         widgets, which can cause all sorts of mischief.
1648  
1649 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1650  
1651         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1652         widget is in effect, give the grab widget a first
1653         crack at KEY_PRESS/RELEASE events. (#424)
1654  
1655 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1656
1657         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1658         to extend the selection. (Roughly based on patch
1659         from Jay Cox, #50939)
1660
1661         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1662         to properly handle previous GDK_BUTTON_PRESS. 
1663         (Patch from Jay Cox, #50938)
1664
1665         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1666         '\0' back along with the deleted text. (#51148)
1667
1668 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1669
1670         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1671         the group when extracting it from the X keyboard event.
1672
1673         * modules/input/Makefile.am modules/input/imipa.c: 
1674         Simple module for entering IPA. (Do we need a 
1675         gtk-stupid-input-tricks CVS module?)
1676
1677 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1678
1679         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1680         const.
1681
1682         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1683
1684         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
1685         is no focus widget for the dialog currently, grab the focus as well
1686         as the default.
1687
1688         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
1689         the action area's children to iterate through, not the
1690         dialog's children.
1691
1692 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
1693
1694         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
1695         Add plug-socket tests. (Won't work worth a darn until I commit
1696         the rest of the plug-socket changes, but no reason these
1697         can't go into CVS now.)
1698
1699 2001-03-02  Havoc Pennington  <hp@redhat.com>
1700
1701         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
1702         _gdk_region_get_xrectangles()
1703
1704         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
1705
1706         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1707
1708         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1709         function, contributed by Ron Steinke    
1710
1711         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1712         gdk_net_wm_supports
1713
1714         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1715         New function, contributed by Ron Steinke
1716
1717         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1718         used to line up the text in the entry when using the entry for
1719         editable sheet cell hacks
1720
1721         * gtk/testgtk.c (create_entry): test the activate_default setting
1722         on GtkEntry
1723
1724         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1725         cause the entry to activate the default button for a dialog when 
1726         activated
1727         (gtk_entry_get_activates_default): new function
1728
1729 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1730
1731         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1732         Hwang to move call to sync_selection() up a few lines
1733         to before the row list is modified, to fix crash when
1734         removing rows in the undo_selection list.
1735
1736         (Test case provided by Daniel Elstner:
1737
1738         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1739
1740 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1741
1742         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1743         of tree->root_tree in parent_set rather than _map(), 
1744         fixing #50892 in a bit better manner.
1745
1746 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1747
1748         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1749
1750 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1751
1752         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1753         gtk_default_draw_shadow.
1754
1755 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1756
1757         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1758         warning, make warnings more verbose, treat a error
1759         in shmat as permanent, and don't try again.
1760         (#51163, Ed Randall.)
1761
1762 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1763
1764         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1765         delay for the first click before starting to scroll.
1766         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1767
1768         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1769         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1770
1771 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1772
1773         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1774         cleanup to remove some references to unused
1775         ->xoffset, ->yoffset.
1776
1777 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1778
1779         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1780         mask. (#51039, fix from Martin Maierhofer)
1781
1782 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1783
1784         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1785         for unshifted + and shifted = for non-us keyboards.
1786         Make <Control>+ and <Control>- work as well as 
1787         <Control>KP_Plus, <Control>KP_Minus for recursive
1788         open/close.  (#2682, René Seindal)
1789
1790 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1791
1792         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1793         the active menu item before deactivating the menu,
1794         so gtk_menu_popdown doesn't change the history. (#50964)
1795         
1796 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1797
1798         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1799         draw lines with text_gc rather than black_gc.
1800         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1801
1802 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1803
1804         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1805         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1806         less interrelated then it was, but it still requires the
1807         GtkTreeView to map it.
1808
1809         * test/testtreecolumn.c: Now I can add a column to one view,
1810         remove it, add it to the another view, remove it, then re-add it
1811         to the first.  Nifty.
1812
1813 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1814
1815         * docs/tutorial/gtk-tut.sgml: Minor corrections
1816
1817 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1818
1819         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1820         GtkRowReference.
1821
1822 2001-02-28  Havoc Pennington  <hp@redhat.com>
1823
1824         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1825         draw_default
1826         (gtk_widget_draw_focus): remove this function; we could instead
1827         make it just gtk_widget_draw(), but in most cases I think the
1828         result would be broken user code, so think it's better to have
1829         that code not compile and get fixed
1830         (gtk_widget_draw_default): ditto
1831
1832         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1833         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1834         
1835         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1836         widgets lose/get the default, instead of calling draw_default
1837         
1838         * docs/Changes-2.0.txt: note about all this
1839
1840         Then fixed every widget in GTK, I won't list all the filenames.
1841
1842 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1843
1844         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1845         _gtk_tree_row_reference_deleted.
1846         (inserted_callback): Proxy out to
1847         _gtk_tree_row_reference_inserted.
1848         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1849         get around signal emission ordering problem.
1850
1851         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1852         fix to work with SINGLE 
1853         (_gtk_tree_selection_internal_select_node): Major sanitization on
1854         selections.  SINGLE now seems to work.
1855
1856         * tests/Makefile.am: add testtreecolumn.c:
1857
1858         * tests/testtreecolumn.c: New test.  Mostly points out selection
1859         bugs currently, but will test columns later.
1860
1861         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1862         selection bug.  I hate touching this code -- it's scary.
1863
1864 2001-02-26  Havoc Pennington  <hp@redhat.com>
1865
1866         * gtk/testgtk.c: test the window state stuff
1867
1868         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1869         window come to the user's attention as if it were just created
1870         (gtk_window_iconify): new function
1871         (gtk_window_deiconify): new function
1872         (gtk_window_stick): new function
1873         (gtk_window_unstick): new function
1874         (gtk_window_maximize): new function
1875         (gtk_window_unmaximize): new function
1876
1877         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1878
1879         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
1880
1881         * gdk/x11/gdkevents-x11.c: create window state events when
1882         appropriate
1883         (gdk_wmspec_supported): new function
1884
1885         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
1886         iconification before showing the window
1887         (gdk_window_deiconify): new function
1888         (gdk_window_stick): new function
1889         (gdk_window_unstick): new function
1890         (gdk_window_maximize): new function
1891         (gdk_window_unmaximize): new function
1892
1893         * gdk/gdkwindow.c: store the window state in the window; 
1894         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
1895         window->mapped.
1896         (gdk_window_get_state): return the current window state
1897
1898         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
1899         (gdk_event_get_state): handle GDK_WINDOW_STATE
1900         (gdk_synthesize_window_state): function to create the window state
1901         events
1902
1903         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
1904         event, for changes to "window state" such as maximized, sticky, 
1905         etc.
1906         
1907         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
1908         focuses a window
1909
1910         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
1911         finds out if we support a given WM spec hint
1912
1913 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
1914
1915         * docs/faq/gtk-faq.sgml: New question re memory leaks.
1916
1917 2001-02-25  Hans Breuer  <hans@breuer.org>
1918
1919         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
1920         cause we want to loose those prototypes only in the latter case
1921
1922         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
1923         GdkPixmapImplWin32 because it itsn't derived from it. Use the
1924         impl member variable instead
1925
1926         * gtk/gtk.def : updated
1927
1928         * gtk/gtklist.c : 
1929         * gtk/gtkmenus.c : include <string.h> for memset ()
1930
1931         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
1932         for everthing built here, but for gtk-x.x.dll only. This solves
1933         problem of indifferent gtk type definitions
1934
1935 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
1936
1937         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
1938
1939 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
1940
1941         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
1942         column that is exposed.
1943
1944         (_gtk_tree_view_update_size): Changed name from set_size, and
1945         changed function to do more work, and not force people calling it
1946         to figure out the size.  Simplifies a lot of code elsewhere.
1947
1948 2001-02-23  Alexander Larsson  <alexl@redhat.com>
1949
1950         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
1951         return solid masks for xpms that have no transparent color.
1952         This makes the ..._create_from_xpm... API backwards
1953         compatible.
1954
1955 2001-02-23  Tor Lillqvist  <tml@iki.fi>
1956
1957         * README.win32: Update. Mention the gtk-1-3-win32-production
1958         branch.
1959
1960         * gdk/win32/bdfcursor.c: New file. A program that generates
1961         xcursors.h. Thanks to Stefan Ondrejicka.
1962
1963         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
1964         compact format.
1965
1966         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
1967
1968         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
1969         function, uses xcursors.h.
1970         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
1971         cursor from inline data instead of using LoadCursor() to generate
1972         it from a resource.
1973
1974         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
1975         event, must check the Windows message for mouse button state, as
1976         the GDK event state might not have been built if it is
1977         undelivered. Remove one goto.
1978
1979         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
1980         SetCursor() if the current cursor as returned by GetCursor() is
1981         the window's previous cursor. The ChildWindowFromPoint() test
1982         apparently didn't work correctly.
1983
1984         * gdk/win32/rc/*.cur: Remove.
1985
1986         * gdk/win32/rc/gdk.rc.in: Remove cursors.
1987
1988         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
1989
1990         * gtk/makefile.{mingw,msc}.in: Updates.
1991
1992 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
1993
1994         * gtk/gtktreemodel.h: add functions for signal emission.
1995
1996         * gtk/gtktreestore.c: move to use above functions instead of
1997         g_signal_emit.
1998
1999         * gtk/gtkliststore.c: ditto
2000
2001 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2002
2003         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2004         GObject instead of GtkObject.
2005
2006         * gtk/gtkliststore.c: ditto.
2007
2008         * gtk/gtktreemodelsort.c: ditto.
2009
2010         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2011         GtkTreeModelIface, instead of in each model.
2012
2013 2001-02-21  Havoc Pennington  <hp@redhat.com>
2014
2015         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2016         unbreak this function
2017
2018         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2019         properties
2020
2021         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2022         properties
2023
2024         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2025         properties
2026
2027         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2028         mean unset the max length
2029
2030 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2031
2032         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2033         Changed name to be set_cell_data_func to make it clear what
2034         the functino does.  Close bug #51069.
2035
2036 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2037
2038         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2039         have memory actually freed.  Keeps box running longer.
2040
2041 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2042         
2043         * gtk/gtkseparatormenuitem.[ch]:
2044         Added new menu separator item. The drawing and size handling
2045         is still done in GtkMenuItem, but the API is a bit more sane.
2046         
2047         * gtk/Makefile.am:
2048         Add gtkseparatormenuitem.[ch].
2049
2050         * gtk/gtk.h:
2051         Add gtkseparatormenuitem.h.
2052         
2053         * gtk/gtkentry.c:
2054         * gtk/gtkmenufactory.c:
2055         * gtk/gtktextview.c:
2056         Use the new API for menu separators.
2057         
2058         * demos/gtk-demo/menus.c (create_menu):
2059         Add some GtkSeparatorMenuItem demo code.
2060
2061 2001-02-20  Havoc Pennington  <hp@redhat.com>
2062
2063         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2064         Lee Mallabone
2065
2066         * gtk/gtkarrow.c: Convert to new property API, patch from 
2067         Lee Mallabone
2068
2069 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2070
2071         * tests/testtreeview.c (toggled_callback): fix to reflect change
2072         in GtkTreeModelStore.
2073
2074 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2075
2076         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2077         function to create an icon set from a pixbuf.
2078
2079 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2080
2081         * gtk/gtkcellrenderertext.[ch]:
2082         Add a "markup" property.
2083
2084         * gtk/treestoretest.c:
2085         Use the markup property, remove some leftover stuff from
2086         GtkTreeModelMapping.
2087
2088 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2089
2090         * gtk/gtklabel.c (gtk_label_set_selectable):
2091         Queue a redraw if the selectable setting was changed.
2092
2093 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2094
2095         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2096         Actually copy the whole gc, not just the public parts.
2097         
2098         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2099         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2100         labels.
2101
2102 2001-02-19  Havoc Pennington  <hp@pobox.com>
2103
2104         * gdk/gdkwindow.c: docs
2105
2106         * gdk/gdkrgb.c: docs
2107
2108         * gdk/gdkregion-generic.c: docs
2109
2110         * gdk/gdkgc.c (gdk_gc_set_values): docs
2111
2112         * gdk/gdkdraw.c: docs
2113
2114         * gdk/gdkdrawable.h: deprecate drawable get/set data
2115
2116 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2117
2118         * demos/gtk-demo/dialog.c: Add simple new demo.
2119
2120 2001-02-19  Havoc Pennington  <hp@redhat.com>
2121
2122         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2123         insert_child_anchor signal, bug #50245
2124
2125         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2126         from create_child_anchor, so the anchor is passed in
2127
2128         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2129         (_gtk_widget_segment_new): have the child anchor object passed in, 
2130         instead of creating it.
2131
2132         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2133         to gtk_text_buffer_get_modified
2134
2135 2001-02-19  Havoc Pennington  <hp@redhat.com>
2136
2137         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2138         changed GLib without fixing GTK
2139
2140         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2141         functions to have an underscore in front. Most of them should 
2142         probably just go away, but for starters don't export them.
2143         Bug #50482
2144
2145 2001-02-19  Havoc Pennington  <hp@redhat.com>
2146
2147         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2148         excluded by default
2149
2150         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2151         clean up the old code a bit
2152
2153         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2154         inconsistent state
2155
2156         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2157         draw inconsistent state
2158
2159         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2160         (create_menu): add inconsistent test
2161
2162         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2163         new function
2164         (gtk_check_menu_item_get_inconsistent): new function
2165         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2166         state (using etched in for now)
2167
2168         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2169         draw inconsistent state
2170
2171         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2172         function, used when the user has selected a range of stuff in
2173         different states
2174         (gtk_toggle_button_get_inconsistent): accessor for that
2175         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2176         don't know what else to do)
2177
2178 2001-02-19  Hans Breuer <hans@breuer.org>
2179
2180         * gtk/gtk.def : updated exported symbols
2181
2182         * gtk/makefile.msc.in : updated
2183
2184         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2185         a colormap, when invoked from testgtk::entry. I'm not sure where
2186         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2187         avoids immediate crashing ...
2188
2189         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2190         any objections ?
2191
2192         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2193         0 parameter. At least msvc doesn't like macros with var args. 
2194         I simply removed the extra 0, was it a feature or a typo ?
2195
2196         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2197         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2198         because the value assignment to the internal struct wasn't working.
2199         I'm not absolutely sure. The problem could have been resolved by
2200         changing the "func" declartion in the struct, but was the pointer
2201         to the function pointer intended ?
2202
2203         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2204
2205         * gdk/gdk.def : updated exported symbols
2206
2207         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2208         only use SetDIBitsToDevice if there is a palette at the drawable
2209         and the image is GDK_VISUAL_PSEUDO_COLOR
2210
2211         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2212
2213         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2214
2215         * gdk/*/makefile.msc : updated
2216
2217 2001-02-19  Havoc Pennington  <hp@redhat.com>
2218
2219         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2220         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2221
2222         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2223         (gdk_key_repeat_restore): nuke
2224
2225         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2226         (gdk_init_check): no atexit func
2227
2228         * gdk/gdkrgb.h: mark some stuff deprecated
2229
2230         * gdk/gdkcolor.h: mark some stuff deprecated
2231         
2232         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2233
2234         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2235
2236 2001-02-16  Havoc Pennington  <hp@redhat.com>
2237
2238         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2239         scroll steps.
2240
2241         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2242         steps, and add Ctrl-arrow shortcuts for paging visually as with
2243         HScale, since Page Up and Page Down move logically.
2244
2245         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2246         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2247         
2248         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2249         steps
2250         (gtk_range_scroll): handle the visual steps
2251
2252         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2253         scroll steps
2254
2255         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2256         steps, not the logical ones.
2257
2258         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2259         (scroll_vertical): handle up/down steps
2260
2261 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2262
2263         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2264         Copy data and free data with free().
2265
2266         * gdk-pixbuf/gdk-pixbuf.c:
2267         * gdk-pixbuf/io-jpeg.c:
2268         * gdk-pixbuf/io-png.c:
2269         Use g_try_malloc/g_free instead malloc/free.
2270         
2271         * gdk-pixbuf/test-gdk-pixbuf.c:
2272         Must... initialize... gobject...
2273         
2274         * gdk-pixbuf/pixops/timescale.c:
2275         * gtk/gtkcalendar.c:
2276         Use g_malloc instead of malloc.
2277         
2278 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2279
2280         * gtk/testgtkrc:
2281         Comment out property assignments, these don't work yet.
2282
2283 2001-02-17  Havoc Pennington  <hp@pobox.com>
2284
2285         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2286         bit.
2287
2288 2001-02-17  Havoc Pennington  <hp@pobox.com>
2289
2290         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2291         shadowed variables that had broken size request in some cases,
2292         leading to bogus tooltips (#50996)
2293
2294 2001-02-06  Jon K Hellan  <hellan@acm.org>
2295
2296         Implement fast browsing of tooltips, bug #50619
2297         
2298         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2299         and last_popdown
2300         
2301         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2302         use_sticky_delay and last_popdown.
2303         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2304         time of popdown.
2305         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2306         is NULL.
2307         (gtk_tooltips_recently_shown): New static function.  Return true
2308         if < sticky_delay has elapsed since last popdown.
2309         (gtk_tooltips_event_handler): Display window after sticky_delay
2310         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2311         since last popdown.
2312         
2313 2001-02-17  Havoc Pennington  <hp@pobox.com>
2314
2315         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2316         instead of (). #6394
2317
2318         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2319         G_CONST_RETURN, make it return by reference, #50473
2320         
2321 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2322
2323         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2324         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2325         setup fields contain garbage (e.g. subwindow, breaking
2326         gdk_drawable_ref() upon event copy).
2327         (gtk_menu_stop_navigating_submenu_cb): same here.
2328
2329         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2330         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2331         * gtk/gtkclist.c (vertical_timeout): 
2332         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2333         default-zero-intialization for unions to memset(,0,), as unions are
2334         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2335         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2336
2337         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2338         g_closure_sink() warning.
2339
2340         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2341         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2342         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2343         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2344         
2345 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2346
2347         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2348         gtk_*_store_get, and moved to GtkTreeModel.
2349
2350         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2351
2352         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2353
2354         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2355
2356         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2357         set the func.
2358
2359         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2360         freeze/thaw notify between setting all the properties for a cell.
2361
2362         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2363
2364 2001-02-15  Havoc Pennington  <hp@redhat.com>
2365
2366         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2367         the X coordinates so they're with respect to the line, rather than 
2368         with respect to the layout.
2369
2370         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2371         Mallabone
2372
2373         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2374         and inverted test
2375
2376         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2377         #50806
2378
2379         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2380
2381         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2382         gtk_text_iter_is_end
2383
2384         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2385         rename gtk_text_buffer_get_end_iter
2386
2387         * gtk/testgtk.c (create_labels): Add test for selectable
2388
2389         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2390         the selection stuff. This code is kind of broken since it doesn't 
2391         use the theme engine.
2392
2393         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2394         fix infinite loop and y offset problem
2395         (gdk_draw_layout_line_with_colors): fix foreground color handling
2396
2397         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2398         that makes the label selectable.
2399         
2400         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2401         layout when the style is set, since fonts etc. could have changed.      
2402
2403 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2404
2405         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2406
2407         * gtk/gtktreemodelsimple.[ch]: removed.
2408
2409 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2410
2411         * gtk/gtktreemodelmapping.[ch]:
2412         New files. Implement GtkTreeModelMapping.
2413         
2414         * gtk/Makefile.am:
2415         Add gtktreemodelmapping.[ch].
2416         
2417         * gtk/gtk.h:
2418         Add gtktreemodelmapping.h
2419
2420         * gtk/treestoretest.c:
2421         Test the GtkTreeModelMapping
2422
2423 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2424
2425         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2426         have a demo, we might as well pass in real values.  Thanks to
2427         clahey for pointing this out.
2428
2429 2001-02-14  Havoc Pennington  <hp@pobox.com>
2430
2431         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2432         "static" to a private function
2433         (gtk_image_menu_item_class_init): remove destroy handler,
2434         add "image" object property
2435
2436 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2437
2438         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2439         Add a shortcut if the window and the current clip_region doesn't
2440         overlap. This is needed when there are a lot of windows in a
2441         window. The layout test in testgtk is a good test.
2442
2443         * gdk/linux-fb/gdkwindow-fb.c:
2444         Whitespace fix.
2445
2446 2001-02-13  Sven Neumann  <sven@convergence.de>
2447
2448         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2449
2450 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2451
2452         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2453         Don't reference last_cursor if it is null. Fixes crash when rotating
2454         the screen before having moved the mouse.
2455
2456         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2457
2458         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2459
2460         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2461         when using 90 or 270 degrees rotation.
2462
2463 2001-02-12  Havoc Pennington  <hp@pobox.com>
2464
2465         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2466         it always set the foreground, even if we were only using
2467         a stipple.
2468         (gdk_draw_layout_line_with_colors): new function, allow
2469         override colors
2470         (gdk_draw_layout_with_colors): new function, allow override
2471         colors
2472         (gdk_pango_layout_line_get_clip_region): function to get the clip
2473         region for a logical text range
2474         (gdk_pango_layout_get_clip_region): get the clip region for a
2475         logical text range
2476
2477         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2478         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2479         the right number of arguments.
2480
2481         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2482         enhance the function to check that node data corresponds to a 
2483         view still belonging to the tree.
2484
2485         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2486         GtkTreePath
2487         (gtk_tree_view_inserted): ditto
2488         (gtk_tree_view_child_toggled): ditto
2489
2490         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2491         simplify this code.
2492
2493         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2494         a PangoAttrList
2495
2496         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2497
2498         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2499
2500         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2501         size in the size request 
2502         (gtk_menu_bar_size_allocate): consider toggle size here
2503
2504         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2505         that displays a widget in the toggle slot
2506
2507         * gtk/testgtk.c: test GtkImageMenuItem
2508
2509         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2510         
2511         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2512         request and allocation
2513
2514         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2515
2516         * gtk/gtkcheckmenuitem.c
2517         (gtk_check_menu_item_toggle_size_request): ditto
2518         
2519 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2520
2521         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2522         reference.
2523
2524         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2525         and refuse to initialize GTK+ if they fail.
2526
2527 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2528
2529         * configure.in: Add check for gtk-doc version.
2530
2531 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2532
2533         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2534         where the xpad/ypad was only being used on one side!
2535
2536 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2537
2538         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2539         function, copied from X11 version.
2540
2541         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2542         DestroyCursor failures. The reason for the problem (despite the
2543         inconsistent messages from GetLastError()) was that
2544         DestroyCursor() cannot be called while a cursor is set in a
2545         window. Set the new cursor first and then destroy the old one.
2546         Thanks to jpe@archaeopteryx.com.
2547
2548         * gdk/win32/gdkcc-win32.c: Remove.
2549
2550         * gdk/win32/Makefile.am: Remove from here, too.
2551         
2552         * gdk/gdk.def
2553         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2554
2555         * gtk/gtk.def
2556         * gtk/makefile.mingw.in: Updates.
2557
2558 2001-02-08  Havoc Pennington  <hp@redhat.com>
2559
2560         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2561         add a widget to a bin that already has a child.
2562
2563         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2564
2565         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2566         
2567         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2568
2569         * gdk/gdk.h: remove gdkcc.h
2570
2571         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2572
2573         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2574         GdkPixbuf, since the previous implementation was GdkColorContext
2575         dependent.
2576
2577         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2578         
2579 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2580
2581         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2582         a sane value!
2583
2584 2001-02-08  Havoc Pennington  <hp@redhat.com>
2585
2586         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2587         lighten them.
2588
2589 2001-02-08  Havoc Pennington  <hp@redhat.com>
2590
2591         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2592         validation idle
2593
2594         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2595         cell renderer
2596
2597         * demos/pixbuf-demo.c (timeout): remove deprecated
2598         gtk_widget_draw
2599
2600         * demos/testpixbuf-save.c (main): remove deprecated
2601         gtk_drawing_area_size
2602
2603         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2604         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2605         at the start of the allocation.
2606         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2607         unsetup or NULL model.
2608
2609         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2610         even/odd/sorted cells in the tree view.
2611
2612         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2613         bugfixes
2614
2615         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2616         backgrounds with draw_flat_box using different detail for even/odd
2617         rows.
2618
2619         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2620         row, so we can draw the alternating colors thing
2621
2622         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2623         property from a synonym property, notify for the synonym.
2624         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2625         (gtk_text_tag_get_property): Always return the font, even if
2626         all its fields aren't set
2627
2628         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2629         store the attr list; it leaves us with no way to change attributes
2630         in _render according to the render flags, and no way to implement
2631         get_property. Instead store all the specific text attributes. 
2632         Separate whether an attribute is enabled from its value. Sync all
2633         properties with GtkTextTag, make them all consistent, etc.
2634
2635         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2636         renderers can highlight the sort row/column     
2637
2638         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2639         accessor functions to get values; this has the side effect of
2640         showing up which accessor functions were missing. Added those.
2641
2642         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2643         set_alignment, to be consistent with GtkLabel, GtkMisc
2644
2645         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2646         arrow.
2647
2648         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2649
2650         * gtk/gtktreesortable.h: updates in here
2651
2652 2001-02-07  Sven Neumann  <sven@convergence.de>
2653
2654         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2655         pango dimensions after painting the background. We used to draw
2656         gigantic flat boxes here.
2657
2658 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2659
2660         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2661         error introduced with earlier commit) (pointed out by
2662         Ollie Lho)
2663
2664 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2665
2666         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2667         which are no longer necessary.
2668
2669 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2670
2671         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2672
2673 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2674
2675         * gdk/gdk.def
2676         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2677         Provide dummy implementations.
2678
2679 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2680
2681         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2682
2683         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
2684         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
2685         deprecated this function.
2686
2687         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
2688         argument.
2689
2690 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
2691
2692         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
2693
2694 2001-02-03  Havoc Pennington  <hp@pobox.com>
2695
2696         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
2697         Mikael Hermansson with patch from Mikael (if there was a toggle
2698         start one after the first character in the range, this function
2699         was broken). Bug #50380
2700
2701 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
2702
2703         * configure.in: Remove confusing comment about X11.
2704
2705 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2706
2707         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2708         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2709         
2710 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2711
2712         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2713         it breaks things on BSD. If you want to compile GTK+ with
2714         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2715         when configuring, since GTK+ simply can't be "pure ANSI" 
2716         in the header files it uses. (#8170, Greg Hudson)
2717
2718 2001-02-02  Havoc Pennington  <hp@redhat.com>
2719
2720         * gtk/gtkwindow.c: docs
2721
2722         * gtk/gtkwidget.c: docs
2723         (gtk_widget_set_colormap): add a reference to the colormap
2724         (gtk_widget_get_default_colormap): add a reference to the colormap
2725
2726         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2727
2728         * gtk/gtktextiter.c: docs
2729
2730         * gtk/gtkmain.c (gtk_propagate_event): docs
2731
2732         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2733         (gtk_paned_set_position): docs
2734
2735         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2736         sort interface, no implementation yet.
2737
2738         * demos/testpixbuf.c (new_testrgb_window): replace
2739         gtk_drawing_area_size() with gtk_widget_set_usize()
2740
2741         * demos/testpixbuf-drawable.c (main): ditto
2742         
2743         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2744
2745         * gtk/gtktextbuffer.c: docs
2746
2747         * gtk/gtkstock.c: docs
2748
2749         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2750
2751         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2752
2753         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2754         
2755         * gtk/gtkimage.c: add some docs in here
2756         (gtk_image_size_request): change name of
2757         gtk_widget_render_stock_icon
2758         (gtk_image_get_icon_set): don't dup returned string
2759         (gtk_image_get_icon_set): don't dup returned string
2760
2761         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2762         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2763         and gtkiconfactory.h functions
2764
2765         * gtk/gtkiconfactory.c: add some docs in here
2766
2767         * gtk/gtkmain.c (gtk_get_default_language): document
2768         (gtk_get_current_event): document
2769         (gtk_get_current_event_state): document
2770         (gtk_get_event_widget): document
2771
2772         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2773
2774         * gtk/gtkcontainer.c: Add some documentation
2775         (gtk_container_add): give a more explanatory warning on adding an
2776         already-parented widget, this is kind of a FAQ and also a common
2777         typo that's easier to debug with a nice warning 
2778
2779         * gtk/gtkcellrenderertoggle.c
2780         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2781         adding this, it's useless
2782         (gtk_cell_renderer_toggle_set_active): remove
2783         (gtk_cell_renderer_toggle_get_radio): add
2784
2785         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2786         the NULL cell renderer, that doesn't make any sense to me. 
2787
2788         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2789         demo code should never use deprecated features.
2790
2791         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2792         code should never use deprecated features.
2793
2794         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2795         gtk_widget_queue_clear_area deprecated
2796
2797         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2798         deprecated
2799
2800         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2801
2802         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2803         a GdkImage deprecated, replaced by new consistently-named
2804         functions       
2805
2806         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2807
2808         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2809
2810         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2811         deprecated
2812
2813         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2814         so it won't appear in docs and confuse people.
2815
2816         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2817
2818         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2819         macros deprecated. (can't mark the type itself deprecated, since
2820         GtkProgressBar is not deprecated and we need the type decl to use
2821         GtkProgressBar)
2822
2823         * gtk/gtkpixmap.h: Mark deprecated
2824
2825         * gtk/gtkoldeditable.h: Mark deprecated
2826
2827         * gtk/gtklist.h: Mark deprecated
2828
2829         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2830         for anything anymore.
2831
2832         * gtk/gtkctree.h: Mark deprecated
2833
2834         * gtk/gtkclist.h: Mark deprecated
2835
2836         * gtk/gtkpreview.h: Mark deprecated
2837
2838         * gtk/gtkpacker.h: Mark deprecated
2839
2840         * gtk/gtktipsquery.h: Mark deprecated
2841
2842         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2843
2844         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2845
2846         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2847
2848         * gtk/gtkruler.h: Add comment that it will move out of GTK
2849
2850         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2851
2852         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2853
2854 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2855
2856         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2857         gdk_colormap_sync private since it was never exported
2858         in a header file.
2859
2860         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2861         colormap->colors[] for StaticGray, StaticColor colormaps.
2862
2863         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2864         was being used as if it was image->bits_per_pixel.
2865
2866         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2867         for the image in the GdkImage structure since it isn't
2868         reconstructable, and we need it to handle packed types
2869
2870         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2871         the assumption that on Win32 image->bits_per_pixel == image->depth,
2872         always.
2873
2874         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2875
2876         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2877         warning message if no converter can be found. 
2878
2879 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
2880
2881         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
2882         chars to isupper() / tolower(). (#567)
2883
2884         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
2885         to clear up 64-bit warnings. (#567)
2886
2887 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
2888
2889         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
2890         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
2891
2892         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
2893         since some people set $(libdir) separately. (#1290, David Kaelbling)
2894
2895 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
2896
2897         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
2898         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
2899         MAXPATHLEN, but the code here depends on a fixed value.)
2900         (#4524)
2901
2902 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
2903
2904         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
2905         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
2906
2907 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
2908
2909         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
2910         viewable there is no way that moving the node will cause the 
2911         focus row to become not viewable, so omit check on the visibility
2912         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2913
2914 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
2915
2916         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
2917         selection before inserting new text.
2918
2919 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
2920
2921         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
2922         Make the sensitivity of the reparented child track that of
2923         the original parent menu item. (#34218, David Hodson)
2924
2925         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
2926         the case where the current item is destroyed properly.
2927
2928         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
2929         some edge cases with child-less menuitems.
2930         
2931 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
2932
2933         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
2934         key pop down window. (#12074, Jon K Hellan)
2935
2936 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
2937
2938         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
2939         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
2940         The solution here isn't perfect - you get an extraneous
2941         emission of "toggle", which could conceivably confuse an app,
2942         but better than the current situation. LXR search seems to
2943         indicate that no apps in GNOME CVS connect to "toggle".
2944
2945 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
2946
2947         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
2948         gtk_public_h_sources to directly here to avoid warning when
2949         building srcdir != builddir. (#9656)
2950
2951 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2952
2953         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
2954         handlers in gtkrange.c return the proper values (TRUE == handled)
2955         (#10316).
2956
2957         This is just the tip of the iceberg, but gtkrange.c is the
2958         most common place where the propagation is problematical,
2959         and also a place where it is almost certainly safe to change
2960         this in the stable branch.
2961
2962         (You don't want right click popups on a range control or anything...)
2963
2964 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
2965
2966         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
2967         area on focus out, even if a background pixmap isn't set.
2968         (#13941)
2969         
2970 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
2971
2972         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
2973         to deal with setting the shape properly when scrolling arrows are
2974         turned on, but not visible because there is sufficient space.
2975         (#13432)
2976
2977 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
2978
2979         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
2980         items with submenus, destroy the item along with the submenu.
2981         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
2982         properly.
2983
2984         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
2985         later.
2986
2987 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
2988
2989         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
2990         the focus widget sometimes wasn't drawn with the default if there
2991         was no default widget.
2992
2993         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
2994         unreference pixmaps. 
2995
2996         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
2997         for some extra safety.
2998
2999 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3000
3001         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3002         the text of a cell to the old pointer value better, by
3003         copying the new text before freeing the old text. Some code
3004         cleanup. (#8079, Karl Nelson)
3005
3006 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3007
3008         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3009         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3010
3011 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3012
3013         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3014         item from a menu, check to see if it matches 
3015         menu->old_active_menu_item, and if so, unref and clear
3016         old_active_menu_item (Patch from Pavel Cisler)
3017
3018         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3019         menu_shell->active_menu_item, if it is the child being
3020         removed. (Patch based on that of Gene Ragan, #50337)
3021
3022 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3023
3024         * gdk/linux-fb/gdkselection-fb.c: 
3025         * gdk/linux-fb/gdkcolor-fb.c: 
3026         * gdk/linux-fb/gdkdrawable-fb2.c: 
3027         * gdk/linux-fb/gdkfont-fb.c: 
3028         * gdk/linux-fb/gdkim-fb.c: 
3029         * gdk/linux-fb/gdkinput.c: 
3030         * gdk/linux-fb/gdkkeyboard-fb.c: 
3031         * gdk/linux-fb/gdkmain-fb.c: 
3032         * gdk/linux-fb/gdkrender-fb.c: 
3033         A bunch of whitespace cleanup.
3034         
3035 2001-01-30  Havoc Pennington  <hp@pobox.com>
3036
3037         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3038         #ifdef GTK_ENABLE_BROKEN.
3039
3040         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3041         GTK_ENABLE_BROKEN just before including the broken headers.
3042         
3043         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3044         deprecated types registered.
3045
3046         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3047         we have to test the broken stuff.
3048
3049         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3050         
3051 2001-01-30  Havoc Pennington  <hp@redhat.com>
3052
3053         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3054         here where prev pointer was set to the wrong thing
3055
3056         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3057         (gtk_tree_path_is_descendant): new function
3058
3059         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3060         cached length
3061         (gtk_list_store_get_iter): don't modify iter if we can't get the
3062         path.
3063
3064         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3065         
3066         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3067         GtkTreeDragDest
3068
3069         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3070         was causing segfault
3071
3072         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3073         pointer to NULL
3074
3075         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3076
3077         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3078         on returning FALSE
3079         (gtk_list_store_iter_children): ditto
3080         (gtk_list_store_iter_nth_child): ditto
3081         (gtk_list_store_iter_nth_child): ditto
3082         (gtk_list_store_iter_parent): ditto
3083
3084         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3085         on iter->user_data != NULL instead of silently accepting it.
3086         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3087         we are returning TRUE.
3088         (gtk_tree_store_iter_children): ditto
3089         (gtk_tree_store_iter_nth_child): ditto
3090         (gtk_tree_store_iter_parent): ditto
3091         (gtk_tree_store_insert): remove handling of parent->user_data ==
3092         NULL, replace with parent == NULL       
3093
3094         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3095         and a comment explaining things
3096
3097         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3098         interface support to GtkTreeStore.
3099
3100         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3101         FALSE if no prev, fix
3102
3103         * gtk/gtktreeview.c (set_source_row): use a row reference
3104         (set_dest_row): use a row reference
3105
3106 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3107
3108         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3109         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3110         (gtk_tree_selection_select_iter): The same as above.
3111
3112 2001-01-26  Havoc Pennington  <hp@redhat.com>
3113
3114         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3115         which holds a handle to a specific row (particular set of values
3116         in the model, i.e. pointer-identity row).
3117
3118         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3119         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3120         Still need to use it for the src/dest row saved on the drag context.
3121
3122 2001-01-26  Havoc Pennington  <hp@redhat.com>
3123
3124         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3125
3126         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3127         not offset by TREE_VIEW_HEADER_HEIGHT
3128         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3129         TREE_VIEW_HEADER_HEIGHT
3130
3131         * configure.in (included_loaders): for me, --with-included-loaders
3132         generates the error "the specified loader yes does not exist",
3133         i.e. the arg defaults to "yes", so change test for value ""
3134         to test for value "yes", and include all loaders in that case.
3135
3136         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3137
3138         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3139         handle TREE_VIEW_VERTICAL_SEPARATOR
3140         (gtk_tree_view_bin_expose): fix to consider the row offset as
3141         pointing halfway into vertical separator.       
3142         (gtk_tree_view_draw_node_focus_rect): ditto
3143
3144         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3145         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3146         (TRUE) to be called.
3147
3148         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3149         debug mode where the invalid region is colored in on invalidate,
3150         so you can see the flicker and know whether your redraw code is 
3151         doing a good job.
3152
3153         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3154         tree window coordinates (clip rect is in tree window coords)
3155
3156         * gtk/Makefile.am: add gtktreednd.[hc]
3157
3158         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3159
3160         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3161         drag-and-drop data operations on a model (so we can set up tree
3162         drag-and-drop automatically)
3163
3164         * gtk/testgtk.c: Add a window to change sensitivity in the
3165         GtkLabel test; add a way to change the entry frame in GtkEntry
3166         test
3167
3168         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3169         (gtk_entry_get_has_frame): new functions to remove the frame
3170         around an entry
3171         (gtk_entry_size_request): shrink requisition if no frame
3172         (gtk_entry_draw_focus): don't draw frame if no frame
3173
3174         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3175         checks inside a cell renderer
3176         (gtk_default_draw_option): ditto for options
3177
3178         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3179         children from the alignment, not the button
3180         (gtk_tree_view_column_init): ref/sink the column, to emulate
3181         GObject refcounting.
3182
3183         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3184         
3185         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3186         Use theme functions to draw the toggles 
3187
3188         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3189
3190         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3191         GdkPangoAttrEmbossed to use in rendering insensitive text
3192
3193         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3194
3195         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3196         using new GDK features
3197         
3198 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3199
3200         * gtk/gtkimage.c:
3201         Splitted gtk_image_clear into gtk_image_clear() and
3202         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3203         to avoid leaks.
3204
3205         * gtk/gtklabel.c (set_markup):
3206         Don't leak text.
3207
3208         * gtk/gtktextlayout.c:
3209         Always free display->shaped_objects.
3210
3211         * gtk/testgtk.c (create_clist):
3212         Don't leak custom style.
3213
3214 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3215
3216         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3217         Don't leak image. Simplify using gdk_colormap_query_color().
3218         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3219
3220         * linux-fb/gdkcolor-fb.c:
3221         Implemented gdk_colormap_query_color.
3222
3223 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3224
3225         * linux-fb/gdkcursor-fb.c:
3226         Don't leak built-in cursors.
3227
3228         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3229         Don't leak tmp_points.
3230
3231         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3232         Don't modify desc. Don't leak font if the PangoFont
3233         isn't found.
3234         
3235         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3236         Free dash_list.
3237
3238         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3239         Don't leak string.
3240         
3241 2001-01-20  Havoc Pennington  <hp@pobox.com>
3242
3243         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3244         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3245         me, matches Pango
3246
3247 2001-01-22  Havoc Pennington  <hp@redhat.com>
3248
3249         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3250
3251         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3252
3253         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3254         Remove, move back to gdk-pixbuf
3255
3256         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3257         to all the word functions
3258
3259         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3260         before doing anything on NULL layout or if we don't have the focus
3261
3262         * gtk/testtext.c (fill_example_buffer): "justification"
3263
3264         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3265         to be called "justification" not "justify"
3266
3267         * demos/gtk-demo/textview.c (create_tags): "justification"
3268         
3269         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3270
3271 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3272
3273         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3274         Don't leak visible_region. Use visible_region instead of region.
3275         
3276         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3277         Don't do extra gdk_drawable_ref(). This is not X.
3278         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3279         gdk_fb_focused_window is ref:ed.
3280         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3281         windows.
3282
3283 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3284
3285         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3286         Don't leak the PangoFontDescriptor.
3287
3288 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3289
3290         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3291         when not realized.
3292         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3293         (gtk_tree_view_realize): add scroll_to support
3294         (gtk_tree_view_finalize): add a finalize method.  Populate.
3295         (gtk_tree_view_insert_column): ref and sink the column.
3296         (gtk_tree_view_append_column): ref and sink the column.
3297         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3298         individual nodes.  Should make the code much more efficient, if
3299         actually used.
3300
3301 2001-01-19  Havoc Pennington  <hp@redhat.com>
3302
3303         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3304         byte_offset variable was being used to mean both "offset into
3305         layout" and "offset into buffer line" which was no longer true
3306         with addition of preedit string; fix
3307
3308 2001-01-19  Havoc Pennington  <hp@redhat.com>
3309
3310         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3311
3312         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3313         function
3314
3315         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3316         implement
3317
3318         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3319         scroll_to_cell, matches TextView scroll functions better
3320         (gtk_tree_view_tree_to_widget_coords): new function
3321         (gtk_tree_view_widget_to_tree_coords): new function
3322         (gtk_tree_view_get_visible_rect): new function
3323         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3324         (gtk_tree_view_draw_node_focus_rect): new function moved from
3325         draw_focus, also, use width of bin_window as width of the focus
3326         rect
3327         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3328         already-expanded rows
3329         (gtk_tree_view_get_cell_rect): new function
3330         (gtk_tree_view_get_path_at_pos): return the click position
3331         relative to the passed-in cell
3332         (gtk_tree_view_set_expander_column): new function
3333
3334         * configure.in: remove gtk-config-2.0 chmod
3335
3336         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3337         and properly handle drags with targets we don't understand
3338         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3339         scrolling anyway
3340         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3341         mark invisible
3342
3343         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3344         function
3345         (gtk_drag_dest_get_target_list): new function
3346         (gtk_drag_dest_set_target_list): new function
3347         
3348         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3349
3350         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3351         related to drag-and-drop
3352
3353 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3354
3355         * gdk/linux-fb/gdkprivate-fb.h:
3356         Define EMULATE_GDKFONT.
3357         Add extra pango_font stuff to GfkFontPrivate.
3358         
3359         * gdk/linux-fb/gdkdrawable-fb2.c:
3360         * gdk/linux-fb/gdkfont-fb.c:
3361         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3362         emulation using PangoFont.
3363
3364 2001-01-17  Havoc Pennington  <hp@pobox.com>
3365
3366         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3367         all the non-deprecated set_foo functions. Added missing object
3368         properties, and added g_object_notify() to setters. 
3369         Wrote docs.
3370         
3371 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3372
3373         * gtk/gtkmain.c
3374         * gtk/gtkrc.c: (Win32) Use the new
3375         g_win32_get_package_installation_(sub)directory() functions.
3376
3377         * config.h.win32.in: New file.
3378         
3379         * config.h.win32: Removed.
3380
3381         * configure.in: Output config.h.win32.
3382
3383         * Makefile.am: Add it to EXTRA_DIST.
3384
3385         * gtk/gtk.def: Update.
3386
3387 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3388
3389         * gtk/gtklabel.c (gtk_label_size_request): Set the
3390         attributes onto the PangoLayout even if they are newly
3391         created from label->pattern.
3392
3393 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3394
3395         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3396
3397         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3398         structures in functions. Fixes bug where gtk_dataset_*
3399         was accidentally still being used in one place, causing
3400         every dest side event to be treated independently.
3401
3402         * gtk/gtkdnd.c: Remove last vestages of handling
3403         ::draw (fixes warning)
3404         
3405         * gtk/gtkentry.[ch]: Add drag and drop support.
3406
3407         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3408         new function gtk_check_drag_threshhold() for checking
3409         to check if (dx,dy) has exceeded the threshhold for starting
3410         a drag and use it everywhere.
3411
3412 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3413
3414         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3415         add -I{includedir}/gtk-2.0.
3416
3417         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3418         gdk/gdk-pixbuf.h: Doc fixups.
3419         
3420         * gtk/gtkobject.h: Remove trailing , from enum
3421
3422 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3423
3424         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3425         Doh! Mixed up x and y.
3426
3427         * gdk/linux-fb/gdkglobals-fb.c:
3428         Removed gdk_fb_pointer_grab_window_events,
3429         added _gdk_fb_pointer_grab_owner_events and
3430         _gdk_fb_keyboard_grab_owner_events.
3431
3432         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3433         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3434         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3435         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3436         Send crossing events after ungrab finished.
3437         (gdk_keyboard_grab): Set ..._owner_events
3438         (type_masks): Move out of function.
3439         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3440         gdk_fb_keyboard_event_window): New functions, return the
3441         window an event should be targeted at. Handles grabs and
3442         event propagation. Can return NULL.
3443         (gdk_event_make): Remove event_mask checking. Now always
3444         returns an event.
3445                 
3446         * gdk/linux-fb/gdkkeyboard-fb.c:
3447         * gdk/linux-fb/gdkproperty-fb.c:
3448         * gdk/linux-fb/gdkselection-fb.c:
3449         Use new event_window/gdk_event_make() behaviour.
3450         
3451         * gdk/linux-fb/gdkmouse-fb.c:
3452         Use new event_window/gdk_event_make() behaviour.
3453         Only send motion events if in the same window.
3454         If grabbed, use cursor from window if sibling of grabbed
3455         window, and cursor from grabbed window otherwise.
3456
3457         * gdk/linux-fb/gdkprivate-fb.h:
3458         Update gdk_fb_window_send_crossing_events, gdk_event_make
3459         and grab varaible declarations. Add gdk_fb_*_event_window().
3460
3461         * gdk/linux-fb/gdkwindow-fb.c:
3462         Use new event_window/gdk_event_make() behaviour.
3463         Keep correct track of focus window.
3464         (gdk_window_set_events): Set all specific button motion masks
3465         if GDK_BUTTON_MOTION_MASK set.
3466
3467         * gtk/gtkdnd.c (gtk_drag_update):
3468         Free info->last_event if gdk_drag_motion returned FALSE.
3469
3470 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3471
3472         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3473         Eliminate redraws when input-only windows are shown or
3474         hidden. Thanks to jpe@archaeopteryx.com.
3475
3476 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3477
3478         * docs/faq/gtk-faq.sgml: FAQ update:
3479           - Update to bugzilla
3480           - Add GTK+ and security/SUID/SGID
3481           - Add DnD question
3482
3483 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3484
3485         * gdk/linux-fb/gdkdnd-fb.c:
3486         Some cleanups.
3487         
3488 2001-01-15  Havoc Pennington  <hp@pobox.com>
3489
3490         * tests/testtreeview.c: add test stuff for CellRendererToggle
3491
3492         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3493         accessor
3494
3495         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3496         only toggle on button press (would do release like GtkButton, but
3497         we'd need implicit grab code for treeview cells)
3498
3499 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3500
3501         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3502
3503         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3504         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3505
3506         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3507         to g_{locale,filename}_{to,from}_utf8 to match current API.
3508
3509         * gtk/makefile.msc.in (gtk_OBJECTS)
3510         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3511
3512         * gtk/gtk.def: Update.
3513
3514 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3515
3516         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3517         implementaion that more closely mimics the events that an X server
3518         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3519         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3520         with nested preview widgets, for instance, more responsive when
3521         you move the mouse quickly into them.
3522         (find_window_for_pointer_event): Make it actually compile.
3523         (gdk_event_translate): Set send_event to the value of
3524         InSendMessage (). This doesn't really mean the same as X11's
3525         send_event flag, but is close enough, says jpe@archaeopteryx.com
3526
3527 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3528
3529         * gdk/linux-fb/gdkdnd-fb.c:
3530         Implemented drag and drop.
3531         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3532         when it tries to free and then copy the same event (info->last_event).
3533         I am not sure about why this happens, but will continue looking.
3534
3535 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3536
3537         * gdk/linux-fb/gdkwindow-fb.c:
3538         Use gdk_window_invalidate_rect instead of
3539         gdk_window_invalidate_rect_clear to minimise flashing.
3540         When hiding windows you need to clear the root window though.
3541
3542 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3543
3544         * gdk/linux-fb/gdkdrawable-fb2.c:
3545         For optization, add an full_shapes argument to gdk_fb_clip_region.
3546         If this is false, only the cliprects of the shapes are used.
3547
3548         * gdk/linux-fb/gdkprivate-fb.h:
3549         Export gdk_fb_window_peek_shape.
3550         Add full_shapes to gdk_fb_clip_region.
3551
3552         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3553         When moving a window, don't clear everything under the it, just the
3554         root window. Makes stuff faster and flash less.
3555         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3556         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3557         offset of the shape.
3558         
3559
3560 2001-01-12  Havoc Pennington  <hp@redhat.com>
3561
3562         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3563         current invalid region, fixes redraw bug while scrolling the 
3564         text widget
3565
3566         * gtk/gtktextview.c, gtk/gtktextview.h:
3567         Rearrange the scrolling/validation/etc. code in a major way, 
3568         so it seems to make sense to me. Probably isn't genuinely that
3569         much better, but...
3570
3571         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3572         notifies
3573
3574         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3575
3576 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3577
3578         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3579         Hide mouse pointer while rotation. Show it afterwards.
3580
3581 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3582
3583         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3584         windows in consideration when generating clip region.
3585
3586         * gdk/linux-fb/gdkfb.h:
3587         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3588
3589         * gdk/linux-fb/gdkprivate-fb.h:
3590         Add shape to GdkWindowFBDatat.
3591         exported gdk_fb_window_get_abs_shape().
3592         removed gdk_fb_draw_lines declaration.
3593
3594         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3595         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3596         send focus changes when there is a grabbed window.
3597         (gdk_window_get_pointer): Handle shaped windows.
3598         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3599         (gdk_fb_window_peek_shape): Returns the shape for a window,
3600         handles GDK_FB_USE_CHILD_SHAPE.
3601         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3602         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3603         (gdk_window_shape_combine_mask): Implement.
3604
3605         * gtk/gtkwindow-decorate.c:
3606         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3607         setting the shape of a window makes the window transparent.
3608
3609 2001-01-11  Havoc Pennington  <hp@redhat.com>
3610
3611         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3612
3613 2001-01-10  Havoc Pennington  <hp@redhat.com>
3614
3615         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3616         add this function, bug 40251
3617
3618         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3619         of type macro   
3620
3621 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3622
3623         * acconfig.h:
3624         Added ENABLE_SHADOW_FB
3625
3626         * configure.in:
3627         Added --disable-shadowfb
3628
3629         * gdk/linux-fb/gdkcursor-fb.c:
3630         Update shadowfb when updating cursor
3631
3632         * gdk/linux-fb/gdkdrawable-fb2.c:
3633         Added wrappers for shadowfb that calls  the normal drawable
3634         methods, but calls gdk_shadow_fb_update(bounding box) when
3635         GdkWindows are drawed to.
3636         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3637         which also returns the bounding box.
3638
3639         * gdk/linux-fb/gdkfb.h:
3640         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3641
3642         * gdk/linux-fb/gdkgeometry-fb.c:
3643         Update shadowfb when scrolling window.
3644
3645         * gdk/linux-fb/gdkglobals-fb.c:
3646         Add _gdk_fb_screen_angle.
3647         
3648         * gdk/linux-fb/gdkkeyboard-fb.c:
3649         Test code for screen rotation. Shift-F2 in the xlate driver
3650         rotates the screen.
3651
3652         * gdk/linux-fb/gdkmain-fb.c:
3653         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3654
3655         * gdk/linux-fb/gdkmouse-fb.c:
3656         Use fb_width/height instead of modeinfo.xres/yres.
3657
3658         * gdk/linux-fb/gdkprivate-fb.h:
3659         Added fb_men, fb_width, fb_height & fb_stride. When using
3660         shadow fb these can differ from the framebuffer stuff.
3661         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3662         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3663         _gdk_fb_screen_angle. Removed CM, RP.
3664
3665         * gdk/linux-fb/gdkrender-fb.c:
3666         Added code for shadowfb handling and screen rotation using
3667         shadowfb.
3668
3669         * gdk/linux-fb/gdkwindow-fb.c:
3670         Use fb_mem, fb_stride, fb_width, fb_height.
3671         Added recompute_rowstride to reset the rowstride of all windows.
3672         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3673         window abs positions and window rowstrides. Usefull when the
3674         rotation has changed.
3675
3676 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3677
3678         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3679
3680 2001-01-10  Havoc Pennington  <hp@redhat.com>
3681
3682         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3683         where sibling == iter
3684         (gtk_tree_store_insert_after): handle sibling == iter
3685         (gtk_tree_store_prepend): remove stamp checks
3686         (gtk_tree_store_insert_before): ditto
3687         (gtk_tree_store_append): ditto
3688         (gtk_tree_store_get_path): ditto
3689         (gtk_tree_store_get_value): ditto
3690         (gtk_tree_store_iter_has_child): ditto
3691         (gtk_tree_store_iter_n_children): ditto
3692         (gtk_tree_store_iter_nth_child): ditto
3693         (gtk_tree_store_insert_after): ditto
3694         (gtk_tree_store_is_ancestor): ditto
3695         (gtk_tree_store_iter_depth): ditto
3696         (gtk_tree_store_insert_before): assert that sibling's parent is
3697         the same as the passed-in parent
3698         (gtk_tree_store_insert_after): assert that sibling's parent is
3699         the same as the passed-in parent
3700
3701         
3702         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
3703         function to get the first iterator in a model
3704         
3705         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3706         conventionally the "root" in this sense is just NULL afaict.
3707
3708         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3709         where sibling == iter
3710         (gtk_list_store_insert_after): handle case where sibling == iter
3711
3712         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3713         automated tests for ListStore, TreeStore
3714
3715         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3716         (gtk_list_store_insert): update tail pointer, and fix it to work
3717         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3718         (gtk_list_store_append): use tail to be faster
3719         (gtk_list_store_prepend): fix it, update tail pointer
3720         (gtk_list_store_insert_after): fix it, update tail pointer
3721
3722         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3723         the list
3724
3725 2001-01-09  Havoc Pennington  <hp@redhat.com>
3726
3727         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3728         is NULL due to a pending resize
3729
3730         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3731         column width to values less than 1
3732
3733         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3734         width to be between min/max width, and still set the width 
3735         even if autosize is turned on, so the tree view can use this 
3736         function in order to autosize.
3737         (gtk_tree_view_column_init): set initial width to 1 not 0
3738
3739         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3740         setter function to modify column width, so we get notification
3741         (gtk_tree_view_insert_iter_height): ditto
3742         (gtk_tree_view_calc_size): ditto
3743         (gtk_tree_view_check_dirty): ditto
3744
3745         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3746         properties to change all the interesting attributes of the tree
3747         view column.
3748         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3749         (gtk_tree_view_column_get_clickable): add
3750         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3751         attributes; assume a cell renderer with equivalent object
3752         properties has been swapped in. Do g_object_notify().
3753         (gtk_tree_view_column_set_visible): g_object_notify
3754         (gtk_tree_view_column_get_sizing): rename from get_col_type
3755         (gtk_tree_view_column_set_sizing): g_object_notify
3756         (gtk_tree_view_column_set_width): add g_object_notify
3757         (gtk_tree_view_column_set_min_width): ditto
3758         (gtk_tree_view_column_set_max_width): ditto
3759         (gtk_tree_view_column_set_title): ditto
3760         (gtk_tree_view_column_set_clickable): ditto
3761         (gtk_tree_view_column_set_widget): ditto
3762         (gtk_tree_view_column_set_justification): ditto
3763
3764 2001-01-09  Havoc Pennington  <hp@redhat.com>
3765
3766         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3767         there are no rows in the model
3768
3769         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3770         NULL, then return the start of the list
3771
3772         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3773         if we can't get any rows from an empty model 
3774
3775         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3776         extraneous * after function pointer typedef usage
3777
3778         * Makefile.am: don't specify full path to cp and rm
3779
3780         * gtk/gtkcellrenderertextpixbuf.c
3781         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3782         NULL before dereferencing, fixes a segfault that happened from
3783         time to time
3784
3785         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3786         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3787         and reindent the function
3788         (gtk_cell_renderer_pixbuf_get_size): indentation
3789
3790         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3791         we quit it
3792         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3793         (gtk_dialog_set_default_response): New function, to set default
3794         button
3795         (gtk_dialog_set_response_sensitive): New function, to set 
3796         sensitivity of buttons
3797
3798         * gtk/gtkcellrendererpixbuf.c
3799         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3800         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3801
3802         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3803         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3804         also boxed types.
3805         (_gtk_tree_data_list_value_to_node): ditto
3806
3807         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3808         --gtk-debug=tree
3809
3810         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3811
3812         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3813
3814 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3815
3816         * gdk/win32/gdkevents-win32.c: Implement better mouse
3817         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3818         (find_window_for_pointer_event): New function.
3819         (gdk_event_translate): Use it when handling mouse events.
3820
3821 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3822
3823         * configure.in:
3824         Added --with-included-loaders option
3825
3826         * gdk-pixbuf/Makefile.am:
3827         * gdk-pixbuf/gdk-pixbuf-io.c:
3828         Add support for including selected gdk-pixbuf loaders only.
3829
3830         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3831         gtk_window_set_has_frame):
3832         Added inline documentation.
3833
3834         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3835         * docs/reference/gdk/tmpl/windows.sgml:
3836         Added inline documentation.
3837
3838 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3839
3840         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3841         realizing buttons that have already been realized.
3842
3843 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3844
3845         * tests/testtreeview.c (main): Show menu items before adding to
3846         option menu.
3847
3848         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3849         around if we kill them.
3850
3851         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3852         Return if we pass in a NULL model.
3853
3854 2001-01-08  Havoc Pennington  <hp@redhat.com>
3855
3856         * tests/testtreeview.c: hack on this some
3857
3858         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3859         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3860         list
3861         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3862
3863         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3864         functions
3865
3866 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3867
3868         * gtk/gtkwindow-decorate.[hc]:
3869         * gtk/Makefile.am:
3870         New files. Contains an implementation of a minimal WM for
3871         linux-fb.
3872
3873         * gtk/gtkwindow.h:
3874         Add the possibility for GtkWindows to specify a frame. This
3875         is used for the window decoration code, but could concievably
3876         be used for X programs too (xmms style windows).
3877         GtkWindow->frame is the toplevel window if the window is framed.
3878         The signal frame_event gets all events that are targeted to
3879         GtkWindow->frame.
3880         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
3881         
3882         * gtk/gtkwindow.c:
3883         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
3884         Call out to gtkwindow-decorate.c for WM support in linx-fb.
3885
3886 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3887
3888         * docs/README.linux-fb:
3889         Correct filename ~/.pangoft2_aliases
3890
3891         * gdk/gdkwindow.h:
3892         Added new function gdk_window_get_decorations.
3893
3894         * gdk/linux-fb/gdkfb.h:
3895         Removed _gdk_window_get_decorations declaration.
3896         Renamed _gdk_window_set_child_handler to
3897         gdk_fb_window_set_child_handler.
3898
3899         * gdk/linux-fb/gdkwindow-fb.c:
3900         Renamed _gdk_window_set_child_handler to
3901         gdk_fb_window_set_child_handler.
3902
3903         * gdk/x11/gdkwindow-x11.c:
3904         New function gdk_window_get_mwm_hints().
3905         Implemented gdk_window_get_decorations.
3906
3907         * docs/reference/gdk/tmpl/windows.sgml:
3908         * docs/reference/gdk/gdk-sections.txt:
3909         Added gdk_window_get_decorations docs.
3910         
3911 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
3912
3913         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
3914         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
3915         gdk_fb_window_send_crossing_events):
3916         Possibly send focus events when the mouse moves from one
3917         window to another.
3918
3919 2001-01-07  Tor Lillqvist  <tml@iki.fi>
3920
3921         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
3922         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
3923         to match current API.
3924
3925         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
3926         environment variable is set, don't call g_error when on a
3927         palettized (PseudoColor) display. Some people want to use GTK+ 
3928         in 256-colour mode even though works only partially.
3929
3930         * gdk/gdk.def
3931         * gtk/gtk.def
3932         * gtk/makefile.mingw.in: Update.
3933
3934 2001-01-05  Havoc Pennington  <hp@redhat.com>
3935
3936         * tests/testtreeview.c: hack on this a bit
3937
3938         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
3939         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
3940
3941         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
3942         was spelled incorrectly
3943         (GTK_IS_TREE_MODEL_SIMPLE): ditto
3944
3945         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
3946         from gtk_tree_view_set_headers_active   
3947
3948         * gtk/gtktexttag.c:
3949         (gtk_text_tag_get_property): handle PROP_DIRECTION
3950         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
3951         properties, bug 40235
3952
3953         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
3954         forward_to_line_end
3955
3956 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
3957
3958         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
3959         modules/input/gtkimcontextxim.c: Adapt to new prototypes
3960         for unicode,locale,filename conversion functions.
3961
3962 2001-01-05  Havoc Pennington  <hp@redhat.com>
3963
3964         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
3965         broken if called on the first position in the buffer.
3966
3967         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
3968         forward_to_delimiters to be called only if we aren't already at
3969         the delimiters.
3970
3971 2001-01-05  Havoc Pennington  <hp@redhat.com>
3972
3973         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
3974
3975 2001-01-05  Alexander Larsson  <alexl@redhat.com>
3976
3977         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
3978         colormap in here. Sync from X port.
3979         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
3980         Sync from X port.
3981         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
3982         This happens now and then, and i don't think it is a bug.
3983         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
3984         != endpoint.
3985         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
3986         GDK_LINE_SOLID.
3987
3988         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
3989         some of the fields filled in at least.
3990
3991         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
3992         miLineArcD is no more, remove it from the function definition.
3993
3994 2001-01-04  Havoc Pennington  <hp@redhat.com>
3995
3996         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
3997         this
3998
3999         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4000         user_data instead of tree_node
4001
4002         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4003         TREE_VIEW_COLUMN_SIZE
4004
4005         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4006         "size" field to "width" finishes bug 40061
4007
4008         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4009         for bitfields, bug 40268
4010
4011 2001-01-04  Havoc Pennington  <hp@redhat.com>
4012
4013         Rename some stuff:
4014         
4015         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4016
4017         s/GtkModelSimple/GtkTreeModelSimple/g;
4018         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4019         s/gtk_model_simple/gtk_tree_model_simple/g;
4020         s/gtkmodelsimple/gtktreemodelsimple/g;
4021
4022         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4023
4024         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4025         s/column_set_col_type/column_set_sizing/g;
4026
4027         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4028         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4029
4030         s/GtkCellRendererType/GtkCellRendererState/g;
4031         
4032         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4033         (gtk_cell_renderer_toggle_class_init): change "state" property to
4034         "active", to match GtkToggleButton
4035         (gtk_cell_renderer_toggle_get_active): new function, bug
4036         40269
4037         (gtk_cell_renderer_toggle_set_active): new function
4038         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4039         state through gtk_cell_renderer_set_active
4040
4041 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4042
4043         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4044         temporarily until they work again.  Brought up to date with
4045         changes in the model.
4046         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4047         model.
4048
4049 2001-01-04  Havoc Pennington  <hp@redhat.com>
4050
4051         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4052         equal to the line length, then position iterator before paragraph 
4053         separators. Fixes crash reported by Mikael Hermansson when
4054         pressing left arrow from the start of a line.   
4055
4056         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4057         about byte indexes off the end
4058         (iter_set_from_char_offset): add g_error about char offsets
4059         off the end
4060
4061 2001-01-03  Havoc Pennington  <hp@redhat.com>
4062
4063         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4064
4065         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4066         of private functions; remove inclusion of private headers.
4067
4068         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4069         function, so we don't need private functions in gtktextdisplay.c
4070
4071         * gtk/gtktextiterprivate.h: underscore-ification
4072
4073         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4074         to instead say "only useful to implement widgets"
4075
4076         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4077         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4078         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4079
4080         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4081         This function was completely broken
4082
4083         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4084
4085         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4086
4087         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4088
4089         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4090
4091         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4092
4093         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4094
4095         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4096         gtk_paint_layout
4097
4098         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4099         gtk_paint_layout
4100
4101         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4102         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4103         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4104         which were not implemented.     
4105
4106         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4107         insert_pixbuf signal. Rename delete_text to delete_range since it
4108         also deletes pixbufs and child anchors. This almost closes bug
4109         40245 (still need to deal with child anchors)
4110
4111         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4112         insert_pixbuf, change signal names as appropriate, change types of
4113         signals taking marks/tags to have the specific type, not just
4114         G_TYPE_OBJECT
4115         
4116         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4117         closes bug 40051
4118
4119         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4120         unnecessary remove_contents() call
4121         (gtk_option_menu_class_init): add a "changed" signal, closes
4122         bug 40039
4123         (gtk_option_menu_update_contents): emit "changed" if the 
4124         active menu item changes
4125
4126         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4127         cast to GtkObject, reported by Jonas Borgstrom
4128         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4129         we can't do stuff with side effects in finalize. Instead, spew a
4130         warning if the loader isn't closed.
4131
4132         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4133         colormap in here, non-X ports probably need to sync to this change
4134
4135         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4136         assertion that colormap != NULL, you can set the colormap to NULL
4137         if you like.
4138         
4139         * Makefile.am: remove gtk-config-2.0
4140
4141         * configure.in: Use pkg-config to locate GLib. Remove
4142         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4143         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4144         Use pkg-config to locate Pango. Output correct Pango libs to
4145         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4146
4147         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4148         files
4149         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4150         X11 pc files
4151
4152         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4153         unref from here
4154
4155 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4156
4157         * configure.in:
4158         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4159
4160 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4161
4162         * gtk/gtktextlayout.c
4163         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4164         variable when moving back onto a single line.
4165
4166 2001-01-01  Havoc Pennington  <hp@redhat.com>
4167
4168         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4169
4170         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4171
4172         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4173         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4174
4175 2001-01-01  Havoc Pennington  <hp@redhat.com>
4176
4177         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4178
4179         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4180         GtkTextAttributes
4181
4182         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4183         #40246
4184         (gtk_text_attributes_copy_values): rename from 
4185         gtk_text_attributes_copy
4186         (gtk_text_attributes_copy): a more standard GTK copy function, 
4187         which returns a new object
4188
4189 2001-01-01  Havoc Pennington  <hp@redhat.com>
4190
4191         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4192         
4193         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4194         don't fill in tree_view->priv->selection, kind of an unexpected
4195         side effect
4196
4197         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4198         gtkintl.h
4199         
4200         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4201         gtkintl.h
4202         (gtk_cell_renderer_get_property): remove calls to g_value_init
4203
4204         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4205         gtkintl.h
4206
4207         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4208         and include gtkintl.h
4209         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4210         property names
4211
4212         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4213         GtkTreeSelection
4214         (_gtk_tree_selection_new_from_with_view): rename, return
4215         GtkTreeSelection
4216         (_gtk_tree_selection_set_tree_view): rename with uscore
4217         (gtk_tree_selection_get_selected): fill in the "model" out param
4218         first, so it gets filled in even if we return at the top of the 
4219         function
4220         (gtk_tree_selection_real_select_all): add a comment and an else{}
4221         to clarify this a bit
4222         (gtk_tree_selection_real_unselect_all): add the same else{}
4223
4224         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4225         set_tree_view to have underscore prefixes, move them to the
4226         private header, fix return type of new_with_tree_view
4227         (struct _GtkTreeSelection): mark struct
4228         fields private  
4229
4230         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4231         GtkTreeModelFlags, not a guint
4232         (gtk_tree_path_prev): return gboolean not gint
4233         (gtk_tree_path_up): return gboolean not gint
4234
4235         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4236         return GtkTreeModelFlags, not a guint
4237
4238         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4239         that child model is non-null before unrefing it
4240         (g_value_int_compare_func): make this a qsort compare func, not 
4241         a boolean predicate
4242
4243         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4244         (add -umn to the end), and mark it unimplemented
4245         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4246         I don't see what it's for - doesn't the model always sort itself?
4247         (gtk_tree_model_sort_set_compare): this had the wrong signature
4248
4249         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4250         Fix the docs to say that it destructively replaces existing
4251         attributes (previously said that it added attributes).
4252         (gtk_tree_view_column_set_visible): canonicalize bool before
4253         equality testing. Also, check for realization before
4254         hiding/showing the tree_column->window; if this window could exist
4255         before realization, then it's busted and needs fixing, we can't 
4256         create GDK resources pre-realization. Also, remove
4257         superfluous queue_resize(), since set_size() does that for us.
4258         (gtk_tree_view_column_set_col_type): check realization before 
4259         using tree_column->window
4260
4261         * gtk/gtktreedatalist.c: fix filename in copyright notice
4262
4263 2000-12-31  Havoc Pennington  <hp@pobox.com>
4264
4265         * gtk/gtktextview.c: Rearrange all the
4266         scroll-while-dragging-or-selecting code to be different, not
4267         necessarily better. ;-)
4268         (gtk_text_view_scroll_to_mark): Change this
4269         function to take within_margin as a fraction instead of a pixel
4270         value, and to take alignment arguments (indicating where to align 
4271         the mark inside the visible area)
4272         
4273         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4274         to GtkObject
4275
4276         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4277         behavior so that offsets past the end of the line are not 
4278         allowed, and an offset equal to the line length moves the iterator
4279         to the next line
4280         (gtk_text_iter_set_line_index): make parallel change
4281         (gtk_text_iter_get_bytes_in_line): add this function
4282         
4283         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4284         of byte indexes off the end of the line; byte index at the end of
4285         the line now returns FALSE and doesn't fill in the requested
4286         values, byte index past the end of the line is an error.  Also,
4287         don't allow -1 offset anymore, since its meaning is unclear.
4288
4289         This change exposes some bug in visual cursor motion, where we
4290         end up with a huge invalid byte index; needs fixing. Symptom of 
4291         bug is a crash when you hit up arrow.
4292         
4293         (_gtk_text_line_char_locate): match the change to byte_locate
4294
4295         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4296         from start of line properly. fixes bug reported by Mikael
4297         Hermansson where backspace would delete all text before the
4298         cursor.
4299
4300 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4301
4302         * gdk/win32/gdkwindow-win32.c
4303         (gdk_window_impl_win32_get_visible_region): New function, as in
4304         the X11 backend.
4305         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4306         instead of duplicating the same code here.
4307
4308         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4309         GDK_COLORMAP macro.
4310
4311         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4312         destroy function.
4313         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4314         access that.
4315
4316         * gtk/gtk.def: Update.
4317
4318         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4319
4320 2000-12-30  Havoc Pennington  <hp@pobox.com>
4321
4322         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4323         colormap on input only windows, to avoid special cases all over
4324         the code for these windows.
4325
4326 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4327
4328         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4329         we are on a palettized display ("PseudoColor" in X11), as the code
4330         for that doesn't work anyway, and never has.
4331
4332 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4333
4334         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4335         Don't use isprint() for chars > 255.
4336
4337 2000-12-21  Havoc Pennington  <hp@redhat.com>
4338
4339         * tests/testtreeview.c: more work
4340
4341 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4342
4343         * docs/README.linux-fb:
4344         Update the docs to the new pangoft2 way.
4345
4346 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4347
4348         * configure.in:
4349         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4350         pango version.
4351         Remove modules/linux-fb/Makefile.
4352
4353         * gdk/linux-fb/gdkdrawable-fb2.c:
4354         Render glyphs using freetype.
4355
4356         * gdk/linux-fb/gdkfb.h:
4357         Add new fb-specific functions needed for managing windows.
4358
4359         * gdk/linux-fb/gdkmain-fb.c:
4360         Remove gdk_font_init/fini() calls.
4361
4362         * gdk/linux-fb/gdkpango-fb.c:
4363         Remove old implementation. Use pangoft2 instead.
4364
4365         * gdk/linux-fb/gdkprivate-fb.h:
4366         Remove PangoFBFont and related stuff.
4367
4368         * gdk/linux-fb/gdkwindow-fb.c:
4369         Implement drawable->get_visible_region.
4370         Implement support for _gdk_window_set_child_handler () and
4371         _gdk_window_get_decorations().
4372
4373         * modules/Makefile.am:
4374         Remove linux-fb subdir.
4375
4376         * modules/linux-fb/*:
4377         Removed all.
4378         
4379 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4380
4381         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4382         calls, as they are no longer needed.
4383
4384         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4385         
4386         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4387         figure out how to emit a signal on an interface.
4388
4389 2000-12-20  Havoc Pennington  <hp@redhat.com>
4390
4391         * tests: new directory to contain tests, gtk/test* should move
4392         here sometime (with appropriate on-cvs-server hackery)
4393
4394         * tests/testtreeview.c, tests/Makefile.am: a test
4395         
4396         * configure.in (AC_OUTPUT): add tests/Makefile
4397
4398         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4399         and "invisible_set" which were missing
4400
4401         * gtk/gtkrbtree.h: some cheesy indentation fix
4402         
4403 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4404
4405         * gtk/gtkinvisible.c (gtk_invisible_realize):
4406         Attach the style to the window so that the style it is not
4407         leaked when unrealizing the window.
4408
4409 2000-12-18  Havoc Pennington  <hp@redhat.com>
4410
4411         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4412         begin/end user action where appropriate
4413         (gtk_text_view_commit_handler): add begin/end user action
4414
4415         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4416         bracket interactive operations with begin/end user action pair.
4417         
4418         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4419         "interactive" arg from insert_text and delete_text signals.
4420         Add begin_user_action, end_user_action signals
4421         (gtk_text_buffer_begin_user_action): 
4422         (gtk_text_buffer_end_user_action): New functions to delimit 
4423         a user-visible action
4424
4425         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4426         signals.
4427         
4428 2000-12-18  Havoc Pennington  <hp@redhat.com>
4429
4430         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4431         was pretty non-working.
4432
4433         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4434         by passing the length to g_utf8_validate().
4435
4436 2000-12-16  Havoc Pennington  <hp@pobox.com>
4437
4438         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4439         Port to GObject, can go back in gdk-pixbuf after setting up 
4440         a gdk-pixbuf-marshal.h header over there.
4441
4442         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4443         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4444         args
4445         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4446         set
4447         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4448         here, do it when we create the buttons later
4449         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4450         (gtk_tree_view_map): paranoia checks that column->button is shown 
4451         and unmapped
4452         (gtk_tree_view_size_request): only request visible children.
4453         Move header size calculation in here, for cleanliness, and 
4454         to maintain invariants for child widgets if we eventually 
4455         let users set different children inside the buttons
4456         (gtk_tree_view_map_buttons): factor out code to map buttons,
4457         since it was being called several times
4458         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4459         windows instead of just moving them; their height may change 
4460         if we allow random widgets in there, or the theme changes.
4461         (gtk_tree_view_size_allocate): move button size allocation 
4462         above emitting the scroll signals, to ensure a sane state when we
4463         hit user code
4464         (gtk_tree_view_button_release): remove queue_resize after
4465         tree_view_set_size(), set_size() will handle any resize queuing
4466         that's needed
4467         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4468         draw_focus goo
4469         (gtk_tree_view_focus): use gtk_get_current_event() and
4470         gdk_event_get_state()
4471         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4472         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4473         semicolon
4474         (gtk_tree_view_create_button): show the button here
4475         (gtk_tree_view_button_clicked): actually emit the clicked signal
4476         on the column
4477         (_gtk_tree_view_set_size): return right away if the size is
4478         unchanged, as a cheesy optimization
4479         (gtk_tree_view_setup_model): rename set_model_realized to 
4480         setup_model to match the flag that indicates whether we've 
4481         called it
4482         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4483         exist, because set_scroll_adjustment does that and it shouldn't
4484         matter what order you call these in
4485         (gtk_tree_view_get_vadjustment): ditto
4486         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4487         for paranoia
4488         (gtk_tree_view_set_headers_visible): call
4489         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4490         (gtk_tree_view_append_column): clarify whether the return value
4491         is the count of columns before or after, and do the increment 
4492         separately from the return statement so you can tell from the code.
4493         (gtk_tree_view_remove_column): ditto
4494         (gtk_tree_view_insert_column): ditto
4495         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4496         outside the existing range, the docs say that outside-range
4497         columns are allowed, so we handle them as documented. (Presumably
4498         this allows a nice loop with column != NULL as test.)
4499         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4500         mean (left/right/center etc.).
4501         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4502         (gtk_tree_view_expand_row): add docs
4503         (gtk_tree_view_collapse_row): add docs
4504
4505         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4506         function to emit the clicked signal on a column
4507         
4508         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4509         state of an event
4510         (gdk_event_get_time): don't treat GDK_SCROLL 
4511         as a button event, remove default case from switch so gcc 
4512         will whine if we don't explicitly handle all event types
4513
4514         * gtk/gtktreeselection.h: added some FIXME 
4515         
4516         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4517         "columns" to "n_columns" and "column" to "columns" for clarity
4518
4519 2000-12-16  Havoc Pennington  <hp@pobox.com>
4520         
4521         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4522         stuff. This should make e.g. the delete key work again in the
4523         text widget...
4524         (gtk_text_iter_forward_cursor_positions): handle negative count
4525         (gtk_text_iter_backward_cursor_positions): handle negative count
4526         (gtk_text_iter_forward_word_ends): handle negative count
4527         (gtk_text_iter_backward_word_starts): handle negative count
4528
4529         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4530         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4531         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4532         GObject. No doubt will cause breakage.
4533
4534         * demos/gtk-demo/textview.c: remove hacks around
4535         non-GObject-ification of the text objects
4536
4537         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4538         the text tag
4539         
4540 2000-12-14  Havoc Pennington  <hp@pobox.com>
4541
4542         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4543         that we have Xrender
4544
4545 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4546
4547         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4548         Add two virtualized functions gdk_drawable_get_clip_region - to
4549         get the clip region when drawing.
4550         
4551         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4552         use invalidate_region.
4553
4554         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4555         region.
4556
4557         * acconfig.h configure.in: Check for Xft. For now, assume
4558         that if Xft is found, Pango was compiled with Xft support
4559         as well.
4560
4561         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4562         gdk_colormap_query_color().
4563         
4564         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4565         with Xft if appropriate.
4566
4567         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4568         a pangoxft context if we have XFT and the environment
4569         variable GD_USE_XFT is set.
4570         
4571         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4572         and also possibly an XftDraw structure.
4573
4574         * gtk/gtkfontsel.c: Handle the case where the font from the
4575         style doesn't match any of the fonts a bit better.
4576         
4577         * gtk/testgtk.c: Add tabs between directional segments for
4578         hebrew/arabic test. (Not really necessary, just a little
4579         prettier.)
4580
4581 2000-12-14  Havoc Pennington  <hp@redhat.com>
4582
4583         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4584         reading a file
4585
4586 2000-12-14  Havoc Pennington  <hp@redhat.com>
4587
4588         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4589         unused call to get_last_line()
4590
4591         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4592         here until boxed is working (and maybe after that - we should
4593         really not gratuitously break old code)
4594
4595         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4596         specific types for font_desc and tabs args, move them to
4597         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4598         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4599
4600         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4601         use GTK_TYPE_POINTER for signal signatures as a hack-around
4602
4603         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4604         PangoTabArray
4605
4606         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4607         make static
4608         (line_display_index_to_iter): make static
4609
4610         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4611         to marshal a string not a boxed
4612
4613         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4614
4615         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4616         since the UTF-8 isn't validated yet
4617
4618         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4619         lines to end in '\n'
4620         
4621         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4622         forward_to_delimiters, and grapheme boundaries
4623         (gtk_text_view_delete_from_cursor): properly handle non-newline
4624         delimiters, and grapheme boundaries
4625
4626         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4627         to gtk_text_iter_forward_to_delimiters, and make it work properly
4628         if empty lines end with a character other than '\n'
4629
4630         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4631         position
4632
4633 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4634
4635         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4636
4637         * gtk/gtk.def
4638         * gdk/gdk.def: Update.
4639
4640         * gdk/win32/gdkmain-win32.c
4641         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4642         gdkmain-win32.c here.
4643
4644         * gdk/win32/makefile.mingw.in (all): No need to make
4645         gdk-win32res.o here, the makefile one step up will call us to make
4646         it.
4647
4648         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4649         gdkkeys-win32.
4650
4651         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4652
4653         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4654         call to g_source_add().
4655
4656         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4657         leak. Thanks to Andreas Kemnade.
4658
4659 2000-12-13  Havoc Pennington  <hp@pobox.com>
4660
4661         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4662
4663         * gtk/gtktext*.[hc]: update accordingly
4664         
4665 2000-12-13  Havoc Pennington  <hp@pobox.com>
4666
4667         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4668         header file
4669
4670         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4671
4672 2000-12-13  Alex Larsson  <alexl@redhat.com>
4673
4674         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4675         Add support for ps2 intellimouse.
4676
4677         * gdkkeyboard-fb.c:
4678         Move shift-F1 repaint handling to xlate handler only.
4679         
4680         * docs/README.linux-fb:
4681         Add imps2 to docs.
4682         Document the new refresh keys.
4683         
4684 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
4685
4686         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
4687
4688         * gtk/gtkbox.c: change property types from (u)long to (u)int for
4689         ::position and ::padding.
4690
4691         * gtk/gtkcontainer.c: make ::border_width an INT property.
4692
4693         * gtk/gtkpacker.c: make ::position an INT property.
4694
4695         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4696         guard against NULL h/v scrollbars, since this is used at construction
4697         time.
4698
4699         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
4700         internal gtk_clist_constructor().
4701
4702         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
4703         gtk_ctree_constructor().
4704
4705         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4706         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4707
4708         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4709         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4710
4711         * gtk/gtkwidget.[hc]:
4712         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4713         and gtk_widget_get().
4714         (gtk_widget_new): use g_object_new_valist().
4715         (gtk_widget_set): use g_object_set_valist().
4716
4717         * gtk/gtkobject.[hc]:
4718         removed gtk_object_arg_get_info(), gtk_object_getv(),
4719         gtk_object_query_args(), gtk_object_newv(),
4720         gtk_object_class_add_signals(),
4721         gtk_object_class_user_signal_new(),
4722         gtk_object_class_user_signal_newv(),
4723         gtk_object_arg_set(), gtk_object_arg_get(),
4724         gtk_object_args_collect(),
4725         gtk_object_default_construct(),
4726         gtk_object_constructed(),
4727         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4728         removed nsignals, signals and n_args members from GtkObjectClass.
4729         (gtk_object_new): use g_object_new_valist().
4730         (gtk_object_set): use g_object_set_valist().
4731         (gtk_object_get): use g_object_get_valist().
4732         
4733         * gtk/gtkcompat.h: define gtk_object_default_construct().
4734         
4735         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4736         g_object_new().
4737
4738         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4739         fucntions, cleaned up method assignments (make sure your structures
4740         are setup properly before calling out). removed all GTK_CONSTRUCTED
4741         hacks ;)
4742
4743 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4744
4745         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4746         off-by-one error in checks. (Dave Lambert)
4747
4748 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4749
4750         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4751         Don't free gdk_fb_keyboard twice.
4752
4753 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4754
4755         * gtk/testgtk.c:
4756         (create_tooltips): 
4757         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4758         use GObject swapped_signal:: properties instead.
4759
4760         * gtk/gtkcellrenderertoggle.c: 
4761         * gtk/gtkcellrenderertextpixbuf.c: 
4762         * gtk/gtkcellrenderertext.c: 
4763         * gtk/gtkcellrendererpixbuf.c: 
4764         * gtk/gtkcellrenderer.c:
4765         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4766         missing warnings for invalid property ids, install properties
4767         with g_object_class_install_property() now.
4768         
4769         * gtk/gtksignal.c:
4770         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4771         
4772 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4773         
4774         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4775         to determine if a window is the focus widget within
4776         its toplevel.
4777
4778         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4779         to be boolean.
4780
4781         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4782         of the case where the container CAN_FOCUS to here instead
4783         of having it in each individual move-the-focus place.
4784
4785         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4786         focusing to be geometric in a much more obvious sense. Arrowing
4787         around is still non-intuitive because it isn't perfect and
4788         because entries, etc, grab the arrow keys, but it at least
4789         usually will do what you expect now.
4790         
4791         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4792         file.
4793
4794         * gtk/gtknotebook.c: Change tabs to be a single item in
4795         the focus chain. Make movement of focus on tabs with arrow
4796         keys wrap around.
4797         
4798         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4799         CHECK_FIND_CHILD macro to give informative error messages
4800         instead of silent returns.
4801
4802         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4803         flag since we handle GdkReturn on the tabs.
4804
4805         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4806         windows rather than sending expose events directly.
4807
4808         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4809         definition for GtkNotebookPage into .c file, since it is private.
4810
4811         * gtk/testgtk.c (create_notebook): Add option for 
4812         testing borderless notebook.
4813
4814         * gtk/testgtk.c (page_switch): Removed egregious poking
4815         around in GTK+ internals.
4816
4817         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4818
4819         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4820         properly through gtk_clist_focus. Make the title headers a
4821         single item in the tab-focus chain, and make left-right wrap
4822         around.
4823
4824         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4825         focus method so that wrapping around works properly.
4826
4827         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4828         that is handled for the widget now. 
4829
4830 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4831
4832         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4833         widgets as TOPLEVEL.
4834
4835         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4836         TOPLEVEL widgets are containers.
4837
4838         * gtk/gtkinvisible.h: Remove useless include.
4839
4840 2000-12-11  Havoc Pennington  <hp@redhat.com>
4841
4842         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4843         Handle chopping off \r\n and 0x2029 in addition to \n before
4844         passing to PangoLayout
4845
4846         * gtk/gtkimcontextsimple.c
4847         (gtk_im_context_simple_get_preedit_string): 
4848         return an empty string if no match is pending
4849
4850         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4851         assertion that the returned preedit string was sane
4852
4853         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4854         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4855         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4856
4857 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4858
4859         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4860         Fix up finalizer to chain to its parent.
4861
4862 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4863
4864         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4865         Clearified the difference between the keyboard types. Wrote a note
4866         about the magic sysrq key to get out of raw mode.
4867
4868 2000-12-09  James Henstridge  <james@daa.com.au>
4869
4870         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4871         member to hold masks for detecting the start of a protocol packet.
4872         (mouse_devs): add packet start masks for ps2 and ms device types.
4873         Left the mask for fidmour blank, as I have no idea what it should
4874         be.
4875         (handle_mouse_io): skip bytes until we get to the start of a
4876         packet.  My Logitech mouse seems to be passing an extra NULL pad
4877         byte, and GPM does a similar thing here.
4878         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
4879         this is the ms mouse driver.
4880         (gdk_fb_mouse_ms_packet): fix up button handling, which was
4881         completely broken except for button1.  It was checking the wrong
4882         bit in the packet for the status of the right mouse button, and
4883         wrongly assuming right == button2 rather than 3.  I fixed that and
4884         also added support for middle button (button2).
4885
4886 2000-12-08  Havoc Pennington  <hp@redhat.com>
4887
4888         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
4889         that cause a segfault on text insertion
4890
4891         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
4892         warning
4893
4894         * gtk/gtktextiter.c (test_log_attrs): use
4895         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
4896
4897         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
4898         Get log attrs for a line, using a cache stored on the buffer
4899         
4900         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
4901         reported by Jeff Franks
4902
4903 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4904
4905         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
4906         /dev/ttyS0 -> /dev/mouse
4907
4908 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4909
4910         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
4911         Added dummy gdk_fontset_load.
4912
4913 2000-12-08  Alexander Larsson  <alexl@redhat.com>
4914
4915         * docs/README.linux-fb:
4916         * docs/Makefile.am:
4917         Initial GtkFB docs.
4918         
4919         * gdk/linux-fb/Makefile.am:
4920         Define GDK_DATA_PREFIX.
4921
4922         * gdk/linux-fb/gdkmain-fb.c:
4923         Fix typo.
4924         Change default display to /dev/fb0.
4925
4926         * gdk/linux-fb/gdkpango-fb.c:
4927         Add $(prefix)/share/fonts/ to font path.
4928         
4929 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4930
4931         * gdk/linux-fb/gdkkeyboard-fb.c:
4932         New file containing the abstracted keyboard driver. Most code
4933         taken from gdkinput-ps2.c
4934
4935         * gdk/linux-fb/gdkinput-ps2.c:
4936         Removed file.
4937         
4938         * gdk/linux-fb/Makefile.am:
4939         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
4940
4941         * gdk/linux-fb/gdkcolor-fb.c:
4942         display->fb was renamed to display->fb_fd.
4943
4944         * gdk/linux-fb/gdkcursor-fb.c:
4945         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4946
4947         * gdk/linux-fb/gdkinput.c:
4948         Moved gdk_input_init here from gdkinput-ps2.c
4949
4950         * gdk/linux-fb/gdkmain-fb.c:
4951         display->fb was renamed to display->fb_fd.
4952         Now the tty and the console is opened here instead
4953         of in the keyboard driver. Also check GDK_VT to see what
4954         tty to open.
4955         Move gdk_beep () here from gdkinput-ps2.c
4956         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4957
4958         * gdk/linux-fb/gdkmouse-fb.c:
4959         Add header.
4960         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4961         Return correct keyboard modifiers.
4962         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
4963
4964         * gdk/linux-fb/gdkprivate-fb.h:
4965         Add tty and vt info to display.
4966         Add orignal modeinfo storage to display
4967         Update global functions
4968
4969         * gdk/linux-fb/gdkwindow-fb.c:
4970         Added gdk_fb_window_find_focus().
4971         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4972
4973 2000-12-07  Havoc Pennington  <hp@pobox.com>
4974
4975         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
4976         function, noticed by Alex
4977
4978 2000-12-06  Elliot Lee  <sopwith@redhat.com>
4979
4980         * configure.in: Detect freetype properly
4981
4982         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
4983         above.
4984
4985 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4986
4987         * gdk/linux-fb/Makefile.am:
4988         Add gdkmouse-fb.c
4989         
4990         * gdk/linux-fb/gdkmouse-fb.c:
4991         New file. Abstracted the mouse drivers a bit.
4992
4993         * gdk/linux-fb/gdkcursor-fb.c:
4994         The cursor hide/show functions was moved here from gdkinput-ps2.c.
4995
4996         * gdk/linux-fb/gdkinput-ps2.c:
4997         Removed old mouse handling code. Moved cursor handling code
4998         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
4999         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5000         gdk_mouse_get_info.
5001
5002         * gdk/linux-fb/gdkmain-fb.c:
5003         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5004
5005         * gdk/linux-fb/gdkprivate-fb.h:
5006         Removed public gdk_fb_find_common_ancestor, added and renamed
5007         functions for the new mouse handling code.
5008
5009         * gdk/linux-fb/gdkwindow-fb.c:
5010         Moved gdk_fb_window_send_crossing_events here. added global
5011         variable gdk_fb_window_containing_pointer. made
5012         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5013         renamed to gdk_mouse_get_info.
5014
5015 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5016
5017         * gdk/linux-fb/gdkevents-fb.c:
5018         Update to match latest gmain/gsource changes.
5019
5020         * gdk/linux-fb/gdkinput-ps2.c:
5021         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5022         it links. Will be implemented later.
5023
5024 2000-12-03  Havoc Pennington  <hp@pobox.com>
5025
5026         * gdk/Makefile.am: add gdkkeys.[hc]
5027
5028         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5029         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5030
5031         * acconfig.h, configure.in: add checks and command line options
5032         for XKB
5033
5034         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5035         
5036         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5037         and group in the key event
5038
5039         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5040         field with the low-level hardware key code, and a group
5041         field with the keyboard group
5042
5043         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5044         and declare a couple globals used for keymap handling
5045         
5046         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5047         hold down Shift-Control and type a hex number to get a Unicode 
5048         character corresponding to the hex number
5049         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5050         (return bytes not chars)
5051
5052 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5053
5054         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5055         to avoid waste on 64-bit platforms.
5056
5057 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5058
5059         * INSTALL: Fix link to PNG home, remove reference
5060         to fribidi.
5061
5062         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5063         
5064         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5065         tested.)
5066
5067         * gtk/gtkcheckmenuitem.c: Permanently turn on
5068         always_show_toggle.
5069
5070         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5071         be NULL. (Vladimir Klebanov, #26545)
5072
5073         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5074         some signed/unsigned comparison problems. (#6510,
5075         David Kaelbling)
5076
5077         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5078         return type to boolean (Oskar Liljeblad, #18648)
5079
5080 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5081
5082         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5083         Remove bogus colormap setting.
5084
5085 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5086
5087         * gdk/linux-fb/gdkcolor-fb.c:
5088         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5089
5090         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5091         Must set colormap.
5092         
5093 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5094
5095         * docs/tutorial/gtk-tut.sgml: DND updates
5096
5097 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5098
5099         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5100         Remove old debug g_warning().
5101         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5102         or an implementation, just pass the implementation to draw_drawable_2.
5103         
5104         * gdk/linux-fb/gdkprivate-fb.h:
5105         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5106
5107         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5108         clear and invalidate area when window is destroyed.
5109         (send_map_events): Remove old commented out code.
5110
5111 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5112
5113         * gdk/linux-fb/gdkpango-fb.c:
5114         Use italic instead of oblique in font aliases.
5115         
5116         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5117         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5118         other unsupported functions.
5119
5120 2000-12-04  Havoc Pennington  <hp@redhat.com>
5121
5122         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5123
5124         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5125
5126         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5127
5128         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5129         hack to avoid infinite loops (synthetic expose event) - 
5130         Owen has more appropriate fixes in a branch he'll check in later.
5131
5132         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5133         separator, CR, and CRLF as line ends
5134
5135         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5136         into lines using pango_find_paragraph_boundary(); other bits of
5137         the widget are still going to be broken if the boundary isn't '\n'
5138         though
5139
5140 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5141
5142         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5143         multiply.
5144
5145         * gdk/linux-fb/gdkpango-fb.c:
5146         Copied some 26.6 scaling macros from pango to clean up the rounding.
5147         (pango_fb_font_get_glyph_info): Correct sign on x value.
5148
5149         * gdk/linux-fb/gdkprivate-fb.h:
5150         Removed unreferenced external functions.
5151
5152         * modules/linux-fb/Makefile.am: Use ` instead of '.
5153
5154         * modules/linux-fb/basic.c:
5155         Remove dead code. In particular the dummy lang engine which broke all
5156         pango layouts in GtkFB. Don't include tables-big.i anymore.
5157
5158         * modules/linux-fb/tables-big.i:
5159         Upgrade to latest version from pango. Left for reference, basic_ranges
5160         moved to basic.c.
5161         
5162 2000-12-04  Havoc Pennington  <hp@redhat.com>
5163
5164         Fix bugs Alex found:
5165         
5166         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5167         to "draw"
5168
5169         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5170
5171         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5172
5173         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5174         implementation in here, apparently the expose() implementation was
5175         dead code.
5176
5177 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5178
5179         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5180         Return positive descent.
5181
5182 2000-12-02  Havoc Pennington  <hp@pobox.com>
5183
5184         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5185         method and signal
5186         
5187         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5188         calls gdk_window_process_updates() to push the exposes through
5189         (gtk_widget_class_init): No more draw signal, no
5190         gtk_widget_real_draw()  
5191         
5192         * gtk/gtkbin.c (gtk_bin_draw): remove
5193
5194         * gtk/gtkbox.c (gtk_box_draw): remove
5195
5196         * gtk/gtkbutton.c (gtk_button_draw): remove
5197
5198         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5199
5200         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5201
5202         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5203
5204         * gtk/gtkclist.c (gtk_clist_draw): remove
5205
5206         * gtk/gtkentry.c (gtk_entry_draw): remove
5207
5208         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5209
5210         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5211
5212         * gtk/gtkframe.c (gtk_frame_draw): remove
5213
5214         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5215
5216         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5217
5218         * gtk/gtklayout.c (gtk_layout_draw): remove
5219
5220         * gtk/gtklist.c (gtk_list_draw): remove
5221
5222         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5223
5224         * gtk/gtkmenu.c (gtk_menu_draw): remove
5225
5226         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5227
5228         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5229
5230         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5231
5232         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5233
5234         * gtk/gtkpacker.c (gtk_packer_draw): remove
5235
5236         * gtk/gtkrange.c (gtk_range_draw): remove
5237
5238         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5239
5240         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5241
5242         * gtk/gtktable.c (gtk_table_draw): remove
5243
5244         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5245
5246         * gtk/gtktext.c (gtk_text_draw): remove
5247
5248         * gtk/gtktextview.c (gtk_text_view_draw): remove
5249
5250         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5251
5252         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5253
5254         * gtk/gtktree.c (gtk_tree_draw): remove
5255
5256         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5257
5258         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5259
5260         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5261
5262         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5263
5264         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5265
5266         * gtk/gtkwindow.c (gtk_window_draw): remove
5267
5268 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5269
5270         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5271         a GtkToggleButton is both insensitive and active, it was being
5272         drawn by the GtkButton draw handler which doesn't check the
5273         state. Now it's calling gtk_toggle_button_paint instead.
5274         
5275 2000-12-01  Havoc Pennington  <hp@redhat.com>
5276
5277         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5278         dangling pointers to the appearance attributes from the 
5279         line display
5280
5281         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5282         width/height to mean "full width/height of drawable"
5283
5284         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5285         click to select word/line
5286         
5287         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5288         when getting log attrs. Get a slice, so that pixmaps and stuff
5289         are properly handled.
5290
5291         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5292         paste into the selection (replaces selection now, previously
5293         crashed or added to selection). Reveals longstanding btree bug -
5294         select multiple lines, middle-click on the selection, boom. This
5295         isn't related to my changes though.
5296
5297         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5298         PangoLogAttrs changes
5299         (gtk_entry_move_backward_word): ditto
5300
5301         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5302         functions return bool whether the iter moved onto a
5303         dereferenceable position.
5304  
5305         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5306         functions for motion in terms of display lines.
5307
5308         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5309         get the buffer a mark is inside
5310         
5311 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5312
5313         * gdk/linux-fb/Makefile.am:
5314         * modules/linux-fb/Makefile.am:
5315         Freetype 2 final uses freetype-config
5316
5317         * gdk/linux-fb/gdkpango-fb.c:
5318         Upgrade to use Freetype 2 final.
5319         More flexible support for font aliases, this also fixes a bug with
5320         GtkFontSelector, as the aliases must be visible in the font/family list,
5321         or GtkFontSelector reads uninitialized memory.
5322
5323 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5324
5325         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5326         XGetIMValues to properly terminate variable argument list, and do
5327         NULL return check for ic_values and xim_styles.
5328
5329         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5330         Restore preedit state after XmbResetIC().
5331         
5332         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5333         XvaCreateNestedList() should take XvaNestedList, but not
5334         XvaNestedList*.
5335
5336         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5337         preedit_draw_callback, preedit_caret_callback): Match
5338         "preedit-changed" signal name to "preedit_changed" to be
5339         consistent to the spec.
5340
5341         * gtk/gtkimcontextsimple.c (check_table):
5342         Match "preedit-changed" to "preedit_changed" to be consistent
5343         to the spec.
5344
5345 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5346
5347         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5348         gc->clip_region == NULL>
5349
5350 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5351
5352         Changes by Hans Breuer:
5353         
5354         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5355         Dont't use negative width and height as max_hints. This fixes
5356         Owen's recent testgtk changes for win32.
5357
5358         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5359         gdk_win32_hdc_release): These are exported and may be called with
5360         other drawable types than our GdkDrawableImplWin32 (?).
5361
5362         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5363         so always #define USE_BACKING_STORE.
5364
5365         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5366         of printf for debugging output.
5367
5368         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5369         
5370         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5371
5372         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5373         declaration.
5374
5375         * gtk/gtktexttypes.h: Ditto.
5376
5377         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5378         (GDK_VoidSymbol) also if in case of arg check failure.
5379
5380         * gtk/gtkimcontextsimple.c
5381         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5382         position to the pointer, but to the variable it points to.
5383
5384         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5385
5386         * gtk/gtk.def: Updates.
5387
5388 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5389
5390         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5391         GTK_TYPE_TREE_MODEL.
5392
5393 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5394
5395         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5396         Set the size of the font from the description.
5397         (gdk_text_width): Gross hack that calculates the width
5398         of text by text_length * size/2. This is necessary because
5399         GtkLabel does some ugly gtk_string_width call to calculate
5400         an good size.
5401         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5402
5403 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5404
5405         * docs/tutorial/gtk-tut.sgml: DND updates
5406
5407 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5408
5409         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5410         If you pass width or height == 0 to gdk_window_clear_area they
5411         should be calculated from the window size.
5412
5413 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5414
5415         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5416         a grab, but no grab-cursor, use the cursor from the grabbed
5417         window. (gdk_fb_window_send_crossing_events): Send normal
5418         enter/leave notifications if grab and owner_events == TRUE.
5419
5420 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5421
5422         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5423         Do implicit button grabs, even if the window doesn't
5424         want the event.
5425         (gdk_fb_window_send_crossing_events): If there is a
5426         grab, only the grabbed window gets normal enter/leave
5427         notifications. On ungrab go from grabbed window to current.
5428         Don't send any notification to b when propagating from c -> b.
5429         If setting a grab on window, don't set prev_window.
5430         (handle_mouse_input): Send enter/leave events to the window the
5431         mouse is over, not the grabbed one.
5432         
5433 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5434
5435         * gdk/gdkregion-generic.c: Zap warning.
5436         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5437         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5438
5439 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5440
5441         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5442         The cursor should be hidden if it is part of either the
5443         source or destination region. Not only if it is in both.
5444         (gdk_window_set_transient_for): Silence warnings.
5445
5446 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5447
5448         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5449         The default mode in X is Pie Arcs, therefore that is
5450         what Gtk+ uses.
5451
5452 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5453
5454         * gdk/linux-fb/gdkinput-ps2.c:
5455         Implement correct EnterNotify/LeaveNotify:
5456         (gdk_fb_window_send_crossing_events): New function that sends
5457         all GdkCrossingEvents from the last mouse-window to the specified
5458         destination.
5459         (gdk_fb_window_visibility_crossing): Removed function.
5460         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5461         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5462         instead of gdk_window_get_pointer() for better readability.
5463
5464         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5465         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5466
5467         * gdk/linux-fb/gdkprivate-fb.h:
5468         removed gdk_fb_window_visibility_crossing, added
5469         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5470
5471         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5472         New function that finds the least common ancestor of two windows.
5473         (gdk_window_show, gdk_window_hide):
5474         Use gdk_fb_window_send_crossing_events.
5475         (gdk_fb_window_move_resize): Send configure events to toplevel
5476         windows. Use gdk_fb_window_send_crossing_events.
5477
5478 2000-11-27  Havoc Pennington  <hp@redhat.com>
5479
5480         * gtk/gtkprivate.h (enum): Remove a trailing comma
5481
5482 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5483
5484         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5485         the "changed" callback of the adjustment.  We need to redraw the
5486         spin button's arrows when the adjustment's range changes.
5487         (adjustment_changed_cb): Draw the arrows.
5488         (gtk_spin_button_value_changed): Draw the arrows.
5489
5490 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5491
5492         * gdk/linux-fb/gdkselection-fb.c:
5493         Initial selection implementation.
5494
5495         * gtk/gtkselection.c:
5496         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5497         requestor in gtk_selection_request.
5498         
5499         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5500         Added gdk_selection_property atom.
5501
5502         * gdk/linux-fb/gdkprivate-fb.h:
5503         Export _gdk_selection_window_destroyed.
5504         Removed mask_off_x/y from GdkCursorPrivateFB.
5505         Removed hbearing, added top, left to PangoFBGlyphInfo.
5506
5507         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5508         Call _gdk_selection_window_destroyed
5509         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5510         the root window has been created.
5511         (static_dx_hack, static_dy_hack, compare_draw_rects,
5512         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5513         in region. They are already sorted. Instead just traverse them in
5514         reverse if draw_direction < 0.
5515         
5516         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5517         Double-clicks must be sent after the normal button_press.
5518         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5519         
5520         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5521         Pass _gdk_fb_screen_gc instead of NULL.
5522
5523         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5524         Initialize gdk_selection_property.
5525         (gdk_event_make): Remove unused code.
5526
5527         * gdk/linux-fb/gdkcursor-fb.c:
5528         Make the pixmap for the cursor the same size as the mask. Also remove
5529         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5530         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5531         Now the whole cursor is visible.
5532
5533         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5534         Fix bug where xdest+height instead of ydest+height was used
5535         to calculate if the source and dest overlapped. This fixes the
5536         redraw bug when the main window in testgtk was scrolled when
5537         partially covered by a tall window.
5538         Copy rectangles in region in order depending on draw_direction.
5539         Also moved the draw_direction flipping of start_y and end_y into
5540         the gc functions, as this might not be what all of them want.
5541         (gdk_fb_draw_lines): Support dashed lines.
5542         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5543         so that the text is positioned correctly (was 1 pixel high).
5544
5545         gdk/linux-fb/gdkgc-fb.c:
5546         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5547         all lines were drawn a pixel to short. Also checked the default of
5548         the rest of the values, and they're the same as X now.
5549
5550         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5551         Clean up pixel positioning of the glyphs. Just use bgy->top and
5552         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5553         to all divisions to get correct rounding behaviour.
5554
5555         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5556         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5557         Moved start_y/end_y flip into draw_drawable implementations.
5558         Flip also x rendering when draw_direction < 0.
5559         Remove unneccesary multiply with draw_direction.
5560
5561 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5562
5563         * docs/tutorial/gtk-tut.sgml:
5564           - get rid of gtk_toggle_button_toggled FUD
5565           - start DND section - needs work - based on:
5566                 http://wolfpack.twu.net/docs/gtkdnd/
5567
5568 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5569
5570         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5571         Correct calculation of font metrics. Now GtkEntrys have sane
5572         size.
5573
5574 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5575
5576         * gdk/gdktypes.h:
5577         Add new type GdkSpan
5578         
5579         * docs/reference/gdk/gdk-sections.txt,
5580         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5581         gdk/gdkregion.h:
5582         Implement and document gdk_region_spans_intersect_foreach.
5583
5584         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5585         Add new file gdkrender-fb.c which contains all core
5586         rendering code.
5587         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5588         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5589         (optimized rectangle fillers).
5590
5591         * gdk/linux-fb/gdkdrawable-fb2.c:
5592         Move all rendering code to gdkrender-fb.c.
5593         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5594         Use the new span intersection functions in gdk_fb_fill_spans.
5595         gdk_fb_draw_rectangle() clips filled rectangles and calls
5596         gc->fill_rectangle with the result.
5597         gdk_fb_fill_spans() gets extra argument "sorted".
5598
5599         * gdk/linux-fb/gdkevents-fb.c:
5600         Remove unused includes and defines.
5601         New function gdk_fb_get_time() to get correct time for events.
5602
5603         * gdk/linux-fb/gdkinput-ps2.c:
5604         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5605         Make sure to set the time of all events.
5606
5607         * gdk/linux-fb/gdkmain-fb.c:
5608         Use gdk_fb_get_time ().
5609
5610         * gdk/linux-fb/gdkprivate-fb.h:
5611         New virtual GC calls: fill_span & fill_rectangle.
5612         Export gdk_fb_get_time().
5613         gdk_fb_fill_spans() gets extra argument "sorted".
5614
5615         * gdk/linux-fb/mi*.c:
5616         Use GdkSpan instead of GdkRectangle.
5617         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5618         from XFree 4 source)
5619         
5620 2000-11-22    <jrb@redhat.com>
5621
5622         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5623         reversing the order in an if statement will do.  Doing so managed
5624         to make the treemodelsort half work.  Other half will follow after
5625         I get the insert function fully fixed.
5626
5627 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5628         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5629         more than 2 bits. Besides, I need to implement an evil hack. :)
5630
5631 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5632
5633         * docs/tutorial/gtk-tut.sgml: minor corrections
5634
5635 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5636         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5637           convert to and from relative path's and iters.
5638
5639         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5640           testing sorting functions a bit better.  Currently broken -- will
5641           fix in morning.
5642
5643 2000-11-20  Havoc Pennington  <hp@redhat.com>
5644
5645         * gtk/gtkwidget.c: Documented a bunch of functions in here
5646         (gtk_widget_realize): Warn if you try to realize
5647         a widget with no parent that isn't a toplevel
5648         (gtk_widget_intersect): return a gboolean
5649
5650 2000-11-20  Havoc Pennington  <hp@redhat.com>
5651
5652         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5653         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5654         scrolling to be implemented in GDK to finish. Also, right now
5655         we just size_allocate all children on every layout change,
5656         which is pretty lame. Test commented out of testtext.c, 
5657         until it works better.
5658
5659 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5660
5661         * gdk/linux-fb/gdkdrawable-fb2.c:
5662         Removed unused arguments from gdk_fb_drawable_get_pixel().
5663
5664         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5665         Renamed fidur specific mouse packet data in MouseDevice to
5666         generic. Used it in ps2 mouse handling code to avoid blocking
5667         reads.
5668
5669 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5670
5671         * demos/gtk-demo/main.c: Changed to have the list become
5672         non-italic when the demo window is destroyed through an external
5673         event (like a close button).  Doing so found three bugs in the
5674         widget.
5675
5676         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5677
5678         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5679         we actually set the cell.
5680
5681         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5682
5683         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
5684         free a leaked path.  Thanks memprof.
5685
5686 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
5687
5688         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
5689         off-by-one error when destroying allocated segments
5690         on failure. (Elliot)
5691
5692 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
5693
5694         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
5695         memleaks found by Evan Martin.
5696
5697 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
5698
5699         * Released 1.3.2
5700         
5701         * NEWS: Updates for 1.3.2
5702
5703 2000-11-17  Tor Lillqvist  <tml@iki.fi>
5704
5705         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5706         but in general for window system specific events.
5707
5708         * gtk/gtk.def
5709         * gtk/makefile.mingw.in
5710         * gtk/makefile.msc.in: Update.
5711         
5712         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5713
5714 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5715
5716         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5717         distribute gtk.immodules.
5718
5719         * gtk/Makefile.am (install-data-local): Don't install the
5720         gtk.immodules file created for the uninstalled modules;
5721         instead run gtk-query-immodules after install
5722
5723 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5724
5725         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5726         -rpath to the right install location.
5727
5728         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5729         -export-dynamic.
5730
5731         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5732         properly.
5733
5734 2000-11-15  Havoc Pennington  <hp@pobox.com>
5735
5736         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5737         patch from Mikael Hermansson to temporarily stop blinking while
5738         the user is using the keyboard to type or navigate. 
5739
5740         Also, when blinking, stay on for longer than we stay off. Also,
5741         return from start_cursor_blink if !cursor_visible, to save
5742         checking that flag all over the place before we call
5743         start_cursor_blink.
5744
5745 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5746
5747         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5748         only contain a "fontset" line, which is now ignored.
5749
5750         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5751         double-click-to-select-word work.
5752         
5753 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5754
5755         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5756         Don't move back one char when we are actually at the end of the 
5757         paragraph.
5758
5759 2000-11-15  Robert Brady  <robert@suse.co.uk>
5760
5761         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5762         'o' < 'p'.
5763         
5764         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5765         bind_textdomain_codeset.
5766
5767         (gtk_init_check): Make the warning about translating default:LTR
5768         sterner.
5769         
5770 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5771
5772         * **/Makefile.am : remove unecessary rules for win32-specific
5773         config-substituted targets. If you want these rules, use
5774         --enable-maintainer-mode (called automatically by autogen.sh).
5775         Stops a lot of unneccessary make-time warnings.
5776
5777         * gtk/gtktext{layout,display}.c: Factor in total width as
5778         well as screen when figuring alignment for word-wrap as well as
5779         no wrap; this is necessary to handle lines that cannot be wrapped
5780         at all.
5781
5782 2000-11-15  Havoc Pennington  <hp@redhat.com>
5783
5784         * gtk/testtext.c: Implement essential color cycling feature
5785
5786 2000-11-15  Havoc Pennington  <hp@redhat.com>
5787
5788         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5789         when we invalidate the main window.
5790
5791         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5792         GtkTextView will now invalidate the side windows for us when text
5793         changes.
5794
5795 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5796
5797         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5798         unconditionally, since we may need to update the horizontal
5799         scrollbars even if the height didn't change.
5800
5801         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5802         the extra attrs, since some of them affect size.
5803
5804         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5805         x_offset correctly.
5806
5807 2000-11-15  Havoc Pennington  <hp@redhat.com>
5808
5809         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5810         don't move the first line out into the margin, instead move the
5811         whole paragraph in order to make space for the first line within 
5812         the margin
5813
5814 2000-11-15  Havoc Pennington  <hp@redhat.com>
5815
5816         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5817         xoffset in addition to yoffset, so horizontal scrolling doesn't
5818         break redraws
5819
5820 2000-11-15  Havoc Pennington  <hp@redhat.com>
5821
5822         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5823         from the cursor
5824         (render_layout_line): fix reversed test that caused weird
5825         underlines to get drawn
5826
5827 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5828
5829         * gdk/linux-fb/gdkprivate-fb.h:
5830         Fix debug macros.
5831         
5832 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5833
5834         * gdk/linux-fb/gdkprivate-fb.h:
5835         Added virtual functions set_pixel, get_color,
5836         fill_span and draw_drawable to the GC.
5837         Added global _gdk_fb_screen_gc to use instead of
5838         NULL when drawing to the screen.
5839         Added _gdk_fb_gc_calc_state() prototype.
5840
5841         * gdk/linux-fb/gdkgc-fb.c:
5842         Call _gdk_fb_gc_calc_state() on any gc state change.
5843
5844         * gdk/linux-fb/gdkglobals-fb.c:
5845         Add _gdk_fb_screen_gc
5846                 
5847         * gdk/linux-fb/gdkdrawable-fb2.c:
5848         _gdk_fb_gc_calc_state() calculates best functions
5849         for the GC state and depth.
5850         Moved bpp specialized code to separate functions.
5851         Added optimized 24 bpp AA draw_drawable.
5852
5853         * gdk/linux-fb/gdkevents-fb.c:
5854         Silence gcc warning.
5855
5856         * gdk/linux-fb/gdkimage-fb.c:
5857         Use _gdk_fb_screen_gc
5858
5859         * gdk/linux-fb/gdkwindow-fb.c:
5860         Init and use _gdk_fb_screen_gc
5861
5862         * gdk/linux-fb/mitypes.h:
5863         Remove unused types.
5864
5865 2000-11-14  Havoc Pennington  <hp@pobox.com>
5866
5867         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5868         to pixels
5869
5870 2000-11-14  Havoc Pennington  <hp@pobox.com>
5871
5872         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5873
5874         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5875         unknown char, no real reason we were using a variable. 
5876         Remove gtk_text_unknown_char variable. Fix all the text widget
5877         files accordingly.
5878
5879         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
5880         since the Unicode spec seems to prefer that character for our
5881         purposes.
5882
5883 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
5884
5885         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
5886         value of g_getenv() isn't freeable, so g_strdup it.
5887
5888         * modules/input/inuktitut.c: Inuktitut input method.
5889
5890         * modules/input/Makefile.am: Build this.
5891         
5892 2000-11-14  Elliot Lee  <sopwith@redhat.com>
5893
5894         * gtk/Makefile.am: Install gtk.immodules, needed for operation
5895         of gtk programs.
5896
5897 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
5898
5899         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
5900         reversed > that was causing Home to go to end of previous line.
5901
5902         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
5903         modified-keypresses (leave for bindings.)
5904
5905         * modules/input/Makefile.am: Remove useless -export-dynamic
5906         from module LDFLAGS.
5907
5908 2000-11-14  Havoc Pennington  <hp@redhat.com>
5909
5910         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
5911         higher.
5912
5913         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
5914         account. Also, render rise, underline, background, etc. for
5915         pixbufs as well as text. Also, draw underlines one pixel higher.
5916
5917         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
5918         PangoAttribute for the rise, so it gets drawn properly. Also,
5919         add the GtkTextAppearance attribute for pixbuf/widget segments
5920         as well; we should go ahead and have rise, underline, background,
5921         stipple work for those
5922
5923         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
5924         Pango
5925
5926 2000-11-15  Tor Lillqvist  <tml@iki.fi>
5927
5928         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
5929
5930         * gtk/gtk.def: Update.
5931
5932         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
5933         included.
5934         (gtk_rc_get_im_module_file): Use run-time installation directory
5935         on Win32.
5936
5937         * gdk/win32/rc/gdk.rc: Remove.
5938         * gdk/win32/rc/gdk.rc.in: New file.
5939         * gdk/win32/rc/Makefile.am: New file
5940         * gdk/win32/Makefile.am: Corresponding changes.
5941
5942         * gtk/gtk.rc: Remove.
5943         * gtk/gtk-win32.rc.in: New file.
5944         * gtk/Makefile.am: Corresponding changes.
5945
5946         * configure.in: Corresponding changes.
5947
5948         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
5949         has a built gtkcompat.h. Developers using CVS code on Win32 can
5950         hand-edit it from gtkcompat.h.in.
5951
5952         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
5953         gtkcompat.h from gtkcompat.h.win32.
5954
5955 2000-11-14  Havoc Pennington  <hp@redhat.com>
5956
5957         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
5958         to default to GDK_ACTION_MOVE if the drag is within a single
5959         widget. Defaults to GDK_ACTION_COPY between widgets.
5960
5961 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
5962
5963         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
5964
5965         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
5966
5967         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
5968         srcdir != builddir
5969
5970         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
5971
5972         * configure.in (GTK_VERSION): Up to 1.3.2
5973
5974         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
5975         gtkimcontextxim.h
5976
5977         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
5978         missing doc comment.
5979
5980 2000-11-14  Alexander Larsson  <alexl@redhat.com>
5981
5982         * modules/linux-fb/basic.c:
5983         Use the glib iconv wrappers.
5984
5985 2000-11-13  Havoc Pennington  <hp@pobox.com>
5986
5987         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
5988         still more bugs.
5989
5990         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
5991         scroll the GdkWindows before realization.
5992
5993 2000-11-13  Havoc Pennington  <hp@redhat.com>
5994
5995         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
5996         where GC didn't always get updated properly
5997
5998         * demos/gtk-demo/textview.c (create_tags): Use subattributes
5999         of fonts instead of setting the entire font
6000
6001         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6002         setting entire font
6003
6004         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6005
6006         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6007         a bunch of individually-settable font attributes. You can still 
6008         use the "font" and "font_desc" args, they just set all the font
6009         attributes at once.
6010
6011 2000-11-13 Elliot Lee <sopwith@redhat.com>
6012
6013         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6014
6015 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6016
6017         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6018         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6019
6020         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6021         work better.
6022
6023 2000-11-13  Havoc Pennington  <hp@redhat.com>
6024
6025         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6026         the module file.
6027
6028         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6029         dest->language
6030
6031         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6032         settings
6033
6034         * gtk/gtktextview.c: Implement object args and setters/getters for
6035         all the aspects of the GtkTextAttributes that are not set from
6036         GtkWidget attributes. This is spacing, justification, margins,
6037         etc.
6038
6039         (gtk_text_view_set_arg)
6040         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6041         args
6042         (gtk_text_view_class_init): Add args for justify, left_margin,
6043         right_margin, indent, and tabs
6044         
6045
6046         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6047         attribute properly
6048
6049         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6050         replace with indent attribute
6051
6052         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6053         PANGO_SCALE
6054
6055         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6056         rearranging code to do that
6057         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6058         i.e. don't subtract the top_margin first, just to keep
6059         all margin-futzing in one place.
6060
6061         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6062
6063         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6064         special case of last line, Pango now handles this itself.
6065         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6066         Y coordinate
6067         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6068         (find_display_line_above): wasn't moving the byte index as it
6069         iterated over lines, so always returned byte 0. Also, port to use
6070         PangoLayoutIter.
6071         (find_display_line_below): same problem as
6072         find_display_line_above. Also, port to use PangoLayoutIter.
6073
6074 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6075
6076         * gdk/linux-fb/*.[ch]:
6077         Massive reindent to gtk+ standard. My hands hurt.
6078
6079         * gdk/linux-fb/gdkcolor-fb.c:
6080         Move GdkColorPrivateFB from inherited to windowing_data
6081
6082         * gdk/linux-fb/gdkcursor-fb.c:
6083         _gdk_cursor_new_from_pixmap made static
6084
6085         * gdk/linux-fb/gdkdnd-fb.c:
6086         GdkDragContextPrivate moved to windowing_data
6087
6088         * gdk/linux-fb/gdkdrawable-fb2.c:
6089         Removed endian.h, use glib endianness macros instead
6090         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6091         and GDK_DRAWABLE_IMPL_FBDATA
6092
6093         * gdk/linux-fb/gdkfont-fb.c:
6094         Add empty gdk_font_load(). Needed for linking of Gtk+.
6095
6096         * gdk/linux-fb/gdkimage-fb.c:
6097         Removed endian.h, use glib endianness macros instead
6098         Moved GdkImagePrivateFB to windowing_data
6099         gdk_image_new_bitmap didn't always allocate enough
6100         memory.
6101
6102         * gdk/linux-fb/gdkinput-ps2.c:
6103         Added semi-working support for MS serial mice.
6104
6105         * gdk/linux-fb/gdkprivate-fb.h:
6106         s/GdkWindowPrivate/GdkWindowObject/
6107         Removed GdkWindowPrivate typedef
6108         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6109         Removed GDK_DRAWABLE_P
6110         Move GdkColorPrivateFB from inherited to windowing_data
6111         Moved GdkImagePrivateFB to windowing_data
6112
6113         * gdk/linux-fb/gdkvisual-fb.c:
6114         Removed some unused debug code.
6115
6116         * gdk/linux-fb/gdkwindow-fb.c:
6117         Use stock cursors instead of including X headers.
6118         s/GdkWindowPrivate/GdkWindowObject/
6119
6120         * gdk/linux-fb/mitypes.h:
6121         Removed unused types.
6122
6123         * modules/linux-fb/basic.c:
6124         Use the pango fribidi wrappers.
6125
6126 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6127
6128         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6129         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6130         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6131         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6132         GEqualFunc where applicable.
6133         
6134         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6135         pango_font_description_equal as changed in pango.
6136         
6137         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6138
6139         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6140
6141         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6142
6143         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6144
6145         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6146
6147         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6148
6149         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6150         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6151
6152         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6153         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6154
6155 2000-11-12  Havoc Pennington  <hp@pobox.com>
6156
6157         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6158         dir to datadir/gtk+-2.0/demo
6159
6160         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6161         sorts of text widget and Pango font bugs. Urgh.
6162
6163         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6164
6165         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6166         tree that you should double click to see the demo. Fix 
6167         types of variables to reflect changed return values from 
6168         GtkTreeStore and GtkTreeViewColumn constructors.
6169
6170         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6171         newly-created buffer to prepare for GObject semantics
6172
6173         * gtk/testtext.c: don't leak the buffer with GObject semantics
6174
6175         * gtk/testtextbuffer.c: ditto
6176         
6177 2000-11-12  Havoc Pennington  <hp@pobox.com>
6178
6179         Rename this testgtk to gtk-demo to avoid confusion, and 
6180         install it so people can use it as a supplement to 
6181         the documentation.
6182         
6183         * demos/gtk-demo: Moved from demos/testgtk
6184
6185         * demos/testgtk: Removed
6186
6187         * configure.in: make Makefile in gtk-demo
6188         
6189         * demos/gtk-demo/Makefile.am: Install sample source to 
6190         datadir/gtk-demo (maybe there's a better place?), and 
6191         rename the binary to gtk-demo
6192         
6193         * demos/gtk-demo/main.c (load_file): Load installed sample
6194         source if source isn't found in pwd.
6195
6196 2000-11-09  Havoc Pennington  <hp@pobox.com>
6197
6198         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6199         argument to set the char displayed when visibility == FALSE
6200         (gtk_entry_create_layout): If !entry->visible, replace 
6201         all chars with the "invisible char"
6202
6203         * gtk/testgtk.c: Test the invisible_char deal
6204         
6205 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6206
6207         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6208         can't get a native font in the right encoding.
6209
6210 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6211
6212         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6213         respectively.
6214
6215 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6216
6217         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6218         Fix warning when moving between paragraphs.
6219
6220         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6221         delete => delete_from_cursor, insert => insert_at_cursor
6222
6223 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6224
6225         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6226
6227         * modules/input/imthai-broken.c: A Thai input method for use if
6228         Thai keys are really generating Latin1 keysyms.
6229
6230         * modules/input/Makefile.am: Build these.
6231
6232 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6233
6234         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6235         g_filename_{to,from}_utf8 now takes an extra parameter.
6236
6237         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6238         strftime into UTF-8.
6239
6240         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6241         calendars.
6242
6243         (gtk_calendar_paint_day_names): Draw day names in the right 
6244         place.
6245         
6246 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6247
6248         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6249         problem with using result of g_get_charset() backwards -
6250         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6251
6252         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6253         negative min_width/height and max_width/height to
6254         mean "requisition"; this allows setting a window
6255         to be user-resizable in only one direction easily.
6256
6257         * gtk/testgtk.c (create_main_window): Remove hard-coded
6258         usize - set a default size in the vertical direction.
6259
6260 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6261
6262         * gtk/gtkrange.c: Add some missing casts. Support 
6263         2 and 3 button clicks on the arrows to mean 
6264         "move by pages" and "jump to end". (Like gtkspinbutton)
6265
6266 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6267
6268         * gdk/win32/makefile.msc : reflect build module changes
6269
6270         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6271         from GdkPixmap*, cast implementation member instead.
6272
6273         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6274         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6275         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6276         more Gdi functions return value checking. 
6277         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6278         GdkImagePrivateWin32 *.
6279
6280         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6281         menus useable again. Add #pragma message to keep reminded on this issue.
6282         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6283         windows. This allows to enable backing store on Win32!
6284
6285         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6286         in drawable is of impl type. Correct specific type checks appropriate.
6287  
6288         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6289         GDK_WINDOW_DESTROYED before allocating new resources.
6290
6291         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6292
6293         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6294         (gdk_window_foreign_new) initialize parent handle.
6295         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6296
6297         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6298         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6299         problems (e.g. main buttons in testgtk). 
6300
6301 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6302
6303         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6304         gtk_widget_activate for GDK_Return.
6305
6306         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6307         of preedit cursor position.
6308
6309 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6310
6311         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6312         static.
6313
6314 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6315
6316         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6317         out support for multiple locales; that simple doesn't
6318         work reliably with current Xlib
6319
6320         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6321         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6322         Add support for positioning the cursor within the preedit string.
6323
6324 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6325
6326         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6327         at XIM input method module.
6328
6329         * gtk/gtktextview.c: Check for bindings after passing
6330         events to im context filter.
6331
6332 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6333
6334         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6335         empty attribute lists properly.
6336
6337 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6338
6339         * gtk/queryimmodules.c (main): Return non-zero exit
6340         status if errors were encountered querying any
6341         modules.
6342
6343         * modules/input/Makefile.am (moduledir): remove
6344         leftover bin program target.
6345
6346         * docs/make-todo: Fix typo in error message.
6347
6348 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6349
6350         * configure.in: Add modules/input/Makefile
6351
6352 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6353
6354         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6355         don't include gtkthemes.h.
6356
6357         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6358         to point
6359
6360         * gtk/Makefile.am: Add new .c and .h files, build 
6361         gtk-query-immodules and use it to create a gtk.immodules
6362         file for use of test programs.
6363
6364         * gtk/gtkpreview.c: remove extra blank line.
6365
6366 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6367
6368         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6369         Add the ability to add extra tables beyond the default
6370         one, and also the ability to have compose sequences 
6371         that are prefixes of other compose sequences. 
6372
6373         * gtk/gtkimcontextsimple.c: Export a preedit string which
6374         consists of possible candidates for keystrokes that have
6375         been entered but not yet committed.
6376
6377         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6378         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6379
6380         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6381         Add a function to add input-method switching menu items
6382         to a menu.
6383
6384         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6385         when switching input methods.
6386
6387         * gtk/gtkimcontextsimple.[ch]: Change the format of
6388         the compose table to allow compose tables of different
6389         lengths / sequence.
6390
6391 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6392
6393         * gtk/gtkimmodule.[ch]: Support routines for loading
6394         GtkIMContext implementations dynamically at runtime.
6395
6396         * modules/input/imcyrillic-translit.c: A sample input
6397         method (based on GtkIMContextSimple with an extra table),
6398         which demonstrates preedit strings and the module
6399         system for input modules
6400
6401         * gtk/queryimmodules.c: Program to query the available
6402         input modules and write the results into a file.
6403          
6404         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6405         extra config options "im_module_file" (cache file for
6406         input method modules), and "im_module_path" - path
6407         to look for modules when generating cache file.
6408
6409         This doesn't scale.
6410
6411 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6412
6413         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6414         generic code from gtkthemes into a new abstraction
6415         GtkModule which has the logic for implementing
6416         a loadable module which implements a number of 
6417         GObject types.
6418
6419 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6420
6421         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6422         a class into an interface  
6423         
6424         * gtk/gtkoldeditable.[ch]: Move the old editable
6425         implementation into here, so legacy widgets can
6426         still rely on the implemenation. GtkOldEditable
6427         exports GtkEditable. Make selection handling
6428         code use new text conversion functions (and
6429         handle UTF-8 as a side-effect). Use GtkClipboard
6430         for CLIPBOARD.
6431
6432         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6433         Adopt to match above changes.
6434
6435         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6436         avoid GtkOldEditable implementation. Restructure
6437         to reduce number of places that modify state directly.
6438         Move to GtkBindingSet. Display the preedit string.
6439         Queue recomputation of PangoLayout and scroll position
6440         to improve effiency of doing complex changes naively.
6441         Add a menu with cut/copy/paste and input method selection.
6442
6443 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6444
6445         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6446         to set preedit string and attributes; display preedit string by
6447         inserting string and attributes at cursor when creating the
6448         GtkTextLineDisplay.
6449
6450         * gtk/gtktextlayout.c: Move all conversions between byte
6451         positions in PangoLayout and GtkTextIter into new functions
6452         line_display_iter_to_index/index_to_iter that properly
6453         handle the preedit string.
6454
6455         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6456         it to return const char * (eventually will end up
6457         as GCONST char *, most likely.)
6458
6459         * gtk/gtktextview.[ch]: Handle the preedit string, call
6460         gtk_im_context_reset() as necessary, add a menu to switch
6461         input methods.
6462         
6463         * gtk/gtktextlayout.[ch]: Remove useless
6464         gtk_text_layout_get_log_attrs() function.
6465
6466 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6467
6468         * gdk/gdk.def
6469         * gtk/gtk.def: Update.
6470
6471         * gdk/win32/*.c: Add last argument to g_type_register_static()
6472         calls.
6473
6474         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6475
6476         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6477         generated by older wheel mouse drivers. Get the correct y
6478         coordinate from WM_MOUSEWHEEL messages.
6479
6480         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6481         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6482         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6483         Debugging functions.
6484
6485         * gdk/win32/gdkprivate-win32.h: Declare them.
6486
6487         * gdk/win32/gdkinput-win32.h: Add declaration for
6488         gdk_input_window_destroy().
6489
6490         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6491
6492 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6493
6494         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6495         function to help handle keeping things in sync.
6496
6497 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6498
6499         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6500         BOXED marshallers.
6501
6502         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6503         (gtk_list_store_class_init): use the new BOXED marshallers.
6504
6505         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6506         new_with_values to new_with_types.
6507         (gtk_tree_store_get_column_type): add this.
6508         (gtk_tree_store_class_init): use the new BOXED marshallers.
6509
6510         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6511         mirror some POINTER marshallers.
6512
6513 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6514
6515         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6516         allow more interesting iterators.  Also, made the lifecycle of
6517         iterators more explicit.
6518
6519         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6520
6521         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6522         types.
6523
6524 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6525
6526         * demos/testgtk/menus.c:
6527         Changes to make the new testgtk compile after
6528         gtk_menu_append was removed.
6529
6530         * gdk/linux-fb/gdkdrawable-fb2.c
6531         (gdk_fb_get_depth, gdk_fb_get_visual,
6532         gdk_drawable_impl_fb_class_init): Implement
6533         these drawable functions. Now GtkImages work again.
6534
6535         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6536
6537         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6538         
6539         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6540         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6541         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6542         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6543
6544 2000-11-08  Havoc Pennington  <hp@pobox.com>
6545
6546         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6547         visible_set args, don't know where these had gone, I thought they
6548         used to be there
6549
6550         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6551         now we can test the feature and see that it's totally broken.
6552
6553 2000-11-08  Havoc Pennington  <hp@pobox.com>
6554
6555         Make DND copy pixbufs and tags when source and target share a 
6556         tag table.
6557         
6558         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6559         in-process GTK_TEXT_BUFFER_CONTENTS target
6560         (gtk_text_view_drag_data_received): Paste from
6561         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6562
6563 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6564
6565         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6566         API changes.
6567
6568         * gtk/gtkmenu.c: Add support for scrolling menus.
6569         Remove gtk_menu_append/prepend/insert, these have been moved to
6570         gtkcompat.h as #defines.
6571
6572         * gtk/gtkcompat.h.in:
6573         Add compatibility #defines for gtk_menu_append/prepend/insert
6574
6575         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6576         GtkMenuPositionFunc gets an extra argument push_in.
6577         gtk_menu_append/prepend/insert removed.
6578         
6579         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6580         positioning behaviour to fit to scrolling menus.
6581
6582         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6583         into menuitem->submeny. That is wrong, and broke torn
6584         off submenus of torn off menus, since they were unrealized
6585         when the first menu was unrealized.
6586
6587         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6588         gtk_menu_shell_select_item() since these need to be overridden in
6589         GtkMenu.
6590
6591         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6592         positioning behaviour to fit to scrolling menus.
6593         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6594         the current item so that it is prelighted when the menu pops up.
6595         This is a workaround to the fact that the menu doesn't get the
6596         initial enter event (due to grabs).
6597
6598         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6599         s/gtk_menu_append/gtk_menu_shell_append/
6600
6601         * gtk/gtknotebook.c:
6602         s/gtk_menu_insert/gtk_menu_shell_insert/
6603
6604         * gtk/testgtk.c (create_menu, create_menus):
6605         Create the first menu with 50 items so that menu scrolling
6606         can be tested.
6607         
6608         
6609         Patch from Jonathan Blandford  <jrb@redhat.com>
6610
6611         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6612         system to handle size requests.  First, we ask what the size of
6613         the toggle is.  Then, when allocating the size, we allocate the
6614         toggle_size first.  This way we can have multiple menu-item
6615         classes w/o needing a seperate class for each.
6616
6617         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6618         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6619
6620         * gtk/gtkcheckmenuitem.c
6621         (gtk_check_menu_item_toggle_size_request): New function to handle
6622         the toggle size-request.
6623
6624 2000-11-07  Havoc Pennington  <hp@redhat.com>
6625
6626         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6627         Half-ass somewhat fix this function, so that scrolling to the
6628         insertion point works. Pango hacking is in the future to really
6629         fix it.
6630
6631         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6632         length of data, no longer used.
6633
6634         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6635         method contents in here, get rid of destroy method
6636         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6637         that were backward. Remove debug spew.
6638         (cut_or_copy): Make the clipboard work with insert_range to
6639         preserve tags and pixbufs, not just the primary selection.
6640
6641 2000-11-07  Havoc Pennington  <hp@redhat.com>
6642
6643         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6644         to gtk_text_mark_get_visible
6645
6646         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6647         bug that was generating an invalid iterator
6648
6649         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6650         ensure_char_offsets() in front of code placing the iter in an
6651         invalid state.
6652
6653         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6654         make override_location arg const
6655         (paste): Replace the selection if we paste into the 
6656         current selection
6657
6658         * gtk/gtkselection.h: Remove "GtkSelectioData"
6659         (struct _GtkSelectionData): move the definition here.
6660
6661         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6662         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6663
6664         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6665
6666         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6667         (gtk_text_buffer_insert_range_interactive): implement
6668         (gtk_text_buffer_get_tags): Remove, replaced by
6669         gtk_text_iter_get_tags()
6670
6671         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6672         limit parameter, to avoid infinite linear scan.
6673         (gtk_text_iter_backward_search): Add search limit
6674         (gtk_text_iter_forward_find_char): Add search limit
6675         (gtk_text_iter_backward_find_char): Add search limit
6676
6677 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6678
6679         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6680         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6681         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6682         gdk/linux-fb/gdkwindow-fb.c:
6683         use g_object_new() instead of g_type_create_instance() which
6684         is a private function for fundamental type implementations.
6685
6686         * gdk/linux-fb/gdkinput-ps2.c:
6687         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
6688         instead just store the current modifier state. Add a (somewhat broken)
6689         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
6690         Rename exported function gdk_input_ps2_get_mouseinfo to
6691         gdk_input_get_mouseinfo.
6692
6693         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
6694         gdk/linux-fb/gdkwindow-fb.c:
6695         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
6696         
6697
6698 2000-11-02  Havoc Pennington  <hp@redhat.com>
6699
6700         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
6701         use stock buttons. Should be 100% source compatible, appropriate
6702         filesel fields now point to dialog->vbox and dialog->action_area.
6703         On the bizarre side, dialog->action_area and filesel->action_area
6704         are not the same widget.
6705         (gtk_file_selection_init): Put some padding around the selection
6706         entry, so it isn't touching the GtkDialog separator.    
6707
6708         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6709         use stock buttons, etc. Should also be source compatible.
6710         Set the dialog default title in _init not _new().
6711         
6712         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6713         Use stock buttons; don't put a button box inside the existing
6714         dialog button box. Don't bother with push/pop colormap anymore.
6715
6716         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6717         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6718         for message dialog, and necessary for the font selection and color
6719         selection with help and apply buttons.
6720         
6721         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6722         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6723         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6724         between buttons, put less padding around the action area.
6725         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6726         This will also exit the loop if the widget is hidden.
6727         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6728         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6729         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6730         special-case delete event.
6731
6732         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6733         formatting
6734         
6735 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6736
6737         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6738         button to temporarily disable position recording in the
6739         "saved position" test.
6740
6741 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6742
6743         * gtk/gtkthemes.c: added compat code that temporarily implements
6744         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6745         going to be revamped by owen's upcoming GtkModule patches, but
6746         untill then people want gtk to build, right? ;)
6747
6748 2000-11-04  Havoc Pennington  <hp@pobox.com>
6749
6750         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6751         list
6752
6753         * docs/Changes-2.0.txt: Add note about
6754         gtk_container_get_toplevels()
6755
6756         * gtk/gtktextview.h: formatting
6757         
6758         * gtk/gtktextview.c: don't start descriptions with "Returns",
6759         confuses gtk-doc
6760
6761 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6762
6763         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6764         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6765
6766 2000-11-03  Havoc Pennington  <hp@redhat.com>
6767
6768         * gtk/gtktexttagtable.c: Docs
6769         (gtk_text_tag_table_size): return a signed int
6770
6771         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6772         (gtk_text_tag_event): make the event_object a GObject
6773
6774         * gtk/gtktextview.c: Write API docs for all functions.
6775
6776         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6777         for gtk_text_view_get_window_type() called on one of the private
6778         windows.
6779
6780         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6781         directly, call get_buffer() which demand-creates a default
6782         buffer. So gtk_text_view_new() can be used to create a view with a
6783         default buffer in it, if you just want an empty text box users can
6784         put data in. Useful for GUI builders also.
6785
6786 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6787
6788         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6789         the charset encodign portion MUST be in lowercase.
6790         * gtk/gtkrc.az: added file for Azeri language
6791
6792 2000-11-03  Havoc Pennington  <hp@redhat.com>
6793
6794         Get widgets working on the btree/buffer side. Display of them 
6795         still doesn't work.
6796         
6797         * gtk/gtktextview.c: start implementing child widget stuff
6798
6799         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6800
6801         * gtk/gtktextlayout.c: handle embedded widgets
6802
6803         * gtk/gtktextdisplay.c: handle embedded widgets
6804
6805         * gtk/gtktextchild.c: Implement all the child anchor goo
6806
6807         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6808         function
6809
6810         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6811         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6812         creating a child anchor or a pixbuf segment.
6813         (gtk_text_btree_create_child_anchor): new function
6814         (gtk_text_btree_unregister_child_anchor): new function
6815
6816         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6817         allocate_child signal on GtkTextLayout
6818
6819         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6820         values
6821         (gtk_text_iter_get_child_anchor): new function
6822
6823         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6824         default handler for the changed signal, which calls
6825         gtk_text_buffer_set_modified(), instead of just always emitting
6826         changed then calling set_modified() manually. I guess this is
6827         maybe more flexible. It seems logical.
6828
6829 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6830
6831         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6832         now.
6833
6834         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6835
6836 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6837
6838         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6839         been marked static.
6840
6841 2000-11-02  Havoc Pennington  <hp@redhat.com>
6842
6843         * gtk/testgtk.c (create_labels): had a test backward
6844
6845         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6846         fields, so the dest GC ends up with the correct clip origin, 
6847         etc. Fixes a bug where colored labels didn't redraw 
6848         properly.
6849
6850 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6851
6852         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6853         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6854         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6855         Add last argument to t_type_register_static call.
6856         
6857         * gdk/linux-fb/gdkdrawable-fb2.c:
6858         Add last argument to t_type_register_static call.
6859         export the get_image drawable virtual function.
6860
6861         * gdk/linux-fb/gdkimage-fb.c:
6862         Add last argument to t_type_register_static call.
6863         rename gtk_image_get to _gdk_fb_get_image and
6864         export it for use by gdkdrawable-fb2.
6865
6866         * gdk/linux-fb/gdkprivate-fb.h:
6867         export _gdk_fb_get_image.
6868
6869         * gdk/linux-fb/gdkselection-fb.c:
6870         Add new api call stubs.
6871
6872         * gtk/Makefile.am:
6873         Missing ( in linux-fb part.
6874
6875         * modules/linux-fb/Makefile.am:
6876         Must link with gdk_pixbuf or get unresolved symbol.
6877
6878 2000-11-01  Havoc Pennington  <hp@pobox.com>
6879
6880         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
6881         GTK_TYPE_TEXT_ITER and BOXED marshallers
6882
6883         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
6884
6885         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
6886         
6887         * gtk/gtk-boxed.defs: add GtkTextIter
6888
6889         * gtk/gtkmarshal.list: Add marshallers for text widget that 
6890         properly use OBJECT and BOXED
6891
6892 2000-11-01  Havoc Pennington  <hp@redhat.com>
6893
6894         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
6895
6896         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
6897         before returning it. 
6898         
6899 2000-11-01  Havoc Pennington  <hp@redhat.com>
6900
6901         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6902         Clip the rectangle to be rendered to the drawable, since
6903         get_from_drawable() requires a region within the drawable
6904
6905 2000-11-01  Havoc Pennington  <hp@redhat.com>
6906
6907         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
6908         from coordinates.
6909
6910 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
6911
6912         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
6913         it isn't NULL.
6914
6915 2000-11-01  Havoc Pennington  <hp@pobox.com>
6916
6917         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
6918         on a label
6919         (gtk_label_finalize): unref the attr list if any.
6920
6921         * gtk/testgtk.c (create_get_image): close test on second click
6922         (make_message_dialog): close dialog if it exists
6923
6924         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
6925
6926         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
6927         gdk-pixbuf
6928
6929         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
6930         from Pango markup format
6931         (gtk_label_set_markup_with_accel): ditto but with accelerator
6932         parsing
6933
6934         * gtk/gtkimage.c (gtk_image_expose): reformatting.
6935
6936         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
6937         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
6938         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
6939         call gdk_window_get_origin().
6940
6941         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6942         implement GDK_PIXBUF_ALPHA_FULL
6943         
6944 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
6945
6946         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
6947         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
6948         g_signal_handlers_disconnect_matched to block/unblock and disconnect
6949         multiple handlers respectively, instead of only treating the
6950         first handler found (bug reported by owen).
6951
6952 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
6953
6954         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
6955
6956         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
6957
6958         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
6959         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
6960         gtk/gtktreeviewcolumn.h: Fixed inline docs.
6961
6962         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
6963         widget.  Needs writing someday.
6964
6965         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
6966         the docs.
6967
6968 2000-10-30  Havoc Pennington  <hp@redhat.com>
6969
6970         * gtk/gtktextview.h, gtk/gtktextview.c:
6971         Rename delete_at_cursor delete_from_cursor, and 
6972         move to move_cursor.
6973
6974 2000-10-30  Havoc Pennington  <hp@redhat.com>
6975
6976         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
6977         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
6978         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
6979         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
6980         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
6981         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
6982         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
6983         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
6984         gtktexttypes.h, gtktextview.c, gtktextview.h:
6985
6986         Massive reindentation and reformatting. Arg alignment and comments
6987         still need fixing in various places.
6988
6989 2000-10-30  Havoc Pennington  <hp@redhat.com>
6990
6991         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
6992         to be named insert_at_cursor and delete_at_cursor so C++ can
6993         handle them.
6994
6995 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6996
6997         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
6998         to get a double directory separator in case the home directory
6999         ends with one. This would cause trouble especially on Windows,
7000         where the path will be confused with the syntax for an an UNC
7001         (network share) path \\server\share\path.
7002         (gtk_rc_add_initial_default_files): Ditto.
7003
7004 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7005
7006         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7007
7008         * gtk/gtktextview.c: Use correct marshallers.
7009
7010 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7011
7012         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7013         use new iter stuff, and added all the appropriate signals et al.
7014
7015         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7016         code is internal to gtk only.
7017
7018 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7019
7020         * gtk/gtk.def
7021         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7022         glib-genmarshal etc.
7023
7024 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7025
7026         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7027         parallel builds.
7028
7029 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7030
7031         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7032
7033 2000-10-27  Robert Brady  <robert@suse.co.uk>
7034
7035         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7036         en_GB (British), ia (Interlingua).
7037
7038 2000-10-26  Havoc Pennington  <hp@redhat.com>
7039
7040         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7041
7042         Fixed output of:
7043         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7044         
7045         * gtk/gtktextsegment.c (char_segment_new): rename
7046         (_char_segment_new_from_two_strings): rename
7047         (_toggle_segment_new): rename
7048         
7049         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7050         (make_clipboard_widget): make it static
7051         (text_get_func): static
7052         (text_clear_func): static
7053
7054         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7055         static
7056         (hex_changed): make it static
7057         (hsv_changed): make it static
7058         (opacity_entry_changed): make it static
7059
7060         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7061         (toggle_segment_check_func): rename with _gtk
7062
7063         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7064         (_widget_segment_new): rename
7065         (_widget_segment_add): rename
7066         (_widget_segment_remove): rename
7067         (_widget_segment_ref): rename
7068         (_widget_segment_unref): rename
7069
7070         * gtk/gtktextmark.c (_mark_segment_new): Rename
7071         _gtk_mark_segment_new   
7072
7073 2000-10-26  Havoc Pennington  <hp@redhat.com>
7074
7075         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7076         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7077         types
7078
7079         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7080         marshaller types
7081
7082         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7083         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7084         license on these files.
7085
7086         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7087         work.
7088
7089         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7090         runtime random number different for each tree, instead of 
7091         a constant I made up.
7092
7093 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7094
7095         * gtk/Makefile.am: buncha cleanups, kludged build sources
7096         dependencies with a Makefile: oldest-source-stamp dependancy
7097         for the moment. automake is really fighting us here, with
7098         intentionally not allowing user-defined rules or dependancies
7099         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7100
7101         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7102         to public headers. tehy have a comment stating that they are
7103         "semi-public" aren't included by gtk.h and if enums popup there,
7104         they can be /*< skip >*/-ed.
7105
7106         * gtk/gtktextlayout.h: 
7107         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7108         added LGPL... <SIGH>
7109
7110 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7111
7112         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7113         GtkTreeIter.  Added iterators everywhere.
7114
7115         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7116
7117         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7118
7119         * gtk/gtktreestore.c: Changed to use the iterators.
7120
7121         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7122         iterators tomorrow.
7123
7124         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7125         iterators tomorrow.
7126
7127         * gtk/treestoretest.c: Changed to use iterators.
7128
7129         * demos/testgtk/main.c: Moved to use the new iterator system.
7130
7131 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7132
7133         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7134         localization misbehaviour.
7135
7136         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7137         a useless type without copy/free.
7138
7139         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7140         of GTK_TYPE_CTREE_NODE.
7141
7142 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7143
7144         * gtk/gtksignal.c:
7145         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7146         applicable.
7147
7148         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7149         gtk_selection_data_copy and gtk_selection_data_free
7150         do GtkSelectionData work as params in signals.
7151
7152 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7153
7154         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7155         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7156         couldn't they at least give it a non-standard name?
7157         
7158         * gtk/gtktextlayout.c: arg! yet another implementation of
7159         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7160
7161         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7162         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7163         home. now i know this _is_ a conspiracy.
7164
7165         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7166         ::state-changed.
7167
7168         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7169         (gtk_accel_group_create_add): marshaller signature fixups.
7170
7171         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7172         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7173
7174         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7175         anymore.
7176
7177 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7178
7179         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7180         due to the signal system changes, it wouldn't build currently. to
7181         be fixed soon.
7182
7183         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7184
7185         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7186         so it needs gtk_marshal_VOID__ENUM() instead of
7187         gtk_marshal_NONE__UINT().
7188
7189         * gdk/gdk*.c: adapted type registration functions.
7190
7191         * gtk/gtkbindings.c:
7192         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7193         gone.
7194
7195         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7196
7197         * gtk/gtkobject.c:
7198         (gtk_object_destroy):
7199         (gtk_object_shutdown): fixed recursion guards. basically we have to
7200         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7201         is called during ::destroy, and avoid recursion there.
7202
7203         * gtk/gtktypeutils.c:
7204         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7205         boxed_copy/boxed_free. this needs a more general solution based on a
7206         publically installed code-generator utility.
7207
7208         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7209         glib's gobject has support for that now.
7210         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7211
7212 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7213
7214         * gtk/gtksignal.[hc]:
7215         * gtk/gtkmarshal.[hc]:
7216         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7217         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7218         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7219         care of that.
7220
7221         * *.c: marshaller name fixups.
7222
7223         * gtk/gtkmarshal.list: added a comment briefing the format.
7224
7225 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7226
7227         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7228         compatibility macros here now. more specifically, most of
7229         the API is preserved (yes, _most_, nonwithstanding the
7230         following exceptions listed, the API is stil lHUGE ;)
7231         things that got removed completely:
7232         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7233         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7234         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7235         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7236         gtk_signal_remove_emission_hook().
7237         non-functional functions variants:
7238         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7239         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7240         not supported anymore.
7241         (gtk_signal_compat_matched): new internal function to aid
7242         implementation of the compatibility macros, it  provides
7243         functionality to block/unblock/disconnect handlers based
7244         on func/data.
7245
7246         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7247
7248         * *.c: adaptions to new type registration API signatures.
7249
7250 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7251
7252         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7253
7254 2000-10-25  Robert Brady  <robert@suse.co.uk>
7255
7256         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7257         gdk_property_delete): If window == NULL, assume the root window.
7258         (restoring the behaviour that was in 1.2).
7259         
7260         * gtk/testtext.c (save_buffer): Allow creation of new files when
7261         saving.
7262
7263         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7264         calls to read().
7265
7266 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7267
7268         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7269
7270         * gdk/win32/gdkdrawable-win32.c
7271         * gdk/win32/gdkimage-win32.c
7272         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7273         X11 backend.
7274
7275         * gdk/win32/gdkcc-win32.c
7276         * gdk/win32/gdkcolor-win32.c
7277         * gdk/win32/gdkfont-win32.c
7278         * gdk/win32/gdkinput-win32.c
7279         * gdk/win32/gdkmain-win32.c
7280         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7281
7282 2000-10-24  Havoc Pennington  <hp@redhat.com>
7283
7284         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7285         it a static function
7286
7287         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7288         redraw text when a tag is applied to it.
7289
7290         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7291         (gtk_text_tag_affects_nonsize_appearance): private functions to
7292         see if a tag requires various kinds of redraw/layout to be queued
7293         up.
7294
7295         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7296
7297         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7298         at the start of the buffer, so search works by default
7299
7300         * gtk/gtktextiter.c (lines_match): init match_start always
7301
7302         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7303         function, get iter at a line + a byte index
7304
7305         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7306         to set byte position within a line
7307         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7308
7309 2000-10-23  Havoc Pennington  <hp@redhat.com>
7310
7311         * gtk/testtext.c: Re-enable the "find" dialog
7312
7313         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7314         
7315         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7316         the arguments to gdk_draw_drawable were in the wrong order
7317         (gdk_window_paint_init_bg): This function was ignoring the
7318         init_region, instead of clipping to it, so the entire backing
7319         pixmap was cleared on every begin_paint()
7320         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7321         was in here again, the loop kept using the same GtkWindowPaint
7322         over and over.
7323         (gdk_window_begin_paint_region): Fix a bug where we had two
7324         x_offset instead of x_offset and y_offset
7325
7326         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7327         before we get the image.
7328         (gdk_draw_drawable): get the composite before we draw the drawable.
7329         (gdk_drawable_real_get_composite_drawable): default
7330         get_composite_drawable implementation that returns the drawable 
7331         itself
7332
7333         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7334         get_composite_drawable virtual function
7335
7336         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7337         list-walking bug
7338
7339         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7340         make this work if the source drawable is a GdkDrawableImplX11
7341         instead of a public drawable type. This is really broken; the
7342         problem is that GdkDrawable needs a virtual method get_xid(), but
7343         of course that doesn't work in practice. Enter RTTI.
7344
7345         Also, improve mismatched depth message.
7346
7347         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7348         GdkPixmap
7349
7350         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7351         install _gdk_x11_get_image as our implementation of get_image
7352         
7353         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7354         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7355
7356         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7357         gdk_drawable_get_image
7358
7359         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7360
7361         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7362         get_image
7363
7364         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7365         trailing semicolon after for loop
7366
7367 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7368
7369         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7370         where font_desc for widget's context lagged widget's font_desc by
7371         one step.
7372
7373 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7374
7375         * gdk/win32/gdkgc-win32.c
7376         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7377
7378         * gtk/makefile.mingw.in
7379         * gtk/gtk.def: Updates.
7380
7381         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7382         library.
7383
7384         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7385
7386         * gtk/makefile.msc: Remove
7387
7388         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7389
7390         * gtk/Makefile.am: Add it.
7391
7392         * configure.in: Generate it.
7393
7394         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7395         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7396         something even if not implemented, to satisfy picky MSVC.
7397
7398         Patches by Hans Breuer:
7399         
7400         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7401         SetBkMode() and SetTextAlign() before calling
7402         pango_win32_render().
7403
7404         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7405         Set hcliprgn to NULL after destroying it.
7406         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7407
7408         * gdk/win32/gdkgeometry-win32.c
7409         (_gdk_windowing_window_queue_antiexpose): More effective
7410         implementation.
7411
7412         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7413         depth as default, not the visual's.
7414
7415         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7416         against empty title.
7417
7418         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7419         IMAGE_PRIVATE_DATA.
7420
7421         * gdk/win32/gdkimage-win32.c: Use it.
7422
7423 2000-10-22  Robert Brady  <robert@suse.co.uk>
7424
7425         * configure.in: Check for bind_textdomain_codeset
7426
7427         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7428         present, make use of it.
7429
7430         Add a translatable string "default:LTR" which, if translated
7431         to "default:RTL", will cause the default direction to be
7432         Right-to-Left.
7433
7434         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7435         direction if marked as flippable.
7436
7437         * gtk/gtkhscale.c: Mark widget as flippable.
7438         
7439 2000-10-04  Havoc Pennington  <hp@redhat.com>
7440
7441         * gtk/testgtk.c (create_buttons): create some stock buttons
7442         with the default accel group
7443         (create_image): test some new GtkImage features
7444         (make_message_dialog): test GtkMessageDialog
7445         (create_modal_window): fix someone's bizzarro indentation
7446
7447         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7448         GTK_WIN_POS_CENTER_ON_PARENT. 
7449         Add "destroy with parent" setting, which means the window goes
7450         away with its transient parent.
7451         (gtk_window_get_default_accel_group): get the default accel group
7452         for the window.
7453         (gtk_window_set_destroy_with_parent): set/unset destroy with
7454         parent flag
7455         (gtk_window_read_rcfiles): invalidate icon set caches
7456         after reloading rcfiles 
7457
7458         * gtk/gtkenums.h (GtkWindowPosition): add
7459         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7460         on its parent window when the dialog is mapped for the first time.
7461
7462         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7463         a simple message dialog class
7464         
7465         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7466         handler to emit response signal, and maybe later it would
7467         honor a hide_on_delete flag - though that isn't there yet.
7468         Set border width on the vbox to 2, so we get some padding.      
7469         Use a button box for the action area.
7470         (gtk_dialog_key_press): synthesize a delete event if Esc
7471         is pressed and the GtkWidget key press handler didn't 
7472         handle the escape key.
7473         (gtk_dialog_new_with_buttons): new function creates a dialog
7474         with some default buttons in it.
7475         (gtk_dialog_add_action_widget): add an activatable widget
7476         as a button in the dialog - you can also add a non-activatable
7477         widget by accessing the action area directly.
7478         (gtk_dialog_add_button): add a simple button - stock ID or 
7479         label - to the action area
7480         (gtk_dialog_response): emit response signal
7481         (gtk_dialog_run): block waiting for the dialog, return 
7482         the response. Override normal delete_event behavior, so that 
7483         delete_event does nothing inside gtk_dialog_run().
7484
7485         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7486         emitted when an action widget is clicked or the dialog gets
7487         delete_event
7488
7489         * gtk/gtk.h: add gtkmessagedialog.h
7490
7491         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7492
7493 2000-10-18  Havoc Pennington  <hp@redhat.com>
7494
7495         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7496         where any number of empty lines would get skipped
7497
7498         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7499         edge.
7500
7501         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7502         warning about invalid iterators (explain more thoroughly)
7503         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7504
7505         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7506         big
7507
7508         * demos/*.c: Add error handling
7509
7510         * gtk/gtktextbuffer.c: don't modify const iterators
7511
7512         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7513
7514         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7515         on file load
7516
7517         * gtk/gtkiconfactory.c: Update to reflect addition of error
7518         handling to gdk-pixbuf loaders
7519
7520 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7521
7522         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7523         move to new modularized testgtk.
7524
7525 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7526
7527         * gtk/gtktreeview.c: Draw the arrows correctly.
7528
7529         * gtk/gtktreemodel.c: Added user docs.
7530
7531         * gtk/gtk.h: remove gtktreedatalist.h.
7532
7533         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7534         parent when generating my type.
7535
7536         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7537         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7538
7539 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7540
7541         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7542         GtkTreeModel from object to interface.
7543
7544 2000-10-16  Havoc Pennington  <hp@redhat.com>
7545
7546         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7547         compilation
7548
7549 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7550
7551         * gtk/gtktreeselection.c: Add API documentation to all public
7552         functions.
7553
7554         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7555         functions.
7556
7557 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7558
7559         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7560         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7561         docs to all public functions.
7562
7563         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7564         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7565         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7566         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7567         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7568         issue.
7569
7570 2000-10-14  Robert Brady  <robert@suse.co.uk>
7571
7572         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7573
7574 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7575
7576         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7577         values other then G_TYPE_STRING.
7578         * gtk/gtktreeselection.c: Minor commenting updates.
7579         * gtk/gtktreeview.c: Format updates.
7580
7581 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7582
7583         * README.win32: Update.
7584
7585         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7586         lines that had been deleted by mistake (?).
7587
7588         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7589         also the case fg==white and bg==black (but still not randomly
7590         coloured cursors). Thanks to Wolfgang Sourdeau.
7591
7592         * gdk/win32/*.c: Silence gcc -Wall.
7593
7594         * gtk/gtk.def: Add missing entry points.
7595
7596         Fixes by Hans Breuer:
7597
7598         * gdk/makefile.msc
7599         * gdk/win32/makefile.msc: Update.
7600
7601         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7602         some MSVC thing, presumably), cause breakpoint on failures. Add
7603         GDK_NOR case. Call g_log_set_always_fatal.
7604
7605         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7606         should be pased by reference.
7607         
7608         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7609         
7610         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7611
7612         * gdk/win32/gdkevents-win32.c
7613         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7614
7615         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7616         implementation object.
7617
7618         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7619         not just windows.
7620         
7621         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7622         Use the wrapper object.
7623         
7624 2000-10-06  Havoc Pennington  <hp@redhat.com>
7625
7626         * Makefile.am (SRC_SUBDIRS): contrib subdir
7627
7628         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7629         so it can be used in Xlib version
7630
7631         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7632         tree
7633
7634         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7635         change from 1.0 tree that returns first frame of animation
7636         if the loaded file is an animation.
7637
7638         * contrib: add new directory to hold stuff that comes with GTK+
7639         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7640         
7641         * configure.in: add contrib/*
7642
7643 2000-10-05  Havoc Pennington  <hp@redhat.com>
7644
7645         * demos/testpixbuf-save.c: add pixbuf save test
7646
7647         * demos/Makefile.am: add testpixbuf-save.c
7648
7649 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7650
7651         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7652         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7653         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7654         * gtk/gtktreeselection.[ch]: Replaced
7655         "node_selected"/"node_unselected" signal with "selection_changed"
7656         signal.
7657
7658 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7659
7660         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7661         tree widget.
7662
7663 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7664
7665         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7666         drawing.
7667
7668 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7669
7670         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7671         Move list pointer forwards before removing item from
7672         list. (Crash reported by Salmaso Raffaele)
7673
7674         * gdk/gdkwindow.h: Remove spurious trailing ,
7675
7676         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7677         dependencies on uninstalled libraries, sorry folks.
7678
7679 2000-10-04  Havoc Pennington  <hp@redhat.com>
7680
7681         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7682         gtk/gtkiconfactory.c: Fix copyrights    
7683
7684         * demos/testpixbuf.c: add inline pixbuf test
7685         
7686 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
7687
7688         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
7689         Add gdk_window_iconify.
7690
7691         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
7692         (gdk_window_set_geometry_hints): Add win_gravity
7693         to geometry structure.
7694
7695         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
7696         Implement _NET_WM_PING.
7697
7698         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
7699         Set _NET_WM_PID on the client leader.
7700
7701         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
7702         Handle UTF-8 better.
7703
7704         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
7705         UTF-8 better, set _NET_WM_NAME as well. Only set
7706         icon name if it hasn't previously been explicitely 
7707         set.
7708
7709 2000-10-03  Havoc Pennington  <hp@redhat.com>
7710
7711         * gtk/testtextbuffer.c: clean up trailing whitespace,
7712         add extensive tests for tag toggle iteration.
7713         
7714         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7715         distance
7716
7717         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7718         optimize case where the tag root is on level 1
7719         (gtk_text_line_previous_could_contain_tag): attempt to implement
7720         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7721         functionality
7722
7723         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7724         Implement this, though not very efficiently.
7725
7726         * gtk/gtktextiterprivate.h: reformat
7727
7728         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7729         iterator
7730
7731         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7732         this to properly revalidate the iterators.
7733
7734         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7735         properly at the end of the line (and therefore on empty lines)
7736
7737         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7738         maybe we should return a value...
7739
7740 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7741
7742         * config.h.win32: Guard definition of alloca(). glib.h now handles
7743         that.
7744
7745         * gdk/gdk.def
7746         * gtk/gtk.def: Add new entry points.
7747
7748         Changes just to make GTK+ build without errors on Win32. No hope
7749         of it working in its current state, though...:
7750         
7751         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7752         some functions from the X11 backend, just to make GTK+ build.
7753
7754         * gdk/makefile.mingw.in
7755         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7756         number. Add new object files.
7757
7758         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7759         GetMessageTime to get timestamp (where on X11 uses
7760         gdk_x11_get_server_time()).
7761
7762 2000-10-02  Havoc Pennington  <hp@pobox.com>
7763
7764         * gtk/gtktextview.c: text_window_* weren't static and should have
7765         been.
7766         Start work on child widgets; not yet complete, syncing to 
7767         office computer.
7768
7769         * gtk/gtktextchild.h: change this to contain a public interface,
7770         starting work on child interfaces.
7771         * gtk/gtktextchildprivate.h: move private interfaces here
7772
7773         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7774
7775         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7776         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7777         gtk/gtktextmark.c: copyright notices
7778
7779         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7780         internal functions      
7781
7782         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7783         internal function
7784
7785         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7786         Reformatting    
7787
7788 2000-09-30  Havoc Pennington  <hp@pobox.com>
7789
7790         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7791         NULL start/end pointers
7792
7793         * gtk/gtktextbuffer.c: Write some docs
7794         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7795         NULL, so you can just check whether there's a selection.        
7796
7797         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7798         cleanup_line or segments_changed ourselves, it gets done 
7799         in unlink_segment
7800
7801         * gtk/gtktextmark.h:
7802         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7803         
7804         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7805
7806         * gtk/gtktextmark.c: delete some more old Tk cruft
7807
7808         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7809         mark before removing it, so we can emit MARK_DELETED with a valid
7810         pointer.
7811         (gtk_text_buffer_mark_set): hold ref across signal emission
7812
7813         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7814         whining about attempts to delete special marks
7815
7816         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7817         underscore, since it's internal.
7818
7819         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7820         now implemented in terms of iterators in gtktextiter.h
7821
7822         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7823         New function, destructively sets contents of buffer. Also 
7824         a convenient way to clear the buffer by setting text to ""
7825
7826         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7827         multiline string literal
7828
7829         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7830         text changes.
7831
7832         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7833         is not dereferenceable
7834         (gtk_text_iter_forward_lines): fix return value
7835
7836 2000-09-29  Havoc Pennington  <hp@redhat.com>
7837
7838         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7839
7840         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7841         that set border window size to have nicer name
7842         (gtk_text_view_mark_set_handler):  Fix this to have the 
7843         right signature.
7844
7845         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7846
7847         * gtk/testtext.c: Update with API changes, put line numbers on 
7848         both sides.
7849         
7850         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7851         with this
7852
7853         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7854         pixbuf; delete a big block of #if 0 Tk code
7855
7856         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7857         insert_pixmap with insert_pixbuf
7858
7859 2000-09-29  Martin Baulig  <baulig@suse.de>
7860
7861         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7862         confusion with the GdkPixbuf of the GNOME 1.x platform.
7863
7864 2000-09-29  Havoc Pennington  <hp@pobox.com>
7865
7866         * gtk/gtktextview.c: Implement the side windows.
7867
7868         * gtk/testtext.c: Implement simple line numbering in the 
7869         left side window; seems to make scrolling sloooow. Oops.
7870         Also, cursor blink is for some reason causing redraws
7871         of the line numbers. Should investigate...
7872
7873 2000-09-28  Havoc Pennington  <hp@redhat.com>
7874
7875         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7876         scrolling child windows, and draw focus rectangle properly.
7877         
7878         (gtk_text_view_buffer_to_window_coords):
7879         Coordinate transformation to deal with all these freaking windows
7880         and offsets
7881         (gtk_text_view_window_to_buffer_coords): transform the other way
7882
7883         * gtk/testtext.c (create_buffer): Update to match Pango API change
7884
7885         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
7886         anonymous tags
7887         (foreach_unref): don't emit remove signal from finalize, just
7888         set tag's parent to NULL
7889
7890 2000-09-26  Havoc Pennington  <hp@redhat.com>
7891
7892         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
7893         Fix some warnings       
7894
7895 2000-09-26  Havoc Pennington  <hp@redhat.com>
7896
7897         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
7898         headers into the private header list
7899
7900         * Makefile.am (pkgconfig_DATA): install pkg-config files
7901
7902         * configure.in: add pkg-config files
7903
7904         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
7905
7906         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
7907         outstanding icon caches on theme change.
7908
7909         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
7910         important types:
7911
7912         (GtkIconSource): Specification for creating a pixbuf 
7913         appropriate for a direction/state/size triplet from 
7914         a source pixbuf or filename
7915
7916         (GtkIconSet): List of GtkIconSource objects that are used to
7917         create the "same" icon (e.g. an OK button icon), and cache for
7918         rendered icons
7919
7920         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
7921         up the icon set for a given stock ID.  GTK maintains a stack of
7922         GtkIconFactory to search, and applications or libraries can add
7923         additional icon factories on top of the stack
7924         
7925         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
7926         the set of GtkIconSource specified for a given stock ID into 
7927         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
7928         RcStyle, under the specified stock ID.
7929
7930         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
7931         render_icon used to derive a GdkPixbuf from a GtkIconSource.
7932         This allows people to theme how prelight, insensitive, etc. are
7933         done.
7934
7935         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
7936         icon factories for a style, and return the resulting 
7937         icon set if any.
7938
7939         (gtk_style_render_icon): Render an icon using the render_icon 
7940         method in the GtkStyleClass.
7941
7942         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
7943         Use the style for a given widget to look up a stock ID, get the
7944         icon set, and render an icon using the render_icon method 
7945         of the style
7946
7947         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
7948         (contains information about a stock item), the built-in stock item
7949         IDs, and functions to add/lookup stock items.
7950
7951         * gtk/stock-icons/*: Stock icons that come with GTK
7952
7953         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
7954         a button based on a GtkStockItem
7955         (gtk_button_new_accel): Takes a uline string and accel group, and
7956         installs the accelerator.
7957
7958         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
7959         image-display widget.
7960
7961 2000-09-25  Havoc Pennington  <hp@redhat.com>
7962
7963         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
7964
7965         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
7966         Fix a bug when removing node data, we didn't properly 
7967         re-splice the linked list after removing the data.
7968
7969         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
7970         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
7971
7972         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
7973
7974         * gtk/gtktextlayout.c (set_para_values): Set tab array 
7975         for the layout from the GtkTextTag.
7976
7977         * gtk/gtktexttypes.h: delete tab and search cruft, 
7978         remove g_convert() in favor of GLib version
7979
7980         * gtk/gtktexttypes.c: remove tab implementation from here,
7981         move to Pango
7982
7983         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
7984         tab stuff using new PangoTabArray from Pango
7985
7986         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
7987         unused border_width stuff
7988
7989 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
7990
7991         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
7992         glib) and now useless utf_to_latin1() latin1_to_utf()
7993
7994         * gtk/gtktextview.[ch]: Change ::move_insert and
7995         ::delete_text action signals to ::move and ::delete;
7996         create the signals with the right enumeration type,
7997         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
7998         C-v bindings, change Home, End to move to beginning/end
7999         of line, Add C-Home C-End to move to beginning/end
8000         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8001         combine ::scroll_text into ::move; use new GtkSelectionData
8002         functions to simplify DND text handling.
8003         
8004         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8005         deletion enumerations here, rename enumeration values to 
8006         be consistently plural.
8007
8008         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8009         for cut/copy/paste and primary selection.
8010
8011         * gtk/gtktextbuffer.[ch]: Remove excess time and
8012         'interactive' arguments from cut/copy/paste;
8013         rename cut to cut_clipboard, etc; remove
8014         gtk_text_buffer_get_clipboard_contents().
8015
8016         * gtk/gtktextlayout.[ch]: Add 
8017         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8018         line ends.
8019
8020         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8021         Functions to set or get a UTF-8 string on the selection
8022         data.
8023
8024         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8025         interfaces.
8026
8027         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8028         created widgets - one of these is useless if we don't.
8029
8030         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8031         a public function clear all targets registered for the
8032         widget.
8033
8034         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8035         Never call gtk_widget_realize() - that was just asking
8036         for bizarre side-effects.
8037
8038         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8039         gdk_selection_owner_set even if the widget is the
8040         same so that we reliably update the timestamp on
8041         the server.
8042
8043         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8044         gdk_x11_get_server_time() function.
8045         
8046         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8047         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8048         Add some tricky filtering on serial numbers for
8049         selection clear events to fix up long-standard
8050         race condition FIXME's in gtkselection.c.
8051
8052         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8053         routines to convert from utf8 to compound text or
8054         STRING and from a text property to UTF-8.
8055
8056         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8057         a convenience function gdk_get_current_event_time().
8058
8059         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8060         and free selection_data->data properly
8061
8062 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8063
8064         * gtk/gtkthemes.c: Remove some unecessary includes.
8065
8066 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8067
8068         * gtk/gtktextdisplay.c
8069         * gtk/gtktextlayout.c
8070         * gtk/gtktexttag.c
8071         * gtk/gtktexttag.h
8072         * gtk/testtext.c: Change the overstrike property to strikethrough,
8073         to closer match pango.
8074
8075 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8076
8077         * gtk/gtktextview.c: Fix up visibility so that focus,
8078         cursor_visible and blink interact properly.  Reenable cursor blink
8079         which had been roughly disabled. Make blink and focus
8080         properly per-view.
8081
8082         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8083         Add a flag for whether to display insertion cursor and
8084         a function to set the flag.
8085
8086         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8087         get_line_y() to get_line_yrange(), to be a bit more generally
8088         useful.
8089
8090 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8091
8092         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8093           do stop_navigating_submenu, to clear last timeout properly.
8094           Also in gtk_menu_motion_notify move ignore_enter above
8095           the conditional to make it always happen as suggested by Owen
8096
8097 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8098
8099         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8100
8101         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8102         w32api headers.
8103
8104         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8105         declarations.
8106
8107         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8108         (gdk_win32_get_colormap): A line had been deleted by mistake.
8109
8110         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8111         (gdk_event_translate): Handle more virtual keycodes to be able to
8112         generate GDK events for Control-comma, Control-period, etc.
8113
8114         * gtk/gtk.def: Add some missing entry points.
8115
8116 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8117
8118         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8119         Doc comment fixing. (Mostly non-matching parameter names.)
8120
8121         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8122         comments a little to avoid looking like a doc comment.
8123
8124         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8125         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8126         conversions be changed to GError?)
8127
8128         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8129         Move private #defines into .c file.
8130
8131         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8132         order of argument addition, remove duplicates.
8133
8134         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8135         parent class is FrameClass, not BinClass.
8136
8137         * gtk/gtk.h: Add gtkinvisible, which was missing.
8138         (It's occasionalyl useful for client apps, if seldom.)
8139
8140         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8141         #define.
8142
8143 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8144
8145         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8146         coordinates when creating window, instead of GDK-space
8147         coordinates. (Avoid BadValue on too large windows.)
8148
8149 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8150
8151         * configure.in (use_mmx_asm): Remove conftest* after use along the
8152         lines of AC_TRY_COMPILE.        
8153         
8154         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8155         of g_dirname, which is deprecated.
8156         (gtk_rc_parse_any): Removed calls to
8157         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8158
8159         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8160         Removed calls to g_hash_table_{freeze,thaw}, as they are
8161         deprecated now.
8162
8163         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8164         instead of g_basename.
8165         
8166 2000-09-04 Elliot Lee <sopwith@redhat.com>
8167         
8168         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8169         ANSI warning.
8170
8171 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8172
8173         * gtk/gtkwidget.h:  Add some documenting comments about 
8174           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8175           just as owen said on irc.
8176
8177         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8178           set HAS_DEFAULT.  Only set it if there isn't another window
8179           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8180           it if the widget is not the focused window with RECEIVES_DEFAULT.
8181           This fixes weird double default bugs in dialogs which has things
8182           call gtk_window_set_default at times.
8183
8184 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8185
8186         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8187         Nils Barth and David Santiago to improve submenu
8188         navigation. The patch does this by creating a triangular
8189         region from the point where the pointer leaves the
8190         menu to the submenu.  While the pointer is in
8191         that region and a timeout has not expired, events 
8192         that would cause the active submenu to change are
8193         ignored.
8194
8195 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8196
8197         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8198         moving a toplevel window immediately after sizing it would
8199         result in it being sized back to the old size since 
8200         impl->width, impl->height aren't updated until we hear
8201         back from the server. There is still a (longstanding) bug
8202         here that gdk_window_get_size() will give the wrong size
8203         until we do hear back.
8204
8205 2000-08-31  Havoc Pennington  <hp@redhat.com>
8206
8207         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8208         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8209         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8210         Rename GtkTextStyleValues to GtkTextAttributes
8211
8212 2000-08-31  Havoc Pennington  <hp@pobox.com>
8213
8214         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8215         for rapid testing whether an iterator is the end iterator
8216         (gtk_text_btree_new): init end line cache
8217         (gtk_text_line_is_last): use fast cached line to 
8218         see if we're the last line.
8219         (get_last_line): use cached line here too, should 
8220         speed up some random unrelated code.
8221         
8222 2000-08-30  Havoc Pennington  <hp@pobox.com>
8223
8224         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8225         signals.
8226
8227         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8228         delete_text signals. This allows the signals to be used for
8229         implementing undo.
8230
8231         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8232         provide "interactive" argument when emitting insert_text or
8233         delete_text signal.
8234         
8235 2000-08-30  Havoc Pennington  <hp@pobox.com>
8236
8237         * gtk/gtktextbuffer.c: Docs
8238
8239 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8240
8241         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8242         from switch statements, since Tor removed the enumeration
8243         value.
8244         
8245         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8246         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8247
8248 2000-08-29 Elliot Lee <sopwith@redhat.com>
8249         * */*.h: Use G_GNUC_CONST.
8250
8251 2000-08-27  Havoc Pennington  <hp@pobox.com>
8252
8253         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8254         minor indentation fixes, inserted some FIXME about stuff I
8255         realized was broken while documenting it.
8256         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8257         GTK convention  
8258
8259 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8260
8261         * gtk/testgtk.c (create_styles): Fix double free of
8262         font desc.
8263
8264 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8265
8266         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8267         
8268         * gtk/testgtk.c (create_styles): Add a test for modifying
8269         the style through gtk_widget_modify_*.
8270
8271         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8272         a function to get the current modifier style.
8273
8274         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8275         of the passed in GtkRcStyle instead of ref'ing it.
8276
8277         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8278
8279 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8280
8281         * gdk/gdkimage.h
8282         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8283         shared memory image+pixmap GdkImage type, or
8284         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8285         I am dropping that.
8286
8287         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8288         actually call gtk_init_abi_check(), passing also
8289         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8290
8291         * gtk/gtk.def
8292         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8293         New functions, used to check that the GTK+-using code has been
8294         compiled using the correct compiler and switches. In particular,
8295         with gcc one has to use the -fnative-struct switch as GTK+ is
8296         compiled with that.
8297
8298 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8299
8300         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8301         ->prev fields when merging lists. (Found simultaneously
8302         by Pawel Salek and Jakub Jelinek)
8303
8304 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8305
8306         * gdk/gdk.def
8307         * gtk/gtk.def: Add missing entries.
8308
8309         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8310         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8311
8312         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8313         function. Dummy implementation at this point.
8314
8315         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8316         rules. Undefine GTK_COMPILATION when compiling the test programs.
8317         
8318         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8319
8320 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8321
8322         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8323         to convert back and forth from UTF-8 and the "system" (or "current
8324         locale") charset when necessary. Indentation/spacing cleanup.
8325
8326 2000-08-10  Havoc Pennington  <hp@redhat.com>
8327
8328         * Makefile.am (snapshot): Change the format of the snapshot
8329         version to match glib
8330
8331         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8332         from EXTRA_DIST since it doesn't seem to exist
8333
8334 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8335
8336         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8337         version of the directory name (not the UTF-8 one) when building
8338         the path name to stat().
8339
8340 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8341
8342         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8343         PANGO_ATTR_SHAPE set.
8344
8345 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8346
8347         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8348         Peter Osterlund to simplify the code while keeping the
8349         functionality the same.
8350
8351 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8352
8353         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8354         is_viewable() test further inside the function, since removing the 
8355         window from the redraw list without clearing ->update_area
8356         was also very broken.
8357
8358 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8359
8360         * configure.in: Check for <unistd.h>.
8361
8362 2000-08-01  Martin Baulig  <baulig@suse.de>
8363
8364         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8365         to display the message that this is a development version of GTK+.
8366
8367 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8368
8369         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8370         was depending on widget->allocation instead of the width of text_area,
8371         which was incorrect for subclasses like GtkSpinButton.
8372
8373         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8374         with width == 1 tests that should be width == -1.
8375
8376 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8377
8378         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8379         (broken, Elliot, every single window blank on X) custom code with call
8380         to gdk_window_is_viewable() which a) prevents code duplicate and
8381         b) works. 
8382
8383 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8384
8385         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8386         to get the GDK_PARENT_ROOT() macro to work.
8387         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8388         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8389         of, windows that aren't shown.
8390         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8391         pointer grab stuff.
8392
8393 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8394
8395         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8396           s/gtk_main_iteration/g_main_iteration/
8397
8398           Did this already in change:
8399                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8400           don't know how it got reverted.
8401
8402 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8403
8404         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8405         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8406
8407         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8408         not gdk_pixbuf.
8409
8410 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8411
8412         * configure.in,po/{sp,sr}.po: Added Serbian files
8413
8414 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8415
8416         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8417
8418         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8419         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8420         GIOChannel implementation.
8421
8422         * gdk/win32/gdkinput.c
8423         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8424
8425         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8426         definition to match prototype.
8427
8428         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8429
8430 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8431
8432         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8433         function, to allow handling image formats that cannot be detected
8434         by looking at content alone.
8435
8436 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8437
8438         * docs/tutorial/*.gif *.jpg *.eps
8439           Update these to the same look-n-feel.
8440           Why does including images in DocBook suck so badly?
8441
8442 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8443
8444         * gtk/gtktable.c: applied patch from Phil Thompson
8445         <phil@river-bank.demon.co.uk> that enables space settings for
8446         the last row/columns as well.
8447
8448 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8449
8450         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8451         updates the license headers to the GNU Lesser General Public License,
8452         as well as updating the copyright year to 2000.
8453
8454 2000-07-26  Robert Brady  <rwb197@zepler.org>
8455
8456         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8457           and po/Makefile, was installing and looking for them under gtk20
8458           and gtk2 respectively.
8459
8460 2000-07-25  Havoc Pennington  <hp@redhat.com>
8461
8462         * gtk/testtext.c: Comment out some stuff that depends on the rest
8463         of my patches.
8464
8465 2000-07-25  Havoc Pennington  <hp@redhat.com>
8466
8467         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8468         buffer
8469
8470 2000-07-25  Havoc Pennington  <hp@redhat.com>
8471
8472         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8473         widget changes.
8474
8475         * gtk/gtktextview.h: To be consistent with usage of "line"
8476         throughout the API to mean "newline-terminated thingy", change
8477         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8478         to MOVEMENT_LINE.
8479
8480         (GtkTextView): Add flags for default editability, and whether to
8481         show the cursor. Add functions to get/set that. Add 
8482
8483         (gtk_text_view_get_iter_location): new function
8484
8485         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8486         gtktextlayout.h
8487         (g_convert): Add g_convert temporarily, will go in glib in a bit
8488         
8489         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8490         GtkTextTagTableForeach instead of brokenly using GHFunc.
8491         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8492
8493         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8494         moved to public header.
8495
8496         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8497         "invisible", since "elide" was a bad name.
8498         (gtk_text_tag_get_priority): Added
8499
8500         (GtkTextStyleValues): put this in public header, along with
8501         functions to use it.
8502
8503         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8504         longer include gtktextbtree.h.
8505
8506         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8507         gtk_text_mark_deleted
8508
8509         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8510         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8511         to make this possible. Now we only need to install
8512         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8513         (However the Makefile.am isn't changed yet because of the
8514         logistics of merging gtk-hp-patches piecemeal)
8515
8516         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8517         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8518         gtk_text_iter_get_line is now used in the public API for a
8519         different purpose.
8520
8521         * gtk/gtktextiter.h: Clean up function names to be more
8522         consistent. Always call char offset "offset" and byte index
8523         "index". A "line" is always a line number. 
8524
8525         (gtk_text_iter_is_last): new function, more efficient than 
8526         the existing way to check
8527         (gtk_text_iter_is_first): new function, also more efficient
8528
8529         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8530
8531         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8532         gtk_text_iter_forward_char, etc.
8533
8534         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8535         forward_find_tag_toggle, since this isn't a linear search
8536
8537         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8538
8539         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8540         New functions, search for a buffer substring.
8541
8542         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8543         interactive and default editable (since we need to store that info
8544         until we receive the selection data).
8545
8546         Remove all the _at_char and at_line etc. versions of functions;
8547         only have iterator versions.
8548
8549         Add _interactive() versions of functions, that consider the
8550         editability of text. (FIXME add interactive flag to the 
8551         insert/delete signals per Darin's suggestion)
8552
8553         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8554         tag table if necessary
8555
8556         Remove declaration of gtk_text_buffer_get_iter_from_string
8557
8558         (_gtk_text_buffer_get_btree): private/internal function, added.
8559         
8560
8561         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8562         (gtk_text_line_is_last): new function
8563
8564 2000-07-25  Havoc Pennington  <hp@redhat.com>
8565
8566         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8567         using GtkProgressBar. See Changes-2.0.txt for details.
8568
8569         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8570         "pulse_step" which are the equivalent of
8571         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8572         Implement new API.
8573         
8574         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8575         (use_text_format) to mark whether text set on the progress bar is
8576         a format string. Deprecate entire GtkProgress interface.
8577
8578         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8579         (gtk_progress_build_string): make this a no-op if use_text_format
8580         is FALSE
8581
8582         * docs/Changes-2.0.txt: Describe progress bar changes.
8583
8584 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8585
8586         * Makefile.am: Include the build directory.
8587
8588         * configure.in: Generate build/Makefile, build/win32/Makefile,
8589         gdk/, gdk/win32/, and gtk/makefile.mingw.
8590
8591         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8592         Add GETTEXT_PACKAGE.
8593         
8594         * gdk/gdk.def
8595         * gtk/gtk.def: Updates.
8596
8597         * gdk/gdkfont.h
8598         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8599         need them any longer.
8600
8601         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8602
8603         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8604         PANGOWIN32_LIBS and gdk_pixbuf.
8605
8606         * gdk/win32: Compiles, but no doubt doesn't work at all.
8607
8608         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8609
8610         * gdk/win32/gdkinput.c: New file, temporarily.
8611         
8612         * gdk/win32/gdkinput-win32.h: New file
8613
8614         * gdk/win32/gdkinputprivate.h: Remove.
8615
8616         * gdk/win32/gdkpango-win32.c: New file.
8617
8618         * gtk/makefile.mingw.in: New file
8619
8620         * gtk/makefile.cygwin: Removed
8621         
8622         * gtk/Makefile.am: Update accordingly.
8623
8624         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8625         made externally visible.
8626
8627         * gtk/gtkmain.c: Use it.
8628         
8629         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8630         is enough.
8631
8632         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8633
8634 2000-07-24 Elliot Lee <sopwith@redhat.com>
8635         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8636         individual backends already.
8637         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8638         again. Yes, there really is a good reason for this, if you are using the gdkregion
8639         internals, and if you're not, why do you care?
8640         * gdk/gdkwindow.c: Fix inverted condition
8641         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8642         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8643         * gtk/gtkrange.c: Redraw trough when moving.
8644         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8645         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8646
8647 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8648
8649         * configure.in: Check for mkstemp and sigsetjmp. Output
8650         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8651
8652         More work on GDK for Win32. Still in an intermediate state.
8653
8654         * gdk/makefile.cygwin
8655         * gdk/win32/makefile.cygwin: Removed.
8656         
8657         * gdk/makefile.mingw.in
8658         * gdk/win32/makefile.mingw.in: New files.
8659
8660         * gdk/Makefile.am
8661         * gdk/win32/Makefile.am: Generate and distribute them.
8662
8663         * gdk/win32/gdkwindow-win32.h
8664         * gdk/win32/gdkdrawable-win32.h
8665         * gdk/win32/gdkpixmap-win32.h: New files.
8666
8667         * gdk/win32/gdkcolor-win32.c
8668         * gdk/win32/gdkcursor-win32.c
8669         * gdk/win32/gdkdrawable-win32.c
8670         * gdk/win32/gdkgc-win32.c
8671         * gdk/win32/gdkimage-win32.c
8672         * gdk/win32/gdkprivate-win32.h
8673         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8674         Rename fields and variables called xcursor, xid, etc (these names
8675         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8676
8677 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8678
8679         * gtk/gtkentry.[ch]: Fix some problems with vertical
8680         alignment.
8681
8682         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8683         char/byte confusion.
8684
8685 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
8686
8687         * gtk/gtktextview.c (changed_handler): Fix bug where
8688         redraw wasn't being done properly when height of
8689         dirty region changed.
8690
8691         * demos/Makefile.am: Remove various references to
8692         -lgmodule
8693
8694 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
8695
8696         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
8697         PangoAttrShape to reserve space for pixmaps, add 
8698         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
8699         in the display functions.
8700         
8701         * gtk/testgtk.c (create_layout): Set some more exotic
8702         scrolled window options
8703
8704         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
8705         Add function to set the shadow type of a window, to allow
8706         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8707         which don't draw their own frame.
8708
8709 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8710
8711         * docs/tutorial/package-db-tutorial.sh: New file for
8712           packaging DocBook format tutorial
8713
8714 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8715
8716         * docs/tutorial/gtk-tut.sgml: Minor updates
8717
8718         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8719
8720 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8721
8722         * gtk/gtksignal.c: Fix C++ comment.
8723
8724         * gtk/gtkimmulticontext.c
8725         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8726         don't return value from void functions.
8727
8728         * gtk/gtk.def: Add gtk_rc_style_unref.
8729
8730 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8731
8732         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8733         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8734         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8735         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8736         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8737         gtk/gtktypeutils.h: Include files outside of the extern "C"
8738         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8739         <vakatov@peony.nlm.nih.gov>.
8740
8741 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8742
8743         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8744           Completes first pass. Hurrah!
8745
8746 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8747
8748         * docs/tutorial/gtk-tut.sgml: More clean ups.
8749
8750 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8751
8752         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8753         paint the background of the text area which was accidentally
8754         removed at some point.
8755
8756         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8757           
8758          - Move most of the functionality from the theme vtable
8759            into GtkRcStyleClass and GtkStyleClass. The moved
8760            vtable functions were changed a bit in the move to
8761            work better in their new home.
8762
8763          - Get rid of the engine and engine_data fields from
8764            GtkRcStyle and GtkStyle; instead the theme
8765            engine derives theme-specific subclasses of GtkRcStyle
8766            and GtkStyle
8767
8768          - Add extra dlsym() found entry point to themes,
8769            theme_create_rc_style().
8770
8771         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8772         in gtk_style_real_copy.
8773
8774         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8775         to register a type associated with an engine. (The engine
8776         won't be unloaded as there is an instance of the type.)
8777
8778
8779 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8780
8781         * docs/tutorial/gtk-tut.sgml: Clean ups.
8782
8783 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8784
8785         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8786           of cleaning up to do.
8787
8788 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8789
8790         * gdk/testgdk.c: New file, quick hack to test backends for
8791         pixel-by-pixel correctness of the most simple graphic operations.
8792
8793 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8794
8795         * Really release 1.3.1
8796         
8797         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8798         include structure.
8799
8800 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8801
8802         * Released 1.3.1
8803
8804 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8805
8806         * gtk/gtktextlayout.c: use FALSE for size_only most
8807         of the time when calling gtk_text_layout_get_line_display()
8808         to avoid causing double reshapes when a redraw follows
8809         immediately after.
8810
8811 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8812
8813         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8814         appropriate region and gdk_window_process_updates() so trough
8815         updating doesn't lag behind the window being scrolled.
8816
8817         * gdk/gdkgc.c: Make parent_class pointer static.
8818          
8819 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8820
8821         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8822         include <string.h>.
8823          
8824         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8825         cut-and-paste error in computing memory offset for 4 channels.
8826
8827 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8828
8829         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8830         gtk_rc_append_default_pixmap_path(), since it wasn't
8831         adding an interesting path and we don't have a meaningful
8832         default for this value.
8833
8834 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8835
8836         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8837         gtk-config to gtk-config-2.0 move gtk_.m4 to
8838         gtk-2.0.m4
8839
8840         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8841         gdk/Makefile.am demos/Makefile.am: Change 
8842         library names to libgtk-1.3.la, etc, so that we
8843         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8844
8845         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8846         gdk/Makefile.am gdk/x11/Makfile.am
8847         Move include files into /usr/include/gtk-2.0, 
8848         /usr/lib/gtk-2.0/include/
8849          
8850         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8851         gtk/gtkintl.h: Change package for gettext from 
8852         gtk+ to gtk20. Put hack in autogen.sh to modify
8853         po/Makefile.in.in after gettextize to make this
8854         possible.
8855
8856         * gtk+.spec: Some updates, not tested.
8857
8858         * gdk-pixbuf/Makefile.am: Move loaders into
8859         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8860
8861         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8862         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8863         to THEMENAME/gtk-2.0/. Move engine directory  to
8864         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8865         
8866 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8867
8868         Win32 changes, still doesn't build though.
8869
8870         * gdk/makefile.cygwin
8871         * gdk/win32/makefile.cygwin
8872         * gtk/makefile.cygwin: Updates.
8873
8874         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8875         default values for fg and bg pixel as X11 does (0 and 1), not
8876         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8877         Use 0 for pen width by default (treated as 1 anyway later, but for
8878         apps that might check the value in the GdkGC).
8879         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
8880         interface to gdk_gc_predraw and _postdraw.
8881
8882         * gdk/win32/gdkwin32.h
8883         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
8884
8885         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
8886         extraneous semicolon.
8887
8888         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
8889
8890         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
8891         not the Win32 bitspixel value.
8892
8893         * gdk/win32/gdkcc-win32.c:
8894         * gdk/win32/gdkcolor-win32.c 
8895         * gdk/win32/gdkprivate-win32.h
8896         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
8897         GDK object structure.
8898
8899 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
8900
8901         * docs/tutorial/gtk_tut_12.es.sgml (name): 
8902         * docs/tutorial/gtk_tut_it.sgml (name): 
8903         * docs/tutorial/gtk_tut_fr.sgml (name): 
8904         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
8905         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
8906
8907 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
8908
8909         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
8910           small changes.
8911
8912 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
8913
8914         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
8915         a bug here, never been here and never fixed anything ;(
8916         (don't segfault if tree->root_tree is NULL, which happens prior
8917         to widget realization, but puke instead).
8918
8919 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
8920
8921         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
8922         add the necessary tokens.
8923
8924         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
8925         (gtk_rc_style_to_style): copy thicknesses.
8926         (gtk_rc_init_style): apply thicknesses.
8927         (gtk_rc_parse_style): parse xthickness and ythickness.
8928
8929         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
8930
8931         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
8932         (gdk_window_new): 
8933         (_gdk_windowing_window_init): 
8934         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
8935         (gdk_pixmap_create_from_data): 
8936         (gdk_bitmap_create_from_data): 
8937         (gdk_pixmap_new): 
8938         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8939         (gdk_image_new): 
8940         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
8941         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
8942         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
8943         (gdk_colormap_get_system): 
8944         (gdk_colormap_new): 
8945         * gdk/gdkwindow.c (gdk_window_init): 
8946         * gtk/gtkstyle.c (gtk_style_new):
8947         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
8948         * gdk/gdkpixmap.c (gdk_pixmap_init): 
8949         * gtk/gtkrc.c (gtk_rc_style_new):
8950         use g_object_new() instead of g_type_create_instance() which
8951         is a private function for fundamental type implementations.
8952
8953 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
8954
8955         * configure.in: Add check for db2html
8956
8957 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
8958
8959         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
8960         hack to set glib_debug_objects based on gtk_debug_flags.
8961
8962 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
8963
8964         * INSTALL.in: Update the Prerequisites section.
8965
8966         * Makefile.am demos/Makefile.am docs/Makefile.am
8967         docs/tutorial/Makefile.am gdk/x11/Makefile.am
8968         gdk/linux-fb/Makefile.am: Dist fixes
8969
8970 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
8971
8972         * NEWS: 10,000 foot view of 1.3.1 changes.
8973
8974 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
8975
8976         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
8977         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
8978         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
8979         gdk/x11/gdkmain-x11.c: 
8980
8981         Patch from George Lebl to add a GdkGrabStatus enumeration to use
8982         as a return value of gdk_*_grab(). Previously, we just
8983         returned the X11 values directly.
8984
8985 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
8986
8987         * gdk/x11/Makefile.am: Patch from George Lebl to 
8988         install all the headers in the right place.
8989
8990 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
8991
8992         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
8993           initial conversion to DocBook.
8994
8995 2000-07-04  Tor Lillqvist  <tml@iki.fi>
8996
8997         * README.win32: Improve a bit.
8998
8999         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9000         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9001         Alt+0nnn on the numpad (used to enter characters by numeric code
9002         from current DOS or ANSI codepage) working correctly, as in other
9003         Windows apps.
9004
9005         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9006         same argument validity tests as in X11 version.
9007         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9008
9009         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9010         definitions in case missing from headers.
9011
9012         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9013         destroy the window-specific cursor.
9014         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9015         calling GetModuleHandle(NULL).
9016         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9017         with CopyCursor before setting it as the window-specific
9018         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9019         also its Windows cursor) after calling this function. Destroy any
9020         previous window-specific cursor.
9021
9022 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9023
9024         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9025         font charset is iso8859-1, not iso-8859-1.
9026
9027 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9028
9029         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9030         Use g_get_charset() instead of g_get_codeset().
9031
9032         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9033         Comment out some strdup'ing functions to keep timj
9034         happy until we finish fighting this out.
9035
9036 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9037
9038         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9039         <= width or height.
9040
9041         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9042         from 1.2 for parent/child states.
9043
9044         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9045         of typos.
9046
9047         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9048         event structures, replace with a generic axes field. Replace 
9049         deviceid/sourec with GdkDevice *device.
9050
9051         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9052         to extract particular axis use value from event. (Also
9053         can be used for normal X/Y.)
9054
9055         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9056         allow for arbitrary number of axes, namespace everything
9057         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9058         everywhere.
9059
9060         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9061         Get rid of the gdk_input_vtable setup if favor of simply
9062         defining the functions in gdkinput-none/gxi/xfree.c in
9063         a similar fashion to the way that the port structure is 
9064         done.
9065
9066         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9067         for new event structures. 
9068
9069         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9070         new device interfaces.
9071
9072 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9073
9074         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9075         set the initial text.
9076
9077         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9078         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9079         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9080         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9081
9082         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9083         pango_layout_set_font_description to simplify.
9084
9085 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9086
9087         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9088         pango_layout_set_font_description to simplify.
9089
9090 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9091
9092         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9093         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9094         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9095
9096         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9097         PANGO_PIXELS() macro.
9098
9099 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9100
9101         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9102         that returns a PangoContext owned by the widget and updated to
9103         match future changes in the widget. Also, make 
9104         gtk_widget_create_pango_layout() use this context. If we ever
9105         add a ::changed signal to PangoContext, this will make things
9106         much more convenient. 
9107
9108         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9109         in the appropriate places instead of destroying the layouts and
9110         creating new ones.
9111
9112         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9113         in a few strategic places.
9114
9115 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9116
9117         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9118         gtk_widget_size_request() on reparented child, if one. Otherwise,
9119         queue_resize() on the child never results in it getting size-requested
9120         at all.
9121
9122         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9123         in option menus, so that (with luck) people won't copy it into
9124         their apps in the future.
9125
9126         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9127         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9128         a lot of problems with changing the size of the menu's menu
9129         items after adding it to the option menu.
9130
9131         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9132
9133         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9134         the text direction for a widget changes.
9135
9136         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9137         ::direction_changed to get rid of various hacks.
9138
9139 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9140
9141         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9142         name.
9143
9144 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9145
9146         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9147         flag to the structure. Do not call XFreePixmap on pixmaps created
9148         by gdk_pixmap_foreign_new().
9149
9150 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9151
9152         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9153         value using GdkRGB functionality given GdkColormap and GdkColor.
9154         (name not final, waiting for inspiration.)
9155         
9156         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9157         set the foreground/background of a GC using the GC's colormap
9158         and GdkRGB. (name not final, waiting for inspiration.)
9159
9160         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9161         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9162
9163         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9164         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9165         purely a function of the corresponding colormap. Make
9166         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9167
9168         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9169         gdk_pixbuf_*create_from_xpm_* in terms of
9170         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9171         code.
9172
9173         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9174         advantage of the new draw_rgb_32_image_dithalign.
9175
9176         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9177
9178         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9179         on each created GC.
9180
9181         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9182
9183         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9184         which we initialize from the drawable when the GC is created,
9185         if the drawable has a colormap.
9186
9187         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9188
9189         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9190
9191         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9192
9193 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9194
9195         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9196         actually returning expose events, make sure to set
9197         the count field properly.
9198
9199         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9200         accidentally reintroced bug which always cleared
9201         the graphics_exposures value. 
9202
9203 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9204
9205         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9206
9207 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9208
9209         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9210
9211 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9212
9213         * docs/faq/gtk-faq.sgml: Start of Section 6.
9214
9215 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9216
9217         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9218         
9219         (Fixes problem with drawing childless frames. Pointed out
9220         by and a first patch from Anders)
9221         
9222         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9223         compute a child_allocation, even if we don't have a child.
9224
9225         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9226         Always chain to the parent's impl, even if we don't have a child.
9227
9228 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9229
9230         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9231         use multiple parts of it instead of creating a bunch of separate
9232         segments, since the maximum number of segments per system is not
9233         large. (This might be worth backporting to GTK+-1.2.x if we make a
9234         new release )
9235
9236         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9237         structure in preparation for per-colormap GdkRGB.
9238
9239         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9240         to False when we get EINVAL from shmget so that the caller of
9241         gdk_image_new can retry with a smaller segment size.
9242
9243 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9244
9245         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9246
9247 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9248
9249         * configure.in: make the current version number 1.3.1 (binary age 0,
9250         interface age 0).
9251         
9252         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9253         gtkcompat.h is all we want.
9254
9255         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9256         GLib primitive types. fixed g_type_register_fundamental() argument
9257         ordering.
9258
9259         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9260         compiles.
9261
9262         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9263         object code cleanup, comment trigraph fixes, etc...
9264
9265 2000-06-23  Havoc Pennington  <hp@redhat.com>
9266
9267         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9268         instead of making up a bogus name for first_para_mark
9269
9270         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9271         0 as a context ID
9272
9273 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9274
9275         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9276
9277 2000-06-21  Havoc Pennington  <hp@pobox.com>
9278
9279         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9280         we didn't check window->bg_pixmap != GDK_NO_BG.
9281
9282         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9283         gdk-pixbuf
9284
9285 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9286
9287         * docs/faq/gtk-faq.sgm: Move file to here.
9288           TODO: Update Makfile.am 
9289
9290 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9291
9292         * docs/gtk-faq.sgm: Add Section 2
9293
9294 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9295
9296         * docs/gtk-faq.sgm: New file. Start of DocBook
9297           version of the FAQ.
9298
9299 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9300
9301         * configure.in (GDK_PIXBUF_MAJOR): Define version
9302         numbers for GDK_PIXBUF_*, as they get substituted
9303         into a header file. Need to consider versioning
9304         for gdk-pixbuf more carefully later.
9305
9306 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9307
9308         Work with srcdir != builddir.   
9309         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9310         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9311         * demos/testpixbuf.c: Likewise.
9312         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9313         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9314         <gdk/x11/gdkx.h>.
9315         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9316         "gdk-pixbuf.h".
9317         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9318
9319 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9320
9321         * TODO.xml: Change 1.4 version numbers to 2.0.
9322
9323 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9324
9325         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9326         fixups to GTK+ standard.
9327
9328 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9329
9330         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9331         gdk-pixbuf.
9332
9333         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9334         fixups for GObject.
9335
9336         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9337         gdk-pixbuf with GDK dependencies moved into GDK.
9338         
9339         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9340         move gdk-pixbuf-loader here until GObject has signals.
9341
9342         * demos/: New directory of demos. Move demos from
9343         gdk-pixbuf here.
9344
9345         * demos/pixbuf-init.c: Small bit of code to check for
9346         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9347         set GDK_PIXBUF_MODULEDIR appropriately.
9348
9349         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9350         define which no longer makes sense.
9351
9352 2000-06-21  Havoc Pennington  <hp@redhat.com>
9353
9354         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9355         gtk_get_default_language
9356
9357         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9358         new function to get the default language
9359
9360         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9361         s/gtk_text_view_style_values/gtk_text_style_values/
9362
9363         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9364         Add a "language" field to tags.
9365
9366         (gtk_text_tag_set_arg): Fix bug in setting
9367         "bg_full_height_set" tag.
9368
9369 2000-06-21  Havoc Pennington  <hp@redhat.com>
9370
9371         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9372         in the interfaces
9373
9374         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9375         stuff instead when possible.
9376
9377         * gtk/gtktexttypes.h: Delete some unused constants
9378
9379         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9380         testtextbuffer.c: use glib instead of custom unicode routines
9381
9382 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9383
9384         * docs/es/: Removed mistakenly added generated sgml
9385
9386         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9387         Remove outdated info files.
9388
9389         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9390         Moved tutorial files into subdir
9391
9392         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9393         subdir.
9394
9395         * docs/man/gtk_button.pod: Remove. (contents will be
9396         integrated into gtk-reference button page.)
9397
9398         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9399         docs/faq/Makefile.am: Adjust for new organization
9400
9401 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9402
9403         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9404         not $(MKINSTALLDIRS)
9405
9406 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9407
9408         * gtk/testgtk.c (create_text): Finish the job Elliot started
9409         of removing font setting test for text widget. (Since text widget
9410         and GdkFont are not deprecated, and cause portability problems.)
9411
9412 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9413
9414         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9415         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9416         Remove use of libunicode in favor of new GLib functions.
9417
9418         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9419         nano-x, framebuffer. The X11 include is just a hack until we get
9420         the necessary functions in gdkcolor.h, so there is no reason to
9421         add other includes of platforms.
9422
9423         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9424         window bigger than the screen change.
9425
9426         * gtk/testgtk.c: Revert some random changes from Elliot
9427         that had no particular point and were causing testgtkrc
9428         not to function correctly.
9429         
9430         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9431         because GdkSegment and GdkRegionBox have the same fields,
9432         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9433         results in clearer code.
9434
9435         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9436         gdk_input_translate_coordinates): Fix missed GdkObjectification
9437
9438 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9439
9440         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9441         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9442
9443 2000-06-20  Havoc Pennington  <hp@redhat.com>
9444
9445         * modules/linux-fb/Makefile.am: Make this compile
9446         without framebuffer enabled
9447
9448         * gdk/linux-fb/Makefile.am: Add conditional to not build
9449         framebuffer unless specified in configure
9450
9451         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9452         the size of the target instead of source if -1 was passed for
9453         width/height
9454
9455         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9456         width/height confusion.
9457
9458 2000-06-19  Havoc Pennington  <hp@redhat.com>
9459
9460         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9461         GDK_DRAWABLE_XID. In the future, we probably want to make it
9462         faster with G_DISABLE_CHECKS turned on.
9463
9464 2000-06-14  Havoc Pennington  <hp@redhat.com>
9465
9466         * gdk/Makefile.am: add gdkpixmap.c
9467
9468         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9469         s/gdk_image_init/_gdk_windowing_image_init
9470
9471         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9472         ref/unref
9473
9474         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9475
9476         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9477         GdkWindowType is now non-deprecated; 
9478         change gdk_window_get_type() compat to be
9479         gdk_window_get_window_type().
9480
9481         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9482
9483         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9484         virtual GObject. Make all functions call into the vtable.
9485         Move gdk_image_put() guts in here. Remove GdkDrawableType
9486         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9487         draw_image, get_depth, get_size, set_colormap, get_colormap,
9488         get_visual added to the vtable.
9489         
9490         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9491         GObject. Virtualize everything. 
9492         (gdk_gc_new_with_values): remove check for destroyed window,
9493         because now GdkWindow::create_gc will check this.
9494         (gdk_gc_set_values): New function to set GC values, this 
9495         was already implemented but wasn't in the header
9496
9497         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9498
9499         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9500         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9501         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9502         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9503         _gdk_windowing_window_init, rename gdk_image_init to
9504         _gdk_windowing_image_init.
9505         
9506         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9507         (gdk_draw_layout): Remove check for destroyed window, 
9508         because all the drawable methods already check it.
9509         
9510         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9511         Add gdkpixmap.c which contains implementation of GdkDrawable
9512         virtual table (by chaining to a platform-specific implementation
9513         object).
9514         
9515         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9516         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9517         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9518         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9519         GdkColormapPrivate. 
9520
9521         * gdk/gdktypes.h: #include <glib-object.h>
9522
9523         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9524         Move most functionality to platform-specific implementation
9525         object. GdkWindow itself now handles the backing store, then
9526         chains to the platform-specific implementation.
9527         (gdk_window_get_window_type): return GdkWindowType of the window.
9528         (gdk_window_peek_children): New routine, returns the children of 
9529         a GdkWindow
9530         (gdk_window_get_children): Was in X11-specific code and did 
9531         XQueryTree. Changed to simply return a copy of window->children; 
9532         so it can go in cross-platform code.
9533         
9534         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9535
9536         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9537         GdkColormap; just changed to use the new private data instead
9538         of casting to GdkColormapPrivate.
9539
9540         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9541         gdk_cursor_new().
9542
9543         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9544         (private data member in the GObject). 
9545         (xdnd_manager_source_filter): Function had broken 
9546         error handling, fix it (use gdk_error_trap_push).
9547
9548         * gdk/x11/gdkdrawable-x11.c: This file now implements
9549         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9550         base class is purely for the convenience of the X port,
9551         and not part of the interface to cross-platform GDK.
9552
9553         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9554         
9555         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9556         specific to X, and returned by the create_gc virtual method
9557         of GdkDrawableImplX11. 
9558         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9559         rather than gchar, this was also changed in the GdkGC vtable.
9560         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9561         mask is 0, return immediately, instead of checking every flag.
9562         This is faster, and keeps us from segfaulting if values is NULL
9563         and the mask contains some nonzero flags.
9564
9565         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9566         GdkWindow.
9567
9568         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9569         GdkWindowPrivate is gone.
9570
9571         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9572
9573         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9574         remove the image_put stuff that got transferred to GdkDrawable.
9575         
9576         * gdk/x11/gdkinput.c: renamings
9577
9578         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9579
9580         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9581
9582         * gdk/x11/gdkprivate-x11.h: indentation fixes
9583
9584         * gdk/x11/gdkproperty-x11.c: renamings
9585
9586         * gdk/x11/gdkselection-x11.c: renamings
9587
9588         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9589         implements the platform-specific "impl" object.
9590         Moved gdk_window_get_children to gdk/gdkwindow.c
9591
9592         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9593         that no longer exist. Add declaration of GdkGCX11 object here.
9594         Fix all the macros to still work. 
9595
9596         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9597         GdkDragContext from the boxed types since they are now GObjects.
9598
9599         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9600         moved xthickness/ythickness into the instance. GtkStyleClass
9601         functions are now in the standard vtable for GtkStyle, so you have
9602         to create a GObject subclass to write a theme engine.
9603         (gtk_style_copy): fixed a leaked PangoFontDescription
9604         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9605         can be the standard GObject function.
9606         
9607         * Throughout GTK:
9608         s/style->klass->[xy]thickness/style->[xy]thickness
9609         s/pango_layout_unref/g_object_unref/
9610
9611         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9612         
9613         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9614         accessing GDK internals.
9615
9616         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9617         accessing GDK internals.
9618
9619 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9620
9621         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9622
9623         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9624         problem by calculating event position relative to the trough
9625         rather than the slider.
9626         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9627
9628         * gdk/gdkgc.h: Add GDK_NOR.
9629
9630         * configure.in, Makefile.am: Add modules top level dir
9631         * configure.in: Only use pangox library if building x11 target.
9632         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9633
9634 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9635
9636         * gtk/gtkcolorsel.c: Change private class member to be named
9637         private_data throughout the file.
9638
9639         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9640         private_data to avoid clashing with keyword.
9641
9642 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9643
9644         * gdk/gdkdnd.h: Add comment to remove warning.
9645
9646 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9647
9648         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9649         Byelorussian language; changed the Makefile and file names 
9650         to reflect that.
9651
9652 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9653
9654         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9655         rather than gdk_window_hide; this makes things work
9656         correctly if the window is programmatically hidden while
9657         iconified.
9658
9659 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9660
9661         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9662         cut and paste typo where wrong pixmap was being
9663         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9664
9665 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9666
9667         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9668         Add helper function to compute format / bytes 
9669         relationship. Use in a couple places to fix up
9670         errors which assume 8 * format.
9671
9672         * gtk/gtkselection.c (gtk_selection_request): Use 32
9673         rather than 8 * sizeof (GdkAtom), to work correctly
9674         on Alpha.
9675
9676 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9677
9678         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9679         libgtk.la
9680         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9681         versions
9682
9683         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
9684         checking macros return NULL since the function has a return value.
9685
9686 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
9687
9688         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
9689         GTK+ from building at all.
9690
9691         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
9692
9693 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
9694
9695         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
9696         gtk/Makefile.am: make it possible to configure gtk for different
9697         targets on the same platform. The library name is now 
9698         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
9699         flag. Only the x11 target compiles right now.
9700         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
9701         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
9702         * gdk/nanox/gdk*generic*: delete generic region code.
9703         * gdk/linux-fb/gdk*generic*: delete generic region code.
9704         * README.nanox: update information.
9705         
9706 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9707
9708         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9709         prepend not append. (Pointed out by Brett Hall.)
9710
9711 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9712
9713         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9714
9715 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9718         need this later, and this makes sure that the atexit for
9719         glib gets called after that for GDK, so atexits are
9720         properly ordered for object leak checking.
9721
9722         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9723
9724         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9725         pango_x_shutdown_display()
9726
9727         * gtk/simple.c (main): Close window on destroy.
9728
9729 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9730
9731         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9732         to treat initial creation different from setting with 
9733         regards to the graphics-exposures parameter, so add a parameter
9734         indicating whether this is initial or not.
9735
9736 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9737
9738         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9739         to sort of work by adding an extra return_exposes arg
9740         to gdk_event_translate() - it might be better to simply
9741         deprecate the function altogether and force people to rewrite
9742         without it. gdk_window_scroll() handles most of it, and where
9743         gdk_window_scroll() doesn't work, simply redrawing more does.
9744
9745         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9746         assertion.
9747
9748         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9749
9750         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9751         bunch of pretty much useless /* Print debugging info */ comments 
9752         which had drifted away from the code they were commenting.
9753
9754 2000-06-02  Havoc Pennington  <hp@pobox.com>
9755
9756         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9757         is in working order.
9758         
9759         * gtk/testtext.c: Change to reflect anonymous mark API
9760
9761         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9762
9763         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9764         field, which was unused.
9765
9766         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9767         saves some typing.
9768
9769         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9770
9771         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9772         flag on the insertion point and selection bound
9773
9774         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9775         make mark-manipulation functions take a GtkTextMark* instead of a
9776         mark name.
9777         
9778         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9779         GtkTextMarkBody; will be used to detect attempts to delete
9780         the permanent marks (insert and selection bound)
9781
9782         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9783
9784 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9785
9786         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9787         flag to on.
9788
9789         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9790         Honor DOUBLE_BUFFRED_FLAG
9791
9792         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9793         function to set the DOUBLE_BUFFERED flag.
9794
9795         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9796         or not exposes done on the widget should be double-buffered.
9797
9798         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9799         to be what would be expected. (Fixes problem with a
9800         g_return_if_fail() validating a TextDirection enumeration)
9801
9802 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9803
9804         * gtk/gtkwidget.c: Remove all references to 
9805         offscreen flag which was no longer used.
9806
9807         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9808
9809         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9810         for non-null label_widget->parent.
9811
9812         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9813         which no longer was used.
9814
9815         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9816
9817         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9818         for null arguments.
9819
9820         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9821         check for destroyed windows.
9822
9823 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9824
9825         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9826         the slave context there.
9827
9828         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9829         identical to GtkWindow.
9830
9831 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9832
9833         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9834         pangox to here, so we can write them independent of rendering
9835         system, using GDK primitives.
9836
9837         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9838         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9839         since we have a rendering-system independent implementation in
9840         terms of draw_glyphs().
9841         
9842         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9843         function to render a single line.
9844
9845         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9846         into ../gdkpango.c, which simplifies things, since we
9847         don't have to deal with raw X gc's.
9848
9849 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9850
9851         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9852         get the logical attributes for a given GtkTextLine.
9853
9854 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9855
9856         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9857         g_locale_get_codeset() to g_get_codeset() change.
9858
9859 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9860
9861         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9862         descriptions.
9863
9864         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9865         the entry.
9866
9867         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9868         redoing (vastly simplifying) for Pango. Still needs quite
9869         a bit of work. (Size selection is currently poor. List of 
9870         predefined sizes is not a good idea, since all of these
9871         sizes won't necessarily be distinct.)
9872
9873 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9874
9875         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9876         CODESET results for LANG=C.
9877
9878 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
9879
9880         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
9881         which takes a stringized pango font description;
9882         ignore the older 'font' and 'fontset' declarations.
9883
9884         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
9885         field with a GdkFont derived via gdk_font_from_description(),
9886         for compatibility. (Should we just remove it entirely?
9887         Probably too much compatibility breakage, but people
9888         should be migrating to the new Pango stuff as quickly
9889         as possible.)
9890
9891 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
9892
9893         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
9894
9895 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
9896
9897         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
9898         redoing; there are some bugs in size allocation right
9899         now, the semi-existant distinction between header / day
9900         fonts was removed, but, with Pango, could actually
9901         be made functional in a nice way.
9902         
9903         * gtk/testcalender: Move calender from examples into this
9904         directory as a test program. (We really need to restrcture
9905         testgtk into a whole directory full of tests for every
9906         widget or functionality group, separated into multiple .c
9907         files.)
9908
9909 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
9910
9911         * gtk/testgtk.c (file_exists): Fix stupid typo that
9912         was keeping RC file from being loaded.
9913
9914         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
9915         RC file font code.
9916
9917 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
9918
9919         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
9920         Add function to load a GdkFont from a PangoFontDescription.
9921
9922 2000-05-29  Tor Lillqvist  <tml@iki.fi>
9923
9924         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
9925         variable should be of type GdkEventPrivate.
9926
9927 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
9928
9929         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
9930         to have any widget for the label, use a GtkLabel widget
9931         to display the text. (Based partially on a patch from
9932         Anders Carlson.)
9933
9934         (Quite a bit of code reorganization - strip 90% of the
9935         guts out of gtkaspectframe and add a single virtual
9936         func to GtkFrameClass - compute_child_allocation.)
9937
9938 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
9939
9940         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
9941         (Removed clist->row_center_offset field because caching
9942         it wasn't saving time or code, added private function
9943         _gtk_clist_create_cell_layout()).
9944
9945 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
9946
9947         * gtk/gtkaccellabel.c: Pangoized.
9948
9949         * gtk/[hv]ruler.c: Pangoized
9950
9951 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
9952
9953         * gtk/gtkfilesel.c (gtk_file_selection_init):
9954         Use gtk_clist_set_column_auto_resize() to remove need
9955         need for manual column width computations.
9956
9957 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
9958
9959         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
9960         ensuring Pango correctness, and considerably simplifying the
9961         code.
9962         
9963         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
9964
9965         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
9966         getting of numbers of lines.
9967
9968         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
9969         to the actual requested width of the lable, not to the wrap
9970         width we set.
9971
9972         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
9973
9974         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
9975           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
9976
9977         * gtk/gtktextview.c: Fix structure inheritance.
9978
9979         * gtk/gtkprogressbar.c: Pangoize.
9980
9981 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
9982
9983         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
9984         in a function.
9985
9986         * gtk/gtktextlayout.c (find_display_line_above): Fixed
9987         bug with computing line tops.
9988
9989         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
9990
9991 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9992
9993         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
9994         and y_offset coordinates to do what we need now. (The offset between
9995         buffer and layout coordinates has been reintroduced, but is a 
9996         bit different than before.)
9997
9998         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
9999         handle the adjustments ourselves, and scroll as necessary using
10000         the new gdk_window_scroll().
10001         
10002         The advantage of this is that when we are incrementally revalidating,
10003         we are essentially rearranging things around the visible portion
10004         of the screen. With the old setup, the visible portion of the
10005         screen was moved around in the layout, so scrolling and redrawing
10006         to track that caused jumping of the display. Since we now
10007         control the scrolling ourselves, we can suppress this and
10008         only redraw when things actually change.
10009
10010 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10011
10012         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10013         the region not just redisplay it after-all, since we store the
10014         cursors in the LineDisplay. (Ugly interactions here between
10015         GtkLayout and GtkTextBTree here.)
10016         
10017         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10018
10019 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10020
10021         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10022         Added function to scroll contents of a window while keeping the
10023         window constant. Works by XCopyArea or guffaw-scrolling depending
10024         on the details of how the window is set up. (guffaw-scrolling
10025         still needs to be filled in.)
10026
10027 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10028
10029         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10030         move the debugging that was tied to a global variable
10031         to that.
10032
10033         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10034
10035         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10036         validated flag, in line data instead of setting height/width to
10037         -1. This allows us to perform operations with partially invalid
10038         buffer (using the old size for invalid lines) and thus to do
10039         incremental vaidation. Keep height/width aggregates up to date
10040         when deleting text and rebalancing the tree.
10041
10042         * gtk/gtktextbtree.[ch]: Add functions validate a line
10043         (gtk_text_btree_validate_line), and to validate up
10044         to a number of pixels (gtk_text_btree_validate).
10045
10046         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10047         that indicates that something is changed and a revalidation
10048         pass is needed. Change ::need_repaint to ::changed, and
10049         make it take old and new yranges instead of a rectangle.
10050
10051         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10052         the line_data_destroy() function from 
10053         gtk_text_btree_add_view() to a virtual function in 
10054         GtkTextLayout
10055
10056         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10057         since we are handling partial repaints in a different fashion
10058         now.
10059
10060         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10061         of the selection instead of queueing a repaint on the
10062         entire widget.
10063
10064         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10065         get_selection_bounds() down to btree, make the function
10066         in buffer a wrapper around the btree function.
10067
10068         * gtk/gtktextlayout.[ch]: Add functions to check if the
10069         layout is valid and to recompute either a range of pixels
10070         aroudn a line or a certain total number of pixels.
10071
10072         * gtk/gtktextlayout.[ch]: Cache a single line display;
10073         now that we only redraw the needed portions, the hit rate
10074         for this cache is quite high.
10075         
10076         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10077         on the screen so that when re-laying-out the buffer, we can
10078         keep the same place. This requires connecting to ::value_changed
10079         on the adjustments
10080
10081         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10082         the buffer after we receive an ::invalidated signal.
10083         
10084 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10085
10086         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10087         to max of allocation and layout size, not just to the
10088         layout size.
10089
10090         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10091         Invalidate window so it gets redrawn properly.
10092
10093         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10094         to mean the entire window.
10095
10096         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10097         into public header.
10098
10099 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10100
10101         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10102         to get the name of a mark.
10103
10104         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10105         to find the paragraph from a y position.
10106
10107 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10108
10109         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10110         nodes have width/height >= 0, not > 0.
10111
10112 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10113
10114         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10115         Add a size_only flag, so when we only need the size, we don't create
10116         useless appearance attributes.
10117
10118         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10119         duplicate setting of font description.
10120
10121         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10122
10123 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10124
10125         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10126         EXTRA_DIST. It does not work well when the file that
10127         everything depends on is not in the tarball.
10128
10129 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10130
10131         * gtk/testgtk.c: Some hacks and fixes so that it basically
10132         works when not sitting in the GTK+ build tree.
10133
10134 2000-05-03  Havoc Pennington  <hp@redhat.com>
10135
10136         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10137         Properly determine the ordering of the tag root and the current
10138         line within the tree. Previous algorithm only worked if the tag
10139         root's immediate parent was the common root of both the current
10140         line and the tag root.
10141
10142 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10143
10144         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10145         alignment.
10146
10147         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10148         the widget text directional dynamically.
10149
10150         * gtk/gtktextview.[ch]: Added functions to get and set default
10151         wrap mode.
10152
10153 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10154
10155         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10156         in cursor location computation.
10157
10158 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10159
10160         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10161         vadjusment values properly when layout gets smaller.
10162
10163         * gtk/gtktextview.c (need_repaint_handler): Areas being
10164         passed in are far completely inaccurate, and sometimes
10165         too small, so, for now, just queue a redraw on the
10166         whole visible region.
10167
10168 2000-04-25  Havoc Pennington  <hp@redhat.com>
10169
10170         * gtk/gtktextbtree.c (summary_destroy): new function to 
10171         destroy tag summary nodes
10172         (gtk_text_line_next_could_contain_tag): this function was 
10173         totally broken if the line passed in wasn't below the tag
10174         root. Fix it.
10175         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10176         "wildcard" case, we have to do a linear scan. Blah.
10177         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10178         we have to do the linear scan
10179         (tag_removed_cb): When a tag is removed from the tag table, 
10180         remove the GtkTextTagInfo node from the btree.
10181         (gtk_text_btree_spew): Implement the spew function, for 
10182         our debugging pleasure.
10183
10184 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10185
10186         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10187         a problem with referring to the wrong buffer.
10188
10189         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10190
10191         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10192         font description to gtk_style_new() - otherwise things
10193         don't work without a .gtkrc file.
10194
10195         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10196         tags table if we create it ourself, too.
10197
10198         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10199         it was conflicting with XKB modifiers.
10200
10201         * gtk/gtktextview.[ch]: Add simple support for 
10202         GtkIMContext.
10203
10204 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10205
10206         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10207         with deletion from last commit.
10208
10209 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10210
10211         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10212         in the context from the current locale.
10213         
10214         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10215         context, not hardcoded value.
10216
10217         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10218         not logical.
10219
10220 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10221
10222         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10223         attributes - that doesn't handle partial-glyph selection
10224         properly. Instead use new pango_layout_line_get_x_ranges()
10225         functionality to draw the selection.
10226
10227         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10228         now properly handles out-of-range coordinates.
10229
10230         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10231
10232         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10233         public.
10234
10235         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10236         for paragraphs opposite to the base direction of the widget.
10237
10238         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10239
10240         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10241         causes Arabic words to reshape as you cursor through.
10242
10243         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10244         cursor position when moving vertically with the arrow keys and
10245         scrolling with page-up/page-down. (Arrow keys save only the X,
10246         scrolling saves both X and Y.)
10247
10248         This means you can line-up / line-down or page-up / page-down
10249         without losing your place, and also that moving vertically
10250         with the cursor keys keeps the same X position, not the same
10251         character count:
10252
10253         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10254         arrow keys move by display lines, not paragraphs.
10255
10256 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10257
10258         * gtk/gtklayout.c: Make sure that the bin window is at least
10259         as big as the allocation. (Should we also make sure that the
10260         bin window is big enough to completely cover widget->window?)
10261
10262         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10263         function to get the onscreen rectangle.
10264
10265         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10266         for offsets in window coordinates.
10267
10268 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10269
10270         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10271         confusion.
10272
10273         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10274         from the widget direction.
10275
10276         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10277         Add a "direction" attribute.
10278
10279         * gtk/gtktextview.c: global s/tkxt/text_view/.
10280
10281         * gtk/testtext.c: Added long block of text in Arabic, to test out
10282         the direction attributes. (Some problems with the shaping system
10283         for arabic become obvious - like the fact the cursor splits words
10284         into unjoined pieces.)
10285
10286 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10287
10288         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10289
10290         * gtk/gtktextlayout.c: Fix up alignment.
10291
10292         * gtk/testtext.c: Add some tests for centering, wrapping.
10293
10294 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10295
10296         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10297         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10298         If we wrote GTK+-specific layout-render function this could just replace
10299         the draw_layout() operation in the vtable.
10300
10301         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10302         pango_layout_get_cursor_pos() and use that function.
10303
10304         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10305         is a non-static symbol.
10306
10307         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10308         with gtk_text_btree_find_line_by_y()
10309
10310         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10311         renderer that handles GtkTextAppearance attributes.
10312
10313         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10314
10315           - Move the values in the style that don't affect geometry into a
10316             GtkTextAppearance structure.
10317           - Change underline to take a PangoUnderline and "font" a string
10318             representation of a font description
10319           - Add a "font_desc" attribute which takes a FontDescription structure.
10320
10321         * gtk/gtktextlayout.[ch]:
10322
10323           - Get rid of the display-line list per each line. Instead, we
10324             generate, on demand, a GtkTextLineDisplay structure which]
10325             contains a PangoLayout * and other necesary information
10326             (offsets, cursor locations) for displaying a paragraph.
10327           - Get rid of the code to wrap lines, create display chunks,
10328             etc. Instead, we just go through a paragraph and convert
10329             it into the necessary inputs to a PangoLayout.
10330           - Implement a new attribute type, GtkTextAttrAppearance. This
10331             holds a GtkTextAppearance, and is used to pass colors, 
10332             stipple, etc, through from the layout to the display without
10333             having to use lots and lots of individual attributes.
10334           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10335             in terms of PangoLayout functions.
10336         
10337         * gtk/gtktextview.c: 
10338          
10339           - Handle passing the necessary PangoContext to the layout
10340           - Some fixups in painting to deal with the automatic backing store
10341             and offsetting of GTK+-1.4
10342           - Add a style_set handler so that the default style reacts
10343             properly to theme changes.
10344         
10345         * gtk/gtktext?*.[ch]: Random code-style fixes.
10346
10347         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10348
10349 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10350
10351         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10352         in original form preparatory to Pango-ization and gdkimcontext-ization.
10353
10354 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10355
10356         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10357         so that we can derive from gtkimcontext in language bindings properly.
10358
10359 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10360
10361         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10362         Add a compose table including (almost) all the compose combinations
10363         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10364         data in the XIM implementation.
10365
10366         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10367         Moved functions to convert keyvalues from and to unicode here from
10368         the win32 port and made them public.
10369
10370 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10371
10372         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10373
10374 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10375
10376         * gtk/gtkimcontext.[ch]: Base class for new input context system
10377
10378         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10379         the real input context implementation to be loaded from modules
10380         and switched on the fly.
10381
10382         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10383         context that just does direct keysymbol => unicode translation.
10384
10385         * gtk/gtkentry.[ch]: Start switching editing over to using
10386         GtkInputContext. (No handling of preedit yet.)
10387
10388 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10389
10390         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10391         many substitutions. (klass should not be subsituted.)
10392
10393 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10394
10395         * configure.in: Add checks for Pango
10396
10397         * configure.in docs/Makefile.am: Add test for sgml2html
10398         and allow 'make dist' without building html, but print out
10399         warnings in that case. (For making snapshots)
10400
10401         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10402         Add Pango libraries and C flags
10403
10404         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10405         Add function (gdk_draw_layout) to draw a pango layout.
10406
10407         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10408         for getting Pango contexts for GDK.
10409
10410         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10411
10412         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10413         editing.
10414
10415         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10416         keysym => unicode translations. More languages can be added
10417         here, but real input-method support is needed.
10418
10419         * docs/Changes-1.4.txt: Added note about entry behavior.
10420         
10421         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10422         to set the reading direction for a widget and the global direction.
10423         Add test which allows toggling the global direction. Two private
10424         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10425
10426         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10427           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10428
10429         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10430
10431         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10432         underlining now handled by Pango.
10433
10434         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10435         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10436         is temporary.)
10437
10438         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10439         convenience functions for creating contexts and layouts for widgets.
10440
10441         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10442
10443 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10444
10445         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10446         titles to be active, even if they aren't visible.
10447         (gtk_clist_column_titles_passive):  Ditto.
10448
10449 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10450
10451         * gtkmenu.c:
10452         * gtkmenu.h:
10453         * gtktypeutils.h: Spelling/grammar fixes in comments.
10454
10455 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10456
10457         * gdk/nanox/*.h: add missing header files.
10458
10459 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10460
10461         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10462         send_event to TRUE.
10463         (gtk_drawing_area_size): queue a resize.
10464
10465 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10466
10467         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10468         the handlers, also invalidate them. bug nailed down by Karl Nelson
10469         <kenelson@ece.ucdavis.edu>.
10470
10471 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10472
10473         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10474         "(nil)" foundries, patch from Grigorios Magklis.
10475
10476         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10477         on non-available fonts, based on a patch by Grigorios Magklis
10478         <maglis@cs.rochester.edu>.
10479
10480 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10481
10482         * gdk/x11/gdkregion-generic.c: If a region does not have any
10483         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10484         instead of GDK_OVERLAP_RECTANGLE_IN.
10485
10486 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10487
10488         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10489         OFFSCREEN, as it is no longer necessary.
10490
10491 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10492
10493         * gtk/gtkcolorsel.c: Patch from David Santiago
10494         <mrcooger@cyberverse.com> to change things so that the 
10495         indicator of the active palette entry is done independently,
10496         not via the focus, since it should always be visible.
10497
10498 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10499
10500         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10501         refcount leaks as in the X11 backend.
10502
10503         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10504         cosmetics.
10505
10506         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10507         backend. Add _gdk_windowing_window_destroy().
10508
10509         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10510         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10511         either, but these probably do exist on nanox?)
10512         
10513         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10514         which isn't necessarily defined by <math.h>.
10515
10516         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10517         ancestry past GtkObject.
10518
10519         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10520         from DLL on Win32.
10521
10522         * gtk/gtk.def: Update corresponding to recent changes.
10523
10524         * gtk/makefile.{cygwin,msc}: Updates.
10525
10526 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10527
10528         * docs/Changes-1.4.txt: A bit of editing.
10529
10530         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10531         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10532         to clear the update area for the window, and clear it
10533         when hiding a window.
10534
10535         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10536         if window destroyed.
10537
10538         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10539
10540         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10541         gdk_window_destroy() to the generic code, since there was a lot of 
10542         window-system-independent logic it in. Add a function:
10543         
10544          _gdk_window_destroy() 
10545
10546         to the internal API to destroy a window without unreferencing it.
10547         Add a function:
10548
10549          _gdk_windowing_window_destroy()
10550
10551         That does the windowing-system-dependent part of destroying 
10552         the window.
10553
10554 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10555
10556         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10557
10558 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10559
10560         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10561         Make gtk_widget_shape_combine_mask() keep a reference count on
10562         the pixmap since it keeps it around.
10563
10564 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10565
10566         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10567         leak.
10568
10569         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10570         leak with event filters.
10571
10572 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10573
10574         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10575         signal handlers with the right data arguments. (Fixes
10576         some warnings when a widget was repeatedly set as a drag
10577         destination.)
10578
10579         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10580         window so we can avoid avoid setting the DND properties on the
10581         toplevel window repeatedly.
10582
10583 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10584
10585         * gdk/win32/gdkwin32.h: Define more message types missing from
10586         mingw headers.
10587
10588         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10589         call gdk_window_destroy_notify(). It was never called. This
10590         probably meant that the GdkWindow was never freed. Thanks Owen for
10591         noticing (!).
10592
10593         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10594         window as destroyed before calling DestroyWindow(). DestroyWindow()
10595         causes a call to the window procedure (gdk_WindowProc), which
10596         calls gdk_event_translate(), which calls
10597         gdk_window_destroy_notify(), which gets confused unless the window
10598         is set as destroyed.
10599
10600         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10601         this function to indicate it's win32 only. Put inside #ifdef
10602         G_ENABLE_DEBUG.
10603
10604         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10605         debugging function. (gdk_event_translate:) Add a default branch
10606         that uses the above function to print debug messages with all
10607         Windows messages symbolically.
10608
10609         * gdk/win32/gdkprivate-win32.h: Declare it, and
10610         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10611
10612 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10613
10614         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10615         public header file.
10616
10617 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10618
10619         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10620
10621         * gtk/gtktext.c: made the adjustments no-construct args, simply
10622         provide default adjustments.
10623         (gtk_text_destroy): release adjustments.
10624
10625         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10626         adjustment argument non-construct.
10627
10628         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10629         instead of in finalize.
10630         (gtk_progress_get_text_from_value): 
10631         (gtk_progress_get_current_text): 
10632         (gtk_progress_set_value): 
10633         (gtk_progress_get_percentage_from_value): 
10634         (gtk_progress_get_current_percentage): 
10635         (gtk_progress_set_percentage): 
10636         (gtk_progress_configure): ensure an adjustment is present.
10637
10638 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10639
10640         * gtk/gtkcolorsel.[hc]:
10641         * gtk/gtkcolorseldialog.[hc]:
10642         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10643         their parent implementation, use bit fields for boolean values, don't
10644         create unused widgets, usage of glib types, braces go on their own
10645         lines, function argument alignment, #include directives etc. etc. etc..
10646
10647         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10648
10649 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10650
10651         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10652
10653         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10654         of NULL.
10655
10656         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10657         to freed data.
10658         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10659
10660         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10661         to NULL when the toplevel is getting destroyed.
10662         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10663         (gtk_menu_destroy): 
10664         (gtk_menu_init): store the information of whether we have to
10665         readd the initial child ref_count during destruction in a new
10666         GtkMenu field needs_destruction_ref_count.
10667
10668         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10669         here, those reading: learn from my mistake! ;)
10670         in order for set_?adjustment to support a default adjustemnt if
10671         invoked with an adjustment pointer of NULL, the code read (pseudo):
10672         if (v->adjustment) unref (v->adjustment);
10673         if (!adjustment) adjustment = adjustment_new ();
10674         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10675         now imagine the first unref to actually free the old adjustment and
10676         adjustment_new() creating a new adjustment from the very same memory
10677         portion. here, the latter comparision will unintendedly fail, and
10678         all hell breaks loose.
10679         (gtk_viewport_set_hadjustment):
10680         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10681         after unreferencing it.
10682
10683         * gtk/gtkcontainer.[hc]: removed toplevel registration
10684         functions: gtk_container_register_toplevel(),
10685         gtk_container_unregister_toplevel() and
10686         gtk_container_get_toplevels() which had wrong semantics
10687         anyways: it didn't reference and copy the list.
10688
10689         * gtk/gtkwindow.c: we take over the container toplevel registration
10690         bussiness now. windows are registered across multiple destructions,
10691         untill they are finalized. the initial implicit reference count
10692         users are holding on windows is removed with the first destruction
10693         though.
10694         (gtk_window_init): ref & sink and set has_user_ref_count, got
10695         rid of gtk_container_register_toplevel() call. add window to
10696         toplevel_list.
10697         (gtk_window_destroy): unref the window if has_user_ref_count
10698         is still set, got rid of call to
10699         gtk_container_unregister_toplevel().
10700         (gtk_window_finalize): remove window from toplevel list.
10701         (gtk_window_list_toplevels): new function to return a newly
10702         created list with referenced toplevels.
10703         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
10704
10705         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10706         adjustment a non-construct arg.
10707         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10708         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10709         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10710
10711         * gtk/gtkrange.c: added some realized checks.
10712         (gtk_range_destroy): get rid of the h/v adjustments in the
10713         destroy handler instead of finalize. remove timer.
10714         (gtk_range_get_adjustment): demand create adjustment.
10715
10716         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10717         we simply create them on demand now and get rid of them in
10718         the destroy handler.
10719         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10720         destroy handler instead of finalize.
10721         (gtk_viewport_get_hadjustment): 
10722         (gtk_viewport_get_vadjustment): 
10723         (gtk_viewport_size_allocate): demand create h/v adjustment
10724         if required.
10725
10726         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10727         gtk_widget_real_destroy () functionality.
10728         (gtk_widget_real_destroy): reinitialize with a new style, instead
10729         of setting widget->style to NULL.
10730
10731 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10732
10733         * gtk/gtkcalendar.c:
10734         * gtk/gtkbutton.c: ported _get_type() implementation over to
10735         GType, either to preserve memchunks allocation facilities,
10736         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10737
10738         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10739         over. prepare for ::destroy to be emitted multiple times.
10740         removed reference tracer magic. chain into GObjectClass.shutdown()
10741         to emit ::destroy signal.
10742
10743         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10744         fundamental.
10745
10746         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10747         cludge.
10748
10749         * gtk/gtksocket.c:
10750         * gtk/gtkplug.c:
10751         * gtk/gtklayout.c:
10752         * gtk/gtklabel.c:
10753         * gtk/gtkargcollector.c:
10754         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10755         not being a fundamental anymore, and to work with the new
10756         type system (nuked fundamental type varargs clutter).
10757
10758         * gtk/*.c: install finalize handlers in the GObjectClass
10759         part of the class structure.
10760         changed direct GTK_OBJECT()->klass accesses to
10761         GTK_*_GET_CLASS().
10762         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10763
10764         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10765         GType. made most of the GTK_*() type macros and Gtk* typedefs
10766         simple wrappers around macros and types provided by GType.
10767         most notably, a significant portion of the old API vanished:
10768         GTK_TYPE_MAKE(),
10769         GTK_TYPE_SEQNO(),
10770         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10771         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10772         GTK_TYPE_ARGS,
10773         GTK_TYPE_CALLBACK,
10774         GTK_TYPE_C_CALLBACK,
10775         GTK_TYPE_FOREIGN,
10776         GtkTypeQuery,
10777         gtk_type_query(),
10778         gtk_type_set_varargs_type(),
10779         gtk_type_get_varargs_type(),
10780         gtk_type_check_object_cast(),
10781         gtk_type_check_class_cast(),
10782         gtk_type_describe_tree(),
10783         gtk_type_describe_heritage(),
10784         gtk_type_free(),
10785         gtk_type_children_types(),
10786         gtk_type_set_chunk_alloc(),
10787         gtk_type_register_enum(),
10788         gtk_type_register_flags(),
10789         gtk_type_parent_class().
10790         replacements, where available are described in ../docs/Changes-1.4.txt.
10791         implemented compatibility functions for the remaining API.
10792
10793         * configure.in: depend on glib 1.3.1, use gobject module.
10794
10795 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10796
10797         * TODO.xml: Various updates to current status.
10798
10799 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10800
10801         * gtk.m4: Print out version when test succeeds.
10802
10803 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10804
10805         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10806         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10807         
10808         (Original triangle color selector from Simon Budig
10809         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10810         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10811         Santiago <mrcooger@cyberverse.com>)
10812
10813         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10814         out into a separate widget.
10815
10816         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10817         and opacity controls.
10818
10819 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10820
10821         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10822         snuck in prematurely.
10823
10824 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10825
10826         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10827         had deleted a ! operator by mistake, which caused
10828         GDK_SELECTION_CLEAR events never to be generated, which caused
10829         only the first copy to the clipboard from an gtkeditable to
10830         actually cause a copy to the Windows clipboard.
10831
10832 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10833
10834         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10835         compilation, too. Current mingw gcc distributions include the
10836         necessary headers. Also the necessary IIDs are now in mingw
10837         headers/libraries, and own definitions unnecessary.
10838
10839         More hacking on OLE2 DND, still doesn't work though, and thus
10840         ifdeffed out.
10841
10842         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10843         here, too.
10844
10845 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10846
10847         * gdk/nanox/*: nano-X port work in progress.
10848         * gdk/simple.c: simple test for Gdk.
10849         * README.nanox: notes about the port: read this first!
10850         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10851         with nano-X.
10852
10853 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10854
10855         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10856         gdk_window_clear() into common code, implement in terms of
10857         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10858         not redirected to the backing rectangle.
10859
10860 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10861
10862         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10863         EXTRA_DIST. It does not work well when the file that
10864         everything depends on is not in the tarball.
10865
10866 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10867
10868         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10869         with recursion where process_updates() is called from
10870         an expose handler. (GtkTextView is highly broken in
10871         doing this, but it should work, so it is a nice test
10872         case.)
10873
10874 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10875
10876         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10877         handle the case where updates are queued during processing of
10878         updates.
10879
10880 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10881
10882         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
10883         window is on gdk_display - use that instead of segfaulting.
10884
10885 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
10886
10887         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
10888         broken and require an empty arg, give it to them.
10889
10890 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
10891
10892         * gtk/gtklabel.h: indentation fixes.
10893
10894 2000-05-02  Tor Lillqvist  <tml@iki.fi>
10895
10896         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
10897         draw too narrow or too low arcs, they seem to fail, at least with
10898         some display drivers.
10899
10900         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
10901
10902         Large changes to the Win32 backend, partially made necessary by
10903         the changes to the backend-independent internal
10904         structures. Attempts to implement similar backing store stuff as
10905         on X11. The current (CVS) version of the Win32 backend is *not* as
10906         stable as it was before the no-flicker branch was merged. A
10907         zipfile with that version is available from
10908         http://www.gimp.org/win32/. That should be use by "production"
10909         code until this CVS version is usable. (But note, the Win32
10910         backend has never been claimed to be "production quality".)
10911
10912         * README.win32: Add the above comment about versions.
10913
10914         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
10915
10916         * gdk/gdk.def: Update.
10917
10918         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
10919         presumably be replaced by some more better mechanism as 1.4 gets
10920         closer to release shape.
10921
10922         * gdk/makefile.{cygwin,msc}: Update.
10923
10924         * gdk/win32/*.c: Correct inclusions of the backend-specific and
10925         internal headers. Change code according to changes in these. Use
10926         gdk_drawable_*, not gdk_window_* where necessary.
10927
10928         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
10929         our old DND.
10930
10931         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
10932         to interpret single characters as UTF-8. Thanks to Hans Breuer.
10933         Use correct function name in warning messages.
10934
10935         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
10936         GSourceFuncs gdk_event_prepare and gdk_event_check.
10937         (gdk_event_get_graphics_expose): Do implement, use
10938         PeekMessage. Thanks to Hans Breuer.
10939         (event_mask_string): Debugging function to print an GdkEventMask.
10940         (gdk_pointer_grab): Use it.
10941
10942         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
10943         (old) book I used claimed was Hangul actually is CJK Unified
10944         Ideographs Extension A. Also, Hangul Syllables were missing.
10945         Improve logging.
10946
10947         * gdk/win32/gdkgc-win32.c: Largish changes.
10948
10949         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
10950         g_win32_getlocale() from GLib, and not setlocale() to get current
10951         locale name.
10952
10953         * gdk/win32/gdkprivate-win32.h
10954         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
10955         gdkwin32.h, similarily as in the X11 backend.
10956
10957         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
10958         assignment was used instead of equals in if test. Thanks to Hans
10959         Breuer.
10960
10961         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
10962         the X11 version.
10963
10964         * gdk/win32/makefile.{cygwin,msc}
10965         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
10966         path to the Win32 headers that works also with the mingw compiler.
10967
10968         * gtk/gtkstyle.c: Include <string.h>.
10969
10970 2000-04-26  Havoc Pennington  <hp@redhat.com>
10971
10972         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
10973         replacing the broken gtk_label_get ()
10974
10975 2000-04-15  Havoc Pennington  <hp@pobox.com>
10976
10977         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
10978         this keeps scanner scripts from getting confused.
10979
10980         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
10981         data, rather than void
10982
10983 2000-04-15  Tor Lillqvist  <tml@iki.fi>
10984
10985         * gtk/gtkclist.c (gtk_clist_motion)
10986         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
10987         with is_hint FALSE, get x and y from the event. They used to be
10988         used uninitialised. The Win32 backend never sends motion events
10989         marked as hints. This for instance fixes the annoying file and
10990         font selector behaviour in the Win32 version.
10991
10992 2000-04-14  Tor Lillqvist  <tml@iki.fi>
10993
10994         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
10995         gtk_private_n_signals variables, they are used by some software,
10996         sigh.
10997
10998         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
10999         installation directory from the Registry, where the installer
11000         should have put it.
11001
11002 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11003
11004         * gdk/x11/Makefile.am: Fix problem with installation directory for
11005         gdkx.h
11006
11007         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11008         <mrcooger@cyberverse.com> so that when selecting menus with the
11009         mouse, the first item will not be selected, but when selecting
11010         with an accelerator, or navigating left-right on a menubar with
11011         the menus popped up, the first item will be selected.
11012
11013 2000-04-05  Dan Damian  <dand@dnttm.ro>
11014
11015         * configure.in: Added "ro" to ALL_LINGUAS.
11016
11017 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11018
11019         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11020         indentation.
11021
11022         * Makefile.am (EXTRA_DIST): Fix typo.
11023
11024         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11025         to catch gdkconfig.h
11026
11027         * gtk/gtkitemfactory.c: Added FIXME.
11028
11029 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11030
11031         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11032         s/return_if_fail/return_val_if_fail/g and add a return value.
11033
11034 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11035
11036         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11037         merge slipup.
11038
11039         * gdk/gdkinput.h: Fix missing line from merge.
11040
11041 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11042
11043         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11044         instead of gdkprivate.h.
11045
11046 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11047
11048         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11049         parent class to correctly be GtkDialogClass.
11050
11051 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11052
11053         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11054         toplevel windows and their immediate children by their parents,
11055         since the size of toplevel windows is out of our immediate
11056         control and we don't get any real benefit from trying to track
11057         this size for clipping.
11058
11059         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11060         for input_only windows.
11061
11062         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11063         to fix some hacks and make sure that we don't try to set the
11064         background of input only windows.
11065
11066 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11067
11068         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11069         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11070         stuff that we've traditionally exposed.
11071
11072         * gdk/**.c: Use gdkinternals.h where appropriate.
11073
11074         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11075         not include gdkprivate-x11.h, move all stuff of conceivable public
11076         interest into gdkx.h; keep all really private stuff in
11077         uninstalled header gdkprivate-x11.h.
11078
11079         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11080         image->image_put on windows through a new function _gdk_window_draw_image()
11081         to allow us to do backing store for images. (Sort of ugly)
11082
11083         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11084         contexts locally so that we can offset them properly when drawing 
11085         onto backing pixmaps.
11086
11087         * gdk/gdkinput.h: Reindented
11088
11089         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11090         pixmap or color for the window, so we can properly initialize
11091         our double-buffer pixmaps, and also so that we temporarily set
11092         a background of None while scrolling.
11093
11094         * gdk/gdkregion.h: Revise region boolean operators to have an
11095         interface that is actually convenient - switch from creating new
11096         regions on every op, to "methods" that modify existing regions
11097         (A = A OP B). 3 argument forms which allow dest == src, would also
11098         be possible, but the current interfaces seem to map nicely
11099         onto what needs to be done. (There is quite a lot of region
11100         code in GDK now.)
11101
11102         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11103         operator.
11104
11105         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11106         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11107         to 32 bit coordinates, modify it to be mostly GTK+ style
11108         and to have interfaces that match gdkregion.h.
11109
11110         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11111         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11112         create a backing pixmap and redirect all drawing to
11113         that backing pixmap until a matching gdk_window_end_paint().
11114
11115         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11116         Create a special drawable class for GtkWindow's that 
11117         redirects the drawing to the backing pixmap as necessary
11118         and then calls the real operations in _gdk_windowing_window_class.
11119
11120         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11121         Store invalid region for each window. Generate expose events for invalid
11122         region in an idle. This replaces both the expose compression
11123         and the redrawing queuing in GTK+. It is both more efficient and
11124         simpler than either one individually and far more so then the
11125         combination.
11126
11127         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11128         Emulate 32 bit coordinates for windows with 16 bit coordinates
11129         by offsetting drawing, guffaw scrolling techniques and
11130         mapping/unmapping child windows as necessary.
11131
11132         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11133         where, when invalid regions are processed, the region is stored,
11134         and if expose events come in that are detectably duplicate
11135         the processed exposes (by comparison of event serial numbers),
11136         the stored region is subtracted out of those exposes.
11137
11138         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11139         regions newly exposed when scrolling or resizing windows.
11140         This, combined with forcing processesing of queued invalidated
11141         regions, gives nice flicker-free scrolling.
11142
11143         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11144         invalidated regions after every scroll.
11145
11146         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11147         emulation in GDK. Its, for all practical purposes just a
11148         GtkViewport/GtkFixed hybrid now.
11149
11150         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11151         (16-bit) structures as necessary instead of just casting.
11152
11153         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11154         in terms of the structures from gdkregion-generic.c, using appropriate
11155         offsets from GDK to X11 coordinates. Cache clip mask and
11156         origin and ts origin locally and only flush to the server
11157         when drawing, to avoid constantly setting and resetting these
11158         values when offsetting GC's for scrolling and backing pixmaps.
11159
11160         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11161
11162         * gtk/gtkcontainer.c: Call process_all_updates at end
11163         of resizing to reduce flicker. (Avoids having redraw
11164         lag arbitrarily behind resize under some circumstances)
11165
11166         * gtk/gtkentry.c: Remove old backing store code, and simply take
11167         advantage of the new backing store capabilities of GDK.
11168
11169         * gtk/gtkmain.c: Simple implementation of widget backing
11170         store - simply push a paint while handling each expose.
11171         (Should really be configurable widget for widget.)
11172         
11173         * gtk/gtkwidget.c: Remove all the old complicated redraw
11174         code, and simply invalidate the GDK windows from
11175         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11176         debugged complexity ... gone to the winds.)
11177
11178         Remove all the code for suppressing expose events while
11179         resizes are pending; this isn't needed since the invalid
11180         areas won't be processed until after the resizes are
11181         processed, since they are in a lower priority idle.
11182
11183 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11184
11185         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11186         and height of dest rectangle for non-intersecting rectangles.
11187
11188 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11189
11190         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11191         for GdkRectangle.
11192
11193 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11194
11195         * gdk/gdk{events,image,private,types,window}.h
11196          gdk/x11/gdkinputprivate.h: Change all coordinates
11197          from int16 to int. Also, Change width and height from
11198          unsigned to signed to avoid all the stupid C 
11199          signedness bugs.
11200
11201 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11202
11203         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11204         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11205         Add some more detailed checking.
11206
11207         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11208         New function to retrieve the depth of a drawable.
11209
11210         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11211         field, reorder fields to save memory. 
11212
11213 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11214
11215         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11216         of the background image instead of scaling the background down to
11217         a line.
11218
11219         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11220         which temporarily set slider to wrong size.
11221
11222         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11223         queue_clear().
11224
11225 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11226
11227 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11228
11229         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11230
11231 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11232
11233         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11234         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11235
11236         * gdk/win32/gdkfont-win32.c
11237         * gdk/win32/gdkproperty-win32.c
11238         * gdk/win32/gdkselection-win32.c
11239         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11240         now declared such.
11241
11242 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11243
11244         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11245
11246 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11247
11248         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11249         is called without trapping X errors.
11250
11251 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11252
11253         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11254         way into the fontset lists.
11255
11256 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11257
11258         * gtk/gtkthemes.h: add extern "C" scope.
11259
11260 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11261
11262         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11263         to make appends to the list constant. (gtk-guy-990901-0.patch)
11264
11265 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11266
11267         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11268         for the typename hash table.
11269
11270 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11271
11272         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11273         to make sure we never divide by zero. 
11274         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11275
11276 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11277
11278         * gtk/gtkfontsel.c: Apply patch from
11279         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11280         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11281
11282         Also, some cleanups in atom handling.
11283
11284 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11285
11286         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11287         not GtkWidget.
11288
11289 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11290
11291         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11292         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11293         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11294         more guint wrap-around bugs before going to bed.
11295
11296 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11297
11298         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11299         guint wrap arounds in allocation.width.
11300
11301         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11302         process untill we fit the allocation given.
11303
11304 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11305
11306         * gtk/gtkwidget.c:
11307         (gtk_widget_unrealize): guard widget access with ref/unref
11308         around signal emission.
11309         (gtk_widget_hide): same here, but also check its destroyed
11310         state before queueing a resize.
11311
11312 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11313
11314         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11315         of gtk_default_insensitive_bg as insensitive base color.
11316
11317         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11318         to the widget's state.
11319         (gtk_text_realize): same here.
11320         (gtk_text_state_changed): same here.
11321         (draw_bg_rect): compare background color against base[] from
11322         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11323
11324 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11325
11326         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11327         grabs are active, unless a delete event is send to the toplevel
11328         of the currently grab holding widget.
11329
11330 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11331
11332         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11333         debugging g_print's.
11334
11335 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11336
11337         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11338         ever make the scrolled-window requisition ever depend on the 
11339         visibility state of the scrollbars for the AUTOMATIC policy. 
11340         This breaks the GTK+ requisition model, and causes loops.
11341
11342 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11343
11344         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11345         the default font to avoid problems with XFree86-4.0 where the
11346         default charset is iso10646-1, not iso8859-1.
11347
11348 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11349
11350         * acinclude.m4
11351         * config.guess
11352         * config.sub
11353         * ltconfig
11354         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11355
11356         * gtk/Makefile.am: minor cosmetic consistency tweak
11357
11358 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11359
11360         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11361         the activate_time to 0, so that we handle a quick
11362         press/release press/release properly and don't suppress
11363         the second release. (Red Hat bug #7545)
11364
11365 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11366
11367         * gtk/gtkctree.c (row_delete):
11368         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11369         bugs with destruction notifier, *always* update internal
11370         structures *before* calling user code.
11371
11372 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11373
11374         A few more fixes for bug #5487, #2051, #2677.
11375         * gtk/gtkclist.c : 
11376         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11377         not GDK_BUTTON_PRESS.
11378         (resync_selection): resync only if selection_mode is
11379         GTK_SELECTION_EXTENDED
11380         * gtk/gtkctree.c (resync_selection): same here
11381
11382 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11383
11384         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11385         gdk_drag_get_selection() and gtk_menu_detach().
11386
11387         [ From Jeroen Ruigrok/Asmodai ]
11388
11389 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11390
11391         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11392         page->tab_label can be NULL.
11393
11394 2000-01-25  Havoc Pennington  <hp@pobox.com>
11395         
11396         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11397         arg is boolean
11398
11399         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11400
11401         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11402
11403         * gdk/gdkproperty.c (gdk_property_get): return boolean
11404
11405         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11406
11407         * gdk/gdkim.c (gdk_im_ready): return boolean
11408
11409         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11410
11411         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11412         glib clash, should fix glib)
11413
11414         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11415         (gdk_get_show_events): return gboolean, and canonicalize 
11416         to TRUE/FALSE
11417
11418         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11419         colormap is private
11420         (gdk_colors_alloc): gboolean whether to be contiguous
11421         (gdk_color_equal): return gboolean since we are a predicate
11422         and not a qsort() (this looks semi-wrong due to glib breakage,
11423         IMO glib should be fixed)
11424         
11425         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11426         (gdk_get_use_xshm): return gboolean
11427         (gdk_pointer_is_grabbed): return gboolean
11428
11429         * gdk/gdk.h: Change prototypes to match all the above changes,
11430         and re-run egtk-format-protos as required.
11431
11432 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11433
11434         * gtk/gtkctree.c (resync_selection): 
11435         * gtk/gtkclist.c (resync_selection):
11436
11437         Return immediately if clist->drag_pos < 0. This is a workaround
11438         for the corrupt state that the clist gets into when a
11439         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11440
11441         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11442         
11443         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11444         variable from recent commit.
11445
11446 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11447
11448         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11449
11450 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11451
11452         * gtk/Makefile.am: prefix all autogenerated source that get build in
11453         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11454         in builddir. since we subsequently cd into srcdir for autogeneration,
11455         the paths have to be stripped from the target file names, thusly we
11456         use $(@F) as target names now.
11457         put a comment about configure.in's --disable-rebuilds option,
11458         which can be used for non-writable source directories, for development
11459         setups though, srcdir has to be *writable*.
11460
11461 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11462
11463         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11464           Finish the job of allowing event to be NULL.
11465           (Fixes bug #4283, reported by Chris Blizzard)
11466
11467         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11468           things so that the cursor appears on screen, properly
11469           take into account INNER_BORDER.
11470           (Fixes bug #4754, reported by Antonio Campos)
11471
11472 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11473
11474         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11475           show the tab_label unless it itself is visible.
11476
11477           gtk/gtknotebook.c (gtk_notebook_size_request):
11478           Do a better job of making sure that the visibility
11479           of the tab label corresponds to whether it should
11480           be mapped or not.
11481
11482 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11483
11484         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11485           Use the requisition, not the allocation, since the
11486           allocation has not necessarily been computed yet.
11487           (Pointed out by Eugene Osintsev)
11488
11489 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11490
11491         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11492           style/base[GTK_STATE_INSENSITIVE] both to
11493           gtk_default_insensitive_bg!
11494           (Bug #2187, reported by Jonathan Blandford)
11495
11496         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11497           Add Alt_L, Alt_R to list of invalid accelerators.
11498           (Bug #3736, reported by Vlad Harchev)
11499
11500 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11501
11502         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11503         bugs which occured after an attempt to open 
11504         invalid home directory left cmpl_state->reference_dir == NULL.
11505
11506          - completion on files in home directory didn't work
11507          - completion on an empty string caused  segfault
11508
11509          (Bug #3678, reported by Steve Ratcliffe)
11510
11511         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11512         cut and paste error that was causing scales to
11513         be incorrectly positioned.
11514         (Bug #2956,
11515          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11516
11517 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11518
11519         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11520         when checking for dcgettext, if we've found we needed
11521         it for dgettext.
11522 +
11523 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11524
11525         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11526         queue_clear on NO_WINDOW widgets during a reparent,
11527         since at that point the window and widget heirarchies
11528         are out of sync. This stops crashing in some cases
11529         (the scrolled window reparent test, for instance), and
11530         _probably_ won't cause drawing errors.
11531
11532         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11533         test do what it was supposed to do and be robust against
11534         window closings, etc. (Bug #2443)
11535
11536 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11537
11538         * gtk/gtkentry.c: Fix return values on mouse events.
11539         (Bug #2686, Sky <seb_sky@yahoo.com>)
11540
11541         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11542         (pointed out by George Lebl)
11543
11544         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11545         (From Ettore Perazzoli  <ettore@helixcode.com>)
11546  
11547 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11548
11549         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11550         clicks between rows or outside calender area correctly.
11551         (Patch from Damon Chaplin)
11552
11553         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11554         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11555           Call destroy function when overwriting existing data. 
11556           (Pointed out by Damon Chaplin)
11557
11558 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11559
11560         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11561           which was causing problems on various systems with Xmu.
11562           This hasn't been needed for a very long time.
11563           (Fixes #1185 3167)
11564
11565 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11566
11567         * gdk/gdki18n.h: Include <ctype.h> when defining
11568           gdk_isw* in terms of is* as a fallback.
11569           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11570
11571 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11572
11573         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11574           realize the widget when it is size allocated!
11575           (old, old bug)
11576
11577         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11578           Removed unused call to gdk_window_get_size() that
11579           showed up when the above was fixed.
11580
11581 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11582
11583         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11584           fix up widget->window when the widget is a
11585           NO_WINDOW container widget.
11586
11587 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11588
11589         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11590           to account for the fact that feof() does _not_ 
11591           return TRUE on errors, and thus avoid infinite loops
11592           when trying to use gdk_pixmap_create_from_xpm()
11593           on unreadable values.
11594
11595 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11596
11597         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11598
11599 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11600
11601         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11602           gdk_gc_set_dashes to take gint8 instead of gchar to
11603           make it clearer that it is _not_ a NULL terminated string.
11604
11605         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11606           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11607           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11608           arguments.
11609
11610 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11611
11612         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11613         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11614         background size relative to our allocation, guard against small
11615         allocations, we may have not yet been size allocated.
11616
11617 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11618
11619         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11620         not just version == 3. We implement all 3 + most of 4 - 
11621         (we don't support matching text/plain;charset=iso-8859-1
11622         to a dest that expects text/plain). We'll still advertise
11623         3 to be safe, but any client implementing version >= 3
11624         must interoperate with 3.
11625         
11626 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11627
11628         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11629         background and gc members, add a warning in gtk_tooltips_set_color()
11630         indicating that this function is deprecated.
11631
11632 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11633
11634         * docs/gtkfaq.sgml: FAQ Update:
11635           - Minor cleanups (Emmanuel, me)
11636           - New questions:
11637                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11638                 How can I retrieve the text from a GtkMenuItem? (timj)
11639                 How do I validate/limit/filter the input to a GtkEntry? (me)
11640                 Memory does not seem to be released when I free the list
11641                         nodes I've allocated (timj)
11642
11643 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11644
11645         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11646         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11647         for which it is no use to call GetLastError onWin9x.
11648         (gdk_other_api_failed) New function, for general error
11649         reporting without calling GetLastError.
11650         (gdk_win32_api_failed) OTOH, this function always calls
11651         GetLastError. (gdk_win32_last_error_string) Remove this function,
11652         GLib has the equivalent now.
11653
11654         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11655         call them with function name, file name and line number in the
11656         arguments.
11657
11658         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11659         functions.
11660         
11661         * gtk/gtk.def: Add some missing entry points.
11662
11663         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11664         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11665         
11666         Fixes by Hans Breuer:
11667
11668         * gdk/makefile.msc: Update for debugging.
11669
11670         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11671         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11672         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11673         in the dash_list.
11674
11675         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11676         the x11 backend.
11677
11678         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11679
11680         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11681
11682 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11683
11684         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
11685         just pixel value of background colour.
11686
11687         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
11688         containing code snippet previously duplicated in a couple of
11689         places.
11690         
11691         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
11692         gdk_colormap_color.
11693
11694         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
11695         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
11696         events for autorepeated Shift, Control and Alt keys. Use
11697         gdk_colormap_color.
11698
11699         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
11700         pointer is inside the window the cursor of which we are setting,
11701         call SetCursor immediately.
11702
11703         * gdk/win32/makefile.cygwin
11704         * gtk/makefile.cygwin: If we don't have the build number stamp
11705         file, use zero.
11706
11707         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11708         gtk_paned_set_gutter_size as empty.
11709
11710         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11711         
11712 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11713
11714         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11715           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11716           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11717           docs/gtk_tut.sgml docs/gtk.texi TODO:
11718
11719           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11720
11721 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11722
11723         * gtk/gtkcalendar.c: Implement num_marked_dates,
11724           and don't emit mutiple day_selected signals on
11725           month_prev.
11726
11727 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11728
11729         * docs/make-todo (lineno): let title and logo be configurable so
11730         that GNOME can use this script too.
11731
11732         * TODO.xml: added logourl and a title
11733
11734 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11735
11736         * TODO.xml: Added some UI items, and an explanatory
11737         comment at the top of the file.
11738
11739 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11740
11741         * TODO.xml: some updates, added abunch of new entries.
11742         a note for those fiddeling with this file, when done
11743         with it, invoke:
11744         $ ./docs/make-todo TODO.xml >/dev/null
11745         and correct output errors before comitting changes.
11746
11747 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11748
11749         * TODO.xml: Added XML-structured TODO file.
11750         * docs/make-todo: python script to turn TODO.xml into
11751           pretty XML output. 
11752
11753 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11754
11755         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11756         the function to let it draw the seven dots, instead of the old,
11757         much maligned, method.
11758         (draw_dot): New function to draw a dot.
11759
11760         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11761         to draw the handle inside the border width as opposed to outside.
11762         Use paint function instead of gdk_draw_point.
11763
11764         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11765         to draw the handle inside the border width as opposed to outside.
11766         Use paint function instead of gdk_draw_point.
11767
11768         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11769         Change indenting to be more GTK like.
11770
11771 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11772
11773         * docs/gtk_tut.sgml: New section on GtkCalendar
11774         * examples/calendar: Update example code
11775
11776 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11777
11778         * docs/gtkfaq.sgml: FAQ Update
11779
11780 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11781
11782         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11783         to prevent the scroll event to be propagated upwards.
11784
11785 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11786
11787         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11788         OwnerGrabButtonMask from button entries for
11789         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11790
11791         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11792         to the event mask (which will result in button/press release
11793         being added to the event mask on Unix) so scrolling works
11794         for layouts in scroll windows.
11795
11796         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11797
11798         Patch from Anders Carlsson  <andersca@gnu.org> to add
11799         a scroll event.
11800
11801         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11802         scrolling to the "Test Scrolling" part of testgtk.
11803  
11804         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11805  
11806         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11807         it against GDK_SCROLL.
11808  
11809         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11810         way of mouse wheel scrolling.
11811  
11812         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11813  
11814         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11815  
11816         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11817  
11818         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11819         gdk_event_mask_table.
11820  
11821         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11822         GdkEventScroll handler.
11823  
11824         * gdk/gdkevents.h: Added GdkEventScroll structure.
11825  
11826 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11827
11828         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11829         and Anders Carlsson to change the Paned widgets so that they
11830         can be dragged from anywhere along the length. Also change
11831         the way that this is drawn to make this apparent.
11832
11833         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11834         from George Lebl to check that option_menu->menu is present
11835         before getting history.
11836
11837 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11838
11839         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11840         before the assertion for non-NULL segment list.
11841
11842         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11843         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11844         machine, but it might be display driver dependent. Sigh, so make
11845         sure the stipple is that size. Does Windows suck or what?
11846
11847         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11848         places.
11849
11850 2000-02-13  Havoc Pennington  <hp@pobox.com>
11851
11852         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11853         refcount to 1
11854         (gdk_cursor_new): init refcount to 1
11855
11856         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11857
11858 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11859
11860         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11861         so that we don't have to do unnecessary settings to the HDC.
11862
11863         * gdk/win32/gdkdrawable-win32.c
11864         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11865         gdk_gc_predraw.
11866
11867         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11868         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11869         GDI paths, call WidenPath to get the outline of the stroken path,
11870         and then fill the outline (with the brush that was built from the
11871         stipple).
11872
11873         * gdk/win32/gdkgc-win32.c: Factor out common code from
11874         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11875         gdk_win32_gc_values_to_win32values. Use correct colour for
11876         SetBkColor() (Until now the code actually used a random colour in
11877         the call to SetBkColor()... but that didn't show up as not many
11878         GDI APIs use the background colour. Pattern (opaque stippled)
11879         brushes do.)
11880
11881         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
11882         gdk_win32_api_failed): New functions for error logging.
11883
11884         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
11885         WIN32_API_FAILED to call them, passing function or file name and
11886         line number.
11887
11888         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
11889
11890         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
11891         GdkColor for foreground and background in GdkGCWin32Data.
11892
11893         * gdk/makefile.cygwin: Link in the resource object separately.
11894
11895         * gdk/win32/rc/gdk.rc
11896         * gtk/gtk.rc (New file)
11897         * gdk/win32/makefile.cygwin
11898         * gtk/makefile.cygwin: Update build number in DLLs automatically,
11899         as in GLib.
11900
11901 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
11902
11903         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
11904         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
11905         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
11906         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
11907         parameters given and cursor->ref_count. coding style fixups.
11908
11909         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11910         not GtkWidget.
11911         
11912         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
11913         fix up widget macros and add _GET_CLASS() variant.
11914         
11915         * gtk/*.c: some GtkType fixups.
11916
11917 2000-02-09  Tor Lillqvist  <tml@iki.fi>
11918
11919         * gdk/win32/gdkproperty-win32.c
11920         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
11921         were reversed.
11922
11923 2000-02-04  Tor Lillqvist  <tml@iki.fi>
11924
11925         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
11926         g_filename_to_utf8 to convert the font names Windows gives us from
11927         whatever is the default codepage to UTF-8.
11928         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
11929         in the other direction.
11930
11931         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
11932         error in debugging output.
11933
11934 2000-02-02  Tor Lillqvist  <tml@iki.fi>
11935
11936         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
11937         and height parameters to gdk_window_clear_area(). Not minus one.
11938
11939 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
11940
11941         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
11942         checks if the widget passed to gtk_drag_get_data() was not the
11943         dest widget.
11944
11945 2000-02-01  Tor Lillqvist  <tml@iki.fi>
11946
11947         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
11948         g_filename_from_utf8 functions (which were added a moment ago to
11949         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
11950         size buffers.
11951
11952         gtk_file_selection_get_filename returns the filename in the C
11953         runtime encoding. It calls g_filename_from_utf8, but copies the
11954         returned string to a static buffer, which is returned. I think
11955         this is better than returning the result from g_filename_from_utf8
11956         directly, which would mean all apps that use it would have to free
11957         the return value. Or should this function care about this issue at
11958         all? Maybe a new function with clearly defined semantics.
11959
11960         * gtk/gtkfilesel.h: Add comment about
11961         gtk_file_selection_get_filename returning the filename in the C
11962         runtime's encoding.
11963
11964         * README.win32
11965         * gdk/gdk.def
11966         * gdk/makefile.{cygwin,msc}
11967         * gtk/gtk.def: Updates.
11968
11969         * gdk/gdkcursor-win32.c: Initialise refcount.
11970
11971 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
11972
11973         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
11974
11975 2000-01-30  Havoc Pennington  <hp@pobox.com>
11976
11977         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
11978         destroy
11979
11980         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
11981
11982         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
11983         implemented in platform-specific code
11984
11985         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
11986
11987         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
11988         underscore in front
11989
11990         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
11991         put an underscore in front
11992
11993         * gdk/gdkcursor.c: new file, implements
11994         gdk_cursor_ref/gdk_cursor_unref
11995
11996         * gdk/gdkcursor.h: Refcount GdkCursor
11997
11998         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
11999
12000 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12001
12002         * gdk/gdkwindow.h
12003         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12004
12005 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12006
12007         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12008         structures to properly inherit from GtkWidget not GtkBin.
12009
12010 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12011
12012         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12013         (bug #5178 - Peter Wainright)
12014         
12015         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12016         so that it will be installed.
12017         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12018
12019 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12020
12021         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12022         for the GtkStyleClass vtable const.
12023
12024         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12025         take a const string argument like GtkTranslateFunc. This will
12026         require changes in use code.
12027
12028 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12029
12030         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12031         semantics (to mimic the X11 backend, which just calls XClearArea)
12032         is to check for zero width (and height), and in that case use the
12033         window's width minus x (height minus y). This fixes for instance
12034         some redraw problems with gtkclist, which were easily noticeable
12035         in the gtk file selection widget.
12036
12037         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12038         windows.
12039
12040 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12041
12042         * configure.in
12043         * gdk/Makefile.am
12044         * gdk/x11/Makefile.am
12045         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12046         (bug #5177).
12047         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12048         out later.
12049
12050 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12051
12052         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12053         WM_MOVE for iconified or invisible windows. This fixes various
12054         problems when minimising windows. Thanks to Bernd Herd.
12055
12056 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12057
12058         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12059         backend's draw_lines method, not draw_points.
12060
12061 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12062
12063         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12064         before Owen's reorganisation: Don't have queued_events and
12065         queued_tail statics in this file, but use gdk_queued_events and
12066         gdk_queued_tail. This makes exposure event compression work again.
12067
12068         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12069         seem to be needed?
12070
12071 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12072
12073         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12074         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12075         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12076         doesn't do anything.
12077
12078         * gdk/gdk.def: Add gdk_xid_table_insert.
12079
12080         * gdk/win32/gdkprivate-win32.h
12081         * gdk/win32/gdkevents-win32.c
12082         * gdk/win32/gdkinput-win32.c
12083         
12084         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12085         extension_events field in the GdkWindowWin32Data struct. Use only
12086         the extension_events field in GdkWindowPrivate. Previously one was
12087         set, and the other one tested, which broke tablet
12088         functionality. Thanks to Keishi Suenaga for pointing this out.
12089
12090 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12091
12092         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12093         When handling a single character (text length == 1), don't handle
12094         it as if it was UTF-8.
12095
12096 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12097
12098         * Makefile.am: Distribute README.win32.
12099         
12100         * gdk/Makefile.am
12101         * gdk/win32/Makefile.am: Distribute Win32 files.
12102
12103         * gdk/makefile.msc: New file.
12104
12105         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12106         after label).
12107
12108         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12109         gdk_error_code as GDKVAR, as they are referred outside GDK.
12110
12111         * gdk/win32/makefile.msc: Update.
12112
12113         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12114         tweaks. Check only if at least one of those Unicode subrange bits
12115         we care for is set. If no code page bits are set, guess (wildly)
12116         based on the charset.
12117
12118         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12119
12120         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12121         non-NULL.
12122
12123         * gtk/gtkdnd.c
12124         * gtk/gtklayout.c
12125         * gtk/gtkplug.c
12126         * gtk/gtkselection.c
12127         * gtk/gtksocket.c
12128         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12129         appropriate. There must be a cleaner way to handle this?
12130
12131         * gtk/gtkrc.c: Must include windows.h on Win32.
12132
12133         * gtk/testgtk.c: No need to include gdkx.h.
12134
12135         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12136
12137 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12138
12139         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12140         the rbearing is set to the same as the width, but this should be
12141         fixed.
12142
12143 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12144
12145         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12146         function. If Windows doesn't tell us what Unicode subranges a font
12147         covers, guesstimate based on the codepages it covers. This will
12148         hopefully help those Windows versions or fonts that don't give us
12149         any useful Unicode subrange information with GetTextCharsetInfo.
12150         Call this function in gdk_font_load_internal.
12151
12152         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12153         minor changes.
12154
12155 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12156
12157         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12158         New function, long needed.
12159
12160 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12161
12162         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12163         only_if_exists argument of gdk_atom_intern to
12164         bool.
12165
12166 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12167
12168         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12169         Fix two copy&paste errors.
12170
12171         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12172         win32 has changed.
12173
12174         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12175         GdkWin32SingleFont struct.
12176
12177         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12178         subranges of loaded fonts. Clear font signature first, in case
12179         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12180         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12181
12182         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12183         Unoffset clip region.
12184
12185 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12186
12187         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12188         event->any.window before calling filter functions.
12189
12190 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12191
12192         * gtk/gtkgamma.h: Adapt cast macros to standard.
12193
12194 [ Merges from 1.2 ]
12195
12196 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12197
12198         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12199         If translation does not include a '/', use entire
12200         translation instead of crashing.
12201
12202 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12203
12204         * docs/gtk_tut.sgml:
12205         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12206
12207 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12208
12209         * gtk/gtkselection.c (gtk_target_list_remove): Use
12210         g_list_remove_link, not g_list_remove.
12211
12212         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12213         
12214 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12215
12216         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12217         statement upon unselection (how the heck did that slip in?).
12218
12219 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12220
12221         * gtk/gtktext.c (gtk_text_freeze): 
12222         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12223         in frozen state (and aparently crashes). patch provided by Anders
12224         Melchiorsen <and@kampsax.dtu.dk>.
12225
12226 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12227
12228         * fix insensitive default/focus widget activation,
12229         reported by Matt Goodall <mgg@isotek.co.uk>.
12230
12231         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12232         (gtk_window_activate_default):
12233         (gtk_window_activate_focus):
12234         return handled=FALSE for actiavtion of insensitive default
12235         widgets. return handled=TRUE for activation of insensitive
12236         focus widgets. don't activate in either case.
12237
12238 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12239
12240         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12241         and $glib_cflags to match library order and in the
12242         theory that an old version of GLib is more likely to
12243         be in the include directory for X then vice-versa.
12244         (Bug #2776)
12245
12246 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12247
12248         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12249         to determine the locale for fontsets, not LC_MESSAGES;
12250         the user may want English messages with a handling
12251         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12252         will still be broken) (Bug #2891)
12253
12254 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12255
12256         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12257
12258 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12259
12260         * gtk/gtkrc.ko: Changed the Korean default fontset.
12261
12262 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12263
12264         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12265         where when scrolling to the left or top double exposes
12266         were done, causing major slowdowns.
12267
12268 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12269
12270         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12271         names to lowercase and alphanumeric, before looking
12272         them up.
12273
12274         * gtk/Makefile.am: Install codeset variant gtkrc files
12275         with normalized names.
12276
12277 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12278
12279         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12280         popup menus when the menu is already visible, but its parent
12281         is still hidden, (happens after tornoff window got hidden).
12282
12283 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12284
12285         * gtk/Makefile.am (install-data-local): Fix
12286         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12287         deleted, causing error messages on install.
12288
12289 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12290
12291         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12292         the handle as well, since we now sometimes ignore
12293         exposes on the handle while resizing.
12294
12295 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12296
12297         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12298         extra g_free introduced in one of the last one or two 
12299         commits.
12300
12301 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12302
12303         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12304         consistent, put each style that a gtkrc.* file creates
12305         in a unique namespace, remove old files before installing.
12306
12307 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12308
12309         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12310         gtk_rc_init is called multiple times. (Yes, people who
12311         do that have bugs in their code.)
12312
12313 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12314
12315         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12316         Remove it since it's generated by the Makefile anyway
12317
12318 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12319
12320         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12321         device->info.axes for core pointer.
12322
12323 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12324
12325         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12326         idle_id, to deal with obsolete, broken C libraries.
12327
12328 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12329
12330         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12331         allocation->x/y twice!
12332
12333         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12334         consistent with gtk_vscale_pos_trough().
12335
12336 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12337
12338         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12339         be queueing a resize on a toplevel container between
12340         the time we show it and when we map it. So, we need
12341         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12342         use GTK_WIDGET_DRAWABLE() for child windows.
12343
12344 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12345
12346         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12347         (fixes bug #2144)
12348
12349 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12350
12351         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12352         container DRAWABLE (instead of VISIBLE), so we don't queue
12353         resizes on non-toplevel containers.
12354
12355 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12356
12357         * gtk/gtkselection.[ch]: Make the data argument
12358         const guchar *.
12359
12360 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gtk/gtkwindow.c: Try to behave sensibly if 
12363         the focus widget is the window itself. (Should
12364         we allow this at all?)
12365
12366 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12367
12368         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12369         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12370         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12371         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12372         in prototypes and implementations consistent (Tomas Ogren).
12373
12374         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12375         before the widget is unparented (reported by damon).
12376
12377         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12378         since we provide unsigned data anyways.
12379
12380 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12381
12382         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12383         the call to gtk_tooltips_layout_text() until later.
12384
12385         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12386         Call gtk_widget_ensure_style() before using the style.
12387
12388 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12389
12390         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12391         for old widgets that don't propagate draws to all
12392         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12393
12394 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12395
12396         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12397         for a redraw but just the widget that requested the resize.
12398
12399 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12400
12401         * gtk/gtkcontainer.c: added new widget level method
12402         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12403         reallocate_redraws : 1 to reflect the setting, exported this through
12404         the argument system as a boolean ::reallocate_redraws.
12405
12406         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12407         on the widget because the allocation changes, do so as well for
12408         widget->parent if the parent has reallocate_redraws set to TRUE.
12409         with that containers requesting reallocation redraws get automatically
12410         redrawn if their children changed allocation (this unfortunately
12411         affects also other children that didn't change allocation, but we
12412         cannot work around that before 1.3).
12413
12414 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12415
12416         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12417         _and_ height are >0 (not _or_).
12418
12419         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12420         instead of gtk_container_queue_resize(), which is a core gtk internal
12421         function (must have been on crack when i queued that).
12422
12423         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12424         we can check more reliably if we want to discard expose events.
12425         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12426         flag.
12427         
12428         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12429         we simply trust these events. for deciding whether to discard exposes,
12430         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12431         
12432 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12433
12434         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12435         queues of areas that are completely off screen.
12436
12437         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12438         logic for handleboxes.
12439
12440         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12441         check on width/height.
12442
12443 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12444
12445         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12446         we are fine with using $@ the way we do (if we actually encounter
12447         brokeness with $@ in VPATH builds because of additional path prefixes,
12448         we need to use $(@F) actually).
12449
12450 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12451
12452         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12453         short lived bugs, that would allow language bindings to do surgeries
12454         to our guts.
12455
12456 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12457
12458         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12459         where comparison was being done against an uninitialized
12460         value causing intermittant results depending on
12461         compiler flags. Also make it clearer that we aren't
12462         ever initializing the child as 0x0 (though this will
12463         be caught in gtk_widget_size_allocate())
12464
12465 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12466
12467         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12468         gtk_window_unset_transient_for() call after we do checks
12469         involving the old transient parent.
12470         [ From Lance Capser <lmc@cyberhighway.net> ]
12471
12472 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12473
12474         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12475         an empty file.
12476
12477 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12478
12479         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12480         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12481
12482 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12483
12484         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12485         `$@' is valid only in the build dir, not after we've done 
12486         `cd $srcdir'.  Also use `test -f' instead of less portable
12487         `test -e'.
12488
12489 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12490
12491         * gtk/gtktext.c (correct_cache_insert): Rewrite
12492          for simplicity, and hopefully correctness.
12493          (Fixes bug #1322, which was a segfault when
12494           on some insertions with the properties around
12495           the insertion set up just wrong.)
12496
12497         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12498          a "changed" signal, clamp the new value to the adjustment
12499          bounds to avoid segfaulting if someone tries to change
12500          the adjustment to a bogus value. (Bug #1795)
12501
12502 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12503
12504         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12505         for children, for toplevel windows handle them
12506         like delete_event.
12507
12508         * gtk/gtkplug.c: Add an unrealize handler so that
12509         we unref plug->socket_window when we are done
12510         with it.
12511
12512 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12513
12514         * gtk/gtktext.c (clear_area): Fix stupid signedness
12515          problem that was causing background to sometimes
12516          be misaligned.
12517
12518 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12519
12520         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12521         
12522         * gtk/gtkmenu.c (gtk_menu_position): Make
12523          sure we never position menus with negative x, y,
12524          since gtk_widget_set_uposition() can't handle that.
12525
12526         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12527          Modify the positioning code a bit so that we always
12528          put the top-left corner onscreen. (This is for
12529          UI reasons, gtk_menu_position() now takes care of
12530          gtk_widet_set_uposition() brokeness.)
12531
12532 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12533
12534         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12535
12536 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12537
12538         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12539           RC style that is passed in. The lack of the ref
12540           before was a bug. If people worked around this
12541           bug, this will introduce a slight memory leak
12542           in their code. The code should typically look like:
12543
12544             rc_style = gtk_rc_style_new ();
12545             [...]
12546             gtk_widget_modify_style (widget, rc_style);
12547             gtk_rc_style_unref (rc_style);
12548
12549         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12550           the style if it was already set.
12551
12552         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12553           style if it was set before.
12554
12555 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12556
12557         * gtk/testgtk.c (main): Add a check to see if we
12558           are being run from the correct directory and
12559           to quit nicely if we are not.
12560
12561         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12562           static.
12563
12564 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12565
12566         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12567
12568         * gtk/gtkwindow.c:
12569         queue resizes unconditionally (gtk_widget_queue_resize will figure
12570         what to do if the window is not realized).
12571         (gtk_window_move_resize): only recenter the window
12572         for GTK_WIN_POS_CENTER_ALWAYS.
12573         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12574         the same way as GTK_WIN_POS_CENTER.
12575
12576 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12577
12578         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12579         with (!(info->last_flags & GDK_HINT_POS)) instead of
12580         (!info->last_flags & GDK_HINT_POS).
12581
12582         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12583         new_height unconditionally, because we use these values even if
12584         !default_size_changed && !hints_changed.
12585         comented the (default_size_changed || hints_changed) case with
12586         respect to resize rejects from the window manager.
12587
12588         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12589         in the zvt condition hack, since this includes the window hints, set
12590         the hints after the handling_resize case.
12591
12592         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12593         window is initially shown with to the geometry.
12594
12595 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12596
12597         * gtk/gtkwindow.c (gtk_window_move_resize):
12598         s/size_changed/default_size_changed/g so i know what's
12599         really going on (frying brain on smaller flame now).
12600
12601 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12602
12603         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12604         we have size_changed upon handling_resize. this is a gross
12605         workaround for the broken zvt widget and should be removed in
12606         1.3 again (search for FIXME).
12607         Owen provided an accurate comment for this:
12608
12609         /* We could be here for two reasons
12610          *  1) We coincidentally got a resize while handling
12611          *     another resize.
12612          *  2) Our computation of size_changed was completely
12613          *     screwed up, probably because one of our children
12614          *     is broken. It's probably a zvt widget.
12615          *
12616          * For 1), we could just go ahead and ask for the
12617          * new size right now, but doing that for 2)
12618          * might well be fighting the user (and can even
12619          * trigger a loop). Since we really don't want to
12620          * do that, we requeue a resize in hopes that
12621          * by the time it gets handled, the child has seen
12622          * the light and is willing to go along with the
12623          * new size. (this happens for the zvt widget, since
12624          * the size_allocate() above will have stored the
12625          * requisition corresponding to the new size in the
12626          * zvt widget)
12627          *
12628          * This doesn't buy us anything for 1), but it shouldn't
12629          * hurt us too badly, since it is what would have
12630          * happened if we had gotten the configure event before
12631          * the new size had been set.
12632          */
12633
12634 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gtk/gtkrc.c: deal properly with the fact that RC
12637           style lists may include rc styles more than once.
12638
12639         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12640           unused static function.
12641
12642         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12643           stack of directories of RC files currently being
12644           parsed and implicitely add them to pixmap path.
12645           
12646           This fixes a bug where the directory would get
12647           appended then overwritten by pixmap_path declarations.
12648
12649           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12650
12651         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12652           theme's exit function. (Patch from Peter Wainwright,
12653           bug #1454)
12654
12655         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12656           Add a destroy() handler to take care of removing
12657           group for menu item. (Fixes bug #1197)
12658
12659         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12660           in warning message.
12661
12662 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12663
12664         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12665         roundtrip to figure window's width and height, since we know that
12666         anyways from widget->allocation.
12667
12668 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12669
12670         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12671           the hints after we request the new size.
12672
12673 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12674
12675         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12676           GTK_WIDGET_REALIZED() assertion - we can compute the
12677           hints before we are realized.
12678
12679         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12680           hint changing so that we have a value of hints_changed
12681           when we decide whether to constrain the window size.
12682
12683         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
12684
12685         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
12686         change back to G_MAXINT.
12687
12688 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
12689
12690         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
12691         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
12692         contain uncluttered values.
12693         (gtk_window_compute_hints): simply assert that window is realized
12694         and that geometry_info is valid, since we rely on this anyways.
12695         (gtk_window_constrain_size): major cleanups to the code.
12696         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
12697         for the base size, instead of the minimums. use 32767 as max width
12698         and height (like in gtkwindow.c) instead of G_MAXINT.
12699
12700 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
12701
12702         * cleaned up the GtkContainer.need_resize flag handling mess, we
12703         only need to force resize requests when we were prematurely
12704         realized, or our widget tree was modified when we were temporarily
12705         hidden. handling these cases directly upon showing the window (i.e.
12706         while the GdkWindow is still unmapped) avoids the need to wait for
12707         a configure event response and therefore makes the GUI more snappier
12708         and avoids blank windows during the roundtrip.
12709
12710         * gtk/gtkwidget.c:
12711         (gtk_widget_hide): 
12712         (gtk_widget_show): don't queue resizes on toplevels, they know how
12713         to deal with matters.
12714
12715         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12716         flag directly for not visible resize containers and spare us unecessary
12717         signal emissions.
12718
12719         * gtk/gtkwindow.c:
12720         (gtk_window_realize): if we need to enforce premature size allocation,
12721         queue a container resize so we are correctly resized later on.
12722         (gtk_window_init):
12723         (gtk_window_size_request):
12724         don't freak around with the ->need_resize flag,
12725         gtk_container_queue_resize() will care about that.
12726         (gtk_window_show):
12727         handle initial resizing issues here, we can handle matters better in
12728         this place, especially since we know that our GdkWindow is still
12729         unmapped.
12730         (gtk_window_move_resize):
12731         don't care about ->need_resize at all.
12732         handle size changes properly that occoured while we waited for a
12733         configure event.
12734
12735 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12736
12737         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12738         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12739         Move the hint setting code from gtk_widget_set_uposition
12740         to here; set the hints so that we respect any previously
12741         set geometry hints.
12742
12743         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12744         change the window hints here or move the window here,
12745         let that happen in gtk_window_move_resize().
12746
12747 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12748
12749         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12750         to already queued resizes (and therefore redraws) on a widget, check
12751         its anchestry as well.
12752
12753         * gtk/gtkcontainer.c:
12754         (gtk_container_queue_resize): clear resize widgets for resize
12755         containers before aborting prematurely. this is especially important
12756         for toplevels which may need imemdiate processing or their resize
12757         handler to be queued.
12758         (gtk_container_dequeue_resize_handler): added new internal function for
12759         gtkwindow.c.
12760
12761         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12762         configure event, take possible changes in window position into account
12763         as well.
12764         if we request a new window size, queue up a resize handler that will
12765         last until the configure event response arrives.
12766         combined the ->need_resize case (initial show) with the general size
12767         (hints) changed case and added even more comments.
12768         if !auto_shrink, only revert to the old allocation if the new size
12769         is smaller than the current allocation.
12770
12771 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12772
12773         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12774                            gtk_window_set_geometry_hints
12775                            gtk_window_set_default_size):
12776         When hints are set, queue a resize so that the hints will
12777         be eventually reset on the toplevel.
12778
12779         * gtk/gtkwindow.c (gtk_window_show): Use
12780         gtk_window_compute_default_size(). Clear the need_resize flag
12781         on the initail map so that we don't unnecessarily trigger the
12782         resize code.
12783
12784         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12785         into separate functions. Compare the hints we are setting
12786         with what we set last time so that we can accurately
12787         tell when we need to reset the hints.
12788
12789         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12790         function to figure out the size from requisition
12791         and default_size.
12792
12793         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12794         from fvwm to constrain a size to the geometry hints.
12795
12796         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12797         to compare two sets of geometry hints.
12798
12799         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12800         from gtk_window_set_hints(), just compute the hints,
12801         don't set them.
12802
12803         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12804         code from gtk_window_move_resize() to separate function,
12805         rationalize a bit.
12806
12807 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12808
12809         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12810         structure into a new private structure.
12811
12812         * gtkrc.c: Split GtkRcStyle into public/private.
12813         In the private part, add a list of pointers to the
12814         RcStyle lists this RcStyle participates in.
12815
12816         * gtkrc.c: When a RcStyle is free, remove all
12817         lists referencing it from the 
12818         realized_style_ht hash, and free those lists.
12819         
12820         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12821         gtk_rc_init(), since that adds the default styles
12822         to the list of parsed RC files again.
12823
12824         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12825         
12826 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12827
12828         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12829         checks that ensure that a widget's allocation is at least 1 in width
12830         and height. (GNOME note: this doesn't affect old panel code anymore,
12831         because GtkSocket will request width and height of at least 1 since
12832         Fri Jul 23).
12833
12834         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12835         allocated yet (happens if the user realizes the window prematurely),
12836         size request and allocate it.
12837         (gtk_window_size_allocate): guard against guint underflows.
12838
12839 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12840
12841         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12842         in gtk_built_sources, so gtk.defs gets built prior to all other
12843         sources.
12844
12845 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12846
12847         * gtk/Makefile.am:
12848         invoke indent on gtkmarshal.*. 
12849         rewrote source generation rules, use COPYING as oldest source tag for
12850         a piggyback rule to generate all sources from (don't touch it ;).
12851         major cleanups, strip spaces on build rules for GNU Make.
12852
12853         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12854         source and target files from commandline arguments. don't invoke indent.
12855
12856 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12857
12858         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12859         notebook after switch to avoid drawing problems.
12860         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12861         
12862         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12863         show them instead. 
12864         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12865
12866 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12867
12868         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12869         notebook after switch to avoid drawing problems.
12870         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12871         
12872         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12873         show them instead. 
12874         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12875
12876 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12877
12878         * gtk/gtkwindow.c:
12879         we use window->need_resize from configure_event now, to indicate that
12880         the gtkwindow should keep its allocation (e.g. because the user resized
12881         the window through window manager handles). resize_count is now reliably
12882         used to figure whether we got the allocation we requested from the
12883         window manager.
12884         configure events get queued as resizes now, the real stuff (size
12885         computation and allocation) now only goes on in gtk_window_move_resize().
12886         GtkWindow's requisition now contains its *real* requisition (like all
12887         other widgets), *not* taking usize into account.
12888         geometry_info->last_{width|height} is now updated from set_hints() only
12889         so it always contains the last hints we set for the window manager.
12890         made some event handlers return TRUE instead of FALSE.
12891         the overall code should be much more straight forward now, and the
12892         significant code portions are accompanied by comments now.
12893         (gtk_window_set_hints):
12894         removed requisition argument and made it
12895         fetch the requisition through gtk_widget_get_child_requisition.
12896         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
12897         does that now.
12898         (gtk_window_show):
12899         ensure that the widget is realized before calling 
12900         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
12901         ensure that we got properly size requested and allocated before
12902         realization.
12903         (gtk_window_configure_event):
12904         ignore plain window moves, or reallocate the widget tree through the
12905         resize queue otherwise.
12906         (gtk_window_move_resize):
12907         mostly rewrote this function to figure window manager hints more
12908         reliably, coalesce window moves and resizes to reduce configure events
12909         and do actuall size allocations.
12910
12911 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12912
12913         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
12914         that have a resize pending, because a redraw is already queued for them.
12915
12916         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
12917         hack to clear resize_widgets.
12918
12919         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
12920         for resize containers prior to size allocation. (this is also a bit
12921         ugly, but avoids side effects for stopped emissions and is thus more
12922         reliable).
12923         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
12924
12925         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
12926         function from gtk_tooltips_expose, as we connect to ::expose_event
12927         *and* ::draw now.
12928
12929 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12930
12931         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
12932         checks.
12933         (gtk_target_list_unref): Likewise.
12934
12935         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
12936
12937 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
12938
12939         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
12940         guard against division by zero. (Fixes bug #1339)
12941
12942 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
12943
12944         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
12945         Prevent the trivial leak of information of allowing
12946         word motion when the entry is not visible.
12947
12948 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
12949
12950         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
12951         modality to error dialog as well as confirmation dialogs.
12952         (Bug #1803, reported by Rosanna Wing Sze Yuen)
12953
12954 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12955
12956         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
12957         tree->view_lines.
12958         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
12959
12960         * gtk/Makefile.am (install-data-local): Solaris apparently
12961         has various troubles with ln -f; use rm first instead.
12962         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
12963
12964 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
12965
12966         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
12967         use `cp' followed by `rm' (the `rm' was already there).
12968
12969 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12970         
12971         * configure.in: Fix autoconf warnings about cross compilation by
12972         trying to provide sane defaults for AC_TRY_RUN.
12973         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
12974         put them into $(srcdir) when generated. Also add a dependency of
12975         gtksignal.h on gtkmarshal.h for -j builds. 
12976         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
12977
12978 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
12979
12980         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
12981         GDK_THREADS_{LEAVE,ENTER} pair.
12982         (From Paul Fisher <pnfisher@redhat.com>)
12983
12984 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
12985
12986         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
12987         width and height are always >0 (owen).
12988
12989 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
12990
12991         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
12992         change that assured that a widget's allocated with and height are
12993         always >1, since this breaks *buggy* panel code. unfortunately this
12994         back-breaks the gimp's color selector.
12995
12996         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
12997         allocation is always >0 in width and height, before sending the
12998         configure event; this is a *gross* hack to get the gimp back to work.
12999         
13000         * marked both cases with TODO-1.3
13001
13002 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13003
13004         * gtk/gtktext.c: Don't display wrap indicators when
13005         text is not editable and word wrap is on.
13006
13007 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13008
13009         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13010         option menus here as they are not derived from menu shell, assure that
13011         the option menu has a menu we can add items to.
13012
13013 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13014
13015         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13016         width/height to (gint) before calculations and check against < 0 to
13017         avoid guint wraparounds.
13018
13019 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13020
13021         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13022         width and height is never zero. sanity check both dimensions against
13023         32767 and issue a warning if the allocation is greater than that.
13024
13025 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13026
13027         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13028         to g_main_pending() as well.
13029
13030 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13031
13032         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13033         call to g_main_iteration() - since that will regrab
13034         GTK+ lock to process events.
13035
13036 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13037
13038         * gtk/gtkwindow.c
13039         - Regularize with the rest of GTK+ by making widget->requisition
13040           not reflect the set_usize()
13041         - Always recompute geometry hints, then check if they
13042           changed before sending them to the X server. The
13043           previous checks for changes would fail in a number
13044           of circumstances. 
13045
13046 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13047
13048         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13049
13050 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13051
13052         * gtk/gtkdnd.c:
13053         - Code cleanups
13054         - Instantaneously update on modifier key presses
13055         - Allow cancellation of the drag with Escape.
13056
13057 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13058
13059         * gtk/testgtk.c (create_handle_box): Set the policy
13060         to auto_shrink - otherwise the appearance is rather
13061         strange when flipping between horizontal and vertical.
13062
13063 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13064
13065         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13066         (gtk_window_set_default_size): don't change a value if it's < 0.
13067         queue a resize.
13068
13069 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13070
13071         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13072
13073 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13074
13075         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13076         add an extra "/" when concating "/" + filename.
13077         (From Matt Grossman <mattg@oz.net>)
13078
13079 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13080
13081         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13082         for fg_gc if we set it for drawing pixmap.
13083
13084 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13085
13086         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13087         
13088         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13089         already set, call old engine's destroy function and
13090         unref the old engine.
13091
13092 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13093
13094         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13095
13096 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13097
13098         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13099
13100 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13101
13102         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13103         expand behaviour changed.
13104
13105         * gtk/gtklabel.c (gtk_label_set_pattern):
13106         (gtk_label_set_justify):
13107         (gtk_label_set_line_wrap):
13108         don't bother invoking queue_clear, the reallocation does
13109         that for us, always free_words so the upcoming resize will
13110         relayout the label's contents.
13111
13112 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13113
13114         * applied argument implementation patches from Elena Devdariani
13115         <elena@cogent.ca>.
13116
13117         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13118         ::space_style, ::relief
13119         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13120         * gtk/gtkpreview.c: ::expand
13121         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13122         * gtk/gtknotebook.c: ::homogeneous
13123         * gtk/gtklabel.c: ::wrap
13124         * gtk/gtklist.c: ::selection_mode
13125         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13126         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13127         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13128         * gtk/gtkclist.c: ::sort_type
13129         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13130         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13131
13132 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13133
13134         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13135         comment.
13136
13137 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13138
13139         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13140         counting right when we have to attach a new style
13141         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13142
13143         * gtk/gtkstyle.c: Documented the refcounting
13144         peculularities of gtk_style_attach.
13145
13146 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13147
13148         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13149         window types.
13150
13151         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13152         of GTK_TOPLEVEL for creating the window.
13153
13154 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13155
13156         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13157         the last argument (reported by Per Winkvist).
13158         
13159 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13160
13161         Fixes for invisible XOR lines (Frank Loemker
13162         <floemker@TechFak.Uni-Bielefeld.DE>)
13163         
13164         * gtk/gtkclist.c (gtk_clist_realize): Always use
13165         a non-zero pixel for GDK_XOR.
13166
13167         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13168         Use GDK_INVERT instead of GDK_XOR.
13169
13170 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13171
13172         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13173         signals if h/voffsets differ from adjustment values.
13174         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13175
13176 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13177
13178         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13179         ::selection-done emissions up to the topmost menu shell.
13180
13181 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13182
13183         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13184         the user data on the window before destroying it.
13185
13186         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13187         unrealize handler to take care of destroying 
13188         notebook->panel properly. 
13189         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13190
13191         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13192         of g_new and g_realloc to stop memory leak. (Actually,
13193         we could just use g_realloc(), but I'm not 100% sure
13194         that is portable).
13195         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13196
13197 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13200
13201         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13202         for fontsets.
13203
13204         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13205         with bin/button confusion.
13206
13207 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13208
13209         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13210         and show how preselection of radio items is done.
13211
13212 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13213
13214         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13215         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13216         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13217         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13218         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13219         * gtk/gtktable.c (gtk_table_attach): 
13220         * gtk/gtklist.c (gtk_list_insert_items): 
13221         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13222         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13223         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13224         * gtk/gtkbin.c (gtk_bin_add): 
13225         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13226         * gtk/gtkfixed.c (gtk_fixed_put): 
13227         * gtk/gtklayout.c (gtk_layout_put):
13228         general fixups to container_add logic. always realize child if
13229         child->parent is realized, only map the child and queue a resize
13230         if child and child->parent are both visible.
13231
13232 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13233
13234         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13235         instead of gtk_container_foreach to walk and unrealize children, so
13236         composite children get also unrealized.
13237         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13238         (gtk_widget_map): assert that the widget is visible (basic constrain).
13239         (gtk_widget_real_map): assert that the widget is realized (basic
13240         constrain).
13241
13242 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13243
13244         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13245
13246 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13247
13248         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13249         file for iso-8859-2 locales.
13250
13251         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13252
13253 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13256          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13257          Remove some suspicious and useless lines. 
13258
13259 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13260
13261         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13262         width,height = 0, 0 to mean - here to edge of window,
13263         instead of -1, -1, since the former is all we support.
13264
13265 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13266
13267         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13268         when removing from quit_functions list.
13269
13270 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13271
13272         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13273
13274 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13275
13276         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13277          When redrawing characters on non-visible entry, use appropriate
13278          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13279
13280 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13281
13282         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13283         from drag coordinates.
13284         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13285         use drag_dest_cell.
13286
13287         * gtk/gtktree (drag_dest_cell)
13288         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13289         (Bug #1129)
13290
13291 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13292
13293         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13294         translate_* fields.
13295         (gtk_item_factory_finalize): invoke translate_notify independant from
13296         translate_data.
13297         (gtk_item_factory_set_translate_func): likewise.
13298         (gtk_item_factory_destroy): only remove ifactory pointer from those
13299         widgets that belong to us (stupid me).
13300
13301 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13302
13303         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13304         rc_style list when lookup succeeeds.
13305
13306 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13307
13308         * gtk/gtkctree.c (resync_selection): 
13309         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13310         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13311         bug.
13312
13313 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13314
13315         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13316         Add some missing GDK_THREADS_ENTER()/LEAVE around
13317         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13318
13319 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13320
13321         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13322         rather than emit_by_name.
13323
13324         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13325         on the widget across multiple signal emissions.
13326         (gtk_editable_delete_text): same here.
13327         (gtk_editable_class_init): set widget_class->activate_signal after
13328         editable_signals[ACTIVATE] has been created.
13329
13330 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13331
13332         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13333         position here prematurely -- we might not have the
13334         right ->min_position and ->max_position yet.
13335
13336 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13337
13338         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13339         Add error traps so if the other end of the connection
13340         dies, we survive.
13341
13342         * gtk/gtkselection.c (gtk_selection_notify): Clean
13343         up properly when selection property retrieval fails.
13344         
13345         * gtk/gtkselection.c (gtk_selection_request): Correctly
13346         reject SelectionRequest notifies where the handler
13347         returns no data.
13348
13349 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13350
13351         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13352         when we've previously highlighted.
13353
13354         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13355         emit two "drag_leave" signals for Motif drops.
13356
13357         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13358         back the correct status messages when dropping from
13359         Motif onto a proxy window that is rejecting the
13360         drop.
13361
13362 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13363
13364         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13365         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13366         to compare two argument values. added gtk_arg_to_valueloc() to set a
13367         variable from an arg through its location (pointer).
13368
13369         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13370         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13371         as gfloat*, uchars are collected as guchar*, ints are collected as
13372         gint*, etc...
13373
13374 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13375
13376         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13377         Include <string.h> instead of <strings.h>.
13378
13379         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13380         (actually, a lot more duplicate includes occur if
13381          you trace through the sequence of #include's)
13382         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13383         
13384 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13385
13386         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13387         gtk-a-higuti-990322-[0-3]
13388
13389         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13390         that was causing -DX_LOCALE not to work.
13391
13392         * gtk/gtkrc.c (gtk_rc_init):
13393         X_LOCALE will never have LC_MESSAGES defined
13394
13395 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13396
13397         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13398         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13399
13400         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13401         left/right as well (gtk-michael-980726-0.patch.gz).
13402
13403         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13404         for pointer values, use gchar instead of char. fixed uline allocation
13405         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13406         chunks instead of G_ALLOC_ONLY.
13407         (gtk_label_size_request): always alter requisition as passed and leave
13408         widget->requisition alone.
13409         (gtk_label_set_text): allow NULL strings.
13410         (gtk_label_new): likewise.
13411
13412 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13413
13414         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13415
13416 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13417
13418         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13419         *and* mapped (i.e. drawable).
13420         (gtk_bin_expose): only send exposes to drawable children.
13421
13422         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13423         (gtk_box_expose): only send exposes to drawable children.
13424
13425         * gtk/gtkhscale.c (gtk_hscale_draw): 
13426         * gtk/gtkvscale.c (gtk_vscale_draw):
13427         hm, this is an ugly one. we first compute the size of our trough area
13428         here (window relative) and then check intersection with the draw_area
13429         which is parent relative because we're a NO_WINDOW widget, so we need
13430         to offset the trough area by allocation.x and allocation.y before the
13431         check. (this must not be done for the background area though, since
13432         that's already computed parent relative).
13433
13434 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13435
13436         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13437         unrealize title buttons.
13438
13439 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13440
13441         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13442         (gtk_clist_column_title_active): 
13443         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13444
13445         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13446         zero initialize event, removed superfluous gdk_window_get_pointer call
13447
13448         * gtk/gtklist.c (gtk_list_vertical_timeout)
13449         (gtk_list_horizontal_timeout): removed superfluous
13450         gdk_window_get_pointer call
13451
13452 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13453
13454         * plugging problems reported by "Bruce Mitchener, Jr."
13455         <bruce@puremagic.com> due to a purify session.
13456
13457         * gtk/gtkstyle.c:
13458         (gtk_style_ref): 
13459         (gtk_style_unref): assert ref_count to be > 0.
13460
13461         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13462         the requisition.
13463         (gtk_clist_set_shift): likewise.
13464
13465         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13466         adjustments.
13467
13468         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13469         event before sending it and set send_event to TRUE (which needs to
13470         be done for *all* synthesized events).
13471         (gtk_list_vertical_timeout): likewise.
13472
13473         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13474         leaks.
13475
13476         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13477         to TRUE when synthesizing events.
13478
13479 [ *** end of merges from 1.2 *** ]      
13480         
13481 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13482
13483         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13484         (or copied from gdkconfig.h.win32 on Win32, sigh).
13485
13486         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13487
13488         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13489
13490         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13491
13492         * gdk/gdkconfig.h.win32: New file.
13493
13494         * gdk/win32/makefile.cygwin: Build just a static archive here.
13495
13496         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13497         for the DLL from the static archive built above.
13498
13499         * gdk/gdk.def: Moved here from the win32 subdirectory.
13500
13501         * gdk/win32/*: Adapt for the changed private struct organisation.
13502
13503         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13504
13505 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13506
13507         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13508         for wheel mice (buttons 4 and 5).
13509
13510 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13511
13512         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13513         drawables use just the pixel field in the foreground and
13514         background GdkColor of the GdkGC.
13515
13516         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13517         GdkColors containing uninitialized (red,green,blue) fields, and
13518         just the pixel field filled in, and furthermore in the
13519         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13520         It thus turns out that we really don't need to have the full
13521         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13522         it later to have just the pixel values.
13523
13524 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13525
13526         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13527
13528 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13529
13530         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13531         New question on GtkLabel background colors.
13532
13533         * docs/gtk_tut.sgml:
13534           - Correct the example code callback
13535             function definitions.
13536           - Update the gtkdial example code, from Frans van Schaik.
13537           - Update setselection.c to current API.
13538
13539         * examples/Makefile examples/*/*.c: Update to code
13540         listed in tutorial.
13541
13542 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13543
13544         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13545         subrange table (from the "Developing International Software for
13546         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13547         block... Get the loaded font's charset correctly.
13548
13549         (Note that this, and the other *-win32.c files, still really are
13550         the old ones, the win32 subdirectory is not ready for compilation
13551         yet after the reorg.)
13552
13553 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13554
13555         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13556         check.
13557
13558 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13559
13560         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13561         on results of XQueryDeviceState().
13562
13563 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13564
13565         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13566         we need to accesss only ->children. We need an accessor
13567         for the children.
13568
13569         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13570         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13571         to get rid of gdkx.h include.
13572         
13573         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13574         and random references to 'None'.
13575
13576         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13577         Get rid of unused #include <gdk/gdkx.h>
13578
13579         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13580         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13581         gdkconfig.h.
13582
13583 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13584
13585         * gdk/win32/gdkdraw.c
13586         * gdk/win32/gdkfont.c
13587         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13588         following yesterday's changes. (Unrelated to Owen's reorg.)
13589
13590 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13591
13592         * gdk/x11/gdkinput-gxi.c: Add missing include,
13593           fix GdkWindowPrivate => GdkDrawablePrivate.
13594
13595         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13596
13597         * gdk/x11/Makefile.am (xinput_sources): Add missing
13598         backslash to fix building with --with-xinput=none
13599
13600 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13601
13602         Move all X specific code into the x11/ directory.
13603         Aside from shuffling things around, did the following:
13604
13605        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13606          gdk_arg_context_* - a simple argument parsing system
13607          in the style of popt.
13608
13609        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13610          gdk/x11/gdkprivate-x11.h:
13611          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13612          add ->klass and ->klass_data fields. The klass_data
13613          field points to an auxilliary structure that is
13614          windowing system dependent.
13615
13616        * gdk/gdkfont.c: Make most of the measurement functions
13617          simply wrappers around gdk_text_extents().
13618
13619        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13620          _gdk_font_strlen() function that hides the weird
13621          behavior in gtk+-1.[02] where a string is interpreted
13622          differently for 8-bit and 16-bit fonts.
13623
13624        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13625          to store common code for synthesizing double/triple
13626          press events.
13627         
13628        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13629          Make all the function that modify an existing GC
13630          simply wrappers around gdk_gc_set_values().
13631          
13632        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13633          for throwing out later.
13634
13635        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13636          GdkImagePrivate and GdkColormapPrivate to have a
13637          windowing system dependent part (GdkFontPrivateX etc.)
13638          that "derives" from the system-independent part.
13639
13640        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13641          Got rid of the included-source-files for XInput in
13642          favor of automake conditionals. (Which didn't exist
13643          when XInput support was originally added.)
13644
13645        * gdk/gdkrgb.c: Remove the visual id from the debugging
13646          statements since that is X11 specific; print out
13647          type/depth info instead.
13648          
13649
13650 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13651
13652         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13653         loading duplicates of hashed fonts.
13654
13655         * gdk/gdk.c (gdk_keysym_convert_case): rename
13656         gdk_XConvertCase to gdk_keysym_convert_case, allow
13657         results to be NULL in the GTK+ style.
13658
13659         * gdk/gdkcompat.h: Started compatibility header
13660         for renames.
13661
13662 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13663
13664         * gdk/win32/gdkprivate.h: New font private structures, related to
13665         fontsets.
13666
13667         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13668         gdk_font_list_free(). On X11, will just be wrappers to
13669         XListFonts() and XFreeFontNames(). On Win32, the code previously
13670         in gtkfontsel.c is now here.
13671
13672         New function gdk_font_xlfd_create(). On X11 will get the FONT
13673         property of the font (for GDK_FONT_FONTs), or call
13674         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13675         builds a XLFD style name from the font information in the LOGFONT
13676         struct(s).
13677
13678         New function gdk_font_xlfd_free(), which correspondingly frees the
13679         string returned by gdk_font_xlfd_create().
13680
13681         Implement fontsets on Win32. Add a function that iterates over a
13682         wide char string and calls a callback function for each substring
13683         of wide chars from the same Unicode subrange (and thus probably
13684         available in the same real font).
13685
13686         Improve the XLFD emulation a bit.
13687
13688         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
13689
13690         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
13691         Beta3, WM_IME_CHAR messages don't seem to contain the composed
13692         multi-byte char as with the Active IMM on Win9x. Oh well, handle
13693         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
13694         ImmGetCompositionStringW() to get the composed Unicode chars.
13695
13696         * gdk/win32/gdkgc.c
13697         * gdk/win32/gdkdraw.c: Changes needed because of the font private
13698         struct changes.
13699
13700         * gdk/win32/gdk.def: Add the new functions.
13701
13702 1999-11-04  Tor Lillqvist  <tml@iki.fi>
13703
13704         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
13705         get the Platform SDK to get <dimm.h>.
13706
13707         * gdk/win32/gdkevents.c: More event handling fixes and
13708         simplification. Never generate motion events with is_hint true. We
13709         used to do that on bogus grounds earlier. Windows sends
13710         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13711         moved, ignore these.
13712
13713         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13714
13715         * gdk/win32/gdkglobals.c
13716         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13717         the TrackMouseEvent function, and use it.
13718
13719         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13720         char before calling WideCharToMultiByte in order to get a string
13721         for the window title.
13722
13723         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13724
13725         * gdk/win32/gdk.def: Remove obsolete functions.
13726
13727         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13728         /nodefaultlib and /defaultlib switches.
13729
13730         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13731
13732 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13733
13734         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13735         EuroSign).
13736
13737         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13738         same type as GdkWChar, especially on Win32.
13739
13740         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13741
13742         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13743         before passing to Windows GDI for drawing etc. Convert to the
13744         system default codepage before passing to Windows as window
13745         titles.
13746
13747         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13748         support changing input locale on the fly.
13749
13750         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13751         on-the-fly changes. Convert incoming characters from the current
13752         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13753         on the current input language. Use keysym<->Unicode mapping tables
13754         and functions borrowed from xterm sources.
13755
13756         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13757         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13758         Manager) if available. IMEs and the Active IMM are available under
13759         the disguise of Chinese, Korean and Japanese support for IE and
13760         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13761         support is present in all editions (as long as you install it).
13762
13763         Call DispatchMessage from gdk_events_queue() (and thus
13764         gdk_WindowProc()), instead of duplicating the code in
13765         gdk_WindowProc().
13766
13767         Reworked the grab handling and propagation code, factored out
13768         duplicated code snippets into separate functions. Other cleanups,
13769         too.
13770
13771         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13772         the <dimm.h> header describing the Active IMM.
13773
13774         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13775         just do the same as for "single" fonts.
13776
13777         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13778         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13779         the new keysyms from gdkkeysyms.h.
13780
13781         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13782         fontset, so that gtkentry uses wide characters.
13783
13784         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13785         GTk+'s system directory "gtk+", not "gtk".
13786
13787 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13788
13789         * docs/gtkfaq.sgml: FAQ update
13790
13791 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13792
13793         * gdk/win32/gdkprivate.h: Add more font private data.
13794
13795         * gdk/win32/gdkfont.c
13796         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13797         fonts and strings. Now works much better. You still have to
13798         have a correct font selected, though. No fontset emulation yet.
13799
13800 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13801
13802         * gtk/maketypes.awk: Use G_OS_WIN32.
13803
13804         * gtk/gtk.def: Add some missing entry points. Also some non-public
13805         ones, but PyGTK porter claims to need them.
13806
13807         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13808         built-in type generation.
13809
13810 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13811
13812         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13813         GDK_FONT_FONT fonts (which is all we have for now, we don't
13814         emulate fontsets). The X11 version uses plain XDrawString in that
13815         case, too. The string passed to gdk_draw_text_wc seems to be in
13816         fact (at least, when used by gtkentry and gtktext) either in a
13817         single-byte charset, or a DBCS. Not Unicode.
13818
13819         This fixes the problem in gtkfontsel, where even if you had
13820         selected a font with a non-Latin1 charset (windows-greek, for
13821         instance), the preview still used Latin-1 glyphs.
13822
13823         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13824         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13825         (gdk_font_load): Recognize the demibold etc weights, even if we
13826         don't have the corresponding constants in the headers.
13827         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13828         version. Should save font resources a bit, when we don't have
13829         multiple HFONTs for the same font.
13830
13831         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13832         version.
13833
13834 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13835
13836         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13837         X values
13838
13839 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13840
13841         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13842         layout support (as mentioned on
13843         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13844
13845 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13846
13847         * gtk/fnmatch.c
13848         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13849
13850 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13851
13852         * configure.in (ALL_LINGUAS): Added Galician (gl)
13853
13854 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13855
13856         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13857
13858         * gdk/win32/gdkcompat.c: New file, actually provide an
13859         implementation for the deprecated functions. (Just temporarily.)
13860
13861         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13862
13863         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13864
13865         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13866
13867 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13868
13869         * configure.in: Added "uk" to ALL_LINGUAS.
13870         
13871 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13872
13873         * configure.in: correct checking for BeOS check
13874
13875         * gdk/gdktypes.h
13876         * gtk/fnmatch.c
13877         * gtk/gtkfilesel.c
13878         * gtk/gtkitemfactory.c
13879         * gtk/gtkmain.[ch]
13880         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
13881
13882 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13883
13884         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
13885         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
13886         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
13887         by Bulgarian). 
13888
13889 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
13890
13891         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
13892         Fix a reference to window_private->destroyed.   
13893
13894         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
13895         (ugly) setting of an internal GdkWindow member to use
13896         a _slightly_ cleaner macro.
13897
13898         * gdk/gdkprivate.h: Split GdkWindowPrivate into
13899         GdkDrawablePrivate and GdkWindowPrivate.
13900         Add extra macros for accessing GDK_DRAWABLE_ components.
13901
13902         * *.[ch]: Massive adjustments for the above, use the
13903         new macros in a lot of places.
13904
13905 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
13906
13907         * gdk/gdktypes.h: Make GdkDrawable the base type,
13908         not GdkWindow.
13909
13910 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
13911
13912         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
13913
13914 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
13915
13916         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
13917
13918 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
13921         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
13922
13923         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
13924
13925         * docs/gtk-config.1: Now autogenerated.
13926         * docs/Changes-1.4.txt: started
13927         
13928 1999-10-03  Tor Lillqvist  <tml@iki.fi>
13929
13930         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
13931         to #ifdef also here.
13932
13933         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
13934         Owen did to the X11 backend.
13935
13936         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
13937         ScrollWindowEx when blitting inside a window, it can't be correct
13938         in the general case.
13939
13940         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
13941         WM_GETMINMAXINFO is easier.
13942
13943         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
13944         depth equal to the bitspixel value, not the visual's depth.
13945
13946         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
13947         to 24 even if the bitspixel value is 32.
13948
13949         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
13950         need to check for depth==32 when bpp==32, depth will always be 24.
13951
13952 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
13953
13954         * docs/Changes-1.4.txt: Started
13955         
13956         * gtk/Makefile.am (gdk_headers): Include all the new headers.
13957
13958         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
13959         
13960         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
13961         into C file.
13962         
13963         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
13964         header to gdkinputprivate.h.
13965
13966         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
13967         unused since before 1.2.
13968
13969 1999-09-30  Tor Lillqvist  <tml@iki.fi>
13970
13971         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
13972         expand possible hex escapes in the font family (put there by
13973         logfont_to_xlfd if the font name isn't a legal XLFD font family,
13974         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
13975         On Win32, add hex escapes here, too.
13976
13977 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
13978
13979         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
13980         to #ifdef GDK_WINDOWING_X11.
13981
13982 [ Merges from gtk-1-2 ]
13983
13984 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
13985
13986         * configure.in: fixed "GNU Make" check to pass with new make version
13987         3.77.95.
13988
13989 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
13990
13991         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
13992         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
13993         AM_PATH_GTK() macros don't get confused by the -pre1.
13994
13995 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13996
13997         * configure.in (REBUILD): Change check for perl5
13998           to check explicitely for v >= 5.002. (5.001
13999           does not work with our scripts.)
14000
14001 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14002
14003         * configure.in: evaluate $PERL for the perl version check. added
14004         --disable-rebuilds to give the user an option to completely disable
14005         any source autogeneration rules.
14006
14007 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14008
14009         * configure.in: evaluate $ac_make when checking for GNU Make.
14010
14011 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14012
14013         * docs/Makefile.am: added generation.txt.
14014
14015         * Makefile.am: require automake 1.4, build README from README.in and
14016         INSTALL from INSTALL.in in dist-hook.
14017         
14018         * README.in:
14019         * INSTALL.in: new files to autogenerate README and INSTALL from.
14020
14021         * configure.in: figure whether we have GNU Make
14022
14023         * docs/generation.txt: minor additions/corrections.
14024
14025 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14026
14027         * docs/gtkfaq.sgml: FAQ Update
14028
14029 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14030         
14031         * configure.in: Fix autoconf warnings about cross compilation by
14032         trying to provide sane defaults for AC_TRY_RUN.
14033
14034 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14035
14036         * ltconfig
14037         * ltmain.sh: upgrade to libtool 1.3.3
14038
14039 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14040
14041         * INSTALL: Indicate that the --with-glib= configure
14042         time flag is unsupported.
14043
14044 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14045
14046         * docs/generation.txt: Added a file that gives
14047         documenation about the autogeneration process for
14048         various autogenerated files.
14049         
14050 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14051
14052         * configure.in (LIBS): Look for libgmodule in the
14053         right location.
14054
14055 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14056
14057         * docs/gtk_tut.sgml: Removed references to
14058         code examples in my directory on gtk.org as
14059         they should all be in the tutorial now.
14060
14061         * docs/gtk_tut.sgml: Added sources for dial-test
14062         and scribble-xinput programs that were previously
14063         missing.
14064
14065 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14066
14067         * TODO: Added entry about menu keyboard navigation, removed
14068         some finished items.
14069
14070 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14071
14072         * acinclude.m4: Standardize on func_dgettext
14073         not func_gettext, so that the checks for dgettext
14074         actually are paid attention to.
14075
14076 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14077
14078         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14079         directly, rather than repeating the checks for
14080         gettext.
14081
14082         * INSTALL: Added information about gettext and
14083         NLS support.
14084
14085         * acinclude.m4 (LIBM): Check for dgettext, not
14086         just gettext. This should hopefully fix things wrt
14087         systems with old versions of GNU gettext installed.
14088
14089 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14090
14091         * configure.in (LIBS): Look for libgmodule in the
14092         right location.
14093
14094 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14095
14096         * autogen.sh: add --enable-maintainer-mode
14097
14098         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14099
14100 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14101
14102         * docs/gtk-config.1.in:
14103           docs/Makefile.am:
14104           configure.in: gtk-config is now generated.
14105
14106         * docs/gtk-config.1: Removed, now generated.
14107
14108 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14109
14110         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14111         handle CreateNotify itself, still put out a debuging message for
14112         --gdk-debug=events. made the ReparentNotify debugging message more
14113         verbose.
14114         wrap xcoords translation for ConfigureEvents into an error trap,
14115         a destroy event may already be pending, and in that case, the
14116         actuall coordinate values are not at all critical.
14117
14118 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14119
14120         * gdk/gdkcc.c: Stop leaking the color_hash all over
14121         the place. Simplify and improve the logic.
14122
14123 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14124
14125         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14126         for prototypes and function implementations consistent (reported
14127         by Tomas Ogren).
14128
14129 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14130
14131         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14132         send_event set in debugging output.
14133         (gdk_compress_exposures): default initialize the event so we don't
14134         operate on bogus values (namely send_event).
14135
14136 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14137
14138         * gdk/gdkwindow.c: When we receive an unexpected
14139         destroy notify on one of our windows, don't just
14140         warn about it, also mark our windows as destroyed.
14141
14142 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14143
14144         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14145           name => font and name => fontset hashes. The 
14146           name => fontset hash is a _big_ win since we
14147           weren't previously caching fontsets at all and loading
14148           fontsets is expensive. The name => font hash
14149           is less of a win, but it does save us from doing
14150           repeated XQueryFont calls on the same font.
14151
14152         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14153           list so we can remove font/fontset from hash.
14154
14155 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14156
14157         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14158           and slightly confusing test. [ XInternAtom (,,TRUE)
14159           will never return None ].
14160
14161 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14162
14163         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14164           gdk/gdkwindow.c (gdk_window_set_hints):
14165
14166         Don't omit setting the properties if flags == 0 -
14167         there may be an existing set of properties there
14168         already. (Very old bug. Would it be better to
14169         delete the property instead?)
14170
14171         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14172           spelling error in comment.
14173
14174 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14175
14176         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14177           to avoid stomping over gdk_error_warnings.
14178
14179         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14180           as (bits_per_pixel + 7) / 8. This gives the same
14181           result as before for multiples of 8, but actually
14182           a "reasonable" value for 1bit or 4bit displays.
14183
14184 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14185
14186         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14187         GNU Make.
14188
14189 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14190
14191         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14192         discarding configure events.
14193
14194 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14195
14196         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14197         refcount is greater than zero.
14198
14199         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14200
14201         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14202
14203         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14204
14205         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14206
14207 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14208
14209         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14210         that format 32 => sizeof(item) == 4. It really is
14211         sizeof(long).
14212
14213 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14214
14215         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14216         core dump at all on X IO errors, only core dump
14217         if --enable-debug for X errors.
14218
14219 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14220
14221         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14222         unknown window:" message. disabled ConfigureNotify discarding code,
14223         because it led to events being processed out of order.
14224
14225 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14226
14227         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14228
14229         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14230         we export this function, supress error warnings and don't reset the
14231         error code in the first half of this function.
14232
14233         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14234         code (instead of just -1) so gdk_error_trap_pop() reveals something
14235         actually informative about the error that happened.
14236
14237         * gdk/*.c:
14238         don't rely on gdk_error_code being -1 if an error occoured, but just
14239         gdk_error_code != 0.
14240
14241 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14242
14243         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14244         pointer *before* invoking the filter function, so we at least don't
14245         crash if a filter is removed that is currently executed. window filters
14246         *really* need to be made truely reentrant at some point.
14247
14248 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14249
14250         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14251         PropertyNotify debug messages.
14252
14253 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14254         
14255         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14256         
14257         * gdk/gdkim.c: Fix cut-and-paste errors for 
14258         x/y and PreeditAttributes/StatusAttributes.
14259
14260 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14261
14262         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14263         G_MAXINT to 2^16 to alleviate overflow problems in
14264         various window managers.
14265
14266 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14267
14268         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14269         for fontsets.
14270
14271 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14272
14273         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14274         Initialize size_hints.x and size_hints.y because kwm
14275         brokenly pays attention to them.
14276         (Bug #1181 -  Lars Heete <hel@admin.de>)
14277
14278 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14279
14280         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14281         return value of gdk_list_visuals(). 
14282         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14283
14284 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14285
14286         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14287         XSetIMValues to (void *) when comparing to NULL, to workaround
14288         the problem of some compilers barfing since older X headers don't
14289         have the prototype for it.
14290
14291 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14292
14293         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14294         for pseudocolor where colormap->colors was double
14295         allocated.
14296
14297         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14298         color value in the hash table with the pixel filled
14299         in so when we do later hash table lookups, the color
14300         value is correct.
14301         
14302 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14303
14304         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14305         making the call
14306
14307 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14308
14309         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14310         pointed out by Morten Welinder <terra@diku.dk>.
14311
14312 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14313
14314         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14315           default filter from the list
14316
14317 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14318
14319         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14320           default filter from the list
14321
14322 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14323
14324         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14325
14326         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14327         g_strdup_printf instead of calcing the length separately
14328
14329 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14330
14331         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14332         that we don't do in many other places. (Fixing duplicate 
14333         #include of config.h)
14334
14335         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14336         Otherwise, #ifndef XINPUT_NONE check in the latter
14337         doesn't work. (Bug #546)
14338
14339 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14340
14341         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14342         "None" case insensitive.
14343
14344 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14345
14346         * gdk/gdkselection.c: 
14347         Add error traps so if the other end of the connection
14348         dies, we survive.
14349
14350 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14351
14352         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14353         dest_xid field into two fields - one for the window
14354         to send in messages, one to indicate the last looked
14355         up window for caching purposes. This is needed, so
14356         that Leave messages get the correct window.
14357
14358 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14359
14360         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14361         Fix warning created by people mucking around
14362         with the gsource API.
14363
14364         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14365         Change mapping between GIOCondition and GdkInputCondition
14366         to match the way the Linux kernel does it. This should
14367         fix problems where closed pipes were no longer signalling
14368         GDK_INPUT_READ on systems with a native poll().
14369
14370 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14371
14372         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14373         explicitly for the string "None" - it is in the XPM
14374         spec and some servers treat unknown colors in odd ways
14375         (like asking the user!)
14376
14377 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14378
14379         * gdk/gdkevents.c: made "->" into a "." of previous change so
14380         it compiles
14381
14382 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14383
14384         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14385         window field of the event structure before calling
14386         user filters.
14387
14388 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14389
14390         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14391         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14392
14393 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14394
14395         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14396         intermediate text property - prevents major memory
14397         leak when gdk_use_mb.
14398         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14399
14400 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14401
14402         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14403         gtk-a-higuti-990322-[0-3]
14404
14405         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14406         sizeof(wchar_t) != sizeof (GdkWChar)
14407
14408         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14409         that was causing -DX_LOCALE not to work.
14410
14411         * gtk/gtkrc.c (gtk_rc_init):
14412         X_LOCALE will never have LC_MESSAGES defined
14413
14414         * gdk/gdk.c (gdk_init_check):
14415         Remove --xim-preedit and --xim-status from argv properly.
14416
14417         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14418         that the client window is present on the X server
14419         before we pass it to the input method.
14420
14421 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14422
14423         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14424         if --display is specified on the command line, than
14425         the drag window will not be created on that display.
14426         
14427 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14428
14429         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14430         lookups with only_if_exists == TRUE were inserting
14431         bogus values into the atom cache.
14432
14433 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14434
14435         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14436         then reset it to NULL.
14437
14438         * gdk/gdkcolor.c:
14439         (gdk_colors_free): 
14440         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14441         key for g_hash_table_remove() in both functions, this prevents us
14442         from accessing possibly uninitialized portions of a GdkColor structure
14443         where we are only interested in its pixel value.
14444
14445 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14446
14447         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14448         font hash table, if we have a GdkFontPrivate entry for this font
14449         already, simply increment its reference count, provided by Olaf Dietsche
14450         <olaf.dietsche+list.gtk@netcologne.de>.
14451
14452 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14453
14454         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14455         just to be sure.
14456
14457         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14458         unused variables, leftovers from the X11 version.
14459
14460         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14461
14462         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14463         downcase fields on X11.
14464
14465 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14466         
14467         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14468         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14469
14470 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14471
14472         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14473
14474         * gtk/makefile.msc: Correct path to libintl.
14475
14476         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14477         use of gint vs. int, and gint vs. gboolean in headers and
14478         definitions. Use GtkType for the *_get_type functions. Note that
14479         these changes preserve binary compatibility.
14480
14481         * gdk/gdk.c
14482         * gdk/win32/gdk.c
14483         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14484
14485         * gtk/gtkmain.c
14486         * gtk/gtkclist.c
14487         * gtk/gtkmenufactory.c
14488         * gtk/gtknotebook.c
14489         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14490         vs. gboolean.
14491
14492         * gtk/gtkcolorsel.[ch]
14493         * gtk/gtkcombo.[ch]
14494         * gtk/gtkdrawingarea.[ch]
14495         * gtk/gtkgamma.[ch]
14496         * gtk/gtkhandlebox.[ch]
14497         * gtk/gtkhpaned.[ch]
14498         * gtk/gtkhruler.[ch]
14499         * gtk/gtkplug.[ch]
14500         * gtk/gtkpreview.[ch]
14501         * gtk/gtkruler.[ch]
14502         * gtk/gtksocket.[ch]
14503         * gtk/gtkstatusbar.[ch]
14504         * gtk/gtktoolbar.[ch]
14505         * gtk/gtkvbbox.[ch]
14506         * gtk/gtkvpaned.[ch]
14507         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14508         functions.
14509
14510         * gtk/gtkgamma.h: Fix bug, missing () in call of
14511         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14512
14513 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14514
14515         * gdk/gdkcolor.c (gdk_colormap_new)
14516         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14517         colormap->colors was allocated twice.
14518
14519         * gdk/win32/gdk.c: Remove some unused stuff.
14520
14521         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14522         colormap.
14523
14524         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14525         * gtk/gtklabel.h (gtk_label_get_type)
14526         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14527         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14528         in a couple of places, not guint.
14529
14530 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14531
14532         * configure.in,po/et.po: added Estonian language file
14533
14534 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14535
14536         * configure.in,po/da.po: added Danish file
14537
14538 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14539
14540         * docs/gtkfaq.sgml: Minor FAQ Update
14541
14542 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14543
14544         * docs/gtkfaq.sgml: FAQ update
14545
14546 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14547
14548         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14549         way to get window contents continually refreshed while resizing. I
14550         didn't like the effects myself, so it's not on by default.
14551
14552         * gdk/win32/gdkprivate.h: New flag variable
14553         gdk_event_func_from_window_proc, FALSE by default.
14554
14555         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14556         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14557         are passed --gdk-event-func-from-window-proc.
14558
14559         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14560         and we have am event_func, call it instead of enqueing the event.
14561
14562 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14563
14564         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14565         Kelley: Set expose_count in GdkEventExposes correctly.
14566
14567         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14568         MULTIPLE_WINDOW_CLASSES).
14569
14570         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14571         for bug in NT, apparently NT *does* draw the end pixel, too, in
14572         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14573
14574 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14575
14576         Improvements by Hans Breuer: 
14577
14578         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14579
14580         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14581         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14582         window contents while dragging" is turned on. Allocate at least
14583         one unique class for every GdkWindowType. If support for single
14584         window-specific icons is ever needed (eg. Dialog specific), every
14585         such window should get its own class.
14586
14587 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14588
14589         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14590         error that caused crashes.
14591
14592 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14593
14594         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14595         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14596         bugs when for instance part of the window was outside the
14597         display. Thanks to Philippe Colantoni for finding and fixing this.
14598
14599 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14600
14601         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14602         endpoint calculations which were totally wrong. (A little RTFMing
14603         helps a lot ;-)
14604
14605         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14606         from a separate directory, not from gettext, because of licensing
14607         issues (we want to use the LGPL version).
14608
14609         * README.win32: Mention the intl from glibc vs from gettext issue.
14610
14611 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14612
14613         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14614         in the key event handling: Now AltGr chars work again. Also,
14615         now Alt-digits are passed up as well as Control-digits.
14616         Pass keypad plus and minus as normal plus and minus.
14617
14618 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14619
14620         * docs/gtkfaq.sgml: FAQ Update
14621
14622 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14623
14624         * README.win32
14625         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14626         the Wintab SDK.
14627
14628         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14629         OK, but getting closer. Guard against bogus tilt data from Wacom
14630         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14631         enable easier building without Wintab.
14632
14633         * gdk/win32/gdkinput.h
14634         * gdk/win32/gdkevents.c 
14635         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14636         
14637         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14638         code. As we have just one visual on Win32, no sense to have it in a
14639         table, and no need for the hash table.
14640
14641         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14642         better on white background.
14643
14644 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14645
14646         * README.win32: Update gcc build instructions. Mention gettext is
14647         GPL.
14648
14649         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14650         supported cursor size with GetSystemMetrics.
14651
14652         * gdk/win32/gdkfont.c
14653         * gtk/gtkfontsel.c: Guard against some font weight and charset
14654         symbols being undefined (in mingw32 headers).
14655
14656         * gdk/win32/makefile.cygwin
14657         * gtk/makefile.cygwin
14658         * gtk/gtkthemes.c: No longer need to have differently named
14659         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14660
14661 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14662
14663         * docs/gtkfaq.sgml: Long awaited FAQ update.
14664
14665 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14666
14667         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14668         it. Obscure bit manipulation needed.
14669
14670         * gdk/win32/gdkevents.c: Logging.
14671         
14672         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14673         style (file name include compiler name) for theme engines.
14674
14675 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14676
14677         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14678
14679         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14680         events. The key.string wasn't zero-terminated, still we strdup'ed
14681         it in gdk_event_copy(). Synthesize crossing events for button
14682         events before possible propagation.
14683
14684         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
14685
14686         * gdk/win32/makefile.cygwin
14687         * gtk/makefile.cygwin: Use new DLL naming style for the
14688         GCC-compiled ones.
14689
14690         * gdk/win32/makefile.msc
14691         * gtk/makefile.msc: Cosmetics mostly.
14692
14693         * gtk/gtk.def: Add missing entry points.
14694
14695         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
14696
14697 1999-07-09  Tor Lillqvist  <tml@iki.fi>
14698
14699         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
14700         or height is zero. Don't print a warning if Pie or Arc fails, they
14701         always fail (?) for very narrow ellipses.
14702
14703         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
14704         the part or the destination window corresponding to source area
14705         outside of the source drawable's boundary.
14706
14707         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14708         anything if less than two points.
14709
14710         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14711         return NULL. Gtk cut-and-paste inside a single program works
14712         better this way. (It always gets the clipboard contents from
14713         Windows, not from its own copy, which is cleared anyway. I can't
14714         say I fully understand what happens... Emulating the X selection
14715         and property stuff is a bit of a mess.)
14716
14717         * gdk/win32/gdkevents.c
14718         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14719
14720         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14721         that never got deleted). Revamp gdk_region_shrink.
14722
14723         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14724         after use.
14725
14726         * gtk/gtk.def: Add some missing entry points.
14727
14728         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14729         component.
14730
14731 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14732
14733         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14734         Control-digits specially.
14735
14736 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14737
14738         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14739
14740 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14741
14742         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14743         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14744         finding this.)
14745
14746 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14747
14748         * gtk+.spec.in: Corrected some typos in files section.
14749         
14750 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14751
14752         * README.win32: Mention using GNU gettext.
14753         * config.h.win32: Enable NLS stuff.
14754         * gtk/makefile.msc: Use GNU gettext.
14755         * gdk/win32/gdkdnd.c: Minor header reorg.
14756         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14757         cosmetics.
14758         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14759         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14760
14761 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14762
14763         * acinclude.m4
14764         * config.guess
14765         * config.status
14766         * ltconfig
14767         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14768
14769 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14770
14771         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14772         SafeAdjustWindowRectEx. Don't override all calls to
14773         AdjustWindowRectEx by it, but use it only in two places: When
14774         creating a new top-level window and when moving a top-level
14775         window.
14776
14777         Use screen coordinate rectangle, not client rectangle, in
14778         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14779         when we try to place a window so that the decoration (mainly,
14780         title bar) isn't visible.
14781
14782         These changes fix the bug that showed up for instance as the
14783         GIMP's saved top-level windows moving right and down (by an amount
14784         equal to the window decoration) for each session. This bug showed
14785         up also in testgtk's "Saved Position".
14786
14787         gdk_window_resize also redone a bit.
14788
14789 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14790
14791         * gtk/testgtkrc: Add (commented out) Windows-style theme
14792         include line.
14793
14794         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14795
14796 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14797
14798         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14799         gdkx.h to a gdk subdirectory, so that applications can include
14800         these with <gdk/*.h> without trouble.
14801
14802         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14803         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14804         have their bitmap destroyed.
14805
14806         * gdk/win32/gdk.def: Add gdk_root_parent.
14807
14808 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14809
14810         * configure.in
14811           gtk-config.in
14812           ltconfig
14813           ltmain.sh     
14814           gtk/Makefile.am: changes to compile nicely (with xlib) 
14815           on BeOS
14816
14817 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14818
14819         * acinclude.m4
14820         * config.guess
14821         * config.sub
14822         * ltconfig
14823         * ltmain.sh: upgrade to libtool 1.3
14824
14825 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14826
14827         * gtk/gtkclist.c:
14828         * gtk/gtkctree.c: merges from gtk-1-2
14829
14830 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14831
14832         Support added for building using a GNU toolchain on Win32,
14833         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14834
14835         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14836         * config.h.win32: Changes for gcc.
14837         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14838         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14839         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14840         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14841         Protect shl stuff unavaiilable with mingw32 headers.
14842         * gdk/win32/gdkevents.c: Fix typo.
14843         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14844         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14845         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14846         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14847         the mingw32 headers.
14848         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14849         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14850         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14851         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14852         Test for NATIVE_WIN32, not _MSC_VER.
14853         * gtk/gtkmain.c: No use warning about developer version on Win32,
14854         there aren't any non-developer versions anyhow.
14855         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14856         * gtk/makefile.msc: Use pthread from another directory. Minor other
14857         changes. 
14858
14859 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14860
14861         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14862           default filter from the list
14863
14864 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14865
14866         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14867          when gtk_widget_grab_default() is called for a widget that
14868          is not within a GtkWindow.
14869
14870 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14871
14872         * docs/gtk_tut.sgml, examples/clist.c: use a
14873           scrolled window in the clist example. Minor
14874           tutorial fixes.
14875
14876 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14877
14878         * docs/gtk_tut.sgml: Style check from David King
14879           <dking@youvegotmail.net>
14880
14881 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
14882
14883         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
14884         compile with unknown value of GDK_WINDOWING
14885
14886 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
14887
14888         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
14889         after the rule is fired.
14890         (install-exec-local): Install gdkconfig.h only if the contents are
14891         different from the currently installed gdkconfig.h.
14892
14893 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
14894
14895         * gdk/Makefile.am (configexecincludedir): Rename from 
14896         configincludedir so that gdkconfig.h will be installed 
14897         as part of `make install-exec'. 
14898
14899 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
14900
14901         * acinclude.m4
14902         * config.guess
14903         * config.sub
14904         * ltconfig
14905         * ltmain.sh: upgrade to libtool 1.2f
14906
14907         * autogen.sh: libtool is not required to autogen gtk+
14908
14909         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
14910         needed)
14911
14912 1999-03-18  Tor Lillqvist  <tml@iki.fi>
14913
14914         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
14915         declaring gdk variables exported/imported from the DLL. New image
14916         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
14917         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
14918         GDK_DRAG_PROTO_OLE2.
14919
14920         * gdk/gdk.h: Merge in Win32 version: Two new functions,
14921         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
14922         declared only for the Win32 version, but could be in the X11
14923         version as well. (Needed for a Xlib-less gdk_imlib.)
14924         gdk_color_hash should have only one parameter. Declare
14925         gdk_threads_mutex with GDKVAR.
14926         
14927         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
14928         just one parameter.
14929
14930         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
14931         per pixel, not bits.
14932
14933         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
14934         Fetch bpp (which means bits-per-pixel here) from another place on
14935         Win32. Accept also depth==32 (which we might get on Win32) with
14936         bpp==32.
14937
14938         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
14939         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
14940         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
14941         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
14942         in the backend-dependent directory, not in the common gdk
14943         directory.
14944
14945         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
14946         headers.
14947
14948 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
14949
14950         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
14951         want to use the Gtk+ devel version (which is true, and yes - even i am
14952         currently working with the 1.2.x branch). so everyone reading this, you
14953         probably want to issue
14954         cvs checkout -r glib-1-2 glib
14955         and
14956         cvs checkout -r gtk-1-2 gtk+
14957         as your next two comands.
14958
14959 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
14960
14961         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
14962         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
14963
14964         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
14965         file. strongly deprecated the GTK_HAVE_* macros, we provide
14966         GTK_CHECK_VERSION() for people that need to check for certain
14967         Gtk+ versions.
14968
14969         * gtk/gtkcompat.h: removed this from CVS.
14970         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
14971         idea right from the start, it just didn't seem like that back then.
14972
14973 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
14974
14975         * merges from gtk-1-2:
14976
14977 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
14978
14979         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
14980         item factory class has been created.
14981         (gtk_item_factory_parse_rc): likewise.
14982
14983         * gtk/gtkmenu.c:
14984         keep proper references for old_active_menu_item.
14985         (gtk_menu_reparent): unset the usize of the new parent,
14986         so the menu can sanely be size requested and we don't get nasty screen
14987         artefacts upon next reparentation.
14988         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
14989         enter notify. only synthesize enter notifies if the pointer really is
14990         inside the event window.
14991         (gtk_menu_popdown): use gtk_menu_shell_deselect().
14992         (gtk_menu_popup): move the background setting stuff into
14993         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
14994
14995         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
14996         gtk_menu_shell_select_item() to select the new item.
14997         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
14998         do the right thing for deselection as well.
14999
15000 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15001
15002         * gtk/gtkwidget.[hc]:
15003         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15004         are locked.
15005
15006         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15007         existing accelerators if the widget's accelerators are locked.
15008
15009 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15010
15011         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15012
15013         * gtk/gtkmenu.c: truely forward key press and key release events to
15014         the menu widget from the toplevel or tearoff window. we can't simply
15015         connect to that, we need to stop further processing of the events as
15016         well.
15017
15018 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15019
15020         * gtk/gtkmenu.c:
15021         (gtk_menu_key_press): pass event->keyval, event->state to
15022         gtk_accelerator_valid, instead of event->keyval twice.
15023         refuse to install single letter accelerators for menus that use
15024         single letter shortcuts.
15025
15026         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15027         gtk_menu_ensure_uline_accel_group().
15028
15029         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15030         which will always return an uline accel group, made
15031         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15032         yet created.
15033
15034 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15035
15036         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15037
15038         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15039         Leave button sensitive, trap  button_press, button_release,
15040         motion_notify, enter_notify and leave_notify events instead.
15041         (gtk_clist_column_title_active): disconnect event handler.
15042         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15043         Guillaume Laurent <glaurent@worldnet.fr>
15044
15045 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15046
15047         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15048         width/height mixups.
15049
15050         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15051         if needed.
15052
15053 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15054
15055         * gtk/testgtk.c (create_item_factory): unref the item factory after
15056         window's destruction.
15057
15058         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15059         count on the menu shell around the menu item's activation, since the
15060         signal emission may cause menu shell destruction.
15061
15062         * gtk/gtkitemfactory.c:
15063         the previous code leaked one accel group per menu. we use
15064         gtk_menu_get_uline_accel_group() now to fix that, and with that
15065         also create the underline accelerator group of the menus only if
15066         required (i.e. an underline accelerator has been specified).
15067         (gtk_item_factory_construct):
15068         (gtk_item_factory_create_item): removed code that would create an
15069         extra accel group for the menu (and leak references).
15070         (gtk_item_factory_create_item): adapted the underline accelerator
15071         installation code to properly feature gtk_menu_get_uline_accel_group().
15072
15073         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15074         menu->accel_group, this may return NULL if the accelerator group
15075         hasn't been set yet.
15076         added gtk_menu_get_uline_accel_group() to retrive the underline
15077         accelerator group of the menu, this will be created on demand
15078         and proper care is taken about its reference count.
15079
15080         * gtk/gtkitemfactory.h:
15081         * gtk/gtkitemfactory.c:
15082         dumped the approach of keeping a widgets by action list on the
15083         factory since the factory<->widget destroy negotiation didn't work
15084         and would be hard to get going at all. instead we keep a list of
15085         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15086         persistant throughout a program's life time).
15087         also, i removed the static const gchar *key_* variables, and made
15088         them inline strings (they weren't actually used anyways).
15089         (gtk_item_factory_add_item): update ifactory->items.
15090         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15091         the item factory pointer from the remaining ifactory widgets).
15092         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15093         list to find the widget.
15094         (gtk_item_factory_get_item): new function that works around
15095         gtk_item_factory_get_widget() limitations, this function will only
15096         return menu items, even for <Branch> entries.
15097
15098 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15099
15100         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15101         font hash table, if we have a GdkFontPrivate entry for this font
15102         already, simply increment its reference count, provided by Olaf Dietsche
15103         <olaf.dietsche+list.gtk@netcologne.de>.
15104
15105         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15106         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15107
15108 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15109
15110         * gtk/gtkcontainer.c:
15111         (gtk_container_add_with_args):
15112         (gtk_container_addv):
15113         (gtk_container_add): before adding a child to a conatiner, make sure
15114         it is (default) constructed, this is neccessary because under certain
15115         circumstances the child will get relized and mapped immediatedly, in
15116         which case it has to be constructed already.
15117
15118 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15119
15120         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15121         values > 1 as TRUE also.
15122
15123 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15124
15125         * README.win32: New file.
15126                 
15127         * configure.in: Check for lstat.
15128
15129         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15130         completeness.
15131
15132         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15133
15134         * gtk/gtk.def: Removed CRs.
15135
15136         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15137         ..\gdk\win32).
15138
15139         * gdk/win32/makefile.msc: Correct upwards relative paths.
15140         
15141 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15142
15143         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15144           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15145           it was connecting a void function to expose_event and the int
15146           returning function to the draw signal
15147
15148 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15149
15150         * configure.in:
15151         Use correct path to libgmodule.la when ref'ing uninstalled copy
15152         of glib.  (Already in stable branch, Bug #417)
15153
15154 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15155
15156         Win32 merge and general portability stuff:
15157                 
15158         * acconfig.h,configure.in: Check for <sys/time.h>.
15159
15160         * gdk/win32: New directory (actually, been there for a while).
15161         
15162         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15163         NATIVE_WIN32, and use these. Always case fold on Win32. No
15164         backslashed escapes on native Win32.
15165
15166         * gtk/{gtk.def,makefile.msc}: New files.
15167
15168         * gtk/Makefile.am: Add above new files.
15169         
15170         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15171         instead of <strings.h>.
15172
15173         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15174         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15175         <unistd.h> appropriately.
15176
15177         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15178         Use ABS() (from <glib.h>) instead of abs().
15179         
15180         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15181         of gtk (and thus glib) headers, so that WIN32 will be
15182         defined. With MS C, include <direct.h> for mkdir prototype.
15183
15184         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15185         some casts, needed by MS C.
15186
15187         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15188         implemented).
15189
15190         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15191         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15192         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15193
15194         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15195                 
15196         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15197         the event is not a hint, or its window is not the slider. Needed
15198         on Win32, at least.
15199
15200         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15201         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15202         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15203         a subdirectory of the Windows directory as gtk system
15204         configuration directory.
15205
15206         * gtk/gtkselection.c: No chunks on Win32.
15207
15208         * gtk/gtksocket.c: Not implemented on Win32.
15209
15210         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15211
15212         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15213
15214         * gtk/maketypes.awk: Declare variables with a macro that expands to
15215         necessary export/import magic in the case of Win32.
15216                 
15217         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15218
15219 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15220
15221         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15222         since those were meant only for gdki18n.h.  
15223         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15224         for widechar tests.
15225         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15226
15227 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15228
15229         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15230         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15231
15232         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15233         installed) to CFLAGS.
15234
15235         * gdk/Makefile.am: Add rules for gdkconfig.h.
15236
15237         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15238         APIs.
15239
15240         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15241         gdkx.h anyway when compiling for X11.
15242         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15243         general): Merge in Win32 version.
15244         
15245         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15246         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15247         expansion (if we don't have HAVE_PWD_H), allow for drive
15248         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15249         included code from Craig Setera's port to Win32 (the one that uses
15250         X11, and the cygwin dll), even if it probably will be abandoned.
15251
15252         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15253         the user entered one herself.  This way one can complete *.h and
15254         don't get matches on any .help files, for instance.
15255         
15256 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15257
15258         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15259         font hash table, if we have a GdkFontPrivate entry for this font
15260         already, simply increment its reference count, provided by Olaf Dietsche
15261         <olaf.dietsche+list.gtk@netcologne.de>.
15262
15263         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15264         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15265
15266 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15267
15268         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15269         the number of calls to gdk_draw_point() (and thus to X) by
15270         clipping the points by hand.
15271
15272         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15273         the clip parameter.
15274         (gtk_handle_box_paint): Only paint the handle if the expose area
15275         intersects it.
15276
15277 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15278
15279         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15280
15281 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15282
15283         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15284         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15285
15286 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15287
15288         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15289          textmode (O_TEXT) for OS/2 version.
15290
15291 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15292
15293         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15294         GtkSpinButton, "input" and "output", to make the output more flexible.
15295         The user has to provide a mapping between adjustment->value and the
15296         output string (and vice versa, if the spin button is editable). 
15297         See testgtk for examples.
15298
15299 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15300
15301         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15302         new one.
15303         
15304         * configure.in: set gtk+ version to 1.3.0.