]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
gtk_calendar_button_press: check for action_func != NULL
[~andy/gtk] / ChangeLog.pre-2-0
1 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
2
3         * gtk/gtkcalendar.c (gtk_calendar_button_press):
4         check for action_func != NULL
5
6 2001-04-04  Sven Neumann  <sven@gimp.org>
7
8         * tests/testgtk.c (test_init): corrected path to gtk.immodules
9
10 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
11
12         * Released Gtk+-1.3.3.
13
14 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
15
16         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
17
18 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
19
20         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
21         files to/from source dir. (if we don't stay in builddir, we
22         can't reach make-inline-pixbuf.
23
24         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
25         deps.
26
27         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
28         ages 0).
29
30 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
31
32         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
33         moved to the GtkTreeSortable interface.
34
35         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
36         Make more efficient (fixes #50262).
37
38 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
39
40         * NEWS: Updated.
41
42         * configure.in: Remove support for uninstalled glib.
43
44         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
45         so as not to stop emission.
46
47         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
48         is no longer supported.
49
50         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
51         into tests, change build order to build modules before
52         gtk/.
53
54         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
55         to here.
56
57 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
58
59         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
60         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
61         GPatternSpec. this is actually unlikely to cause breakage in
62         third-party apps since except for gle, pretty much ever caller
63         passes NULL here.
64
65         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
66
67         * *.c: use g_pattern_*() API.
68
69         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
70
71         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
72         directions aren't passed in.
73
74         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
75         functionality to be usable from gtkstyle.c as well, give precedence
76         for conversion to user-supplied parsers.
77         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
78
79         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
80         _gtk_settings_parse_convert() for rcporperty value conversion.
81
82 2001-04-03  Alexander Larsson  <alexl@redhat.com>
83
84         * gdk/linux-fb/gdkevents-fb.c:
85         Add empty gdk_setting_get().
86
87 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
88
89         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
90         variable names.
91         
92         * gtk/makeenums.pl: touch this so enum files get remade.
93
94 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
95
96         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
97         work again when not sorted.
98
99         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
100         and "expand_row" signal, closing bug 52578.
101
102         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
103         support.
104
105         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
106         support.
107
108 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
109
110         * gdk/gdkevents.h: Add GdkEventSetting event for notification
111         of changes to system settings, gdk_setting_get() to retrieve
112         a single system setting.
113
114         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
115         to the draft XSETTINGS mechanism.
116
117         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
118         XSETTINGS.
119
120         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
121         of GDK settings changes to the GtkSettings object.
122
123         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
124         double-click-timeout property to GDK.
125
126         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
127         Define GDK boxed types here.
128
129         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
130         gdk/gdkenumtypes.[ch] for enum definitions.
131
132         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
133         * gtk/gtk-boxed.defs: Comment out GDK types
134         * gtk/gtktypeutils.h: Remove GDK types
135         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
136
137 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
138
139         * Applied patch from Ron Steinke to add signal accumulators
140         so that signals with the convention 'TRUE return means
141         handled' stop emission on a TRUE return.
142
143         * gtk/gtkmain.[ch]: Add private accumulator 
144         _gtk_boolean_handled_accumulator, used throughout GTK+.
145         
146         * gtk/gtkspinbutton.c: Add accumulator for ::output.
147
148         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
149         
150         * gtk/gtkwidget.c: Add accumulators for event signals,
151         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
152         for ::mnemonic-activate.
153
154         * gtk/gtkwindow.c: Add accumulator for ::frame_event
155
156 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
157
158         * gtk/gtkwidget.c: Add missing include.
159
160 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
161
162         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
163         marshaller.
164
165         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
166         "changed" signal to "range_changed".
167
168         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
169         removing a tree from one model would remove all trees from that
170         model.
171         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
172         changed signal instead.
173
174 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
175
176         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
177         chaining up to parent impl, since we have a INPUT_ONLY
178         window.
179
180         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
181         foreground color for the cursor.
182
183 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
184
185         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
186         param spec when caching property values, since we unref it
187         later when we free the style.
188
189         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
190         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
191
192 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
193
194         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
195         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
196         stupidity.
197
198 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
199
200         [ First pass at adding style properties. Still needs some definite
201         fine-tuning. ]
202
203         * gtk/gtkbutton.c: Add ::default_spacing style property.
204          
205         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
206         ::indicator_spacing style properties.
207
208         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
209         style properties.
210
211         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
212         rather than a normal property.
213
214         * gtk/gtkwidget.c: Add an ::interior_focus style property to
215         draw focus inside buttons, in the Windows/Java Metal/etc. style.
216
217         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
218         Honor ::interior_focus.
219         
220         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
221         TRUE.
222
223         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
224         Add ::slider_width, ::trough_border, ::stepper_size,
225         ::stepper_spacing style properties.
226
227         * gtk/gtkscale.[ch] Add ::slider-length style property.
228
229 2001-04-02 Alexander Larsson   <alexl@redhat.com>
230
231         * gdk/linux-fb/gdkwindow-fb.c:
232         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
233         warnings that were spewed on startup.
234
235         * gtk/gtkwindow-decorate.c:
236         gtk_window_reposition -> _gtk_window_reposition
237
238 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
239
240         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
241         Add boxed type for GtkRequistion. Use it for ::size-request.
242
243         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
244         Add a new GtkBorder structure useful for geometry properties
245         for widgets. Add corresponding GTK_TYPE_BORDER.
246         
247         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
248         Support automatic parser selection like
249         gtk_settings_install_property_parser().
250
251         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
252         functionality for use by gtk_widget_class_install_style_property.
253         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
254
255 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
256
257         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
258         g_param_spec_unichar(). 
259
260 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
261
262         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
263         _NET window managers.
264
265         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
266
267 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
268
269         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
270         bad needs to be nuked, not just deprecated.
271
272         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
273         gtk_widget_popup().
274
275         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
276         
277         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
278         widget.
279         
280         * docs/Changes-2.0.txt: updates.
281         
282 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
283
284         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
285         for (i = 0; i < 100; i ++)
286           g_print ("I will confirm it compile before committing\n");
287
288 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
289
290         * gtk/gtktreestore.c: Initial work on implementing the
291         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
292
293 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
294
295         * gtk/gtkwidget.c: fixed a bunch of notifications, added
296         reference counts around emissions where the widget is used afterwards.
297         added freeze/thaws around multiple properties being notified.
298         (_gtk_widget_get_aux_info): cleanups.
299         
300         * gtk/gtksettings.c (gtk_settings_install_property): provide
301         default parsing functions for gdkcolor, enums and flags.
302
303         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
304         applied by owen.
305         backed out gtk_window_get_location(), gtk_window_set_location(),
306         gtk_window_get_size() and gtk_window_set_size(), these
307         have to be sorted out wrg x/y/width/height/default_with/default_height
308         properties.
309         kept a flag in GtkWindowGeometryInfo to handle user
310         resetting default sizes.
311         cleaned up ZVT comments.
312         bunch of assorted bug fixes, notification fixes.
313         (_gtk_window_reposition): make this a really internal function.
314         
315         * gtk/testgtk.c: fixups.
316         
317 2001-03-31  Hans Breuer  <hans@breuer.org>
318
319         * config.h.win32.in : disable USE_MMX for msvc build cause
320         the assembler doesn't fit and is out of my scope. Disable
321         USE_GMODULE for msvc build as wel. The right way to share
322         binaries on win32 would be to use libtiff.dll etc. To reduce
323         installation hassles IMO it's better to include all fileformats
324         builtin to gdk-pixbuf
325
326         * gdk-pixbuf/makefile.msc : new file
327
328         * gdk/gdk.def : updated
329
330         * gdk/win32/gdkevents-win32.c : don't erase the background if
331         .no_bg is set. It improves the scrolling (e.g. of testgtk main
332         buttons
333         * gdk/win32/gdkgeometry-win32.c : added comment about the above
334
335         * gdk/win32/gdkwindow-win32.c : added three new functions like
336         the X version. Only one is implemented, because the other two
337         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
338         be default behaviour on win32 anyway ...
339
340         * gtk/gtk.def : updated
341
342         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
343         from where it was built and add an additional rule to automagically
344         build gtkmarshal.[hc]
345
346         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
347         before array access for the current entry isn't finished
348
349         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
350         use g_return_val_if_fail
351
352         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
353         for the static array, but let the compiler calculate it. It
354         makes me wonder if gcc isn't capable to catch bugs like this ...
355
356 2001-03-31  James Henstridge  <james@daa.com.au>
357
358         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
359         constant "-1" in the aux info structure.
360
361 2001-03-30  Alexander Larsson  <alexl@redhat.com>
362
363         * gtk/gtkbutton.c (gtk_button_get_property):
364         * gtk/gtklabel.c:
365         Remove leaks.
366         
367         * gtk/gtkcontainer.c:
368         * gtk/gtkhscale.c:
369         * gtk/gtkhscrollbar.c:
370         * gtk/gtklayout.c:
371         * gtk/gtkmisc.c:
372         * gtk/gtkprogress.c:
373         * gtk/gtkprogressbar.c:
374         * gtk/gtkrange.c:
375         * gtk/gtktable.c:
376         * gtk/gtkviewport.c:
377         * gtk/gtkvscale.c:
378         * gtk/gtkvscrollbar.c:
379         * gtk/gtkwidget.c:
380         Property patches, based on patches from John Margaglione and Lee Mallabone.
381
382 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
383
384         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
385         adjustment. Cleaned redundant preconditions (spin != NULL). Added
386         inline API function docs.
387         (gtk_spin_button_new_with_range): New convenience constructor.
388         (gtk_spin_button_set_increments): New adjustment helper.
389         (gtk_spin_button_set_range): New adjustment helper.
390
391         * gtk/testgtk.c : added test of the new convenince constructor and
392         value_changed signals.
393
394 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
395
396         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
397         listen to the reorder signal.
398
399 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
400
401         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
402         to get the aux info structure fo the widget.
403
404         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
405         above function.
406
407         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
408
409         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
410         to get the size of the window manager frame, basically the same
411         code that gdk_window_get_root_origin() had
412         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
413
414         * gtk/gtkwindow.c (gtk_window_set_default_size): use
415         gdk_window_resize() if the window is realized and resizeable
416
417         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
418         typo so that setting gravity works
419
420         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
421         allocation if auto_shrink is on, even if the default size
422         has not changed.
423
424         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
425         g_return_if_fail
426
427 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
428
429         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
430         reordering/sorting work.  Now pretty much works.
431
432         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
433         reorder mostly work.  Still need to get the parity correct.
434
435         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
436         signal, so I can listen for the sort_column_changed signal so I
437         can change my "sort_indicator" property.  Cool.
438
439 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
440
441         [ Patch from Havoc Pennington, hp@redhat.com ]
442
443         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
444         Add functions gdk_window_begin_resize_drag/begin_move_drag
445         to start resizing or moving a toplevel window. This
446         is done either using the _NET_WM_MOVERESIZE protocol,
447         or, if that isn't present, by emulation.
448
449         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
450         to export the above to GTK+-land.
451
452         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
453         
454         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
455         Move this function into gdkwindow, since we need it
456         when implementing fallback resizing.
457
458         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
459         Fix typo when setting gravity.
460
461         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
462         Add an optional (but on by default) resize grip for resizing 
463         the parent window.
464
465 01-03-29  Alexander Larsson  <alexl@redhat.com>
466
467         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
468         Don't return TRUE from the event handler, that blocks all
469         event signals on the tooltip widget. Now you can press buttons
470         in toolbars again.
471
472 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
473
474         * gtk/testtext.c (create_buffer): Add missing NULL on
475         valist.
476
477         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
478         c-n-p problem with INCONSISTENT property.
479
480         [ Patch from Havoc Pennington  <hp@redhat.com> ]
481
482         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
483         hook.
484
485         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
486         signal as a hook for extending the default popup menu
487
488         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
489         use radio menu items for the input method menuitems
490
491         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
492         inserted unicode from Ctrl-Shift-hex input method
493
494         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
495         validatation here, already done at GtkTextBuffer level.
496
497         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
498         popup_menu run action signal and Shift+F10 and Menu keybindings.
499
500         * gtk/gtkentry.c: implement a default handler for popup_menu
501
502         * gtk/gtktextview.c: implement a default handler for popup_menu
503
504         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
505         from a key event
506         
507         * gtk/gtklabel.c: remove "trailer" cruft
508
509 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
510
511         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
512         handle reordering of trees.  Seems to mostly work w/ the exception
513         of the parity flag.
514
515         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
516         signal.
517
518 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
519
520         * gtk/gtkwidget.h: c++ fixes.
521
522 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
523
524         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
525         memory.
526
527 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
528
529         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
530         Nils Barth fixing event return values. (#51041)
531
532         * gtk/gtkwidget.c: Fix some return values for default
533         functions.
534
535         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
536         return values for trough_keys functions.
537
538         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
539         value for add_accelerator (shoudl have been a void
540         return.)
541
542         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
543         Fix return type of EVENT.
544
545         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
546         signal return a boolean.
547
548 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
549
550         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
551         reordered signal.
552
553         * tests/testtreesort.c (main): fix spelling.
554
555 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
556
557         * gtk/gtkliststore.c: More work on implementing sortable
558         interface.
559
560 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
561
562         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
563         reference the widgets in the resulting list. (#11821)
564         This makes this consistent with gtk_container_children.
565
566         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
567         uses of gtk_window_list_toplevels.
568
569 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
570
571         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
572         a virtual function to set whether the IM context should use 
573         the preedit string. (#51922)
574         
575 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
576
577         * gdk/gdkpango.h: Remove stale FIXME comment.
578
579 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
580
581         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
582         Fixed bug that returned NULL if a filename was selected.
583
584 2001-03-24  Havoc Pennington  <hp@pobox.com>
585
586         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
587         to contain the word "theme"
588
589 2001-03-24  Havoc Pennington  <hp@pobox.com>
590
591         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
592         slower but finer-grained
593         (gtk_hsv_focus): get initial focus on the ring or triangle 
594         according to tab direction
595
596         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
597
598 2001-03-23  Havoc Pennington  <hp@pobox.com>
599
600         * gtk/gtkhsv.c: make this somewhat key-navigable
601
602         * gtk/gtkfontsel.c: mnemonics
603
604         * gtk/gtkgamma.c: mnemonics
605
606         * gtk/gtkcolorsel.c: add mnemonics to labels
607
608 2001-03-22  Havoc Pennington  <hp@pobox.com>
609
610         Applied big patch from Seth Lytle to fix event handler return
611         values, slightly modified.
612
613         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
614         handled.
615         (gtk_calendar_key_press): return TRUE for GDK_space triggers
616         select_day
617
618         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
619         (gtk_clist_button_release): return TRUE if handled
620
621         * gtk/gtkcolorsel.c (mouse_release):
622         (palette_activate): 
623         (palette_press): 
624         (palette_new): 
625         (mouse_press): 
626         (get_screen_color): 
627         fixed return type (void to gboolean), return TRUE,
628         added GTK_SIGNAL_FUNC cast
629
630         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
631         (void to gboolean), and return TRUE
632         (gtk_combo_button_release): changed return value to TRUE after
633         gtk_grab_add on combo->popwin
634
635         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
636         collapse or expand
637
638         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
639         button/motion
640
641         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
642         press/release and motion that trigger act
643
644         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
645
646         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
647         for GDK_Return
648         
649         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
650         (gtk_list_button_release): return TRUE if selection
651
652         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
653         press
654
655         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
656         (gtk_menu_shell_button_release): chain parent_menu_shell retval
657
658         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
659         nothing triggered
660         (gtk_notebook_button_release): return TRUE if we do anything
661
662         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
663         (gtk_spin_button_button_release): return TRUE or chained retval
664
665         * gtk/gtktext.c (gtk_text_button_press): 
666         (gtk_text_button_release): return TRUE
667         (gtk_text_key_press): remove redundant retval code
668         
669         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
670         and sensitive
671         (gtk_tree_item_subtree_button_click): changed type to gint, and return
672         TRUE if sensitive
673
674         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
675         return TRUE
676
677 2001-03-23  Havoc Pennington  <hp@redhat.com>
678
679         * gtk/testgtk.c: fix warnings
680
681         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
682
683         * gtk/gtktextview.c: fix warnings
684
685         * gtk/gtktext.c (find_cursor_at_line): fix warning
686
687         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
688
689         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
690         of this function
691
692         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
693         fix warning
694
695         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
696
697         * gtk/gtkfontsel.c: fix warning
698
699         * gtk/gtkcolorsel.c: fix warnings
700
701 2001-03-23  Havoc Pennington  <hp@redhat.com>
702
703         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
704
705         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
706
707         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
708         and deprecated gtk_check_menu_item_set_show_toggle().
709         
710         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
711
712         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
713
714         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
715
716 2001-03-23  Havoc Pennington  <hp@redhat.com>
717
718         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
719         some docs
720
721 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
722
723         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
724         this.
725
726         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
727         set_cell to set_value
728
729         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
730         set_cell to set_value
731
732 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
733
734         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
735         fix braino.
736         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
737         support.
738
739         * gtk/gtktreeview.c: Addition of initial sortable support.
740
741         * gtk/gtktreestore.c: Addition of initial sortable support.
742
743         * gtk/gtkliststore.c: Addition of initial sortable support.
744
745         * gtk/gtkmarshal.list: yet another marshaller.
746
747         * gtk/gtktreedatallist.[ch]: shared code between the store models
748         for handling sorting headers.
749
750 2001-03-22  Havoc Pennington  <hp@redhat.com>
751
752         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
753         (gtk_container_unset_focus_chain): Add ability to override the 
754         focus chain for a container explicitly
755
756 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
757
758         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
759         added PROP_MNEMONIC_WIDGET.
760
761         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
762         (gtk_window_remove_mnemonic): 
763         (gtk_window_add_mnemonic): fixed assertions.
764         (gtk_window_activate_mnemonic): constrain modifier checks to those
765         permitted by gtk_accelerator_get_default_mod_mask().
766         got rid of gtk_window_get_default_accel_group().
767
768         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
769         activatable widgets either by focussing or a warning.
770         added a signal accumulator to ::activate_mnemonic which stops the
771         emission once a handler returned TRUE.
772
773 2001-03-22  Havoc Pennington  <hp@pobox.com>
774
775         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
776         the stock item label
777
778         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
779
780         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
781
782         * demos/gtk-demo/*.c: Add mnemonics all over the place
783
784         * gtk/gtklabel.h: mark parse_uline deprecated
785
786 2001-03-21  Alexander Larsson  <alexl@redhat.com>
787
788         * gtk/gtkitemfactory.[ch]:
789         Add support for stock and normal imagemenuitems.
790         
791         * gtk/testgtk.c:
792         Add some tests for mnemonics, stock toolbars, stock
793         and image menuitems in itemfactory and gdk_window_scroll.
794
795 2001-03-21  Alexander Larsson  <alexl@redhat.com>
796
797         * gtk/gtkbutton.[ch]:
798         * gtk/gtkdialog.c:
799         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
800         removed accel_group argument. Renamed gtk_button_new_accel() to
801         gtk_button_new_with_mnemonic() and removed accel_group argument.
802
803         * gtk/gtkcheckbutton.[ch]:
804         New function gtk_check_button_new_with_mnemonic().
805
806         * gtk/gtkentry.c:
807         Override activate_mnemonic and just grab focus.
808
809         * gtk/gtkitemfactory.c:
810         Don't add menu uline accel group, instead use mnemonics support.
811
812         * gtk/gtklabel.[ch]:
813         New support for mnemonics.
814
815         * gtk/gtkmarshal.list:
816         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
817
818         * gtk/gtkmenu.[c]:
819         * gtkmenushell.c:
820         Use mnemonics instead of accel groups for uline
821         support in menu items.
822         Removed gtk_menu_get_uline_accel_group() and
823         gtk_menu_ensure_uline_accel_group().
824
825         * gtk/gtkmenuitem.c:
826         Override activate_mnemonic to handle switching between
827         menu items if there are collisions.
828         
829         * gtk/gtknotebook.c:
830         Connect to activate_mnemonic on the tab_label, so that
831         activating it switches to that notebook page.
832
833         * gtk/gtkwidget.[ch]:
834         Add activate_mnemonic signal. New function
835         gtk_widget_activate_mnemonic() to emit it.
836         Default implementation does activate/grab_focus.
837
838         * gtk/gtkwindow.[ch]:
839         Add support for mnemonics in windows.
840         New functions:
841         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
842         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
843
844         * gtk/testgtk.c:
845         Update to function name changes.
846         
847 2001-03-21  Alexander Larsson  <alexl@redhat.com>
848
849         * gtk/gtkimagemenuitem.[c]:
850         Add gtk_image_menu_item_new_from_stock()
851
852 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
853
854         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
855         Fix buglet in meeting.
856
857 2001-03-19  Havoc Pennington  <hp@redhat.com>
858
859         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
860         add a bunch of accessor functions. This is because we have
861         reasonable expectations of extending what fields it contains in
862         the future.
863
864         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
865         changes
866
867         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
868         GtkIconSource   
869
870 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
871
872         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
873         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
874
875         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
876           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
877           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
878           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
879         Change float to double everywhere with the exception of 0<->1.0 alignment
880         and GtkCurve.
881
882 2001-03-19  Tor Lillqvist  <tml@iki.fi>
883
884         * gdk/win32/gdkdrawable-win32.c
885         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
886         output.
887
888         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
889         gdkwin32.h.
890
891 2001-03-18  Tor Lillqvist  <tml@iki.fi>
892
893         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
894         print_event_state, print_event): Use preprocessor macro to make
895         code more compact. Print also GDK_WINDOW_STATE events.
896         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
897         
898         * gtk/gtk.def
899         * gtk/makefile.mingw.in: Update.
900
901         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
902         to catch also Cygwin.
903
904 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
905
906         * gtk/gtkspinbutton.[hc]: added rc-style argument
907         GtkSpinButton::shadow_type.
908         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
909         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
910         rc-style settings.
911
912         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
913
914         * gtk/gtkwidget.c: quark cleanups.
915
916         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
917         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
918         to create_rc_style() (we don't do cloning in standard OO sense).
919         added per rc style properties.
920         
921         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
922         property values and for caching those. some cleanups.
923         
924         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
925         
926         * gtk/gtksettings.[hc]: new file for global rc-file properties
927         (at least currently, should get extended to support X properties
928         and other communication mechanisms).
929         
930         * gtk/gtkwidget.[hc]: added style property support:
931         (gtk_widget_class_install_style_property_parser): install style
932         property pspec with parser function for rc-file values other
933         than LONG, DOUBLE or STRING.
934         (gtk_widget_class_install_style_property): same as above without
935         parser (parsers are going to be needed quite infrequently).
936         (gtk_widget_style_get_property): retrive style property value.
937         (gtk_widget_style_get_valist): same as above with varargs support,
938         has NOCOPY semantics.
939         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
940
941 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
942
943         * demos/gtk-demo/main.c (row_activated_cb): modified to use
944         "row_activated" signal.
945
946         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
947         stupidity.  Lets actually pass in the row with this signal...
948
949 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
950
951         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
952
953         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
954
955         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
956         everything into the ::destroy function, and freed a lot more.
957
958 2001-03-16  Havoc Pennington  <hp@redhat.com>
959
960         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
961         instead of gint16, to avoid overflow issues, since sizes > 16-bit
962         are now allowed.
963
964 2001-03-16  Havoc Pennington  <hp@redhat.com>
965
966         * Applied patch from Nils Barth (bug # 51041) to 
967         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
968         in various places.
969
970 2001-03-15  Havoc Pennington  <hp@redhat.com>
971         
972         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
973         for properties to set on the tag.
974
975         * gtk/testtext.c: fixups to reflect create_tag change
976         
977         * gtk/gtktexttag.c (gtk_text_tag_set_property):
978         background/foreground stipple are objects, not boxed.
979
980         * demos/gtk-demo/textview.c: intellihancing
981
982 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
983
984         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
985         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
986
987 2001-03-16  Alexander Larsson  <alexl@redhat.com>
988
989         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
990         Fix sign error with queued region translations.
991
992 2001-03-15  HideToshi Tajima  <tajima@happy>
993
994         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
995         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
996         * gtk/gtkentry.c (update_im_cursor_location): 
997         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
998         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
999         set_cursor_pos to set_cursor_location in GtkInputContext class
1000
1001 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1002
1003         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1004         the location of the cell relative to its area.
1005         * gtk/gtkcell*: modified for above change
1006         * gtk/gtktreeview.c: modified for above change.
1007
1008 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1009
1010         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1011          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1012         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1013
1014 2001-03-14  Havoc Pennington  <hp@redhat.com>
1015
1016         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1017         
1018         * gtk/gtk.h: remove gtkdata.h
1019
1020         * gtk/Makefile.am: remove gtkdata
1021         
1022         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1023         not "disconnect" on the adjustments.
1024         
1025         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1026         GtkData
1027
1028         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1029         not GtkData
1030
1031         * configure.in: handle case where X render exists, but Pango lacks
1032         Xft support.
1033
1034 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1035
1036         * gtk/gtktoolbar.[ch]:
1037         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1038         to add stock items to toolbars.
1039
1040         * gtk/Makefile.am:
1041         Remove ../gdk/gdkim.h from gdk_headers.
1042
1043 2001-03-15  Sven Neumann  <sven@gimp.org>
1044
1045         * gdk/gdkim.h: removed
1046         
1047         * gdk/gdkprivate.h
1048         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1049
1050 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1051
1052         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1053         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1054         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1055         set_cursor_pos() virtual method
1056
1057         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1058         (gtk_im_context_xim_set_cursor_pos): add implementation for
1059         set_cursor_pos() method
1060
1061         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1062         position to input methods
1063
1064 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1065
1066         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1067         code a lot.
1068
1069         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1070         g_mem_chunk.
1071         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1072         (_gtk_tree_data_list_node_to_value): Fix to switch on
1073         G_TYPE_FUNDAMENTAL.
1074         (_gtk_tree_data_list_value_to_node): Fix to switch on
1075         G_TYPE_FUNDAMENTAL.
1076         (_gtk_tree_data_list_node_copy): Fix to switch on
1077         G_TYPE_FUNDAMENTAL.
1078
1079 2001-03-12  Havoc Pennington  <hp@redhat.com>
1080
1081         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1082         to convert to new property API. Also, change default_width and
1083         default_height get_property to return 0 as the flag value for
1084         "unset"; -1 is not a valid value for these fields.
1085
1086 2001-03-12  Havoc Pennington  <hp@redhat.com>
1087
1088         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1089         enum with registration for icon sizes, instead of strings.
1090
1091         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1092         gtkwidget.c: Fix to reflect GtkIconSize
1093         
1094 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1095
1096         Make GtkFB compile and link.
1097         
1098         * gdk/linux-fb/gdkdrawable-fb2.c:
1099         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1100         
1101         * gdk/linux-fb/gdkwindow-fb.c:
1102         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1103         Added gdk_window_shape_combine_region.
1104         Added assorted placeholders for unimplemented new GdkWindow API calls.
1105
1106 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1107
1108         * gtk/gtkfilesel.c:
1109         Add more test when converting filenames from/to utf-8.
1110         Don't allow entering text in the filename entry which isn't allowed in
1111         a filename. Just beep instead.
1112
1113 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1114
1115         * gtk/gtkclist.c:
1116         Scroll using gdk_window_scroll(). Don't wait for exposes.
1117         Move the column headers in an order that makes them flash less.
1118
1119 2001-03-10  Hans Breuer  <hans@breuer.org>
1120
1121         * gdk/gdk.def : updated
1122
1123         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1124         to offseting the clip_mask at the right place
1125
1126         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1127         for all the gdkClasses, especially not for the input_only case.
1128         Otherwise flickering wont be avoidable, because we don't get
1129         WM_ERASEBKGND message for these windows.
1130
1131         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1132         and fixed massive redraw problems apparently triggered by Alexanders 
1133         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1134         but it seems to work quite well :-)
1135
1136         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1137         prototype
1138
1139 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1140
1141         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1142         (gtk_list_store_set_cell): Fix a stupid typo.
1143
1144 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1145
1146         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1147         select_all not work if you're in SINGLE mode (it doesn't make that
1148         much sense, anyway.)
1149
1150         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1151         handle types more sanely.
1152         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1153         (_gtk_tree_data_list_node_copy): handle types more sanely.
1154
1155         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1156         GValue better. Converts the type as well.
1157
1158         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1159         GValue better. Converts the type as well.
1160
1161 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1162
1163         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1164         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1165         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1166         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1167
1168         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1169         gdk_im/gdk_ic.
1170
1171 2001-03-09  Hans Breuer  <hans@breuer.org>
1172
1173         * gdk/gdk.def : updated
1174
1175         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1176         for their palette
1177
1178         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1179         removing
1180
1181         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1182         removing and implemented Havoc's GdkWindow state functions; 
1183         stick/unstick only as no-op, cause I don't know how to emulate 
1184         on win32 ...
1185
1186         * gtk/gtk.def : updated
1187
1188         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1189
1190         * gtk/gtktypeutils.c : #include <string.h>
1191
1192         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1193
1194 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1195
1196         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1197         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1198         not a boxed.
1199
1200 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1201
1202         * docs/Changes-2.0.txt:
1203         Document expose event->region change and that gtk_widget_event
1204         doesn't allow passing expose events.
1205
1206         * gdk/gdkevents.h:
1207         Add region to expose event.
1208         
1209         * gdk/gdkevents.c:
1210         Handle event->region in gdk_event_copy() and gdk_event_free().
1211
1212         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1213         Generate expose_event->region when creating expose events.
1214
1215         * gdk/x11/gdkevents-x11.c:
1216         Generate expose events with regions when translating X events.
1217
1218         * gtk/gtkcontainer.[ch]:
1219         Default expose handler that propagates expose events to NO_WINDOW
1220         children. New function gtk_container_propagate_expose()
1221
1222         * gtk/gtkwidget.[ch]:
1223         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1224         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1225         expose events. New function gtk_widget_send_expose() to send expose
1226         events. New function gtk_widget_region_intersect() to calculate
1227         window/region intersections.
1228         
1229         * gtk/gtkmain.c (gtk_main_do_event):
1230         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1231         Use gtk_widget_send_expose() to send expose events.
1232         
1233         * gtk/gtkbin.c:
1234         * gtk/gtkbox.c:
1235         * gtk/gtkfixed.c:
1236         * gtk/gtkimagemenuitem.c:
1237         * gtk/gtklist.c:
1238         * gtk/gtkpacker.c:
1239         * gtk/gtktable.c:
1240         * gtk/gtktree.c:
1241         Remove expose handler, using the default container implementation
1242         instead.
1243         
1244         * gtk/gtkbutton.c:
1245         * gtk/gtkcheckbutton.c:
1246         * gtk/gtkeventbox.c:
1247         * gtk/gtkfixed.c:
1248         * gtk/gtkhandlebox.c:
1249         * gtk/gtklayout.c:
1250         * gtk/gtklistitem.c:
1251         * gtk/gtkmenu.c:
1252         * gtk/gtkmenubar.c:
1253         * gtk/gtkmenuitem.c:
1254         * gtk/gtknotebook.c:
1255         * gtk/gtkoptionmenu.c:
1256         * gtk/gtkpaned.c:
1257         * gtk/gtkscrolledwindow.c:
1258         * gtk/gtktogglebutton.c:
1259         * gtk/gtktoolbar.c:
1260         * gtk/gtktreeitem.c:
1261         * gtk/gtkviewport.c:
1262         Chain expose handler to parent class handler. Use
1263         gtk_container_propagate_expose() to propagate exposes.
1264
1265         * gtk/gtkclist.c (check_exposures):
1266         * gtk/gtktext.c (process_exposes):
1267         Use gtk_widget_send_expose instead of gtk_widget_event.
1268
1269 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1270
1271         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1272
1273 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1274
1275         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1276         unref the nodes.   Fixes bug #50058.
1277
1278         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1279         "::ref_iter" to "::ref_node".
1280         (gtk_tree_model_unref_node): change "::unref_iter" to
1281         "::unref_node". Fixes bug #50064.
1282
1283 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1284
1285         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1286         support for invisible cells.
1287          (gtk_tree_view_bin_expose): ditto
1288
1289 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1290
1291         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1292         on gobjects.
1293
1294         * tests/testtreefocus.c (main): New test file.
1295
1296         * tests/testtreeview.c: update to latest glib changes.
1297
1298         * tests/testtreecolumns.c: update to latest glib changes.
1299
1300 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1301
1302         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1303
1304 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1305
1306         * *.c: added accumulator data argument to g_signal_newc()
1307         functions.
1308
1309         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1310         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1311         * gtk/treestoretest.c (make_window):
1312         s/g_signal_connect/g_signal_connectc/.
1313
1314         * gtk/gtktextbuffer.c: completed signal arg fixups,
1315         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1316
1317 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1318
1319         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1320         G_CONST_RETURN.
1321
1322         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1323         ::hierarchy-changed signal when a widget changes
1324         from anchored to unanchored or vice versa.
1325         (anchored means 
1326          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1327         Use a private flag to keep track of this efficiently.
1328
1329 2001-03-07  Havoc Pennington  <hp@redhat.com>
1330
1331         * gtk/testgtk.c (create_spins): uglify so that size request gets
1332         tested.
1333
1334         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1335         request on values for upper/lower, completes #6152
1336
1337 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1338
1339         * Makefile.am: Remove gtk-config-2.0 again.
1340         (Grrrr, pkg-config. And stops make loops.)
1341
1342 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1343
1344         * gtk/gtksignal.[hc]: removed old emission hook API.
1345         
1346         * docs/Changes-2.0.txt: fixed sections.
1347         
1348         * gtk/gtktextbuffer.c: signal arg fixups.
1349
1350 2001-03-07  Havoc Pennington  <hp@redhat.com>
1351
1352         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1353
1354         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1355         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1356         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1357         validation and the redraw which is higher priority than the
1358         validation.
1359
1360 2001-03-07  Havoc Pennington  <hp@redhat.com>
1361
1362         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1363         (gtk_entry_set_property): remove trailer
1364
1365         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1366         (gtk_entry_get_width_chars): new functions, to set size request to 
1367         a given number of characters
1368
1369         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1370
1371         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1372         (gtk_dialog_get_has_separator): new function
1373         (run_delete_handler): fix to not emit "response" signal
1374         because we already did in the delete event handler installed
1375         at dialog creation time.
1376         
1377         * gtk/gtkdialog.h: add a has_separator property,
1378         add GTK_DIALOG_NO_SEPARATOR flag
1379
1380 2001-03-07  Havoc Pennington  <hp@redhat.com>
1381
1382         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1383         off decorations for a window.
1384
1385         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1386         changes
1387
1388         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1389         to get location of PangoLayout inside the label, closes #51198
1390
1391         * gtk/testgtk.c (create_bbox): fix up button box usage
1392
1393         * gtk/testcalendar.c (create_calendar): fix up button box usage
1394
1395         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1396
1397         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1398
1399         * gtk/gtkhbbox.h: deprecations
1400
1401         * gtk/gtkvbbox.h: deprecations
1402
1403         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1404         emulate deprecated gtk_button_box_get_spacing
1405
1406         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1407         the "set global default" functions
1408         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1409         GtkBox base class
1410
1411         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1412
1413         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1414         render the icon, return the missing image icon.
1415
1416         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1417         image icon if the load fails.   
1418
1419         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1420         when no image is found; should be the Netscape "missing image"
1421         icon eventually but for now is a random image
1422
1423         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1424         role for the session manager
1425
1426         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1427
1428         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1429         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1430
1431         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1432
1433 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1434
1435         * gtk/*.c: marshaller fixes.
1436         
1437         * gtk/gtkmarshal.list: extreme cleanup.
1438
1439         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1440         param spec for now.
1441
1442         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1443         where appliable.
1444
1445         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1446         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1447         which are not reference counted:
1448         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1449         PangoFontDescription, GtkTreeIter and GtkTreePath.
1450
1451 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1452
1453         * gtk/gtktreeselection.h: 
1454         * gtk/gtktreemodel.c:
1455         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1456         file should be included directly, and gobject/gmarshal.h
1457         as well as gtk/gtkmarshal.h even can't be included directly.
1458
1459         * Makefile.am: grr, install gtk-config-2.0.
1460
1461         * gtk/testgtk.c:
1462         * gtk/simple.c:
1463         * gtk/gtkmenu.c:
1464         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1465         passing "*signal*::*" args to gtk_widget_set().
1466         
1467         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1468         
1469         * gtk/*.c: removed trailer arg from property setters and getters.
1470         macro fixups.
1471
1472 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1473
1474         * gtk/gtklabel.c (set_markup): Removed warning
1475
1476 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1477
1478         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1479         field to allow you to hide cell renderers.
1480
1481         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1482
1483         * gtk/gtktreeview.c: Add support for invisible cells.
1484
1485 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1486
1487         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1488         Add "clicked" signal back to columns.
1489
1490         * ChangeLog: remove conflict markers.
1491
1492 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1493
1494         * gtk/gtkbutton.c: Add animation of activation by, on 
1495         activate, pressing the button, and adding a timeout that 
1496         releases the button after 250ms or on key release and
1497         emits ::clicked. (#51501)
1498
1499         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1500         action area, we connect to ::clicked instead of ::activate
1501         so the dialog stays up through the animation.
1502
1503 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1504
1505         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1506         check the ignore_enter flag for the menu shell that
1507         the item is actually a child of, not for attached
1508         submenus. (#51536)
1509
1510 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1511
1512         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1513         special key-press grab handling for widgets within
1514         GtkWindows. Otherwise, fall through to normal case.
1515
1516         This prevents key events being sent twice to GtkInvisible
1517         widgets, which can cause all sorts of mischief.
1518
1519 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1520
1521         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1522         widget is in effect, give the grab widget a first
1523         crack at KEY_PRESS/RELEASE events. (#424)
1524
1525 2001-03-06  James Henstridge  <james@daa.com.au>
1526
1527         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1528         offset for the window_state_event to point at window_state_event
1529         rather than no_expose_event.
1530
1531 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1532
1533         * gtk/gtkimmodule.h: fix busted /* comment */
1534
1535 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1536
1537         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1538         object properties.
1539
1540 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1541
1542         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1543         add object properties.
1544
1545         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1546         to add object properties.
1547
1548         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1549         object properties.
1550
1551         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1552         add object properties.
1553
1554         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1555         object properties.
1556
1557 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1558
1559         * gtk/gtktreemodel.c: renamed "child_toggled" to
1560         "has_child_toggled".
1561
1562         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1563         handle new signal name.
1564
1565         * gtk/gtktreestore.c: Updated to handle new signal name.
1566         * gtk/gtklisttore.c: Updated to handle new signal name.
1567         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1568
1569 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1570
1571         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1572         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1573
1574 2001-03-05  Michael Natterer  <mitch@gimp.org>
1575
1576         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1577         pixbuf-engine coincidentially also failed to make one of it's
1578         parent_class pointers static, causing overwriting of GtkLabel's
1579         parent_class pointer in pixbuf_style_class_init().
1580         (Will commit the fix to the pixbuf-engine too).
1581
1582 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1583
1584         * gdk/gdkwindow.h:
1585         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1586         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1587         gdk_window_set_icon_list for net wmspec functionality.
1588
1589         * gdk/x11/gdkwindow-x11.c:
1590         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1591         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1592         gdk_window_set_icon_list.
1593         Added gdk_wmspec_change_state helper function and used it in the code.
1594         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1595
1596         * gtk/gtkdialog.c (gtk_dialog_init):
1597         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1598
1599         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1600         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1601
1602         * gtk/gtkwindow.c:
1603         new function gtk_window_set_type_hint.
1604         On realize, set type hint and modal hint.
1605
1606         * gtk/gtkwindow.h:
1607         Added type_hint field and gtk_window_set_type_hint.
1608
1609 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1610
1611         * gtk/gtklabel.[ch]:
1612         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1613         New function gtk_label_get_accel_keyval () to get the underline accelerator
1614         of the label. Setting the label pattern overrides other attributes.
1615
1616 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1617
1618         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1619         Added missing initializers to gtk_rc_style_init().
1620
1621 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1622
1623         * gtk/gtktextview.c: fixed bug #51097 about setting 
1624         gtk_text_view_set_border_window_size() if the widget is 
1625         already realized.
1626
1627 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1628
1629         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1630
1631         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1632         comment. Won't do to have duplicated doc comments between
1633         the platform subdirs.
1634
1635 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1636
1637         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1638           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1639
1640         Detectable auto-repeat - make a repeating key generate
1641         press/press/press/release instead of press/release pairs.
1642
1643         If we have Xkb and XkbSetDectableAutoRepeat supports
1644         that, we do it that way. Otherwise, when we get
1645         a release event, we check ahead with XPending to see
1646         if the next key is a KeyPress with the same keycode
1647         and timestamp. (Not 100% reliable, but pretty close.)
1648           
1649 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1650         
1651         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1652         special key-press grab handling for widgets within
1653         GtkWindows. Otherwise, fall through to normal case.
1654  
1655         This prevents key events being sent twice to GtkInvisible
1656         widgets, which can cause all sorts of mischief.
1657  
1658 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1659  
1660         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1661         widget is in effect, give the grab widget a first
1662         crack at KEY_PRESS/RELEASE events. (#424)
1663  
1664 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1665
1666         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1667         to extend the selection. (Roughly based on patch
1668         from Jay Cox, #50939)
1669
1670         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1671         to properly handle previous GDK_BUTTON_PRESS. 
1672         (Patch from Jay Cox, #50938)
1673
1674         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1675         '\0' back along with the deleted text. (#51148)
1676
1677 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1678
1679         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1680         the group when extracting it from the X keyboard event.
1681
1682         * modules/input/Makefile.am modules/input/imipa.c: 
1683         Simple module for entering IPA. (Do we need a 
1684         gtk-stupid-input-tricks CVS module?)
1685
1686 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1687
1688         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1689         const.
1690
1691         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1692
1693         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
1694         is no focus widget for the dialog currently, grab the focus as well
1695         as the default.
1696
1697         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
1698         the action area's children to iterate through, not the
1699         dialog's children.
1700
1701 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
1702
1703         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
1704         Add plug-socket tests. (Won't work worth a darn until I commit
1705         the rest of the plug-socket changes, but no reason these
1706         can't go into CVS now.)
1707
1708 2001-03-02  Havoc Pennington  <hp@redhat.com>
1709
1710         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
1711         _gdk_region_get_xrectangles()
1712
1713         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
1714
1715         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1716
1717         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1718         function, contributed by Ron Steinke    
1719
1720         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1721         gdk_net_wm_supports
1722
1723         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1724         New function, contributed by Ron Steinke
1725
1726         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1727         used to line up the text in the entry when using the entry for
1728         editable sheet cell hacks
1729
1730         * gtk/testgtk.c (create_entry): test the activate_default setting
1731         on GtkEntry
1732
1733         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1734         cause the entry to activate the default button for a dialog when 
1735         activated
1736         (gtk_entry_get_activates_default): new function
1737
1738 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1739
1740         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1741         Hwang to move call to sync_selection() up a few lines
1742         to before the row list is modified, to fix crash when
1743         removing rows in the undo_selection list.
1744
1745         (Test case provided by Daniel Elstner:
1746
1747         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1748
1749 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1750
1751         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1752         of tree->root_tree in parent_set rather than _map(), 
1753         fixing #50892 in a bit better manner.
1754
1755 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1756
1757         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1758
1759 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1760
1761         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1762         gtk_default_draw_shadow.
1763
1764 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1765
1766         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1767         warning, make warnings more verbose, treat a error
1768         in shmat as permanent, and don't try again.
1769         (#51163, Ed Randall.)
1770
1771 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1772
1773         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1774         delay for the first click before starting to scroll.
1775         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1776
1777         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1778         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1779
1780 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1781
1782         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1783         cleanup to remove some references to unused
1784         ->xoffset, ->yoffset.
1785
1786 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1787
1788         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1789         mask. (#51039, fix from Martin Maierhofer)
1790
1791 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1792
1793         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1794         for unshifted + and shifted = for non-us keyboards.
1795         Make <Control>+ and <Control>- work as well as 
1796         <Control>KP_Plus, <Control>KP_Minus for recursive
1797         open/close.  (#2682, René Seindal)
1798
1799 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1800
1801         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1802         the active menu item before deactivating the menu,
1803         so gtk_menu_popdown doesn't change the history. (#50964)
1804         
1805 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1806
1807         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1808         draw lines with text_gc rather than black_gc.
1809         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1810
1811 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1812
1813         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1814         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1815         less interrelated then it was, but it still requires the
1816         GtkTreeView to map it.
1817
1818         * test/testtreecolumn.c: Now I can add a column to one view,
1819         remove it, add it to the another view, remove it, then re-add it
1820         to the first.  Nifty.
1821
1822 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1823
1824         * docs/tutorial/gtk-tut.sgml: Minor corrections
1825
1826 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1827
1828         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1829         GtkRowReference.
1830
1831 2001-02-28  Havoc Pennington  <hp@redhat.com>
1832
1833         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1834         draw_default
1835         (gtk_widget_draw_focus): remove this function; we could instead
1836         make it just gtk_widget_draw(), but in most cases I think the
1837         result would be broken user code, so think it's better to have
1838         that code not compile and get fixed
1839         (gtk_widget_draw_default): ditto
1840
1841         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1842         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1843         
1844         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1845         widgets lose/get the default, instead of calling draw_default
1846         
1847         * docs/Changes-2.0.txt: note about all this
1848
1849         Then fixed every widget in GTK, I won't list all the filenames.
1850
1851 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1852
1853         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1854         _gtk_tree_row_reference_deleted.
1855         (inserted_callback): Proxy out to
1856         _gtk_tree_row_reference_inserted.
1857         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1858         get around signal emission ordering problem.
1859
1860         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1861         fix to work with SINGLE 
1862         (_gtk_tree_selection_internal_select_node): Major sanitization on
1863         selections.  SINGLE now seems to work.
1864
1865         * tests/Makefile.am: add testtreecolumn.c:
1866
1867         * tests/testtreecolumn.c: New test.  Mostly points out selection
1868         bugs currently, but will test columns later.
1869
1870         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1871         selection bug.  I hate touching this code -- it's scary.
1872
1873 2001-02-26  Havoc Pennington  <hp@redhat.com>
1874
1875         * gtk/testgtk.c: test the window state stuff
1876
1877         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1878         window come to the user's attention as if it were just created
1879         (gtk_window_iconify): new function
1880         (gtk_window_deiconify): new function
1881         (gtk_window_stick): new function
1882         (gtk_window_unstick): new function
1883         (gtk_window_maximize): new function
1884         (gtk_window_unmaximize): new function
1885
1886         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1887
1888         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
1889
1890         * gdk/x11/gdkevents-x11.c: create window state events when
1891         appropriate
1892         (gdk_wmspec_supported): new function
1893
1894         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
1895         iconification before showing the window
1896         (gdk_window_deiconify): new function
1897         (gdk_window_stick): new function
1898         (gdk_window_unstick): new function
1899         (gdk_window_maximize): new function
1900         (gdk_window_unmaximize): new function
1901
1902         * gdk/gdkwindow.c: store the window state in the window; 
1903         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
1904         window->mapped.
1905         (gdk_window_get_state): return the current window state
1906
1907         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
1908         (gdk_event_get_state): handle GDK_WINDOW_STATE
1909         (gdk_synthesize_window_state): function to create the window state
1910         events
1911
1912         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
1913         event, for changes to "window state" such as maximized, sticky, 
1914         etc.
1915         
1916         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
1917         focuses a window
1918
1919         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
1920         finds out if we support a given WM spec hint
1921
1922 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
1923
1924         * docs/faq/gtk-faq.sgml: New question re memory leaks.
1925
1926 2001-02-25  Hans Breuer  <hans@breuer.org>
1927
1928         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
1929         cause we want to loose those prototypes only in the latter case
1930
1931         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
1932         GdkPixmapImplWin32 because it itsn't derived from it. Use the
1933         impl member variable instead
1934
1935         * gtk/gtk.def : updated
1936
1937         * gtk/gtklist.c : 
1938         * gtk/gtkmenus.c : include <string.h> for memset ()
1939
1940         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
1941         for everthing built here, but for gtk-x.x.dll only. This solves
1942         problem of indifferent gtk type definitions
1943
1944 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
1945
1946         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
1947
1948 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
1949
1950         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
1951         column that is exposed.
1952
1953         (_gtk_tree_view_update_size): Changed name from set_size, and
1954         changed function to do more work, and not force people calling it
1955         to figure out the size.  Simplifies a lot of code elsewhere.
1956
1957 2001-02-23  Alexander Larsson  <alexl@redhat.com>
1958
1959         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
1960         return solid masks for xpms that have no transparent color.
1961         This makes the ..._create_from_xpm... API backwards
1962         compatible.
1963
1964 2001-02-23  Tor Lillqvist  <tml@iki.fi>
1965
1966         * README.win32: Update. Mention the gtk-1-3-win32-production
1967         branch.
1968
1969         * gdk/win32/bdfcursor.c: New file. A program that generates
1970         xcursors.h. Thanks to Stefan Ondrejicka.
1971
1972         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
1973         compact format.
1974
1975         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
1976
1977         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
1978         function, uses xcursors.h.
1979         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
1980         cursor from inline data instead of using LoadCursor() to generate
1981         it from a resource.
1982
1983         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
1984         event, must check the Windows message for mouse button state, as
1985         the GDK event state might not have been built if it is
1986         undelivered. Remove one goto.
1987
1988         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
1989         SetCursor() if the current cursor as returned by GetCursor() is
1990         the window's previous cursor. The ChildWindowFromPoint() test
1991         apparently didn't work correctly.
1992
1993         * gdk/win32/rc/*.cur: Remove.
1994
1995         * gdk/win32/rc/gdk.rc.in: Remove cursors.
1996
1997         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
1998
1999         * gtk/makefile.{mingw,msc}.in: Updates.
2000
2001 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2002
2003         * gtk/gtktreemodel.h: add functions for signal emission.
2004
2005         * gtk/gtktreestore.c: move to use above functions instead of
2006         g_signal_emit.
2007
2008         * gtk/gtkliststore.c: ditto
2009
2010 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2011
2012         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2013         GObject instead of GtkObject.
2014
2015         * gtk/gtkliststore.c: ditto.
2016
2017         * gtk/gtktreemodelsort.c: ditto.
2018
2019         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2020         GtkTreeModelIface, instead of in each model.
2021
2022 2001-02-21  Havoc Pennington  <hp@redhat.com>
2023
2024         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2025         unbreak this function
2026
2027         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2028         properties
2029
2030         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2031         properties
2032
2033         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2034         properties
2035
2036         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2037         mean unset the max length
2038
2039 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2040
2041         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2042         Changed name to be set_cell_data_func to make it clear what
2043         the functino does.  Close bug #51069.
2044
2045 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2046
2047         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2048         have memory actually freed.  Keeps box running longer.
2049
2050 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2051         
2052         * gtk/gtkseparatormenuitem.[ch]:
2053         Added new menu separator item. The drawing and size handling
2054         is still done in GtkMenuItem, but the API is a bit more sane.
2055         
2056         * gtk/Makefile.am:
2057         Add gtkseparatormenuitem.[ch].
2058
2059         * gtk/gtk.h:
2060         Add gtkseparatormenuitem.h.
2061         
2062         * gtk/gtkentry.c:
2063         * gtk/gtkmenufactory.c:
2064         * gtk/gtktextview.c:
2065         Use the new API for menu separators.
2066         
2067         * demos/gtk-demo/menus.c (create_menu):
2068         Add some GtkSeparatorMenuItem demo code.
2069
2070 2001-02-20  Havoc Pennington  <hp@redhat.com>
2071
2072         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2073         Lee Mallabone
2074
2075         * gtk/gtkarrow.c: Convert to new property API, patch from 
2076         Lee Mallabone
2077
2078 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2079
2080         * tests/testtreeview.c (toggled_callback): fix to reflect change
2081         in GtkTreeModelStore.
2082
2083 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2084
2085         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2086         function to create an icon set from a pixbuf.
2087
2088 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2089
2090         * gtk/gtkcellrenderertext.[ch]:
2091         Add a "markup" property.
2092
2093         * gtk/treestoretest.c:
2094         Use the markup property, remove some leftover stuff from
2095         GtkTreeModelMapping.
2096
2097 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2098
2099         * gtk/gtklabel.c (gtk_label_set_selectable):
2100         Queue a redraw if the selectable setting was changed.
2101
2102 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2103
2104         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2105         Actually copy the whole gc, not just the public parts.
2106         
2107         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2108         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2109         labels.
2110
2111 2001-02-19  Havoc Pennington  <hp@pobox.com>
2112
2113         * gdk/gdkwindow.c: docs
2114
2115         * gdk/gdkrgb.c: docs
2116
2117         * gdk/gdkregion-generic.c: docs
2118
2119         * gdk/gdkgc.c (gdk_gc_set_values): docs
2120
2121         * gdk/gdkdraw.c: docs
2122
2123         * gdk/gdkdrawable.h: deprecate drawable get/set data
2124
2125 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2126
2127         * demos/gtk-demo/dialog.c: Add simple new demo.
2128
2129 2001-02-19  Havoc Pennington  <hp@redhat.com>
2130
2131         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2132         insert_child_anchor signal, bug #50245
2133
2134         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2135         from create_child_anchor, so the anchor is passed in
2136
2137         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2138         (_gtk_widget_segment_new): have the child anchor object passed in, 
2139         instead of creating it.
2140
2141         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2142         to gtk_text_buffer_get_modified
2143
2144 2001-02-19  Havoc Pennington  <hp@redhat.com>
2145
2146         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2147         changed GLib without fixing GTK
2148
2149         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2150         functions to have an underscore in front. Most of them should 
2151         probably just go away, but for starters don't export them.
2152         Bug #50482
2153
2154 2001-02-19  Havoc Pennington  <hp@redhat.com>
2155
2156         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2157         excluded by default
2158
2159         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2160         clean up the old code a bit
2161
2162         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2163         inconsistent state
2164
2165         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2166         draw inconsistent state
2167
2168         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2169         (create_menu): add inconsistent test
2170
2171         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2172         new function
2173         (gtk_check_menu_item_get_inconsistent): new function
2174         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2175         state (using etched in for now)
2176
2177         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2178         draw inconsistent state
2179
2180         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2181         function, used when the user has selected a range of stuff in
2182         different states
2183         (gtk_toggle_button_get_inconsistent): accessor for that
2184         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2185         don't know what else to do)
2186
2187 2001-02-19  Hans Breuer <hans@breuer.org>
2188
2189         * gtk/gtk.def : updated exported symbols
2190
2191         * gtk/makefile.msc.in : updated
2192
2193         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2194         a colormap, when invoked from testgtk::entry. I'm not sure where
2195         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2196         avoids immediate crashing ...
2197
2198         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2199         any objections ?
2200
2201         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2202         0 parameter. At least msvc doesn't like macros with var args. 
2203         I simply removed the extra 0, was it a feature or a typo ?
2204
2205         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2206         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2207         because the value assignment to the internal struct wasn't working.
2208         I'm not absolutely sure. The problem could have been resolved by
2209         changing the "func" declartion in the struct, but was the pointer
2210         to the function pointer intended ?
2211
2212         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2213
2214         * gdk/gdk.def : updated exported symbols
2215
2216         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2217         only use SetDIBitsToDevice if there is a palette at the drawable
2218         and the image is GDK_VISUAL_PSEUDO_COLOR
2219
2220         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2221
2222         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2223
2224         * gdk/*/makefile.msc : updated
2225
2226 2001-02-19  Havoc Pennington  <hp@redhat.com>
2227
2228         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2229         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2230
2231         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2232         (gdk_key_repeat_restore): nuke
2233
2234         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2235         (gdk_init_check): no atexit func
2236
2237         * gdk/gdkrgb.h: mark some stuff deprecated
2238
2239         * gdk/gdkcolor.h: mark some stuff deprecated
2240         
2241         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2242
2243         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2244
2245 2001-02-16  Havoc Pennington  <hp@redhat.com>
2246
2247         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2248         scroll steps.
2249
2250         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2251         steps, and add Ctrl-arrow shortcuts for paging visually as with
2252         HScale, since Page Up and Page Down move logically.
2253
2254         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2255         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2256         
2257         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2258         steps
2259         (gtk_range_scroll): handle the visual steps
2260
2261         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2262         scroll steps
2263
2264         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2265         steps, not the logical ones.
2266
2267         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2268         (scroll_vertical): handle up/down steps
2269
2270 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2271
2272         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2273         Copy data and free data with free().
2274
2275         * gdk-pixbuf/gdk-pixbuf.c:
2276         * gdk-pixbuf/io-jpeg.c:
2277         * gdk-pixbuf/io-png.c:
2278         Use g_try_malloc/g_free instead malloc/free.
2279         
2280         * gdk-pixbuf/test-gdk-pixbuf.c:
2281         Must... initialize... gobject...
2282         
2283         * gdk-pixbuf/pixops/timescale.c:
2284         * gtk/gtkcalendar.c:
2285         Use g_malloc instead of malloc.
2286         
2287 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2288
2289         * gtk/testgtkrc:
2290         Comment out property assignments, these don't work yet.
2291
2292 2001-02-17  Havoc Pennington  <hp@pobox.com>
2293
2294         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2295         bit.
2296
2297 2001-02-17  Havoc Pennington  <hp@pobox.com>
2298
2299         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2300         shadowed variables that had broken size request in some cases,
2301         leading to bogus tooltips (#50996)
2302
2303 2001-02-06  Jon K Hellan  <hellan@acm.org>
2304
2305         Implement fast browsing of tooltips, bug #50619
2306         
2307         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2308         and last_popdown
2309         
2310         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2311         use_sticky_delay and last_popdown.
2312         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2313         time of popdown.
2314         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2315         is NULL.
2316         (gtk_tooltips_recently_shown): New static function.  Return true
2317         if < sticky_delay has elapsed since last popdown.
2318         (gtk_tooltips_event_handler): Display window after sticky_delay
2319         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2320         since last popdown.
2321         
2322 2001-02-17  Havoc Pennington  <hp@pobox.com>
2323
2324         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2325         instead of (). #6394
2326
2327         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2328         G_CONST_RETURN, make it return by reference, #50473
2329         
2330 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2331
2332         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2333         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2334         setup fields contain garbage (e.g. subwindow, breaking
2335         gdk_drawable_ref() upon event copy).
2336         (gtk_menu_stop_navigating_submenu_cb): same here.
2337
2338         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2339         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2340         * gtk/gtkclist.c (vertical_timeout): 
2341         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2342         default-zero-intialization for unions to memset(,0,), as unions are
2343         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2344         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2345
2346         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2347         g_closure_sink() warning.
2348
2349         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2350         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2351         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2352         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2353         
2354 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2355
2356         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2357         gtk_*_store_get, and moved to GtkTreeModel.
2358
2359         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2360
2361         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2362
2363         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2364
2365         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2366         set the func.
2367
2368         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2369         freeze/thaw notify between setting all the properties for a cell.
2370
2371         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2372
2373 2001-02-15  Havoc Pennington  <hp@redhat.com>
2374
2375         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2376         the X coordinates so they're with respect to the line, rather than 
2377         with respect to the layout.
2378
2379         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2380         Mallabone
2381
2382         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2383         and inverted test
2384
2385         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2386         #50806
2387
2388         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2389
2390         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2391         gtk_text_iter_is_end
2392
2393         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2394         rename gtk_text_buffer_get_end_iter
2395
2396         * gtk/testgtk.c (create_labels): Add test for selectable
2397
2398         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2399         the selection stuff. This code is kind of broken since it doesn't 
2400         use the theme engine.
2401
2402         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2403         fix infinite loop and y offset problem
2404         (gdk_draw_layout_line_with_colors): fix foreground color handling
2405
2406         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2407         that makes the label selectable.
2408         
2409         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2410         layout when the style is set, since fonts etc. could have changed.      
2411
2412 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2413
2414         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2415
2416         * gtk/gtktreemodelsimple.[ch]: removed.
2417
2418 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2419
2420         * gtk/gtktreemodelmapping.[ch]:
2421         New files. Implement GtkTreeModelMapping.
2422         
2423         * gtk/Makefile.am:
2424         Add gtktreemodelmapping.[ch].
2425         
2426         * gtk/gtk.h:
2427         Add gtktreemodelmapping.h
2428
2429         * gtk/treestoretest.c:
2430         Test the GtkTreeModelMapping
2431
2432 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2433
2434         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2435         have a demo, we might as well pass in real values.  Thanks to
2436         clahey for pointing this out.
2437
2438 2001-02-14  Havoc Pennington  <hp@pobox.com>
2439
2440         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2441         "static" to a private function
2442         (gtk_image_menu_item_class_init): remove destroy handler,
2443         add "image" object property
2444
2445 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2446
2447         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2448         Add a shortcut if the window and the current clip_region doesn't
2449         overlap. This is needed when there are a lot of windows in a
2450         window. The layout test in testgtk is a good test.
2451
2452         * gdk/linux-fb/gdkwindow-fb.c:
2453         Whitespace fix.
2454
2455 2001-02-13  Sven Neumann  <sven@convergence.de>
2456
2457         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2458
2459 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2460
2461         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2462         Don't reference last_cursor if it is null. Fixes crash when rotating
2463         the screen before having moved the mouse.
2464
2465         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2466
2467         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2468
2469         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2470         when using 90 or 270 degrees rotation.
2471
2472 2001-02-12  Havoc Pennington  <hp@pobox.com>
2473
2474         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2475         it always set the foreground, even if we were only using
2476         a stipple.
2477         (gdk_draw_layout_line_with_colors): new function, allow
2478         override colors
2479         (gdk_draw_layout_with_colors): new function, allow override
2480         colors
2481         (gdk_pango_layout_line_get_clip_region): function to get the clip
2482         region for a logical text range
2483         (gdk_pango_layout_get_clip_region): get the clip region for a
2484         logical text range
2485
2486         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2487         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2488         the right number of arguments.
2489
2490         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2491         enhance the function to check that node data corresponds to a 
2492         view still belonging to the tree.
2493
2494         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2495         GtkTreePath
2496         (gtk_tree_view_inserted): ditto
2497         (gtk_tree_view_child_toggled): ditto
2498
2499         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2500         simplify this code.
2501
2502         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2503         a PangoAttrList
2504
2505         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2506
2507         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2508
2509         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2510         size in the size request 
2511         (gtk_menu_bar_size_allocate): consider toggle size here
2512
2513         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2514         that displays a widget in the toggle slot
2515
2516         * gtk/testgtk.c: test GtkImageMenuItem
2517
2518         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2519         
2520         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2521         request and allocation
2522
2523         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2524
2525         * gtk/gtkcheckmenuitem.c
2526         (gtk_check_menu_item_toggle_size_request): ditto
2527         
2528 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2529
2530         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2531         reference.
2532
2533         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2534         and refuse to initialize GTK+ if they fail.
2535
2536 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2537
2538         * configure.in: Add check for gtk-doc version.
2539
2540 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2541
2542         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2543         where the xpad/ypad was only being used on one side!
2544
2545 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2546
2547         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2548         function, copied from X11 version.
2549
2550         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2551         DestroyCursor failures. The reason for the problem (despite the
2552         inconsistent messages from GetLastError()) was that
2553         DestroyCursor() cannot be called while a cursor is set in a
2554         window. Set the new cursor first and then destroy the old one.
2555         Thanks to jpe@archaeopteryx.com.
2556
2557         * gdk/win32/gdkcc-win32.c: Remove.
2558
2559         * gdk/win32/Makefile.am: Remove from here, too.
2560         
2561         * gdk/gdk.def
2562         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2563
2564         * gtk/gtk.def
2565         * gtk/makefile.mingw.in: Updates.
2566
2567 2001-02-08  Havoc Pennington  <hp@redhat.com>
2568
2569         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2570         add a widget to a bin that already has a child.
2571
2572         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2573
2574         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2575         
2576         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2577
2578         * gdk/gdk.h: remove gdkcc.h
2579
2580         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2581
2582         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2583         GdkPixbuf, since the previous implementation was GdkColorContext
2584         dependent.
2585
2586         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2587         
2588 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2589
2590         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2591         a sane value!
2592
2593 2001-02-08  Havoc Pennington  <hp@redhat.com>
2594
2595         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2596         lighten them.
2597
2598 2001-02-08  Havoc Pennington  <hp@redhat.com>
2599
2600         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2601         validation idle
2602
2603         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2604         cell renderer
2605
2606         * demos/pixbuf-demo.c (timeout): remove deprecated
2607         gtk_widget_draw
2608
2609         * demos/testpixbuf-save.c (main): remove deprecated
2610         gtk_drawing_area_size
2611
2612         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2613         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2614         at the start of the allocation.
2615         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2616         unsetup or NULL model.
2617
2618         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2619         even/odd/sorted cells in the tree view.
2620
2621         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2622         bugfixes
2623
2624         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2625         backgrounds with draw_flat_box using different detail for even/odd
2626         rows.
2627
2628         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2629         row, so we can draw the alternating colors thing
2630
2631         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2632         property from a synonym property, notify for the synonym.
2633         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2634         (gtk_text_tag_get_property): Always return the font, even if
2635         all its fields aren't set
2636
2637         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2638         store the attr list; it leaves us with no way to change attributes
2639         in _render according to the render flags, and no way to implement
2640         get_property. Instead store all the specific text attributes. 
2641         Separate whether an attribute is enabled from its value. Sync all
2642         properties with GtkTextTag, make them all consistent, etc.
2643
2644         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2645         renderers can highlight the sort row/column     
2646
2647         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2648         accessor functions to get values; this has the side effect of
2649         showing up which accessor functions were missing. Added those.
2650
2651         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2652         set_alignment, to be consistent with GtkLabel, GtkMisc
2653
2654         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2655         arrow.
2656
2657         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2658
2659         * gtk/gtktreesortable.h: updates in here
2660
2661 2001-02-07  Sven Neumann  <sven@convergence.de>
2662
2663         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2664         pango dimensions after painting the background. We used to draw
2665         gigantic flat boxes here.
2666
2667 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2668
2669         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2670         error introduced with earlier commit) (pointed out by
2671         Ollie Lho)
2672
2673 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2674
2675         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2676         which are no longer necessary.
2677
2678 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2679
2680         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2681
2682 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2683
2684         * gdk/gdk.def
2685         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2686         Provide dummy implementations.
2687
2688 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2689
2690         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2691
2692         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
2693         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
2694         deprecated this function.
2695
2696         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
2697         argument.
2698
2699 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
2700
2701         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
2702
2703 2001-02-03  Havoc Pennington  <hp@pobox.com>
2704
2705         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
2706         Mikael Hermansson with patch from Mikael (if there was a toggle
2707         start one after the first character in the range, this function
2708         was broken). Bug #50380
2709
2710 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
2711
2712         * configure.in: Remove confusing comment about X11.
2713
2714 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2715
2716         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2717         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2718         
2719 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2720
2721         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2722         it breaks things on BSD. If you want to compile GTK+ with
2723         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2724         when configuring, since GTK+ simply can't be "pure ANSI" 
2725         in the header files it uses. (#8170, Greg Hudson)
2726
2727 2001-02-02  Havoc Pennington  <hp@redhat.com>
2728
2729         * gtk/gtkwindow.c: docs
2730
2731         * gtk/gtkwidget.c: docs
2732         (gtk_widget_set_colormap): add a reference to the colormap
2733         (gtk_widget_get_default_colormap): add a reference to the colormap
2734
2735         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2736
2737         * gtk/gtktextiter.c: docs
2738
2739         * gtk/gtkmain.c (gtk_propagate_event): docs
2740
2741         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2742         (gtk_paned_set_position): docs
2743
2744         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2745         sort interface, no implementation yet.
2746
2747         * demos/testpixbuf.c (new_testrgb_window): replace
2748         gtk_drawing_area_size() with gtk_widget_set_usize()
2749
2750         * demos/testpixbuf-drawable.c (main): ditto
2751         
2752         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2753
2754         * gtk/gtktextbuffer.c: docs
2755
2756         * gtk/gtkstock.c: docs
2757
2758         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2759
2760         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2761
2762         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2763         
2764         * gtk/gtkimage.c: add some docs in here
2765         (gtk_image_size_request): change name of
2766         gtk_widget_render_stock_icon
2767         (gtk_image_get_icon_set): don't dup returned string
2768         (gtk_image_get_icon_set): don't dup returned string
2769
2770         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2771         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2772         and gtkiconfactory.h functions
2773
2774         * gtk/gtkiconfactory.c: add some docs in here
2775
2776         * gtk/gtkmain.c (gtk_get_default_language): document
2777         (gtk_get_current_event): document
2778         (gtk_get_current_event_state): document
2779         (gtk_get_event_widget): document
2780
2781         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2782
2783         * gtk/gtkcontainer.c: Add some documentation
2784         (gtk_container_add): give a more explanatory warning on adding an
2785         already-parented widget, this is kind of a FAQ and also a common
2786         typo that's easier to debug with a nice warning 
2787
2788         * gtk/gtkcellrenderertoggle.c
2789         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2790         adding this, it's useless
2791         (gtk_cell_renderer_toggle_set_active): remove
2792         (gtk_cell_renderer_toggle_get_radio): add
2793
2794         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2795         the NULL cell renderer, that doesn't make any sense to me. 
2796
2797         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2798         demo code should never use deprecated features.
2799
2800         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2801         code should never use deprecated features.
2802
2803         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2804         gtk_widget_queue_clear_area deprecated
2805
2806         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2807         deprecated
2808
2809         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2810
2811         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2812         a GdkImage deprecated, replaced by new consistently-named
2813         functions       
2814
2815         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2816
2817         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2818
2819         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2820         deprecated
2821
2822         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2823         so it won't appear in docs and confuse people.
2824
2825         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2826
2827         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2828         macros deprecated. (can't mark the type itself deprecated, since
2829         GtkProgressBar is not deprecated and we need the type decl to use
2830         GtkProgressBar)
2831
2832         * gtk/gtkpixmap.h: Mark deprecated
2833
2834         * gtk/gtkoldeditable.h: Mark deprecated
2835
2836         * gtk/gtklist.h: Mark deprecated
2837
2838         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2839         for anything anymore.
2840
2841         * gtk/gtkctree.h: Mark deprecated
2842
2843         * gtk/gtkclist.h: Mark deprecated
2844
2845         * gtk/gtkpreview.h: Mark deprecated
2846
2847         * gtk/gtkpacker.h: Mark deprecated
2848
2849         * gtk/gtktipsquery.h: Mark deprecated
2850
2851         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2852
2853         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2854
2855         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2856
2857         * gtk/gtkruler.h: Add comment that it will move out of GTK
2858
2859         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2860
2861         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2862
2863 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2864
2865         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2866         gdk_colormap_sync private since it was never exported
2867         in a header file.
2868
2869         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2870         colormap->colors[] for StaticGray, StaticColor colormaps.
2871
2872         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2873         was being used as if it was image->bits_per_pixel.
2874
2875         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2876         for the image in the GdkImage structure since it isn't
2877         reconstructable, and we need it to handle packed types
2878
2879         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2880         the assumption that on Win32 image->bits_per_pixel == image->depth,
2881         always.
2882
2883         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2884
2885         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2886         warning message if no converter can be found. 
2887
2888 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
2889
2890         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
2891         chars to isupper() / tolower(). (#567)
2892
2893         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
2894         to clear up 64-bit warnings. (#567)
2895
2896 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
2897
2898         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
2899         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
2900
2901         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
2902         since some people set $(libdir) separately. (#1290, David Kaelbling)
2903
2904 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
2905
2906         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
2907         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
2908         MAXPATHLEN, but the code here depends on a fixed value.)
2909         (#4524)
2910
2911 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
2912
2913         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
2914         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
2915
2916 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
2917
2918         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
2919         viewable there is no way that moving the node will cause the 
2920         focus row to become not viewable, so omit check on the visibility
2921         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2922
2923 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
2924
2925         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
2926         selection before inserting new text.
2927
2928 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
2929
2930         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
2931         Make the sensitivity of the reparented child track that of
2932         the original parent menu item. (#34218, David Hodson)
2933
2934         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
2935         the case where the current item is destroyed properly.
2936
2937         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
2938         some edge cases with child-less menuitems.
2939         
2940 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
2941
2942         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
2943         key pop down window. (#12074, Jon K Hellan)
2944
2945 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
2946
2947         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
2948         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
2949         The solution here isn't perfect - you get an extraneous
2950         emission of "toggle", which could conceivably confuse an app,
2951         but better than the current situation. LXR search seems to
2952         indicate that no apps in GNOME CVS connect to "toggle".
2953
2954 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
2955
2956         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
2957         gtk_public_h_sources to directly here to avoid warning when
2958         building srcdir != builddir. (#9656)
2959
2960 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2961
2962         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
2963         handlers in gtkrange.c return the proper values (TRUE == handled)
2964         (#10316).
2965
2966         This is just the tip of the iceberg, but gtkrange.c is the
2967         most common place where the propagation is problematical,
2968         and also a place where it is almost certainly safe to change
2969         this in the stable branch.
2970
2971         (You don't want right click popups on a range control or anything...)
2972
2973 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
2974
2975         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
2976         area on focus out, even if a background pixmap isn't set.
2977         (#13941)
2978         
2979 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
2980
2981         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
2982         to deal with setting the shape properly when scrolling arrows are
2983         turned on, but not visible because there is sufficient space.
2984         (#13432)
2985
2986 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
2987
2988         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
2989         items with submenus, destroy the item along with the submenu.
2990         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
2991         properly.
2992
2993         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
2994         later.
2995
2996 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
2997
2998         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
2999         the focus widget sometimes wasn't drawn with the default if there
3000         was no default widget.
3001
3002         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3003         unreference pixmaps. 
3004
3005         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3006         for some extra safety.
3007
3008 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3009
3010         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3011         the text of a cell to the old pointer value better, by
3012         copying the new text before freeing the old text. Some code
3013         cleanup. (#8079, Karl Nelson)
3014
3015 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3016
3017         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3018         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3019
3020 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3021
3022         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3023         item from a menu, check to see if it matches 
3024         menu->old_active_menu_item, and if so, unref and clear
3025         old_active_menu_item (Patch from Pavel Cisler)
3026
3027         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3028         menu_shell->active_menu_item, if it is the child being
3029         removed. (Patch based on that of Gene Ragan, #50337)
3030
3031 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3032
3033         * gdk/linux-fb/gdkselection-fb.c: 
3034         * gdk/linux-fb/gdkcolor-fb.c: 
3035         * gdk/linux-fb/gdkdrawable-fb2.c: 
3036         * gdk/linux-fb/gdkfont-fb.c: 
3037         * gdk/linux-fb/gdkim-fb.c: 
3038         * gdk/linux-fb/gdkinput.c: 
3039         * gdk/linux-fb/gdkkeyboard-fb.c: 
3040         * gdk/linux-fb/gdkmain-fb.c: 
3041         * gdk/linux-fb/gdkrender-fb.c: 
3042         A bunch of whitespace cleanup.
3043         
3044 2001-01-30  Havoc Pennington  <hp@pobox.com>
3045
3046         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3047         #ifdef GTK_ENABLE_BROKEN.
3048
3049         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3050         GTK_ENABLE_BROKEN just before including the broken headers.
3051         
3052         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3053         deprecated types registered.
3054
3055         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3056         we have to test the broken stuff.
3057
3058         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3059         
3060 2001-01-30  Havoc Pennington  <hp@redhat.com>
3061
3062         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3063         here where prev pointer was set to the wrong thing
3064
3065         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3066         (gtk_tree_path_is_descendant): new function
3067
3068         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3069         cached length
3070         (gtk_list_store_get_iter): don't modify iter if we can't get the
3071         path.
3072
3073         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3074         
3075         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3076         GtkTreeDragDest
3077
3078         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3079         was causing segfault
3080
3081         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3082         pointer to NULL
3083
3084         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3085
3086         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3087         on returning FALSE
3088         (gtk_list_store_iter_children): ditto
3089         (gtk_list_store_iter_nth_child): ditto
3090         (gtk_list_store_iter_nth_child): ditto
3091         (gtk_list_store_iter_parent): ditto
3092
3093         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3094         on iter->user_data != NULL instead of silently accepting it.
3095         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3096         we are returning TRUE.
3097         (gtk_tree_store_iter_children): ditto
3098         (gtk_tree_store_iter_nth_child): ditto
3099         (gtk_tree_store_iter_parent): ditto
3100         (gtk_tree_store_insert): remove handling of parent->user_data ==
3101         NULL, replace with parent == NULL       
3102
3103         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3104         and a comment explaining things
3105
3106         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3107         interface support to GtkTreeStore.
3108
3109         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3110         FALSE if no prev, fix
3111
3112         * gtk/gtktreeview.c (set_source_row): use a row reference
3113         (set_dest_row): use a row reference
3114
3115 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3116
3117         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3118         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3119         (gtk_tree_selection_select_iter): The same as above.
3120
3121 2001-01-26  Havoc Pennington  <hp@redhat.com>
3122
3123         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3124         which holds a handle to a specific row (particular set of values
3125         in the model, i.e. pointer-identity row).
3126
3127         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3128         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3129         Still need to use it for the src/dest row saved on the drag context.
3130
3131 2001-01-26  Havoc Pennington  <hp@redhat.com>
3132
3133         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3134
3135         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3136         not offset by TREE_VIEW_HEADER_HEIGHT
3137         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3138         TREE_VIEW_HEADER_HEIGHT
3139
3140         * configure.in (included_loaders): for me, --with-included-loaders
3141         generates the error "the specified loader yes does not exist",
3142         i.e. the arg defaults to "yes", so change test for value ""
3143         to test for value "yes", and include all loaders in that case.
3144
3145         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3146
3147         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3148         handle TREE_VIEW_VERTICAL_SEPARATOR
3149         (gtk_tree_view_bin_expose): fix to consider the row offset as
3150         pointing halfway into vertical separator.       
3151         (gtk_tree_view_draw_node_focus_rect): ditto
3152
3153         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3154         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3155         (TRUE) to be called.
3156
3157         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3158         debug mode where the invalid region is colored in on invalidate,
3159         so you can see the flicker and know whether your redraw code is 
3160         doing a good job.
3161
3162         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3163         tree window coordinates (clip rect is in tree window coords)
3164
3165         * gtk/Makefile.am: add gtktreednd.[hc]
3166
3167         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3168
3169         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3170         drag-and-drop data operations on a model (so we can set up tree
3171         drag-and-drop automatically)
3172
3173         * gtk/testgtk.c: Add a window to change sensitivity in the
3174         GtkLabel test; add a way to change the entry frame in GtkEntry
3175         test
3176
3177         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3178         (gtk_entry_get_has_frame): new functions to remove the frame
3179         around an entry
3180         (gtk_entry_size_request): shrink requisition if no frame
3181         (gtk_entry_draw_focus): don't draw frame if no frame
3182
3183         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3184         checks inside a cell renderer
3185         (gtk_default_draw_option): ditto for options
3186
3187         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3188         children from the alignment, not the button
3189         (gtk_tree_view_column_init): ref/sink the column, to emulate
3190         GObject refcounting.
3191
3192         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3193         
3194         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3195         Use theme functions to draw the toggles 
3196
3197         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3198
3199         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3200         GdkPangoAttrEmbossed to use in rendering insensitive text
3201
3202         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3203
3204         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3205         using new GDK features
3206         
3207 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3208
3209         * gtk/gtkimage.c:
3210         Splitted gtk_image_clear into gtk_image_clear() and
3211         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3212         to avoid leaks.
3213
3214         * gtk/gtklabel.c (set_markup):
3215         Don't leak text.
3216
3217         * gtk/gtktextlayout.c:
3218         Always free display->shaped_objects.
3219
3220         * gtk/testgtk.c (create_clist):
3221         Don't leak custom style.
3222
3223 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3224
3225         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3226         Don't leak image. Simplify using gdk_colormap_query_color().
3227         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3228
3229         * linux-fb/gdkcolor-fb.c:
3230         Implemented gdk_colormap_query_color.
3231
3232 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3233
3234         * linux-fb/gdkcursor-fb.c:
3235         Don't leak built-in cursors.
3236
3237         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3238         Don't leak tmp_points.
3239
3240         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3241         Don't modify desc. Don't leak font if the PangoFont
3242         isn't found.
3243         
3244         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3245         Free dash_list.
3246
3247         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3248         Don't leak string.
3249         
3250 2001-01-20  Havoc Pennington  <hp@pobox.com>
3251
3252         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3253         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3254         me, matches Pango
3255
3256 2001-01-22  Havoc Pennington  <hp@redhat.com>
3257
3258         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3259
3260         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3261
3262         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3263         Remove, move back to gdk-pixbuf
3264
3265         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3266         to all the word functions
3267
3268         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3269         before doing anything on NULL layout or if we don't have the focus
3270
3271         * gtk/testtext.c (fill_example_buffer): "justification"
3272
3273         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3274         to be called "justification" not "justify"
3275
3276         * demos/gtk-demo/textview.c (create_tags): "justification"
3277         
3278         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3279
3280 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3281
3282         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3283         Don't leak visible_region. Use visible_region instead of region.
3284         
3285         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3286         Don't do extra gdk_drawable_ref(). This is not X.
3287         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3288         gdk_fb_focused_window is ref:ed.
3289         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3290         windows.
3291
3292 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3293
3294         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3295         Don't leak the PangoFontDescriptor.
3296
3297 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3298
3299         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3300         when not realized.
3301         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3302         (gtk_tree_view_realize): add scroll_to support
3303         (gtk_tree_view_finalize): add a finalize method.  Populate.
3304         (gtk_tree_view_insert_column): ref and sink the column.
3305         (gtk_tree_view_append_column): ref and sink the column.
3306         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3307         individual nodes.  Should make the code much more efficient, if
3308         actually used.
3309
3310 2001-01-19  Havoc Pennington  <hp@redhat.com>
3311
3312         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3313         byte_offset variable was being used to mean both "offset into
3314         layout" and "offset into buffer line" which was no longer true
3315         with addition of preedit string; fix
3316
3317 2001-01-19  Havoc Pennington  <hp@redhat.com>
3318
3319         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3320
3321         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3322         function
3323
3324         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3325         implement
3326
3327         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3328         scroll_to_cell, matches TextView scroll functions better
3329         (gtk_tree_view_tree_to_widget_coords): new function
3330         (gtk_tree_view_widget_to_tree_coords): new function
3331         (gtk_tree_view_get_visible_rect): new function
3332         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3333         (gtk_tree_view_draw_node_focus_rect): new function moved from
3334         draw_focus, also, use width of bin_window as width of the focus
3335         rect
3336         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3337         already-expanded rows
3338         (gtk_tree_view_get_cell_rect): new function
3339         (gtk_tree_view_get_path_at_pos): return the click position
3340         relative to the passed-in cell
3341         (gtk_tree_view_set_expander_column): new function
3342
3343         * configure.in: remove gtk-config-2.0 chmod
3344
3345         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3346         and properly handle drags with targets we don't understand
3347         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3348         scrolling anyway
3349         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3350         mark invisible
3351
3352         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3353         function
3354         (gtk_drag_dest_get_target_list): new function
3355         (gtk_drag_dest_set_target_list): new function
3356         
3357         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3358
3359         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3360         related to drag-and-drop
3361
3362 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3363
3364         * gdk/linux-fb/gdkprivate-fb.h:
3365         Define EMULATE_GDKFONT.
3366         Add extra pango_font stuff to GfkFontPrivate.
3367         
3368         * gdk/linux-fb/gdkdrawable-fb2.c:
3369         * gdk/linux-fb/gdkfont-fb.c:
3370         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3371         emulation using PangoFont.
3372
3373 2001-01-17  Havoc Pennington  <hp@pobox.com>
3374
3375         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3376         all the non-deprecated set_foo functions. Added missing object
3377         properties, and added g_object_notify() to setters. 
3378         Wrote docs.
3379         
3380 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3381
3382         * gtk/gtkmain.c
3383         * gtk/gtkrc.c: (Win32) Use the new
3384         g_win32_get_package_installation_(sub)directory() functions.
3385
3386         * config.h.win32.in: New file.
3387         
3388         * config.h.win32: Removed.
3389
3390         * configure.in: Output config.h.win32.
3391
3392         * Makefile.am: Add it to EXTRA_DIST.
3393
3394         * gtk/gtk.def: Update.
3395
3396 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3397
3398         * gtk/gtklabel.c (gtk_label_size_request): Set the
3399         attributes onto the PangoLayout even if they are newly
3400         created from label->pattern.
3401
3402 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3403
3404         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3405
3406         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3407         structures in functions. Fixes bug where gtk_dataset_*
3408         was accidentally still being used in one place, causing
3409         every dest side event to be treated independently.
3410
3411         * gtk/gtkdnd.c: Remove last vestages of handling
3412         ::draw (fixes warning)
3413         
3414         * gtk/gtkentry.[ch]: Add drag and drop support.
3415
3416         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3417         new function gtk_check_drag_threshhold() for checking
3418         to check if (dx,dy) has exceeded the threshhold for starting
3419         a drag and use it everywhere.
3420
3421 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3422
3423         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3424         add -I{includedir}/gtk-2.0.
3425
3426         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3427         gdk/gdk-pixbuf.h: Doc fixups.
3428         
3429         * gtk/gtkobject.h: Remove trailing , from enum
3430
3431 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3432
3433         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3434         Doh! Mixed up x and y.
3435
3436         * gdk/linux-fb/gdkglobals-fb.c:
3437         Removed gdk_fb_pointer_grab_window_events,
3438         added _gdk_fb_pointer_grab_owner_events and
3439         _gdk_fb_keyboard_grab_owner_events.
3440
3441         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3442         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3443         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3444         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3445         Send crossing events after ungrab finished.
3446         (gdk_keyboard_grab): Set ..._owner_events
3447         (type_masks): Move out of function.
3448         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3449         gdk_fb_keyboard_event_window): New functions, return the
3450         window an event should be targeted at. Handles grabs and
3451         event propagation. Can return NULL.
3452         (gdk_event_make): Remove event_mask checking. Now always
3453         returns an event.
3454                 
3455         * gdk/linux-fb/gdkkeyboard-fb.c:
3456         * gdk/linux-fb/gdkproperty-fb.c:
3457         * gdk/linux-fb/gdkselection-fb.c:
3458         Use new event_window/gdk_event_make() behaviour.
3459         
3460         * gdk/linux-fb/gdkmouse-fb.c:
3461         Use new event_window/gdk_event_make() behaviour.
3462         Only send motion events if in the same window.
3463         If grabbed, use cursor from window if sibling of grabbed
3464         window, and cursor from grabbed window otherwise.
3465
3466         * gdk/linux-fb/gdkprivate-fb.h:
3467         Update gdk_fb_window_send_crossing_events, gdk_event_make
3468         and grab varaible declarations. Add gdk_fb_*_event_window().
3469
3470         * gdk/linux-fb/gdkwindow-fb.c:
3471         Use new event_window/gdk_event_make() behaviour.
3472         Keep correct track of focus window.
3473         (gdk_window_set_events): Set all specific button motion masks
3474         if GDK_BUTTON_MOTION_MASK set.
3475
3476         * gtk/gtkdnd.c (gtk_drag_update):
3477         Free info->last_event if gdk_drag_motion returned FALSE.
3478
3479 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3480
3481         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3482         Eliminate redraws when input-only windows are shown or
3483         hidden. Thanks to jpe@archaeopteryx.com.
3484
3485 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3486
3487         * docs/faq/gtk-faq.sgml: FAQ update:
3488           - Update to bugzilla
3489           - Add GTK+ and security/SUID/SGID
3490           - Add DnD question
3491
3492 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3493
3494         * gdk/linux-fb/gdkdnd-fb.c:
3495         Some cleanups.
3496         
3497 2001-01-15  Havoc Pennington  <hp@pobox.com>
3498
3499         * tests/testtreeview.c: add test stuff for CellRendererToggle
3500
3501         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3502         accessor
3503
3504         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3505         only toggle on button press (would do release like GtkButton, but
3506         we'd need implicit grab code for treeview cells)
3507
3508 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3509
3510         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3511
3512         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3513         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3514
3515         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3516         to g_{locale,filename}_{to,from}_utf8 to match current API.
3517
3518         * gtk/makefile.msc.in (gtk_OBJECTS)
3519         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3520
3521         * gtk/gtk.def: Update.
3522
3523 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3524
3525         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3526         implementaion that more closely mimics the events that an X server
3527         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3528         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3529         with nested preview widgets, for instance, more responsive when
3530         you move the mouse quickly into them.
3531         (find_window_for_pointer_event): Make it actually compile.
3532         (gdk_event_translate): Set send_event to the value of
3533         InSendMessage (). This doesn't really mean the same as X11's
3534         send_event flag, but is close enough, says jpe@archaeopteryx.com
3535
3536 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3537
3538         * gdk/linux-fb/gdkdnd-fb.c:
3539         Implemented drag and drop.
3540         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3541         when it tries to free and then copy the same event (info->last_event).
3542         I am not sure about why this happens, but will continue looking.
3543
3544 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3545
3546         * gdk/linux-fb/gdkwindow-fb.c:
3547         Use gdk_window_invalidate_rect instead of
3548         gdk_window_invalidate_rect_clear to minimise flashing.
3549         When hiding windows you need to clear the root window though.
3550
3551 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3552
3553         * gdk/linux-fb/gdkdrawable-fb2.c:
3554         For optization, add an full_shapes argument to gdk_fb_clip_region.
3555         If this is false, only the cliprects of the shapes are used.
3556
3557         * gdk/linux-fb/gdkprivate-fb.h:
3558         Export gdk_fb_window_peek_shape.
3559         Add full_shapes to gdk_fb_clip_region.
3560
3561         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3562         When moving a window, don't clear everything under the it, just the
3563         root window. Makes stuff faster and flash less.
3564         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3565         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3566         offset of the shape.
3567         
3568
3569 2001-01-12  Havoc Pennington  <hp@redhat.com>
3570
3571         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3572         current invalid region, fixes redraw bug while scrolling the 
3573         text widget
3574
3575         * gtk/gtktextview.c, gtk/gtktextview.h:
3576         Rearrange the scrolling/validation/etc. code in a major way, 
3577         so it seems to make sense to me. Probably isn't genuinely that
3578         much better, but...
3579
3580         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3581         notifies
3582
3583         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3584
3585 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3586
3587         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3588         Hide mouse pointer while rotation. Show it afterwards.
3589
3590 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3591
3592         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3593         windows in consideration when generating clip region.
3594
3595         * gdk/linux-fb/gdkfb.h:
3596         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3597
3598         * gdk/linux-fb/gdkprivate-fb.h:
3599         Add shape to GdkWindowFBDatat.
3600         exported gdk_fb_window_get_abs_shape().
3601         removed gdk_fb_draw_lines declaration.
3602
3603         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3604         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3605         send focus changes when there is a grabbed window.
3606         (gdk_window_get_pointer): Handle shaped windows.
3607         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3608         (gdk_fb_window_peek_shape): Returns the shape for a window,
3609         handles GDK_FB_USE_CHILD_SHAPE.
3610         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3611         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3612         (gdk_window_shape_combine_mask): Implement.
3613
3614         * gtk/gtkwindow-decorate.c:
3615         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3616         setting the shape of a window makes the window transparent.
3617
3618 2001-01-11  Havoc Pennington  <hp@redhat.com>
3619
3620         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3621
3622 2001-01-10  Havoc Pennington  <hp@redhat.com>
3623
3624         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3625         add this function, bug 40251
3626
3627         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3628         of type macro   
3629
3630 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3631
3632         * acconfig.h:
3633         Added ENABLE_SHADOW_FB
3634
3635         * configure.in:
3636         Added --disable-shadowfb
3637
3638         * gdk/linux-fb/gdkcursor-fb.c:
3639         Update shadowfb when updating cursor
3640
3641         * gdk/linux-fb/gdkdrawable-fb2.c:
3642         Added wrappers for shadowfb that calls  the normal drawable
3643         methods, but calls gdk_shadow_fb_update(bounding box) when
3644         GdkWindows are drawed to.
3645         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3646         which also returns the bounding box.
3647
3648         * gdk/linux-fb/gdkfb.h:
3649         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3650
3651         * gdk/linux-fb/gdkgeometry-fb.c:
3652         Update shadowfb when scrolling window.
3653
3654         * gdk/linux-fb/gdkglobals-fb.c:
3655         Add _gdk_fb_screen_angle.
3656         
3657         * gdk/linux-fb/gdkkeyboard-fb.c:
3658         Test code for screen rotation. Shift-F2 in the xlate driver
3659         rotates the screen.
3660
3661         * gdk/linux-fb/gdkmain-fb.c:
3662         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3663
3664         * gdk/linux-fb/gdkmouse-fb.c:
3665         Use fb_width/height instead of modeinfo.xres/yres.
3666
3667         * gdk/linux-fb/gdkprivate-fb.h:
3668         Added fb_men, fb_width, fb_height & fb_stride. When using
3669         shadow fb these can differ from the framebuffer stuff.
3670         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3671         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3672         _gdk_fb_screen_angle. Removed CM, RP.
3673
3674         * gdk/linux-fb/gdkrender-fb.c:
3675         Added code for shadowfb handling and screen rotation using
3676         shadowfb.
3677
3678         * gdk/linux-fb/gdkwindow-fb.c:
3679         Use fb_mem, fb_stride, fb_width, fb_height.
3680         Added recompute_rowstride to reset the rowstride of all windows.
3681         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3682         window abs positions and window rowstrides. Usefull when the
3683         rotation has changed.
3684
3685 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3686
3687         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3688
3689 2001-01-10  Havoc Pennington  <hp@redhat.com>
3690
3691         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3692         where sibling == iter
3693         (gtk_tree_store_insert_after): handle sibling == iter
3694         (gtk_tree_store_prepend): remove stamp checks
3695         (gtk_tree_store_insert_before): ditto
3696         (gtk_tree_store_append): ditto
3697         (gtk_tree_store_get_path): ditto
3698         (gtk_tree_store_get_value): ditto
3699         (gtk_tree_store_iter_has_child): ditto
3700         (gtk_tree_store_iter_n_children): ditto
3701         (gtk_tree_store_iter_nth_child): ditto
3702         (gtk_tree_store_insert_after): ditto
3703         (gtk_tree_store_is_ancestor): ditto
3704         (gtk_tree_store_iter_depth): ditto
3705         (gtk_tree_store_insert_before): assert that sibling's parent is
3706         the same as the passed-in parent
3707         (gtk_tree_store_insert_after): assert that sibling's parent is
3708         the same as the passed-in parent
3709
3710         
3711         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
3712         function to get the first iterator in a model
3713         
3714         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3715         conventionally the "root" in this sense is just NULL afaict.
3716
3717         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3718         where sibling == iter
3719         (gtk_list_store_insert_after): handle case where sibling == iter
3720
3721         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3722         automated tests for ListStore, TreeStore
3723
3724         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3725         (gtk_list_store_insert): update tail pointer, and fix it to work
3726         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3727         (gtk_list_store_append): use tail to be faster
3728         (gtk_list_store_prepend): fix it, update tail pointer
3729         (gtk_list_store_insert_after): fix it, update tail pointer
3730
3731         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3732         the list
3733
3734 2001-01-09  Havoc Pennington  <hp@redhat.com>
3735
3736         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3737         is NULL due to a pending resize
3738
3739         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3740         column width to values less than 1
3741
3742         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3743         width to be between min/max width, and still set the width 
3744         even if autosize is turned on, so the tree view can use this 
3745         function in order to autosize.
3746         (gtk_tree_view_column_init): set initial width to 1 not 0
3747
3748         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3749         setter function to modify column width, so we get notification
3750         (gtk_tree_view_insert_iter_height): ditto
3751         (gtk_tree_view_calc_size): ditto
3752         (gtk_tree_view_check_dirty): ditto
3753
3754         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3755         properties to change all the interesting attributes of the tree
3756         view column.
3757         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3758         (gtk_tree_view_column_get_clickable): add
3759         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3760         attributes; assume a cell renderer with equivalent object
3761         properties has been swapped in. Do g_object_notify().
3762         (gtk_tree_view_column_set_visible): g_object_notify
3763         (gtk_tree_view_column_get_sizing): rename from get_col_type
3764         (gtk_tree_view_column_set_sizing): g_object_notify
3765         (gtk_tree_view_column_set_width): add g_object_notify
3766         (gtk_tree_view_column_set_min_width): ditto
3767         (gtk_tree_view_column_set_max_width): ditto
3768         (gtk_tree_view_column_set_title): ditto
3769         (gtk_tree_view_column_set_clickable): ditto
3770         (gtk_tree_view_column_set_widget): ditto
3771         (gtk_tree_view_column_set_justification): ditto
3772
3773 2001-01-09  Havoc Pennington  <hp@redhat.com>
3774
3775         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3776         there are no rows in the model
3777
3778         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3779         NULL, then return the start of the list
3780
3781         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3782         if we can't get any rows from an empty model 
3783
3784         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3785         extraneous * after function pointer typedef usage
3786
3787         * Makefile.am: don't specify full path to cp and rm
3788
3789         * gtk/gtkcellrenderertextpixbuf.c
3790         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3791         NULL before dereferencing, fixes a segfault that happened from
3792         time to time
3793
3794         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3795         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3796         and reindent the function
3797         (gtk_cell_renderer_pixbuf_get_size): indentation
3798
3799         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3800         we quit it
3801         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3802         (gtk_dialog_set_default_response): New function, to set default
3803         button
3804         (gtk_dialog_set_response_sensitive): New function, to set 
3805         sensitivity of buttons
3806
3807         * gtk/gtkcellrendererpixbuf.c
3808         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3809         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3810
3811         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3812         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3813         also boxed types.
3814         (_gtk_tree_data_list_value_to_node): ditto
3815
3816         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3817         --gtk-debug=tree
3818
3819         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3820
3821         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3822
3823 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3824
3825         * gdk/win32/gdkevents-win32.c: Implement better mouse
3826         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3827         (find_window_for_pointer_event): New function.
3828         (gdk_event_translate): Use it when handling mouse events.
3829
3830 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3831
3832         * configure.in:
3833         Added --with-included-loaders option
3834
3835         * gdk-pixbuf/Makefile.am:
3836         * gdk-pixbuf/gdk-pixbuf-io.c:
3837         Add support for including selected gdk-pixbuf loaders only.
3838
3839         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3840         gtk_window_set_has_frame):
3841         Added inline documentation.
3842
3843         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3844         * docs/reference/gdk/tmpl/windows.sgml:
3845         Added inline documentation.
3846
3847 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3848
3849         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3850         realizing buttons that have already been realized.
3851
3852 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3853
3854         * tests/testtreeview.c (main): Show menu items before adding to
3855         option menu.
3856
3857         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3858         around if we kill them.
3859
3860         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3861         Return if we pass in a NULL model.
3862
3863 2001-01-08  Havoc Pennington  <hp@redhat.com>
3864
3865         * tests/testtreeview.c: hack on this some
3866
3867         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3868         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3869         list
3870         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3871
3872         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3873         functions
3874
3875 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3876
3877         * gtk/gtkwindow-decorate.[hc]:
3878         * gtk/Makefile.am:
3879         New files. Contains an implementation of a minimal WM for
3880         linux-fb.
3881
3882         * gtk/gtkwindow.h:
3883         Add the possibility for GtkWindows to specify a frame. This
3884         is used for the window decoration code, but could concievably
3885         be used for X programs too (xmms style windows).
3886         GtkWindow->frame is the toplevel window if the window is framed.
3887         The signal frame_event gets all events that are targeted to
3888         GtkWindow->frame.
3889         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
3890         
3891         * gtk/gtkwindow.c:
3892         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
3893         Call out to gtkwindow-decorate.c for WM support in linx-fb.
3894
3895 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3896
3897         * docs/README.linux-fb:
3898         Correct filename ~/.pangoft2_aliases
3899
3900         * gdk/gdkwindow.h:
3901         Added new function gdk_window_get_decorations.
3902
3903         * gdk/linux-fb/gdkfb.h:
3904         Removed _gdk_window_get_decorations declaration.
3905         Renamed _gdk_window_set_child_handler to
3906         gdk_fb_window_set_child_handler.
3907
3908         * gdk/linux-fb/gdkwindow-fb.c:
3909         Renamed _gdk_window_set_child_handler to
3910         gdk_fb_window_set_child_handler.
3911
3912         * gdk/x11/gdkwindow-x11.c:
3913         New function gdk_window_get_mwm_hints().
3914         Implemented gdk_window_get_decorations.
3915
3916         * docs/reference/gdk/tmpl/windows.sgml:
3917         * docs/reference/gdk/gdk-sections.txt:
3918         Added gdk_window_get_decorations docs.
3919         
3920 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
3921
3922         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
3923         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
3924         gdk_fb_window_send_crossing_events):
3925         Possibly send focus events when the mouse moves from one
3926         window to another.
3927
3928 2001-01-07  Tor Lillqvist  <tml@iki.fi>
3929
3930         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
3931         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
3932         to match current API.
3933
3934         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
3935         environment variable is set, don't call g_error when on a
3936         palettized (PseudoColor) display. Some people want to use GTK+ 
3937         in 256-colour mode even though works only partially.
3938
3939         * gdk/gdk.def
3940         * gtk/gtk.def
3941         * gtk/makefile.mingw.in: Update.
3942
3943 2001-01-05  Havoc Pennington  <hp@redhat.com>
3944
3945         * tests/testtreeview.c: hack on this a bit
3946
3947         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
3948         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
3949
3950         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
3951         was spelled incorrectly
3952         (GTK_IS_TREE_MODEL_SIMPLE): ditto
3953
3954         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
3955         from gtk_tree_view_set_headers_active   
3956
3957         * gtk/gtktexttag.c:
3958         (gtk_text_tag_get_property): handle PROP_DIRECTION
3959         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
3960         properties, bug 40235
3961
3962         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
3963         forward_to_line_end
3964
3965 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
3966
3967         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
3968         modules/input/gtkimcontextxim.c: Adapt to new prototypes
3969         for unicode,locale,filename conversion functions.
3970
3971 2001-01-05  Havoc Pennington  <hp@redhat.com>
3972
3973         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
3974         broken if called on the first position in the buffer.
3975
3976         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
3977         forward_to_delimiters to be called only if we aren't already at
3978         the delimiters.
3979
3980 2001-01-05  Havoc Pennington  <hp@redhat.com>
3981
3982         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
3983
3984 2001-01-05  Alexander Larsson  <alexl@redhat.com>
3985
3986         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
3987         colormap in here. Sync from X port.
3988         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
3989         Sync from X port.
3990         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
3991         This happens now and then, and i don't think it is a bug.
3992         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
3993         != endpoint.
3994         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
3995         GDK_LINE_SOLID.
3996
3997         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
3998         some of the fields filled in at least.
3999
4000         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4001         miLineArcD is no more, remove it from the function definition.
4002
4003 2001-01-04  Havoc Pennington  <hp@redhat.com>
4004
4005         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4006         this
4007
4008         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4009         user_data instead of tree_node
4010
4011         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4012         TREE_VIEW_COLUMN_SIZE
4013
4014         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4015         "size" field to "width" finishes bug 40061
4016
4017         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4018         for bitfields, bug 40268
4019
4020 2001-01-04  Havoc Pennington  <hp@redhat.com>
4021
4022         Rename some stuff:
4023         
4024         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4025
4026         s/GtkModelSimple/GtkTreeModelSimple/g;
4027         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4028         s/gtk_model_simple/gtk_tree_model_simple/g;
4029         s/gtkmodelsimple/gtktreemodelsimple/g;
4030
4031         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4032
4033         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4034         s/column_set_col_type/column_set_sizing/g;
4035
4036         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4037         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4038
4039         s/GtkCellRendererType/GtkCellRendererState/g;
4040         
4041         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4042         (gtk_cell_renderer_toggle_class_init): change "state" property to
4043         "active", to match GtkToggleButton
4044         (gtk_cell_renderer_toggle_get_active): new function, bug
4045         40269
4046         (gtk_cell_renderer_toggle_set_active): new function
4047         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4048         state through gtk_cell_renderer_set_active
4049
4050 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4051
4052         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4053         temporarily until they work again.  Brought up to date with
4054         changes in the model.
4055         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4056         model.
4057
4058 2001-01-04  Havoc Pennington  <hp@redhat.com>
4059
4060         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4061         equal to the line length, then position iterator before paragraph 
4062         separators. Fixes crash reported by Mikael Hermansson when
4063         pressing left arrow from the start of a line.   
4064
4065         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4066         about byte indexes off the end
4067         (iter_set_from_char_offset): add g_error about char offsets
4068         off the end
4069
4070 2001-01-03  Havoc Pennington  <hp@redhat.com>
4071
4072         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4073
4074         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4075         of private functions; remove inclusion of private headers.
4076
4077         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4078         function, so we don't need private functions in gtktextdisplay.c
4079
4080         * gtk/gtktextiterprivate.h: underscore-ification
4081
4082         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4083         to instead say "only useful to implement widgets"
4084
4085         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4086         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4087         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4088
4089         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4090         This function was completely broken
4091
4092         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4093
4094         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4095
4096         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4097
4098         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4099
4100         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4101
4102         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4103
4104         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4105         gtk_paint_layout
4106
4107         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4108         gtk_paint_layout
4109
4110         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4111         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4112         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4113         which were not implemented.     
4114
4115         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4116         insert_pixbuf signal. Rename delete_text to delete_range since it
4117         also deletes pixbufs and child anchors. This almost closes bug
4118         40245 (still need to deal with child anchors)
4119
4120         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4121         insert_pixbuf, change signal names as appropriate, change types of
4122         signals taking marks/tags to have the specific type, not just
4123         G_TYPE_OBJECT
4124         
4125         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4126         closes bug 40051
4127
4128         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4129         unnecessary remove_contents() call
4130         (gtk_option_menu_class_init): add a "changed" signal, closes
4131         bug 40039
4132         (gtk_option_menu_update_contents): emit "changed" if the 
4133         active menu item changes
4134
4135         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4136         cast to GtkObject, reported by Jonas Borgstrom
4137         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4138         we can't do stuff with side effects in finalize. Instead, spew a
4139         warning if the loader isn't closed.
4140
4141         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4142         colormap in here, non-X ports probably need to sync to this change
4143
4144         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4145         assertion that colormap != NULL, you can set the colormap to NULL
4146         if you like.
4147         
4148         * Makefile.am: remove gtk-config-2.0
4149
4150         * configure.in: Use pkg-config to locate GLib. Remove
4151         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4152         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4153         Use pkg-config to locate Pango. Output correct Pango libs to
4154         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4155
4156         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4157         files
4158         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4159         X11 pc files
4160
4161         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4162         unref from here
4163
4164 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4165
4166         * configure.in:
4167         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4168
4169 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4170
4171         * gtk/gtktextlayout.c
4172         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4173         variable when moving back onto a single line.
4174
4175 2001-01-01  Havoc Pennington  <hp@redhat.com>
4176
4177         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4178
4179         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4180
4181         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4182         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4183
4184 2001-01-01  Havoc Pennington  <hp@redhat.com>
4185
4186         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4187
4188         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4189         GtkTextAttributes
4190
4191         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4192         #40246
4193         (gtk_text_attributes_copy_values): rename from 
4194         gtk_text_attributes_copy
4195         (gtk_text_attributes_copy): a more standard GTK copy function, 
4196         which returns a new object
4197
4198 2001-01-01  Havoc Pennington  <hp@redhat.com>
4199
4200         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4201         
4202         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4203         don't fill in tree_view->priv->selection, kind of an unexpected
4204         side effect
4205
4206         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4207         gtkintl.h
4208         
4209         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4210         gtkintl.h
4211         (gtk_cell_renderer_get_property): remove calls to g_value_init
4212
4213         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4214         gtkintl.h
4215
4216         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4217         and include gtkintl.h
4218         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4219         property names
4220
4221         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4222         GtkTreeSelection
4223         (_gtk_tree_selection_new_from_with_view): rename, return
4224         GtkTreeSelection
4225         (_gtk_tree_selection_set_tree_view): rename with uscore
4226         (gtk_tree_selection_get_selected): fill in the "model" out param
4227         first, so it gets filled in even if we return at the top of the 
4228         function
4229         (gtk_tree_selection_real_select_all): add a comment and an else{}
4230         to clarify this a bit
4231         (gtk_tree_selection_real_unselect_all): add the same else{}
4232
4233         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4234         set_tree_view to have underscore prefixes, move them to the
4235         private header, fix return type of new_with_tree_view
4236         (struct _GtkTreeSelection): mark struct
4237         fields private  
4238
4239         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4240         GtkTreeModelFlags, not a guint
4241         (gtk_tree_path_prev): return gboolean not gint
4242         (gtk_tree_path_up): return gboolean not gint
4243
4244         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4245         return GtkTreeModelFlags, not a guint
4246
4247         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4248         that child model is non-null before unrefing it
4249         (g_value_int_compare_func): make this a qsort compare func, not 
4250         a boolean predicate
4251
4252         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4253         (add -umn to the end), and mark it unimplemented
4254         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4255         I don't see what it's for - doesn't the model always sort itself?
4256         (gtk_tree_model_sort_set_compare): this had the wrong signature
4257
4258         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4259         Fix the docs to say that it destructively replaces existing
4260         attributes (previously said that it added attributes).
4261         (gtk_tree_view_column_set_visible): canonicalize bool before
4262         equality testing. Also, check for realization before
4263         hiding/showing the tree_column->window; if this window could exist
4264         before realization, then it's busted and needs fixing, we can't 
4265         create GDK resources pre-realization. Also, remove
4266         superfluous queue_resize(), since set_size() does that for us.
4267         (gtk_tree_view_column_set_col_type): check realization before 
4268         using tree_column->window
4269
4270         * gtk/gtktreedatalist.c: fix filename in copyright notice
4271
4272 2000-12-31  Havoc Pennington  <hp@pobox.com>
4273
4274         * gtk/gtktextview.c: Rearrange all the
4275         scroll-while-dragging-or-selecting code to be different, not
4276         necessarily better. ;-)
4277         (gtk_text_view_scroll_to_mark): Change this
4278         function to take within_margin as a fraction instead of a pixel
4279         value, and to take alignment arguments (indicating where to align 
4280         the mark inside the visible area)
4281         
4282         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4283         to GtkObject
4284
4285         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4286         behavior so that offsets past the end of the line are not 
4287         allowed, and an offset equal to the line length moves the iterator
4288         to the next line
4289         (gtk_text_iter_set_line_index): make parallel change
4290         (gtk_text_iter_get_bytes_in_line): add this function
4291         
4292         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4293         of byte indexes off the end of the line; byte index at the end of
4294         the line now returns FALSE and doesn't fill in the requested
4295         values, byte index past the end of the line is an error.  Also,
4296         don't allow -1 offset anymore, since its meaning is unclear.
4297
4298         This change exposes some bug in visual cursor motion, where we
4299         end up with a huge invalid byte index; needs fixing. Symptom of 
4300         bug is a crash when you hit up arrow.
4301         
4302         (_gtk_text_line_char_locate): match the change to byte_locate
4303
4304         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4305         from start of line properly. fixes bug reported by Mikael
4306         Hermansson where backspace would delete all text before the
4307         cursor.
4308
4309 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4310
4311         * gdk/win32/gdkwindow-win32.c
4312         (gdk_window_impl_win32_get_visible_region): New function, as in
4313         the X11 backend.
4314         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4315         instead of duplicating the same code here.
4316
4317         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4318         GDK_COLORMAP macro.
4319
4320         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4321         destroy function.
4322         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4323         access that.
4324
4325         * gtk/gtk.def: Update.
4326
4327         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4328
4329 2000-12-30  Havoc Pennington  <hp@pobox.com>
4330
4331         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4332         colormap on input only windows, to avoid special cases all over
4333         the code for these windows.
4334
4335 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4336
4337         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4338         we are on a palettized display ("PseudoColor" in X11), as the code
4339         for that doesn't work anyway, and never has.
4340
4341 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4342
4343         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4344         Don't use isprint() for chars > 255.
4345
4346 2000-12-21  Havoc Pennington  <hp@redhat.com>
4347
4348         * tests/testtreeview.c: more work
4349
4350 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4351
4352         * docs/README.linux-fb:
4353         Update the docs to the new pangoft2 way.
4354
4355 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4356
4357         * configure.in:
4358         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4359         pango version.
4360         Remove modules/linux-fb/Makefile.
4361
4362         * gdk/linux-fb/gdkdrawable-fb2.c:
4363         Render glyphs using freetype.
4364
4365         * gdk/linux-fb/gdkfb.h:
4366         Add new fb-specific functions needed for managing windows.
4367
4368         * gdk/linux-fb/gdkmain-fb.c:
4369         Remove gdk_font_init/fini() calls.
4370
4371         * gdk/linux-fb/gdkpango-fb.c:
4372         Remove old implementation. Use pangoft2 instead.
4373
4374         * gdk/linux-fb/gdkprivate-fb.h:
4375         Remove PangoFBFont and related stuff.
4376
4377         * gdk/linux-fb/gdkwindow-fb.c:
4378         Implement drawable->get_visible_region.
4379         Implement support for _gdk_window_set_child_handler () and
4380         _gdk_window_get_decorations().
4381
4382         * modules/Makefile.am:
4383         Remove linux-fb subdir.
4384
4385         * modules/linux-fb/*:
4386         Removed all.
4387         
4388 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4389
4390         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4391         calls, as they are no longer needed.
4392
4393         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4394         
4395         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4396         figure out how to emit a signal on an interface.
4397
4398 2000-12-20  Havoc Pennington  <hp@redhat.com>
4399
4400         * tests: new directory to contain tests, gtk/test* should move
4401         here sometime (with appropriate on-cvs-server hackery)
4402
4403         * tests/testtreeview.c, tests/Makefile.am: a test
4404         
4405         * configure.in (AC_OUTPUT): add tests/Makefile
4406
4407         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4408         and "invisible_set" which were missing
4409
4410         * gtk/gtkrbtree.h: some cheesy indentation fix
4411         
4412 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4413
4414         * gtk/gtkinvisible.c (gtk_invisible_realize):
4415         Attach the style to the window so that the style it is not
4416         leaked when unrealizing the window.
4417
4418 2000-12-18  Havoc Pennington  <hp@redhat.com>
4419
4420         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4421         begin/end user action where appropriate
4422         (gtk_text_view_commit_handler): add begin/end user action
4423
4424         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4425         bracket interactive operations with begin/end user action pair.
4426         
4427         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4428         "interactive" arg from insert_text and delete_text signals.
4429         Add begin_user_action, end_user_action signals
4430         (gtk_text_buffer_begin_user_action): 
4431         (gtk_text_buffer_end_user_action): New functions to delimit 
4432         a user-visible action
4433
4434         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4435         signals.
4436         
4437 2000-12-18  Havoc Pennington  <hp@redhat.com>
4438
4439         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4440         was pretty non-working.
4441
4442         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4443         by passing the length to g_utf8_validate().
4444
4445 2000-12-16  Havoc Pennington  <hp@pobox.com>
4446
4447         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4448         Port to GObject, can go back in gdk-pixbuf after setting up 
4449         a gdk-pixbuf-marshal.h header over there.
4450
4451         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4452         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4453         args
4454         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4455         set
4456         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4457         here, do it when we create the buttons later
4458         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4459         (gtk_tree_view_map): paranoia checks that column->button is shown 
4460         and unmapped
4461         (gtk_tree_view_size_request): only request visible children.
4462         Move header size calculation in here, for cleanliness, and 
4463         to maintain invariants for child widgets if we eventually 
4464         let users set different children inside the buttons
4465         (gtk_tree_view_map_buttons): factor out code to map buttons,
4466         since it was being called several times
4467         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4468         windows instead of just moving them; their height may change 
4469         if we allow random widgets in there, or the theme changes.
4470         (gtk_tree_view_size_allocate): move button size allocation 
4471         above emitting the scroll signals, to ensure a sane state when we
4472         hit user code
4473         (gtk_tree_view_button_release): remove queue_resize after
4474         tree_view_set_size(), set_size() will handle any resize queuing
4475         that's needed
4476         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4477         draw_focus goo
4478         (gtk_tree_view_focus): use gtk_get_current_event() and
4479         gdk_event_get_state()
4480         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4481         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4482         semicolon
4483         (gtk_tree_view_create_button): show the button here
4484         (gtk_tree_view_button_clicked): actually emit the clicked signal
4485         on the column
4486         (_gtk_tree_view_set_size): return right away if the size is
4487         unchanged, as a cheesy optimization
4488         (gtk_tree_view_setup_model): rename set_model_realized to 
4489         setup_model to match the flag that indicates whether we've 
4490         called it
4491         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4492         exist, because set_scroll_adjustment does that and it shouldn't
4493         matter what order you call these in
4494         (gtk_tree_view_get_vadjustment): ditto
4495         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4496         for paranoia
4497         (gtk_tree_view_set_headers_visible): call
4498         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4499         (gtk_tree_view_append_column): clarify whether the return value
4500         is the count of columns before or after, and do the increment 
4501         separately from the return statement so you can tell from the code.
4502         (gtk_tree_view_remove_column): ditto
4503         (gtk_tree_view_insert_column): ditto
4504         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4505         outside the existing range, the docs say that outside-range
4506         columns are allowed, so we handle them as documented. (Presumably
4507         this allows a nice loop with column != NULL as test.)
4508         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4509         mean (left/right/center etc.).
4510         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4511         (gtk_tree_view_expand_row): add docs
4512         (gtk_tree_view_collapse_row): add docs
4513
4514         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4515         function to emit the clicked signal on a column
4516         
4517         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4518         state of an event
4519         (gdk_event_get_time): don't treat GDK_SCROLL 
4520         as a button event, remove default case from switch so gcc 
4521         will whine if we don't explicitly handle all event types
4522
4523         * gtk/gtktreeselection.h: added some FIXME 
4524         
4525         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4526         "columns" to "n_columns" and "column" to "columns" for clarity
4527
4528 2000-12-16  Havoc Pennington  <hp@pobox.com>
4529         
4530         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4531         stuff. This should make e.g. the delete key work again in the
4532         text widget...
4533         (gtk_text_iter_forward_cursor_positions): handle negative count
4534         (gtk_text_iter_backward_cursor_positions): handle negative count
4535         (gtk_text_iter_forward_word_ends): handle negative count
4536         (gtk_text_iter_backward_word_starts): handle negative count
4537
4538         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4539         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4540         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4541         GObject. No doubt will cause breakage.
4542
4543         * demos/gtk-demo/textview.c: remove hacks around
4544         non-GObject-ification of the text objects
4545
4546         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4547         the text tag
4548         
4549 2000-12-14  Havoc Pennington  <hp@pobox.com>
4550
4551         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4552         that we have Xrender
4553
4554 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4555
4556         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4557         Add two virtualized functions gdk_drawable_get_clip_region - to
4558         get the clip region when drawing.
4559         
4560         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4561         use invalidate_region.
4562
4563         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4564         region.
4565
4566         * acconfig.h configure.in: Check for Xft. For now, assume
4567         that if Xft is found, Pango was compiled with Xft support
4568         as well.
4569
4570         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4571         gdk_colormap_query_color().
4572         
4573         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4574         with Xft if appropriate.
4575
4576         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4577         a pangoxft context if we have XFT and the environment
4578         variable GD_USE_XFT is set.
4579         
4580         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4581         and also possibly an XftDraw structure.
4582
4583         * gtk/gtkfontsel.c: Handle the case where the font from the
4584         style doesn't match any of the fonts a bit better.
4585         
4586         * gtk/testgtk.c: Add tabs between directional segments for
4587         hebrew/arabic test. (Not really necessary, just a little
4588         prettier.)
4589
4590 2000-12-14  Havoc Pennington  <hp@redhat.com>
4591
4592         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4593         reading a file
4594
4595 2000-12-14  Havoc Pennington  <hp@redhat.com>
4596
4597         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4598         unused call to get_last_line()
4599
4600         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4601         here until boxed is working (and maybe after that - we should
4602         really not gratuitously break old code)
4603
4604         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4605         specific types for font_desc and tabs args, move them to
4606         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4607         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4608
4609         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4610         use GTK_TYPE_POINTER for signal signatures as a hack-around
4611
4612         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4613         PangoTabArray
4614
4615         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4616         make static
4617         (line_display_index_to_iter): make static
4618
4619         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4620         to marshal a string not a boxed
4621
4622         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4623
4624         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4625         since the UTF-8 isn't validated yet
4626
4627         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4628         lines to end in '\n'
4629         
4630         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4631         forward_to_delimiters, and grapheme boundaries
4632         (gtk_text_view_delete_from_cursor): properly handle non-newline
4633         delimiters, and grapheme boundaries
4634
4635         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4636         to gtk_text_iter_forward_to_delimiters, and make it work properly
4637         if empty lines end with a character other than '\n'
4638
4639         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4640         position
4641
4642 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4643
4644         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4645
4646         * gtk/gtk.def
4647         * gdk/gdk.def: Update.
4648
4649         * gdk/win32/gdkmain-win32.c
4650         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4651         gdkmain-win32.c here.
4652
4653         * gdk/win32/makefile.mingw.in (all): No need to make
4654         gdk-win32res.o here, the makefile one step up will call us to make
4655         it.
4656
4657         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4658         gdkkeys-win32.
4659
4660         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4661
4662         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4663         call to g_source_add().
4664
4665         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4666         leak. Thanks to Andreas Kemnade.
4667
4668 2000-12-13  Havoc Pennington  <hp@pobox.com>
4669
4670         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4671
4672         * gtk/gtktext*.[hc]: update accordingly
4673         
4674 2000-12-13  Havoc Pennington  <hp@pobox.com>
4675
4676         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4677         header file
4678
4679         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4680
4681 2000-12-13  Alex Larsson  <alexl@redhat.com>
4682
4683         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4684         Add support for ps2 intellimouse.
4685
4686         * gdkkeyboard-fb.c:
4687         Move shift-F1 repaint handling to xlate handler only.
4688         
4689         * docs/README.linux-fb:
4690         Add imps2 to docs.
4691         Document the new refresh keys.
4692         
4693 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
4694
4695         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
4696
4697         * gtk/gtkbox.c: change property types from (u)long to (u)int for
4698         ::position and ::padding.
4699
4700         * gtk/gtkcontainer.c: make ::border_width an INT property.
4701
4702         * gtk/gtkpacker.c: make ::position an INT property.
4703
4704         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4705         guard against NULL h/v scrollbars, since this is used at construction
4706         time.
4707
4708         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
4709         internal gtk_clist_constructor().
4710
4711         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
4712         gtk_ctree_constructor().
4713
4714         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4715         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4716
4717         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4718         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4719
4720         * gtk/gtkwidget.[hc]:
4721         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4722         and gtk_widget_get().
4723         (gtk_widget_new): use g_object_new_valist().
4724         (gtk_widget_set): use g_object_set_valist().
4725
4726         * gtk/gtkobject.[hc]:
4727         removed gtk_object_arg_get_info(), gtk_object_getv(),
4728         gtk_object_query_args(), gtk_object_newv(),
4729         gtk_object_class_add_signals(),
4730         gtk_object_class_user_signal_new(),
4731         gtk_object_class_user_signal_newv(),
4732         gtk_object_arg_set(), gtk_object_arg_get(),
4733         gtk_object_args_collect(),
4734         gtk_object_default_construct(),
4735         gtk_object_constructed(),
4736         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4737         removed nsignals, signals and n_args members from GtkObjectClass.
4738         (gtk_object_new): use g_object_new_valist().
4739         (gtk_object_set): use g_object_set_valist().
4740         (gtk_object_get): use g_object_get_valist().
4741         
4742         * gtk/gtkcompat.h: define gtk_object_default_construct().
4743         
4744         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4745         g_object_new().
4746
4747         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4748         fucntions, cleaned up method assignments (make sure your structures
4749         are setup properly before calling out). removed all GTK_CONSTRUCTED
4750         hacks ;)
4751
4752 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4753
4754         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4755         off-by-one error in checks. (Dave Lambert)
4756
4757 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4758
4759         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4760         Don't free gdk_fb_keyboard twice.
4761
4762 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4763
4764         * gtk/testgtk.c:
4765         (create_tooltips): 
4766         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4767         use GObject swapped_signal:: properties instead.
4768
4769         * gtk/gtkcellrenderertoggle.c: 
4770         * gtk/gtkcellrenderertextpixbuf.c: 
4771         * gtk/gtkcellrenderertext.c: 
4772         * gtk/gtkcellrendererpixbuf.c: 
4773         * gtk/gtkcellrenderer.c:
4774         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4775         missing warnings for invalid property ids, install properties
4776         with g_object_class_install_property() now.
4777         
4778         * gtk/gtksignal.c:
4779         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4780         
4781 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4782         
4783         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4784         to determine if a window is the focus widget within
4785         its toplevel.
4786
4787         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4788         to be boolean.
4789
4790         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4791         of the case where the container CAN_FOCUS to here instead
4792         of having it in each individual move-the-focus place.
4793
4794         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4795         focusing to be geometric in a much more obvious sense. Arrowing
4796         around is still non-intuitive because it isn't perfect and
4797         because entries, etc, grab the arrow keys, but it at least
4798         usually will do what you expect now.
4799         
4800         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4801         file.
4802
4803         * gtk/gtknotebook.c: Change tabs to be a single item in
4804         the focus chain. Make movement of focus on tabs with arrow
4805         keys wrap around.
4806         
4807         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4808         CHECK_FIND_CHILD macro to give informative error messages
4809         instead of silent returns.
4810
4811         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4812         flag since we handle GdkReturn on the tabs.
4813
4814         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4815         windows rather than sending expose events directly.
4816
4817         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4818         definition for GtkNotebookPage into .c file, since it is private.
4819
4820         * gtk/testgtk.c (create_notebook): Add option for 
4821         testing borderless notebook.
4822
4823         * gtk/testgtk.c (page_switch): Removed egregious poking
4824         around in GTK+ internals.
4825
4826         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4827
4828         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4829         properly through gtk_clist_focus. Make the title headers a
4830         single item in the tab-focus chain, and make left-right wrap
4831         around.
4832
4833         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4834         focus method so that wrapping around works properly.
4835
4836         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4837         that is handled for the widget now. 
4838
4839 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4840
4841         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4842         widgets as TOPLEVEL.
4843
4844         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4845         TOPLEVEL widgets are containers.
4846
4847         * gtk/gtkinvisible.h: Remove useless include.
4848
4849 2000-12-11  Havoc Pennington  <hp@redhat.com>
4850
4851         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4852         Handle chopping off \r\n and 0x2029 in addition to \n before
4853         passing to PangoLayout
4854
4855         * gtk/gtkimcontextsimple.c
4856         (gtk_im_context_simple_get_preedit_string): 
4857         return an empty string if no match is pending
4858
4859         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4860         assertion that the returned preedit string was sane
4861
4862         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4863         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4864         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4865
4866 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4867
4868         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4869         Fix up finalizer to chain to its parent.
4870
4871 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4872
4873         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4874         Clearified the difference between the keyboard types. Wrote a note
4875         about the magic sysrq key to get out of raw mode.
4876
4877 2000-12-09  James Henstridge  <james@daa.com.au>
4878
4879         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4880         member to hold masks for detecting the start of a protocol packet.
4881         (mouse_devs): add packet start masks for ps2 and ms device types.
4882         Left the mask for fidmour blank, as I have no idea what it should
4883         be.
4884         (handle_mouse_io): skip bytes until we get to the start of a
4885         packet.  My Logitech mouse seems to be passing an extra NULL pad
4886         byte, and GPM does a similar thing here.
4887         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
4888         this is the ms mouse driver.
4889         (gdk_fb_mouse_ms_packet): fix up button handling, which was
4890         completely broken except for button1.  It was checking the wrong
4891         bit in the packet for the status of the right mouse button, and
4892         wrongly assuming right == button2 rather than 3.  I fixed that and
4893         also added support for middle button (button2).
4894
4895 2000-12-08  Havoc Pennington  <hp@redhat.com>
4896
4897         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
4898         that cause a segfault on text insertion
4899
4900         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
4901         warning
4902
4903         * gtk/gtktextiter.c (test_log_attrs): use
4904         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
4905
4906         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
4907         Get log attrs for a line, using a cache stored on the buffer
4908         
4909         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
4910         reported by Jeff Franks
4911
4912 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4913
4914         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
4915         /dev/ttyS0 -> /dev/mouse
4916
4917 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4918
4919         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
4920         Added dummy gdk_fontset_load.
4921
4922 2000-12-08  Alexander Larsson  <alexl@redhat.com>
4923
4924         * docs/README.linux-fb:
4925         * docs/Makefile.am:
4926         Initial GtkFB docs.
4927         
4928         * gdk/linux-fb/Makefile.am:
4929         Define GDK_DATA_PREFIX.
4930
4931         * gdk/linux-fb/gdkmain-fb.c:
4932         Fix typo.
4933         Change default display to /dev/fb0.
4934
4935         * gdk/linux-fb/gdkpango-fb.c:
4936         Add $(prefix)/share/fonts/ to font path.
4937         
4938 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4939
4940         * gdk/linux-fb/gdkkeyboard-fb.c:
4941         New file containing the abstracted keyboard driver. Most code
4942         taken from gdkinput-ps2.c
4943
4944         * gdk/linux-fb/gdkinput-ps2.c:
4945         Removed file.
4946         
4947         * gdk/linux-fb/Makefile.am:
4948         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
4949
4950         * gdk/linux-fb/gdkcolor-fb.c:
4951         display->fb was renamed to display->fb_fd.
4952
4953         * gdk/linux-fb/gdkcursor-fb.c:
4954         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4955
4956         * gdk/linux-fb/gdkinput.c:
4957         Moved gdk_input_init here from gdkinput-ps2.c
4958
4959         * gdk/linux-fb/gdkmain-fb.c:
4960         display->fb was renamed to display->fb_fd.
4961         Now the tty and the console is opened here instead
4962         of in the keyboard driver. Also check GDK_VT to see what
4963         tty to open.
4964         Move gdk_beep () here from gdkinput-ps2.c
4965         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4966
4967         * gdk/linux-fb/gdkmouse-fb.c:
4968         Add header.
4969         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4970         Return correct keyboard modifiers.
4971         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
4972
4973         * gdk/linux-fb/gdkprivate-fb.h:
4974         Add tty and vt info to display.
4975         Add orignal modeinfo storage to display
4976         Update global functions
4977
4978         * gdk/linux-fb/gdkwindow-fb.c:
4979         Added gdk_fb_window_find_focus().
4980         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4981
4982 2000-12-07  Havoc Pennington  <hp@pobox.com>
4983
4984         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
4985         function, noticed by Alex
4986
4987 2000-12-06  Elliot Lee  <sopwith@redhat.com>
4988
4989         * configure.in: Detect freetype properly
4990
4991         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
4992         above.
4993
4994 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4995
4996         * gdk/linux-fb/Makefile.am:
4997         Add gdkmouse-fb.c
4998         
4999         * gdk/linux-fb/gdkmouse-fb.c:
5000         New file. Abstracted the mouse drivers a bit.
5001
5002         * gdk/linux-fb/gdkcursor-fb.c:
5003         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5004
5005         * gdk/linux-fb/gdkinput-ps2.c:
5006         Removed old mouse handling code. Moved cursor handling code
5007         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5008         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5009         gdk_mouse_get_info.
5010
5011         * gdk/linux-fb/gdkmain-fb.c:
5012         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5013
5014         * gdk/linux-fb/gdkprivate-fb.h:
5015         Removed public gdk_fb_find_common_ancestor, added and renamed
5016         functions for the new mouse handling code.
5017
5018         * gdk/linux-fb/gdkwindow-fb.c:
5019         Moved gdk_fb_window_send_crossing_events here. added global
5020         variable gdk_fb_window_containing_pointer. made
5021         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5022         renamed to gdk_mouse_get_info.
5023
5024 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5025
5026         * gdk/linux-fb/gdkevents-fb.c:
5027         Update to match latest gmain/gsource changes.
5028
5029         * gdk/linux-fb/gdkinput-ps2.c:
5030         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5031         it links. Will be implemented later.
5032
5033 2000-12-03  Havoc Pennington  <hp@pobox.com>
5034
5035         * gdk/Makefile.am: add gdkkeys.[hc]
5036
5037         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5038         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5039
5040         * acconfig.h, configure.in: add checks and command line options
5041         for XKB
5042
5043         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5044         
5045         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5046         and group in the key event
5047
5048         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5049         field with the low-level hardware key code, and a group
5050         field with the keyboard group
5051
5052         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5053         and declare a couple globals used for keymap handling
5054         
5055         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5056         hold down Shift-Control and type a hex number to get a Unicode 
5057         character corresponding to the hex number
5058         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5059         (return bytes not chars)
5060
5061 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5062
5063         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5064         to avoid waste on 64-bit platforms.
5065
5066 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5067
5068         * INSTALL: Fix link to PNG home, remove reference
5069         to fribidi.
5070
5071         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5072         
5073         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5074         tested.)
5075
5076         * gtk/gtkcheckmenuitem.c: Permanently turn on
5077         always_show_toggle.
5078
5079         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5080         be NULL. (Vladimir Klebanov, #26545)
5081
5082         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5083         some signed/unsigned comparison problems. (#6510,
5084         David Kaelbling)
5085
5086         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5087         return type to boolean (Oskar Liljeblad, #18648)
5088
5089 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5090
5091         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5092         Remove bogus colormap setting.
5093
5094 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5095
5096         * gdk/linux-fb/gdkcolor-fb.c:
5097         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5098
5099         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5100         Must set colormap.
5101         
5102 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5103
5104         * docs/tutorial/gtk-tut.sgml: DND updates
5105
5106 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5107
5108         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5109         Remove old debug g_warning().
5110         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5111         or an implementation, just pass the implementation to draw_drawable_2.
5112         
5113         * gdk/linux-fb/gdkprivate-fb.h:
5114         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5115
5116         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5117         clear and invalidate area when window is destroyed.
5118         (send_map_events): Remove old commented out code.
5119
5120 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5121
5122         * gdk/linux-fb/gdkpango-fb.c:
5123         Use italic instead of oblique in font aliases.
5124         
5125         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5126         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5127         other unsupported functions.
5128
5129 2000-12-04  Havoc Pennington  <hp@redhat.com>
5130
5131         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5132
5133         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5134
5135         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5136
5137         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5138         hack to avoid infinite loops (synthetic expose event) - 
5139         Owen has more appropriate fixes in a branch he'll check in later.
5140
5141         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5142         separator, CR, and CRLF as line ends
5143
5144         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5145         into lines using pango_find_paragraph_boundary(); other bits of
5146         the widget are still going to be broken if the boundary isn't '\n'
5147         though
5148
5149 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5150
5151         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5152         multiply.
5153
5154         * gdk/linux-fb/gdkpango-fb.c:
5155         Copied some 26.6 scaling macros from pango to clean up the rounding.
5156         (pango_fb_font_get_glyph_info): Correct sign on x value.
5157
5158         * gdk/linux-fb/gdkprivate-fb.h:
5159         Removed unreferenced external functions.
5160
5161         * modules/linux-fb/Makefile.am: Use ` instead of '.
5162
5163         * modules/linux-fb/basic.c:
5164         Remove dead code. In particular the dummy lang engine which broke all
5165         pango layouts in GtkFB. Don't include tables-big.i anymore.
5166
5167         * modules/linux-fb/tables-big.i:
5168         Upgrade to latest version from pango. Left for reference, basic_ranges
5169         moved to basic.c.
5170         
5171 2000-12-04  Havoc Pennington  <hp@redhat.com>
5172
5173         Fix bugs Alex found:
5174         
5175         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5176         to "draw"
5177
5178         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5179
5180         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5181
5182         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5183         implementation in here, apparently the expose() implementation was
5184         dead code.
5185
5186 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5187
5188         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5189         Return positive descent.
5190
5191 2000-12-02  Havoc Pennington  <hp@pobox.com>
5192
5193         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5194         method and signal
5195         
5196         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5197         calls gdk_window_process_updates() to push the exposes through
5198         (gtk_widget_class_init): No more draw signal, no
5199         gtk_widget_real_draw()  
5200         
5201         * gtk/gtkbin.c (gtk_bin_draw): remove
5202
5203         * gtk/gtkbox.c (gtk_box_draw): remove
5204
5205         * gtk/gtkbutton.c (gtk_button_draw): remove
5206
5207         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5208
5209         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5210
5211         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5212
5213         * gtk/gtkclist.c (gtk_clist_draw): remove
5214
5215         * gtk/gtkentry.c (gtk_entry_draw): remove
5216
5217         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5218
5219         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5220
5221         * gtk/gtkframe.c (gtk_frame_draw): remove
5222
5223         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5224
5225         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5226
5227         * gtk/gtklayout.c (gtk_layout_draw): remove
5228
5229         * gtk/gtklist.c (gtk_list_draw): remove
5230
5231         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5232
5233         * gtk/gtkmenu.c (gtk_menu_draw): remove
5234
5235         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5236
5237         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5238
5239         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5240
5241         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5242
5243         * gtk/gtkpacker.c (gtk_packer_draw): remove
5244
5245         * gtk/gtkrange.c (gtk_range_draw): remove
5246
5247         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5248
5249         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5250
5251         * gtk/gtktable.c (gtk_table_draw): remove
5252
5253         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5254
5255         * gtk/gtktext.c (gtk_text_draw): remove
5256
5257         * gtk/gtktextview.c (gtk_text_view_draw): remove
5258
5259         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5260
5261         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5262
5263         * gtk/gtktree.c (gtk_tree_draw): remove
5264
5265         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5266
5267         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5268
5269         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5270
5271         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5272
5273         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5274
5275         * gtk/gtkwindow.c (gtk_window_draw): remove
5276
5277 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5278
5279         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5280         a GtkToggleButton is both insensitive and active, it was being
5281         drawn by the GtkButton draw handler which doesn't check the
5282         state. Now it's calling gtk_toggle_button_paint instead.
5283         
5284 2000-12-01  Havoc Pennington  <hp@redhat.com>
5285
5286         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5287         dangling pointers to the appearance attributes from the 
5288         line display
5289
5290         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5291         width/height to mean "full width/height of drawable"
5292
5293         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5294         click to select word/line
5295         
5296         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5297         when getting log attrs. Get a slice, so that pixmaps and stuff
5298         are properly handled.
5299
5300         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5301         paste into the selection (replaces selection now, previously
5302         crashed or added to selection). Reveals longstanding btree bug -
5303         select multiple lines, middle-click on the selection, boom. This
5304         isn't related to my changes though.
5305
5306         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5307         PangoLogAttrs changes
5308         (gtk_entry_move_backward_word): ditto
5309
5310         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5311         functions return bool whether the iter moved onto a
5312         dereferenceable position.
5313  
5314         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5315         functions for motion in terms of display lines.
5316
5317         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5318         get the buffer a mark is inside
5319         
5320 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5321
5322         * gdk/linux-fb/Makefile.am:
5323         * modules/linux-fb/Makefile.am:
5324         Freetype 2 final uses freetype-config
5325
5326         * gdk/linux-fb/gdkpango-fb.c:
5327         Upgrade to use Freetype 2 final.
5328         More flexible support for font aliases, this also fixes a bug with
5329         GtkFontSelector, as the aliases must be visible in the font/family list,
5330         or GtkFontSelector reads uninitialized memory.
5331
5332 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5333
5334         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5335         XGetIMValues to properly terminate variable argument list, and do
5336         NULL return check for ic_values and xim_styles.
5337
5338         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5339         Restore preedit state after XmbResetIC().
5340         
5341         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5342         XvaCreateNestedList() should take XvaNestedList, but not
5343         XvaNestedList*.
5344
5345         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5346         preedit_draw_callback, preedit_caret_callback): Match
5347         "preedit-changed" signal name to "preedit_changed" to be
5348         consistent to the spec.
5349
5350         * gtk/gtkimcontextsimple.c (check_table):
5351         Match "preedit-changed" to "preedit_changed" to be consistent
5352         to the spec.
5353
5354 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5355
5356         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5357         gc->clip_region == NULL>
5358
5359 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5360
5361         Changes by Hans Breuer:
5362         
5363         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5364         Dont't use negative width and height as max_hints. This fixes
5365         Owen's recent testgtk changes for win32.
5366
5367         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5368         gdk_win32_hdc_release): These are exported and may be called with
5369         other drawable types than our GdkDrawableImplWin32 (?).
5370
5371         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5372         so always #define USE_BACKING_STORE.
5373
5374         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5375         of printf for debugging output.
5376
5377         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5378         
5379         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5380
5381         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5382         declaration.
5383
5384         * gtk/gtktexttypes.h: Ditto.
5385
5386         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5387         (GDK_VoidSymbol) also if in case of arg check failure.
5388
5389         * gtk/gtkimcontextsimple.c
5390         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5391         position to the pointer, but to the variable it points to.
5392
5393         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5394
5395         * gtk/gtk.def: Updates.
5396
5397 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5398
5399         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5400         GTK_TYPE_TREE_MODEL.
5401
5402 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5403
5404         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5405         Set the size of the font from the description.
5406         (gdk_text_width): Gross hack that calculates the width
5407         of text by text_length * size/2. This is necessary because
5408         GtkLabel does some ugly gtk_string_width call to calculate
5409         an good size.
5410         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5411
5412 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5413
5414         * docs/tutorial/gtk-tut.sgml: DND updates
5415
5416 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5417
5418         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5419         If you pass width or height == 0 to gdk_window_clear_area they
5420         should be calculated from the window size.
5421
5422 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5423
5424         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5425         a grab, but no grab-cursor, use the cursor from the grabbed
5426         window. (gdk_fb_window_send_crossing_events): Send normal
5427         enter/leave notifications if grab and owner_events == TRUE.
5428
5429 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5430
5431         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5432         Do implicit button grabs, even if the window doesn't
5433         want the event.
5434         (gdk_fb_window_send_crossing_events): If there is a
5435         grab, only the grabbed window gets normal enter/leave
5436         notifications. On ungrab go from grabbed window to current.
5437         Don't send any notification to b when propagating from c -> b.
5438         If setting a grab on window, don't set prev_window.
5439         (handle_mouse_input): Send enter/leave events to the window the
5440         mouse is over, not the grabbed one.
5441         
5442 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5443
5444         * gdk/gdkregion-generic.c: Zap warning.
5445         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5446         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5447
5448 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5449
5450         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5451         The cursor should be hidden if it is part of either the
5452         source or destination region. Not only if it is in both.
5453         (gdk_window_set_transient_for): Silence warnings.
5454
5455 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5456
5457         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5458         The default mode in X is Pie Arcs, therefore that is
5459         what Gtk+ uses.
5460
5461 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5462
5463         * gdk/linux-fb/gdkinput-ps2.c:
5464         Implement correct EnterNotify/LeaveNotify:
5465         (gdk_fb_window_send_crossing_events): New function that sends
5466         all GdkCrossingEvents from the last mouse-window to the specified
5467         destination.
5468         (gdk_fb_window_visibility_crossing): Removed function.
5469         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5470         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5471         instead of gdk_window_get_pointer() for better readability.
5472
5473         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5474         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5475
5476         * gdk/linux-fb/gdkprivate-fb.h:
5477         removed gdk_fb_window_visibility_crossing, added
5478         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5479
5480         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5481         New function that finds the least common ancestor of two windows.
5482         (gdk_window_show, gdk_window_hide):
5483         Use gdk_fb_window_send_crossing_events.
5484         (gdk_fb_window_move_resize): Send configure events to toplevel
5485         windows. Use gdk_fb_window_send_crossing_events.
5486
5487 2000-11-27  Havoc Pennington  <hp@redhat.com>
5488
5489         * gtk/gtkprivate.h (enum): Remove a trailing comma
5490
5491 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5492
5493         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5494         the "changed" callback of the adjustment.  We need to redraw the
5495         spin button's arrows when the adjustment's range changes.
5496         (adjustment_changed_cb): Draw the arrows.
5497         (gtk_spin_button_value_changed): Draw the arrows.
5498
5499 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5500
5501         * gdk/linux-fb/gdkselection-fb.c:
5502         Initial selection implementation.
5503
5504         * gtk/gtkselection.c:
5505         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5506         requestor in gtk_selection_request.
5507         
5508         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5509         Added gdk_selection_property atom.
5510
5511         * gdk/linux-fb/gdkprivate-fb.h:
5512         Export _gdk_selection_window_destroyed.
5513         Removed mask_off_x/y from GdkCursorPrivateFB.
5514         Removed hbearing, added top, left to PangoFBGlyphInfo.
5515
5516         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5517         Call _gdk_selection_window_destroyed
5518         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5519         the root window has been created.
5520         (static_dx_hack, static_dy_hack, compare_draw_rects,
5521         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5522         in region. They are already sorted. Instead just traverse them in
5523         reverse if draw_direction < 0.
5524         
5525         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5526         Double-clicks must be sent after the normal button_press.
5527         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5528         
5529         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5530         Pass _gdk_fb_screen_gc instead of NULL.
5531
5532         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5533         Initialize gdk_selection_property.
5534         (gdk_event_make): Remove unused code.
5535
5536         * gdk/linux-fb/gdkcursor-fb.c:
5537         Make the pixmap for the cursor the same size as the mask. Also remove
5538         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5539         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5540         Now the whole cursor is visible.
5541
5542         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5543         Fix bug where xdest+height instead of ydest+height was used
5544         to calculate if the source and dest overlapped. This fixes the
5545         redraw bug when the main window in testgtk was scrolled when
5546         partially covered by a tall window.
5547         Copy rectangles in region in order depending on draw_direction.
5548         Also moved the draw_direction flipping of start_y and end_y into
5549         the gc functions, as this might not be what all of them want.
5550         (gdk_fb_draw_lines): Support dashed lines.
5551         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5552         so that the text is positioned correctly (was 1 pixel high).
5553
5554         gdk/linux-fb/gdkgc-fb.c:
5555         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5556         all lines were drawn a pixel to short. Also checked the default of
5557         the rest of the values, and they're the same as X now.
5558
5559         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5560         Clean up pixel positioning of the glyphs. Just use bgy->top and
5561         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5562         to all divisions to get correct rounding behaviour.
5563
5564         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5565         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5566         Moved start_y/end_y flip into draw_drawable implementations.
5567         Flip also x rendering when draw_direction < 0.
5568         Remove unneccesary multiply with draw_direction.
5569
5570 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5571
5572         * docs/tutorial/gtk-tut.sgml:
5573           - get rid of gtk_toggle_button_toggled FUD
5574           - start DND section - needs work - based on:
5575                 http://wolfpack.twu.net/docs/gtkdnd/
5576
5577 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5578
5579         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5580         Correct calculation of font metrics. Now GtkEntrys have sane
5581         size.
5582
5583 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5584
5585         * gdk/gdktypes.h:
5586         Add new type GdkSpan
5587         
5588         * docs/reference/gdk/gdk-sections.txt,
5589         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5590         gdk/gdkregion.h:
5591         Implement and document gdk_region_spans_intersect_foreach.
5592
5593         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5594         Add new file gdkrender-fb.c which contains all core
5595         rendering code.
5596         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5597         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5598         (optimized rectangle fillers).
5599
5600         * gdk/linux-fb/gdkdrawable-fb2.c:
5601         Move all rendering code to gdkrender-fb.c.
5602         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5603         Use the new span intersection functions in gdk_fb_fill_spans.
5604         gdk_fb_draw_rectangle() clips filled rectangles and calls
5605         gc->fill_rectangle with the result.
5606         gdk_fb_fill_spans() gets extra argument "sorted".
5607
5608         * gdk/linux-fb/gdkevents-fb.c:
5609         Remove unused includes and defines.
5610         New function gdk_fb_get_time() to get correct time for events.
5611
5612         * gdk/linux-fb/gdkinput-ps2.c:
5613         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5614         Make sure to set the time of all events.
5615
5616         * gdk/linux-fb/gdkmain-fb.c:
5617         Use gdk_fb_get_time ().
5618
5619         * gdk/linux-fb/gdkprivate-fb.h:
5620         New virtual GC calls: fill_span & fill_rectangle.
5621         Export gdk_fb_get_time().
5622         gdk_fb_fill_spans() gets extra argument "sorted".
5623
5624         * gdk/linux-fb/mi*.c:
5625         Use GdkSpan instead of GdkRectangle.
5626         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5627         from XFree 4 source)
5628         
5629 2000-11-22    <jrb@redhat.com>
5630
5631         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5632         reversing the order in an if statement will do.  Doing so managed
5633         to make the treemodelsort half work.  Other half will follow after
5634         I get the insert function fully fixed.
5635
5636 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5637         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5638         more than 2 bits. Besides, I need to implement an evil hack. :)
5639
5640 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5641
5642         * docs/tutorial/gtk-tut.sgml: minor corrections
5643
5644 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5645         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5646           convert to and from relative path's and iters.
5647
5648         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5649           testing sorting functions a bit better.  Currently broken -- will
5650           fix in morning.
5651
5652 2000-11-20  Havoc Pennington  <hp@redhat.com>
5653
5654         * gtk/gtkwidget.c: Documented a bunch of functions in here
5655         (gtk_widget_realize): Warn if you try to realize
5656         a widget with no parent that isn't a toplevel
5657         (gtk_widget_intersect): return a gboolean
5658
5659 2000-11-20  Havoc Pennington  <hp@redhat.com>
5660
5661         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5662         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5663         scrolling to be implemented in GDK to finish. Also, right now
5664         we just size_allocate all children on every layout change,
5665         which is pretty lame. Test commented out of testtext.c, 
5666         until it works better.
5667
5668 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5669
5670         * gdk/linux-fb/gdkdrawable-fb2.c:
5671         Removed unused arguments from gdk_fb_drawable_get_pixel().
5672
5673         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5674         Renamed fidur specific mouse packet data in MouseDevice to
5675         generic. Used it in ps2 mouse handling code to avoid blocking
5676         reads.
5677
5678 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5679
5680         * demos/gtk-demo/main.c: Changed to have the list become
5681         non-italic when the demo window is destroyed through an external
5682         event (like a close button).  Doing so found three bugs in the
5683         widget.
5684
5685         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5686
5687         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5688         we actually set the cell.
5689
5690         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5691
5692         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
5693         free a leaked path.  Thanks memprof.
5694
5695 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
5696
5697         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
5698         off-by-one error when destroying allocated segments
5699         on failure. (Elliot)
5700
5701 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
5702
5703         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
5704         memleaks found by Evan Martin.
5705
5706 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
5707
5708         * Released 1.3.2
5709         
5710         * NEWS: Updates for 1.3.2
5711
5712 2000-11-17  Tor Lillqvist  <tml@iki.fi>
5713
5714         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5715         but in general for window system specific events.
5716
5717         * gtk/gtk.def
5718         * gtk/makefile.mingw.in
5719         * gtk/makefile.msc.in: Update.
5720         
5721         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5722
5723 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5724
5725         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5726         distribute gtk.immodules.
5727
5728         * gtk/Makefile.am (install-data-local): Don't install the
5729         gtk.immodules file created for the uninstalled modules;
5730         instead run gtk-query-immodules after install
5731
5732 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5733
5734         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5735         -rpath to the right install location.
5736
5737         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5738         -export-dynamic.
5739
5740         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5741         properly.
5742
5743 2000-11-15  Havoc Pennington  <hp@pobox.com>
5744
5745         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5746         patch from Mikael Hermansson to temporarily stop blinking while
5747         the user is using the keyboard to type or navigate. 
5748
5749         Also, when blinking, stay on for longer than we stay off. Also,
5750         return from start_cursor_blink if !cursor_visible, to save
5751         checking that flag all over the place before we call
5752         start_cursor_blink.
5753
5754 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5755
5756         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5757         only contain a "fontset" line, which is now ignored.
5758
5759         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5760         double-click-to-select-word work.
5761         
5762 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5763
5764         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5765         Don't move back one char when we are actually at the end of the 
5766         paragraph.
5767
5768 2000-11-15  Robert Brady  <robert@suse.co.uk>
5769
5770         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5771         'o' < 'p'.
5772         
5773         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5774         bind_textdomain_codeset.
5775
5776         (gtk_init_check): Make the warning about translating default:LTR
5777         sterner.
5778         
5779 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5780
5781         * **/Makefile.am : remove unecessary rules for win32-specific
5782         config-substituted targets. If you want these rules, use
5783         --enable-maintainer-mode (called automatically by autogen.sh).
5784         Stops a lot of unneccessary make-time warnings.
5785
5786         * gtk/gtktext{layout,display}.c: Factor in total width as
5787         well as screen when figuring alignment for word-wrap as well as
5788         no wrap; this is necessary to handle lines that cannot be wrapped
5789         at all.
5790
5791 2000-11-15  Havoc Pennington  <hp@redhat.com>
5792
5793         * gtk/testtext.c: Implement essential color cycling feature
5794
5795 2000-11-15  Havoc Pennington  <hp@redhat.com>
5796
5797         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5798         when we invalidate the main window.
5799
5800         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5801         GtkTextView will now invalidate the side windows for us when text
5802         changes.
5803
5804 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5805
5806         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5807         unconditionally, since we may need to update the horizontal
5808         scrollbars even if the height didn't change.
5809
5810         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5811         the extra attrs, since some of them affect size.
5812
5813         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5814         x_offset correctly.
5815
5816 2000-11-15  Havoc Pennington  <hp@redhat.com>
5817
5818         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5819         don't move the first line out into the margin, instead move the
5820         whole paragraph in order to make space for the first line within 
5821         the margin
5822
5823 2000-11-15  Havoc Pennington  <hp@redhat.com>
5824
5825         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5826         xoffset in addition to yoffset, so horizontal scrolling doesn't
5827         break redraws
5828
5829 2000-11-15  Havoc Pennington  <hp@redhat.com>
5830
5831         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5832         from the cursor
5833         (render_layout_line): fix reversed test that caused weird
5834         underlines to get drawn
5835
5836 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5837
5838         * gdk/linux-fb/gdkprivate-fb.h:
5839         Fix debug macros.
5840         
5841 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5842
5843         * gdk/linux-fb/gdkprivate-fb.h:
5844         Added virtual functions set_pixel, get_color,
5845         fill_span and draw_drawable to the GC.
5846         Added global _gdk_fb_screen_gc to use instead of
5847         NULL when drawing to the screen.
5848         Added _gdk_fb_gc_calc_state() prototype.
5849
5850         * gdk/linux-fb/gdkgc-fb.c:
5851         Call _gdk_fb_gc_calc_state() on any gc state change.
5852
5853         * gdk/linux-fb/gdkglobals-fb.c:
5854         Add _gdk_fb_screen_gc
5855                 
5856         * gdk/linux-fb/gdkdrawable-fb2.c:
5857         _gdk_fb_gc_calc_state() calculates best functions
5858         for the GC state and depth.
5859         Moved bpp specialized code to separate functions.
5860         Added optimized 24 bpp AA draw_drawable.
5861
5862         * gdk/linux-fb/gdkevents-fb.c:
5863         Silence gcc warning.
5864
5865         * gdk/linux-fb/gdkimage-fb.c:
5866         Use _gdk_fb_screen_gc
5867
5868         * gdk/linux-fb/gdkwindow-fb.c:
5869         Init and use _gdk_fb_screen_gc
5870
5871         * gdk/linux-fb/mitypes.h:
5872         Remove unused types.
5873
5874 2000-11-14  Havoc Pennington  <hp@pobox.com>
5875
5876         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5877         to pixels
5878
5879 2000-11-14  Havoc Pennington  <hp@pobox.com>
5880
5881         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5882
5883         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5884         unknown char, no real reason we were using a variable. 
5885         Remove gtk_text_unknown_char variable. Fix all the text widget
5886         files accordingly.
5887
5888         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
5889         since the Unicode spec seems to prefer that character for our
5890         purposes.
5891
5892 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
5893
5894         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
5895         value of g_getenv() isn't freeable, so g_strdup it.
5896
5897         * modules/input/inuktitut.c: Inuktitut input method.
5898
5899         * modules/input/Makefile.am: Build this.
5900         
5901 2000-11-14  Elliot Lee  <sopwith@redhat.com>
5902
5903         * gtk/Makefile.am: Install gtk.immodules, needed for operation
5904         of gtk programs.
5905
5906 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
5907
5908         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
5909         reversed > that was causing Home to go to end of previous line.
5910
5911         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
5912         modified-keypresses (leave for bindings.)
5913
5914         * modules/input/Makefile.am: Remove useless -export-dynamic
5915         from module LDFLAGS.
5916
5917 2000-11-14  Havoc Pennington  <hp@redhat.com>
5918
5919         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
5920         higher.
5921
5922         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
5923         account. Also, render rise, underline, background, etc. for
5924         pixbufs as well as text. Also, draw underlines one pixel higher.
5925
5926         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
5927         PangoAttribute for the rise, so it gets drawn properly. Also,
5928         add the GtkTextAppearance attribute for pixbuf/widget segments
5929         as well; we should go ahead and have rise, underline, background,
5930         stipple work for those
5931
5932         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
5933         Pango
5934
5935 2000-11-15  Tor Lillqvist  <tml@iki.fi>
5936
5937         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
5938
5939         * gtk/gtk.def: Update.
5940
5941         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
5942         included.
5943         (gtk_rc_get_im_module_file): Use run-time installation directory
5944         on Win32.
5945
5946         * gdk/win32/rc/gdk.rc: Remove.
5947         * gdk/win32/rc/gdk.rc.in: New file.
5948         * gdk/win32/rc/Makefile.am: New file
5949         * gdk/win32/Makefile.am: Corresponding changes.
5950
5951         * gtk/gtk.rc: Remove.
5952         * gtk/gtk-win32.rc.in: New file.
5953         * gtk/Makefile.am: Corresponding changes.
5954
5955         * configure.in: Corresponding changes.
5956
5957         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
5958         has a built gtkcompat.h. Developers using CVS code on Win32 can
5959         hand-edit it from gtkcompat.h.in.
5960
5961         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
5962         gtkcompat.h from gtkcompat.h.win32.
5963
5964 2000-11-14  Havoc Pennington  <hp@redhat.com>
5965
5966         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
5967         to default to GDK_ACTION_MOVE if the drag is within a single
5968         widget. Defaults to GDK_ACTION_COPY between widgets.
5969
5970 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
5971
5972         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
5973
5974         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
5975
5976         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
5977         srcdir != builddir
5978
5979         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
5980
5981         * configure.in (GTK_VERSION): Up to 1.3.2
5982
5983         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
5984         gtkimcontextxim.h
5985
5986         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
5987         missing doc comment.
5988
5989 2000-11-14  Alexander Larsson  <alexl@redhat.com>
5990
5991         * modules/linux-fb/basic.c:
5992         Use the glib iconv wrappers.
5993
5994 2000-11-13  Havoc Pennington  <hp@pobox.com>
5995
5996         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
5997         still more bugs.
5998
5999         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6000         scroll the GdkWindows before realization.
6001
6002 2000-11-13  Havoc Pennington  <hp@redhat.com>
6003
6004         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6005         where GC didn't always get updated properly
6006
6007         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6008         of fonts instead of setting the entire font
6009
6010         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6011         setting entire font
6012
6013         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6014
6015         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6016         a bunch of individually-settable font attributes. You can still 
6017         use the "font" and "font_desc" args, they just set all the font
6018         attributes at once.
6019
6020 2000-11-13 Elliot Lee <sopwith@redhat.com>
6021
6022         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6023
6024 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6025
6026         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6027         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6028
6029         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6030         work better.
6031
6032 2000-11-13  Havoc Pennington  <hp@redhat.com>
6033
6034         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6035         the module file.
6036
6037         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6038         dest->language
6039
6040         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6041         settings
6042
6043         * gtk/gtktextview.c: Implement object args and setters/getters for
6044         all the aspects of the GtkTextAttributes that are not set from
6045         GtkWidget attributes. This is spacing, justification, margins,
6046         etc.
6047
6048         (gtk_text_view_set_arg)
6049         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6050         args
6051         (gtk_text_view_class_init): Add args for justify, left_margin,
6052         right_margin, indent, and tabs
6053         
6054
6055         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6056         attribute properly
6057
6058         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6059         replace with indent attribute
6060
6061         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6062         PANGO_SCALE
6063
6064         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6065         rearranging code to do that
6066         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6067         i.e. don't subtract the top_margin first, just to keep
6068         all margin-futzing in one place.
6069
6070         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6071
6072         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6073         special case of last line, Pango now handles this itself.
6074         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6075         Y coordinate
6076         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6077         (find_display_line_above): wasn't moving the byte index as it
6078         iterated over lines, so always returned byte 0. Also, port to use
6079         PangoLayoutIter.
6080         (find_display_line_below): same problem as
6081         find_display_line_above. Also, port to use PangoLayoutIter.
6082
6083 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6084
6085         * gdk/linux-fb/*.[ch]:
6086         Massive reindent to gtk+ standard. My hands hurt.
6087
6088         * gdk/linux-fb/gdkcolor-fb.c:
6089         Move GdkColorPrivateFB from inherited to windowing_data
6090
6091         * gdk/linux-fb/gdkcursor-fb.c:
6092         _gdk_cursor_new_from_pixmap made static
6093
6094         * gdk/linux-fb/gdkdnd-fb.c:
6095         GdkDragContextPrivate moved to windowing_data
6096
6097         * gdk/linux-fb/gdkdrawable-fb2.c:
6098         Removed endian.h, use glib endianness macros instead
6099         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6100         and GDK_DRAWABLE_IMPL_FBDATA
6101
6102         * gdk/linux-fb/gdkfont-fb.c:
6103         Add empty gdk_font_load(). Needed for linking of Gtk+.
6104
6105         * gdk/linux-fb/gdkimage-fb.c:
6106         Removed endian.h, use glib endianness macros instead
6107         Moved GdkImagePrivateFB to windowing_data
6108         gdk_image_new_bitmap didn't always allocate enough
6109         memory.
6110
6111         * gdk/linux-fb/gdkinput-ps2.c:
6112         Added semi-working support for MS serial mice.
6113
6114         * gdk/linux-fb/gdkprivate-fb.h:
6115         s/GdkWindowPrivate/GdkWindowObject/
6116         Removed GdkWindowPrivate typedef
6117         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6118         Removed GDK_DRAWABLE_P
6119         Move GdkColorPrivateFB from inherited to windowing_data
6120         Moved GdkImagePrivateFB to windowing_data
6121
6122         * gdk/linux-fb/gdkvisual-fb.c:
6123         Removed some unused debug code.
6124
6125         * gdk/linux-fb/gdkwindow-fb.c:
6126         Use stock cursors instead of including X headers.
6127         s/GdkWindowPrivate/GdkWindowObject/
6128
6129         * gdk/linux-fb/mitypes.h:
6130         Removed unused types.
6131
6132         * modules/linux-fb/basic.c:
6133         Use the pango fribidi wrappers.
6134
6135 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6136
6137         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6138         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6139         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6140         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6141         GEqualFunc where applicable.
6142         
6143         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6144         pango_font_description_equal as changed in pango.
6145         
6146         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6147
6148         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6149
6150         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6151
6152         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6153
6154         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6155
6156         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6157
6158         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6159         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6160
6161         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6162         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6163
6164 2000-11-12  Havoc Pennington  <hp@pobox.com>
6165
6166         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6167         dir to datadir/gtk+-2.0/demo
6168
6169         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6170         sorts of text widget and Pango font bugs. Urgh.
6171
6172         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6173
6174         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6175         tree that you should double click to see the demo. Fix 
6176         types of variables to reflect changed return values from 
6177         GtkTreeStore and GtkTreeViewColumn constructors.
6178
6179         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6180         newly-created buffer to prepare for GObject semantics
6181
6182         * gtk/testtext.c: don't leak the buffer with GObject semantics
6183
6184         * gtk/testtextbuffer.c: ditto
6185         
6186 2000-11-12  Havoc Pennington  <hp@pobox.com>
6187
6188         Rename this testgtk to gtk-demo to avoid confusion, and 
6189         install it so people can use it as a supplement to 
6190         the documentation.
6191         
6192         * demos/gtk-demo: Moved from demos/testgtk
6193
6194         * demos/testgtk: Removed
6195
6196         * configure.in: make Makefile in gtk-demo
6197         
6198         * demos/gtk-demo/Makefile.am: Install sample source to 
6199         datadir/gtk-demo (maybe there's a better place?), and 
6200         rename the binary to gtk-demo
6201         
6202         * demos/gtk-demo/main.c (load_file): Load installed sample
6203         source if source isn't found in pwd.
6204
6205 2000-11-09  Havoc Pennington  <hp@pobox.com>
6206
6207         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6208         argument to set the char displayed when visibility == FALSE
6209         (gtk_entry_create_layout): If !entry->visible, replace 
6210         all chars with the "invisible char"
6211
6212         * gtk/testgtk.c: Test the invisible_char deal
6213         
6214 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6215
6216         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6217         can't get a native font in the right encoding.
6218
6219 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6220
6221         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6222         respectively.
6223
6224 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6225
6226         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6227         Fix warning when moving between paragraphs.
6228
6229         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6230         delete => delete_from_cursor, insert => insert_at_cursor
6231
6232 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6233
6234         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6235
6236         * modules/input/imthai-broken.c: A Thai input method for use if
6237         Thai keys are really generating Latin1 keysyms.
6238
6239         * modules/input/Makefile.am: Build these.
6240
6241 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6242
6243         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6244         g_filename_{to,from}_utf8 now takes an extra parameter.
6245
6246         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6247         strftime into UTF-8.
6248
6249         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6250         calendars.
6251
6252         (gtk_calendar_paint_day_names): Draw day names in the right 
6253         place.
6254         
6255 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6256
6257         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6258         problem with using result of g_get_charset() backwards -
6259         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6260
6261         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6262         negative min_width/height and max_width/height to
6263         mean "requisition"; this allows setting a window
6264         to be user-resizable in only one direction easily.
6265
6266         * gtk/testgtk.c (create_main_window): Remove hard-coded
6267         usize - set a default size in the vertical direction.
6268
6269 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6270
6271         * gtk/gtkrange.c: Add some missing casts. Support 
6272         2 and 3 button clicks on the arrows to mean 
6273         "move by pages" and "jump to end". (Like gtkspinbutton)
6274
6275 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6276
6277         * gdk/win32/makefile.msc : reflect build module changes
6278
6279         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6280         from GdkPixmap*, cast implementation member instead.
6281
6282         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6283         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6284         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6285         more Gdi functions return value checking. 
6286         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6287         GdkImagePrivateWin32 *.
6288
6289         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6290         menus useable again. Add #pragma message to keep reminded on this issue.
6291         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6292         windows. This allows to enable backing store on Win32!
6293
6294         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6295         in drawable is of impl type. Correct specific type checks appropriate.
6296  
6297         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6298         GDK_WINDOW_DESTROYED before allocating new resources.
6299
6300         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6301
6302         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6303         (gdk_window_foreign_new) initialize parent handle.
6304         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6305
6306         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6307         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6308         problems (e.g. main buttons in testgtk). 
6309
6310 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6311
6312         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6313         gtk_widget_activate for GDK_Return.
6314
6315         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6316         of preedit cursor position.
6317
6318 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6319
6320         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6321         static.
6322
6323 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6324
6325         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6326         out support for multiple locales; that simple doesn't
6327         work reliably with current Xlib
6328
6329         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6330         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6331         Add support for positioning the cursor within the preedit string.
6332
6333 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6334
6335         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6336         at XIM input method module.
6337
6338         * gtk/gtktextview.c: Check for bindings after passing
6339         events to im context filter.
6340
6341 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6342
6343         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6344         empty attribute lists properly.
6345
6346 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6347
6348         * gtk/queryimmodules.c (main): Return non-zero exit
6349         status if errors were encountered querying any
6350         modules.
6351
6352         * modules/input/Makefile.am (moduledir): remove
6353         leftover bin program target.
6354
6355         * docs/make-todo: Fix typo in error message.
6356
6357 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6358
6359         * configure.in: Add modules/input/Makefile
6360
6361 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6362
6363         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6364         don't include gtkthemes.h.
6365
6366         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6367         to point
6368
6369         * gtk/Makefile.am: Add new .c and .h files, build 
6370         gtk-query-immodules and use it to create a gtk.immodules
6371         file for use of test programs.
6372
6373         * gtk/gtkpreview.c: remove extra blank line.
6374
6375 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6376
6377         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6378         Add the ability to add extra tables beyond the default
6379         one, and also the ability to have compose sequences 
6380         that are prefixes of other compose sequences. 
6381
6382         * gtk/gtkimcontextsimple.c: Export a preedit string which
6383         consists of possible candidates for keystrokes that have
6384         been entered but not yet committed.
6385
6386         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6387         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6388
6389         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6390         Add a function to add input-method switching menu items
6391         to a menu.
6392
6393         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6394         when switching input methods.
6395
6396         * gtk/gtkimcontextsimple.[ch]: Change the format of
6397         the compose table to allow compose tables of different
6398         lengths / sequence.
6399
6400 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6401
6402         * gtk/gtkimmodule.[ch]: Support routines for loading
6403         GtkIMContext implementations dynamically at runtime.
6404
6405         * modules/input/imcyrillic-translit.c: A sample input
6406         method (based on GtkIMContextSimple with an extra table),
6407         which demonstrates preedit strings and the module
6408         system for input modules
6409
6410         * gtk/queryimmodules.c: Program to query the available
6411         input modules and write the results into a file.
6412          
6413         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6414         extra config options "im_module_file" (cache file for
6415         input method modules), and "im_module_path" - path
6416         to look for modules when generating cache file.
6417
6418         This doesn't scale.
6419
6420 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6421
6422         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6423         generic code from gtkthemes into a new abstraction
6424         GtkModule which has the logic for implementing
6425         a loadable module which implements a number of 
6426         GObject types.
6427
6428 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6429
6430         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6431         a class into an interface  
6432         
6433         * gtk/gtkoldeditable.[ch]: Move the old editable
6434         implementation into here, so legacy widgets can
6435         still rely on the implemenation. GtkOldEditable
6436         exports GtkEditable. Make selection handling
6437         code use new text conversion functions (and
6438         handle UTF-8 as a side-effect). Use GtkClipboard
6439         for CLIPBOARD.
6440
6441         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6442         Adopt to match above changes.
6443
6444         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6445         avoid GtkOldEditable implementation. Restructure
6446         to reduce number of places that modify state directly.
6447         Move to GtkBindingSet. Display the preedit string.
6448         Queue recomputation of PangoLayout and scroll position
6449         to improve effiency of doing complex changes naively.
6450         Add a menu with cut/copy/paste and input method selection.
6451
6452 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6453
6454         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6455         to set preedit string and attributes; display preedit string by
6456         inserting string and attributes at cursor when creating the
6457         GtkTextLineDisplay.
6458
6459         * gtk/gtktextlayout.c: Move all conversions between byte
6460         positions in PangoLayout and GtkTextIter into new functions
6461         line_display_iter_to_index/index_to_iter that properly
6462         handle the preedit string.
6463
6464         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6465         it to return const char * (eventually will end up
6466         as GCONST char *, most likely.)
6467
6468         * gtk/gtktextview.[ch]: Handle the preedit string, call
6469         gtk_im_context_reset() as necessary, add a menu to switch
6470         input methods.
6471         
6472         * gtk/gtktextlayout.[ch]: Remove useless
6473         gtk_text_layout_get_log_attrs() function.
6474
6475 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6476
6477         * gdk/gdk.def
6478         * gtk/gtk.def: Update.
6479
6480         * gdk/win32/*.c: Add last argument to g_type_register_static()
6481         calls.
6482
6483         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6484
6485         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6486         generated by older wheel mouse drivers. Get the correct y
6487         coordinate from WM_MOUSEWHEEL messages.
6488
6489         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6490         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6491         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6492         Debugging functions.
6493
6494         * gdk/win32/gdkprivate-win32.h: Declare them.
6495
6496         * gdk/win32/gdkinput-win32.h: Add declaration for
6497         gdk_input_window_destroy().
6498
6499         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6500
6501 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6502
6503         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6504         function to help handle keeping things in sync.
6505
6506 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6507
6508         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6509         BOXED marshallers.
6510
6511         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6512         (gtk_list_store_class_init): use the new BOXED marshallers.
6513
6514         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6515         new_with_values to new_with_types.
6516         (gtk_tree_store_get_column_type): add this.
6517         (gtk_tree_store_class_init): use the new BOXED marshallers.
6518
6519         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6520         mirror some POINTER marshallers.
6521
6522 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6523
6524         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6525         allow more interesting iterators.  Also, made the lifecycle of
6526         iterators more explicit.
6527
6528         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6529
6530         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6531         types.
6532
6533 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6534
6535         * demos/testgtk/menus.c:
6536         Changes to make the new testgtk compile after
6537         gtk_menu_append was removed.
6538
6539         * gdk/linux-fb/gdkdrawable-fb2.c
6540         (gdk_fb_get_depth, gdk_fb_get_visual,
6541         gdk_drawable_impl_fb_class_init): Implement
6542         these drawable functions. Now GtkImages work again.
6543
6544         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6545
6546         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6547         
6548         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6549         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6550         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6551         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6552
6553 2000-11-08  Havoc Pennington  <hp@pobox.com>
6554
6555         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6556         visible_set args, don't know where these had gone, I thought they
6557         used to be there
6558
6559         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6560         now we can test the feature and see that it's totally broken.
6561
6562 2000-11-08  Havoc Pennington  <hp@pobox.com>
6563
6564         Make DND copy pixbufs and tags when source and target share a 
6565         tag table.
6566         
6567         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6568         in-process GTK_TEXT_BUFFER_CONTENTS target
6569         (gtk_text_view_drag_data_received): Paste from
6570         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6571
6572 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6573
6574         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6575         API changes.
6576
6577         * gtk/gtkmenu.c: Add support for scrolling menus.
6578         Remove gtk_menu_append/prepend/insert, these have been moved to
6579         gtkcompat.h as #defines.
6580
6581         * gtk/gtkcompat.h.in:
6582         Add compatibility #defines for gtk_menu_append/prepend/insert
6583
6584         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6585         GtkMenuPositionFunc gets an extra argument push_in.
6586         gtk_menu_append/prepend/insert removed.
6587         
6588         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6589         positioning behaviour to fit to scrolling menus.
6590
6591         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6592         into menuitem->submeny. That is wrong, and broke torn
6593         off submenus of torn off menus, since they were unrealized
6594         when the first menu was unrealized.
6595
6596         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6597         gtk_menu_shell_select_item() since these need to be overridden in
6598         GtkMenu.
6599
6600         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6601         positioning behaviour to fit to scrolling menus.
6602         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6603         the current item so that it is prelighted when the menu pops up.
6604         This is a workaround to the fact that the menu doesn't get the
6605         initial enter event (due to grabs).
6606
6607         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6608         s/gtk_menu_append/gtk_menu_shell_append/
6609
6610         * gtk/gtknotebook.c:
6611         s/gtk_menu_insert/gtk_menu_shell_insert/
6612
6613         * gtk/testgtk.c (create_menu, create_menus):
6614         Create the first menu with 50 items so that menu scrolling
6615         can be tested.
6616         
6617         
6618         Patch from Jonathan Blandford  <jrb@redhat.com>
6619
6620         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6621         system to handle size requests.  First, we ask what the size of
6622         the toggle is.  Then, when allocating the size, we allocate the
6623         toggle_size first.  This way we can have multiple menu-item
6624         classes w/o needing a seperate class for each.
6625
6626         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6627         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6628
6629         * gtk/gtkcheckmenuitem.c
6630         (gtk_check_menu_item_toggle_size_request): New function to handle
6631         the toggle size-request.
6632
6633 2000-11-07  Havoc Pennington  <hp@redhat.com>
6634
6635         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6636         Half-ass somewhat fix this function, so that scrolling to the
6637         insertion point works. Pango hacking is in the future to really
6638         fix it.
6639
6640         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6641         length of data, no longer used.
6642
6643         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6644         method contents in here, get rid of destroy method
6645         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6646         that were backward. Remove debug spew.
6647         (cut_or_copy): Make the clipboard work with insert_range to
6648         preserve tags and pixbufs, not just the primary selection.
6649
6650 2000-11-07  Havoc Pennington  <hp@redhat.com>
6651
6652         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6653         to gtk_text_mark_get_visible
6654
6655         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6656         bug that was generating an invalid iterator
6657
6658         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6659         ensure_char_offsets() in front of code placing the iter in an
6660         invalid state.
6661
6662         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6663         make override_location arg const
6664         (paste): Replace the selection if we paste into the 
6665         current selection
6666
6667         * gtk/gtkselection.h: Remove "GtkSelectioData"
6668         (struct _GtkSelectionData): move the definition here.
6669
6670         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6671         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6672
6673         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6674
6675         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6676         (gtk_text_buffer_insert_range_interactive): implement
6677         (gtk_text_buffer_get_tags): Remove, replaced by
6678         gtk_text_iter_get_tags()
6679
6680         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6681         limit parameter, to avoid infinite linear scan.
6682         (gtk_text_iter_backward_search): Add search limit
6683         (gtk_text_iter_forward_find_char): Add search limit
6684         (gtk_text_iter_backward_find_char): Add search limit
6685
6686 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6687
6688         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6689         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6690         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6691         gdk/linux-fb/gdkwindow-fb.c:
6692         use g_object_new() instead of g_type_create_instance() which
6693         is a private function for fundamental type implementations.
6694
6695         * gdk/linux-fb/gdkinput-ps2.c:
6696         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
6697         instead just store the current modifier state. Add a (somewhat broken)
6698         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
6699         Rename exported function gdk_input_ps2_get_mouseinfo to
6700         gdk_input_get_mouseinfo.
6701
6702         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
6703         gdk/linux-fb/gdkwindow-fb.c:
6704         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
6705         
6706
6707 2000-11-02  Havoc Pennington  <hp@redhat.com>
6708
6709         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
6710         use stock buttons. Should be 100% source compatible, appropriate
6711         filesel fields now point to dialog->vbox and dialog->action_area.
6712         On the bizarre side, dialog->action_area and filesel->action_area
6713         are not the same widget.
6714         (gtk_file_selection_init): Put some padding around the selection
6715         entry, so it isn't touching the GtkDialog separator.    
6716
6717         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6718         use stock buttons, etc. Should also be source compatible.
6719         Set the dialog default title in _init not _new().
6720         
6721         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6722         Use stock buttons; don't put a button box inside the existing
6723         dialog button box. Don't bother with push/pop colormap anymore.
6724
6725         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6726         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6727         for message dialog, and necessary for the font selection and color
6728         selection with help and apply buttons.
6729         
6730         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6731         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6732         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6733         between buttons, put less padding around the action area.
6734         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6735         This will also exit the loop if the widget is hidden.
6736         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6737         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6738         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6739         special-case delete event.
6740
6741         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6742         formatting
6743         
6744 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6745
6746         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6747         button to temporarily disable position recording in the
6748         "saved position" test.
6749
6750 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6751
6752         * gtk/gtkthemes.c: added compat code that temporarily implements
6753         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6754         going to be revamped by owen's upcoming GtkModule patches, but
6755         untill then people want gtk to build, right? ;)
6756
6757 2000-11-04  Havoc Pennington  <hp@pobox.com>
6758
6759         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6760         list
6761
6762         * docs/Changes-2.0.txt: Add note about
6763         gtk_container_get_toplevels()
6764
6765         * gtk/gtktextview.h: formatting
6766         
6767         * gtk/gtktextview.c: don't start descriptions with "Returns",
6768         confuses gtk-doc
6769
6770 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6771
6772         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6773         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6774
6775 2000-11-03  Havoc Pennington  <hp@redhat.com>
6776
6777         * gtk/gtktexttagtable.c: Docs
6778         (gtk_text_tag_table_size): return a signed int
6779
6780         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6781         (gtk_text_tag_event): make the event_object a GObject
6782
6783         * gtk/gtktextview.c: Write API docs for all functions.
6784
6785         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6786         for gtk_text_view_get_window_type() called on one of the private
6787         windows.
6788
6789         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6790         directly, call get_buffer() which demand-creates a default
6791         buffer. So gtk_text_view_new() can be used to create a view with a
6792         default buffer in it, if you just want an empty text box users can
6793         put data in. Useful for GUI builders also.
6794
6795 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6796
6797         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6798         the charset encodign portion MUST be in lowercase.
6799         * gtk/gtkrc.az: added file for Azeri language
6800
6801 2000-11-03  Havoc Pennington  <hp@redhat.com>
6802
6803         Get widgets working on the btree/buffer side. Display of them 
6804         still doesn't work.
6805         
6806         * gtk/gtktextview.c: start implementing child widget stuff
6807
6808         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6809
6810         * gtk/gtktextlayout.c: handle embedded widgets
6811
6812         * gtk/gtktextdisplay.c: handle embedded widgets
6813
6814         * gtk/gtktextchild.c: Implement all the child anchor goo
6815
6816         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6817         function
6818
6819         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6820         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6821         creating a child anchor or a pixbuf segment.
6822         (gtk_text_btree_create_child_anchor): new function
6823         (gtk_text_btree_unregister_child_anchor): new function
6824
6825         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6826         allocate_child signal on GtkTextLayout
6827
6828         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6829         values
6830         (gtk_text_iter_get_child_anchor): new function
6831
6832         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6833         default handler for the changed signal, which calls
6834         gtk_text_buffer_set_modified(), instead of just always emitting
6835         changed then calling set_modified() manually. I guess this is
6836         maybe more flexible. It seems logical.
6837
6838 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6839
6840         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6841         now.
6842
6843         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6844
6845 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6846
6847         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6848         been marked static.
6849
6850 2000-11-02  Havoc Pennington  <hp@redhat.com>
6851
6852         * gtk/testgtk.c (create_labels): had a test backward
6853
6854         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6855         fields, so the dest GC ends up with the correct clip origin, 
6856         etc. Fixes a bug where colored labels didn't redraw 
6857         properly.
6858
6859 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6860
6861         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6862         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6863         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6864         Add last argument to t_type_register_static call.
6865         
6866         * gdk/linux-fb/gdkdrawable-fb2.c:
6867         Add last argument to t_type_register_static call.
6868         export the get_image drawable virtual function.
6869
6870         * gdk/linux-fb/gdkimage-fb.c:
6871         Add last argument to t_type_register_static call.
6872         rename gtk_image_get to _gdk_fb_get_image and
6873         export it for use by gdkdrawable-fb2.
6874
6875         * gdk/linux-fb/gdkprivate-fb.h:
6876         export _gdk_fb_get_image.
6877
6878         * gdk/linux-fb/gdkselection-fb.c:
6879         Add new api call stubs.
6880
6881         * gtk/Makefile.am:
6882         Missing ( in linux-fb part.
6883
6884         * modules/linux-fb/Makefile.am:
6885         Must link with gdk_pixbuf or get unresolved symbol.
6886
6887 2000-11-01  Havoc Pennington  <hp@pobox.com>
6888
6889         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
6890         GTK_TYPE_TEXT_ITER and BOXED marshallers
6891
6892         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
6893
6894         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
6895         
6896         * gtk/gtk-boxed.defs: add GtkTextIter
6897
6898         * gtk/gtkmarshal.list: Add marshallers for text widget that 
6899         properly use OBJECT and BOXED
6900
6901 2000-11-01  Havoc Pennington  <hp@redhat.com>
6902
6903         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
6904
6905         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
6906         before returning it. 
6907         
6908 2000-11-01  Havoc Pennington  <hp@redhat.com>
6909
6910         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6911         Clip the rectangle to be rendered to the drawable, since
6912         get_from_drawable() requires a region within the drawable
6913
6914 2000-11-01  Havoc Pennington  <hp@redhat.com>
6915
6916         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
6917         from coordinates.
6918
6919 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
6920
6921         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
6922         it isn't NULL.
6923
6924 2000-11-01  Havoc Pennington  <hp@pobox.com>
6925
6926         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
6927         on a label
6928         (gtk_label_finalize): unref the attr list if any.
6929
6930         * gtk/testgtk.c (create_get_image): close test on second click
6931         (make_message_dialog): close dialog if it exists
6932
6933         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
6934
6935         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
6936         gdk-pixbuf
6937
6938         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
6939         from Pango markup format
6940         (gtk_label_set_markup_with_accel): ditto but with accelerator
6941         parsing
6942
6943         * gtk/gtkimage.c (gtk_image_expose): reformatting.
6944
6945         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
6946         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
6947         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
6948         call gdk_window_get_origin().
6949
6950         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6951         implement GDK_PIXBUF_ALPHA_FULL
6952         
6953 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
6954
6955         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
6956         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
6957         g_signal_handlers_disconnect_matched to block/unblock and disconnect
6958         multiple handlers respectively, instead of only treating the
6959         first handler found (bug reported by owen).
6960
6961 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
6962
6963         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
6964
6965         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
6966
6967         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
6968         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
6969         gtk/gtktreeviewcolumn.h: Fixed inline docs.
6970
6971         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
6972         widget.  Needs writing someday.
6973
6974         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
6975         the docs.
6976
6977 2000-10-30  Havoc Pennington  <hp@redhat.com>
6978
6979         * gtk/gtktextview.h, gtk/gtktextview.c:
6980         Rename delete_at_cursor delete_from_cursor, and 
6981         move to move_cursor.
6982
6983 2000-10-30  Havoc Pennington  <hp@redhat.com>
6984
6985         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
6986         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
6987         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
6988         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
6989         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
6990         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
6991         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
6992         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
6993         gtktexttypes.h, gtktextview.c, gtktextview.h:
6994
6995         Massive reindentation and reformatting. Arg alignment and comments
6996         still need fixing in various places.
6997
6998 2000-10-30  Havoc Pennington  <hp@redhat.com>
6999
7000         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7001         to be named insert_at_cursor and delete_at_cursor so C++ can
7002         handle them.
7003
7004 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7005
7006         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7007         to get a double directory separator in case the home directory
7008         ends with one. This would cause trouble especially on Windows,
7009         where the path will be confused with the syntax for an an UNC
7010         (network share) path \\server\share\path.
7011         (gtk_rc_add_initial_default_files): Ditto.
7012
7013 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7014
7015         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7016
7017         * gtk/gtktextview.c: Use correct marshallers.
7018
7019 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7020
7021         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7022         use new iter stuff, and added all the appropriate signals et al.
7023
7024         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7025         code is internal to gtk only.
7026
7027 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7028
7029         * gtk/gtk.def
7030         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7031         glib-genmarshal etc.
7032
7033 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7034
7035         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7036         parallel builds.
7037
7038 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7039
7040         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7041
7042 2000-10-27  Robert Brady  <robert@suse.co.uk>
7043
7044         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7045         en_GB (British), ia (Interlingua).
7046
7047 2000-10-26  Havoc Pennington  <hp@redhat.com>
7048
7049         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7050
7051         Fixed output of:
7052         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7053         
7054         * gtk/gtktextsegment.c (char_segment_new): rename
7055         (_char_segment_new_from_two_strings): rename
7056         (_toggle_segment_new): rename
7057         
7058         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7059         (make_clipboard_widget): make it static
7060         (text_get_func): static
7061         (text_clear_func): static
7062
7063         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7064         static
7065         (hex_changed): make it static
7066         (hsv_changed): make it static
7067         (opacity_entry_changed): make it static
7068
7069         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7070         (toggle_segment_check_func): rename with _gtk
7071
7072         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7073         (_widget_segment_new): rename
7074         (_widget_segment_add): rename
7075         (_widget_segment_remove): rename
7076         (_widget_segment_ref): rename
7077         (_widget_segment_unref): rename
7078
7079         * gtk/gtktextmark.c (_mark_segment_new): Rename
7080         _gtk_mark_segment_new   
7081
7082 2000-10-26  Havoc Pennington  <hp@redhat.com>
7083
7084         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7085         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7086         types
7087
7088         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7089         marshaller types
7090
7091         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7092         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7093         license on these files.
7094
7095         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7096         work.
7097
7098         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7099         runtime random number different for each tree, instead of 
7100         a constant I made up.
7101
7102 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7103
7104         * gtk/Makefile.am: buncha cleanups, kludged build sources
7105         dependencies with a Makefile: oldest-source-stamp dependancy
7106         for the moment. automake is really fighting us here, with
7107         intentionally not allowing user-defined rules or dependancies
7108         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7109
7110         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7111         to public headers. tehy have a comment stating that they are
7112         "semi-public" aren't included by gtk.h and if enums popup there,
7113         they can be /*< skip >*/-ed.
7114
7115         * gtk/gtktextlayout.h: 
7116         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7117         added LGPL... <SIGH>
7118
7119 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7120
7121         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7122         GtkTreeIter.  Added iterators everywhere.
7123
7124         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7125
7126         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7127
7128         * gtk/gtktreestore.c: Changed to use the iterators.
7129
7130         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7131         iterators tomorrow.
7132
7133         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7134         iterators tomorrow.
7135
7136         * gtk/treestoretest.c: Changed to use iterators.
7137
7138         * demos/testgtk/main.c: Moved to use the new iterator system.
7139
7140 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7141
7142         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7143         localization misbehaviour.
7144
7145         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7146         a useless type without copy/free.
7147
7148         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7149         of GTK_TYPE_CTREE_NODE.
7150
7151 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7152
7153         * gtk/gtksignal.c:
7154         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7155         applicable.
7156
7157         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7158         gtk_selection_data_copy and gtk_selection_data_free
7159         do GtkSelectionData work as params in signals.
7160
7161 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7162
7163         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7164         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7165         couldn't they at least give it a non-standard name?
7166         
7167         * gtk/gtktextlayout.c: arg! yet another implementation of
7168         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7169
7170         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7171         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7172         home. now i know this _is_ a conspiracy.
7173
7174         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7175         ::state-changed.
7176
7177         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7178         (gtk_accel_group_create_add): marshaller signature fixups.
7179
7180         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7181         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7182
7183         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7184         anymore.
7185
7186 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7187
7188         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7189         due to the signal system changes, it wouldn't build currently. to
7190         be fixed soon.
7191
7192         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7193
7194         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7195         so it needs gtk_marshal_VOID__ENUM() instead of
7196         gtk_marshal_NONE__UINT().
7197
7198         * gdk/gdk*.c: adapted type registration functions.
7199
7200         * gtk/gtkbindings.c:
7201         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7202         gone.
7203
7204         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7205
7206         * gtk/gtkobject.c:
7207         (gtk_object_destroy):
7208         (gtk_object_shutdown): fixed recursion guards. basically we have to
7209         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7210         is called during ::destroy, and avoid recursion there.
7211
7212         * gtk/gtktypeutils.c:
7213         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7214         boxed_copy/boxed_free. this needs a more general solution based on a
7215         publically installed code-generator utility.
7216
7217         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7218         glib's gobject has support for that now.
7219         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7220
7221 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7222
7223         * gtk/gtksignal.[hc]:
7224         * gtk/gtkmarshal.[hc]:
7225         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7226         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7227         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7228         care of that.
7229
7230         * *.c: marshaller name fixups.
7231
7232         * gtk/gtkmarshal.list: added a comment briefing the format.
7233
7234 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7235
7236         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7237         compatibility macros here now. more specifically, most of
7238         the API is preserved (yes, _most_, nonwithstanding the
7239         following exceptions listed, the API is stil lHUGE ;)
7240         things that got removed completely:
7241         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7242         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7243         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7244         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7245         gtk_signal_remove_emission_hook().
7246         non-functional functions variants:
7247         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7248         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7249         not supported anymore.
7250         (gtk_signal_compat_matched): new internal function to aid
7251         implementation of the compatibility macros, it  provides
7252         functionality to block/unblock/disconnect handlers based
7253         on func/data.
7254
7255         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7256
7257         * *.c: adaptions to new type registration API signatures.
7258
7259 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7260
7261         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7262
7263 2000-10-25  Robert Brady  <robert@suse.co.uk>
7264
7265         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7266         gdk_property_delete): If window == NULL, assume the root window.
7267         (restoring the behaviour that was in 1.2).
7268         
7269         * gtk/testtext.c (save_buffer): Allow creation of new files when
7270         saving.
7271
7272         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7273         calls to read().
7274
7275 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7276
7277         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7278
7279         * gdk/win32/gdkdrawable-win32.c
7280         * gdk/win32/gdkimage-win32.c
7281         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7282         X11 backend.
7283
7284         * gdk/win32/gdkcc-win32.c
7285         * gdk/win32/gdkcolor-win32.c
7286         * gdk/win32/gdkfont-win32.c
7287         * gdk/win32/gdkinput-win32.c
7288         * gdk/win32/gdkmain-win32.c
7289         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7290
7291 2000-10-24  Havoc Pennington  <hp@redhat.com>
7292
7293         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7294         it a static function
7295
7296         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7297         redraw text when a tag is applied to it.
7298
7299         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7300         (gtk_text_tag_affects_nonsize_appearance): private functions to
7301         see if a tag requires various kinds of redraw/layout to be queued
7302         up.
7303
7304         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7305
7306         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7307         at the start of the buffer, so search works by default
7308
7309         * gtk/gtktextiter.c (lines_match): init match_start always
7310
7311         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7312         function, get iter at a line + a byte index
7313
7314         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7315         to set byte position within a line
7316         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7317
7318 2000-10-23  Havoc Pennington  <hp@redhat.com>
7319
7320         * gtk/testtext.c: Re-enable the "find" dialog
7321
7322         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7323         
7324         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7325         the arguments to gdk_draw_drawable were in the wrong order
7326         (gdk_window_paint_init_bg): This function was ignoring the
7327         init_region, instead of clipping to it, so the entire backing
7328         pixmap was cleared on every begin_paint()
7329         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7330         was in here again, the loop kept using the same GtkWindowPaint
7331         over and over.
7332         (gdk_window_begin_paint_region): Fix a bug where we had two
7333         x_offset instead of x_offset and y_offset
7334
7335         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7336         before we get the image.
7337         (gdk_draw_drawable): get the composite before we draw the drawable.
7338         (gdk_drawable_real_get_composite_drawable): default
7339         get_composite_drawable implementation that returns the drawable 
7340         itself
7341
7342         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7343         get_composite_drawable virtual function
7344
7345         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7346         list-walking bug
7347
7348         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7349         make this work if the source drawable is a GdkDrawableImplX11
7350         instead of a public drawable type. This is really broken; the
7351         problem is that GdkDrawable needs a virtual method get_xid(), but
7352         of course that doesn't work in practice. Enter RTTI.
7353
7354         Also, improve mismatched depth message.
7355
7356         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7357         GdkPixmap
7358
7359         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7360         install _gdk_x11_get_image as our implementation of get_image
7361         
7362         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7363         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7364
7365         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7366         gdk_drawable_get_image
7367
7368         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7369
7370         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7371         get_image
7372
7373         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7374         trailing semicolon after for loop
7375
7376 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7377
7378         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7379         where font_desc for widget's context lagged widget's font_desc by
7380         one step.
7381
7382 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7383
7384         * gdk/win32/gdkgc-win32.c
7385         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7386
7387         * gtk/makefile.mingw.in
7388         * gtk/gtk.def: Updates.
7389
7390         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7391         library.
7392
7393         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7394
7395         * gtk/makefile.msc: Remove
7396
7397         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7398
7399         * gtk/Makefile.am: Add it.
7400
7401         * configure.in: Generate it.
7402
7403         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7404         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7405         something even if not implemented, to satisfy picky MSVC.
7406
7407         Patches by Hans Breuer:
7408         
7409         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7410         SetBkMode() and SetTextAlign() before calling
7411         pango_win32_render().
7412
7413         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7414         Set hcliprgn to NULL after destroying it.
7415         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7416
7417         * gdk/win32/gdkgeometry-win32.c
7418         (_gdk_windowing_window_queue_antiexpose): More effective
7419         implementation.
7420
7421         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7422         depth as default, not the visual's.
7423
7424         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7425         against empty title.
7426
7427         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7428         IMAGE_PRIVATE_DATA.
7429
7430         * gdk/win32/gdkimage-win32.c: Use it.
7431
7432 2000-10-22  Robert Brady  <robert@suse.co.uk>
7433
7434         * configure.in: Check for bind_textdomain_codeset
7435
7436         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7437         present, make use of it.
7438
7439         Add a translatable string "default:LTR" which, if translated
7440         to "default:RTL", will cause the default direction to be
7441         Right-to-Left.
7442
7443         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7444         direction if marked as flippable.
7445
7446         * gtk/gtkhscale.c: Mark widget as flippable.
7447         
7448 2000-10-04  Havoc Pennington  <hp@redhat.com>
7449
7450         * gtk/testgtk.c (create_buttons): create some stock buttons
7451         with the default accel group
7452         (create_image): test some new GtkImage features
7453         (make_message_dialog): test GtkMessageDialog
7454         (create_modal_window): fix someone's bizzarro indentation
7455
7456         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7457         GTK_WIN_POS_CENTER_ON_PARENT. 
7458         Add "destroy with parent" setting, which means the window goes
7459         away with its transient parent.
7460         (gtk_window_get_default_accel_group): get the default accel group
7461         for the window.
7462         (gtk_window_set_destroy_with_parent): set/unset destroy with
7463         parent flag
7464         (gtk_window_read_rcfiles): invalidate icon set caches
7465         after reloading rcfiles 
7466
7467         * gtk/gtkenums.h (GtkWindowPosition): add
7468         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7469         on its parent window when the dialog is mapped for the first time.
7470
7471         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7472         a simple message dialog class
7473         
7474         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7475         handler to emit response signal, and maybe later it would
7476         honor a hide_on_delete flag - though that isn't there yet.
7477         Set border width on the vbox to 2, so we get some padding.      
7478         Use a button box for the action area.
7479         (gtk_dialog_key_press): synthesize a delete event if Esc
7480         is pressed and the GtkWidget key press handler didn't 
7481         handle the escape key.
7482         (gtk_dialog_new_with_buttons): new function creates a dialog
7483         with some default buttons in it.
7484         (gtk_dialog_add_action_widget): add an activatable widget
7485         as a button in the dialog - you can also add a non-activatable
7486         widget by accessing the action area directly.
7487         (gtk_dialog_add_button): add a simple button - stock ID or 
7488         label - to the action area
7489         (gtk_dialog_response): emit response signal
7490         (gtk_dialog_run): block waiting for the dialog, return 
7491         the response. Override normal delete_event behavior, so that 
7492         delete_event does nothing inside gtk_dialog_run().
7493
7494         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7495         emitted when an action widget is clicked or the dialog gets
7496         delete_event
7497
7498         * gtk/gtk.h: add gtkmessagedialog.h
7499
7500         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7501
7502 2000-10-18  Havoc Pennington  <hp@redhat.com>
7503
7504         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7505         where any number of empty lines would get skipped
7506
7507         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7508         edge.
7509
7510         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7511         warning about invalid iterators (explain more thoroughly)
7512         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7513
7514         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7515         big
7516
7517         * demos/*.c: Add error handling
7518
7519         * gtk/gtktextbuffer.c: don't modify const iterators
7520
7521         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7522
7523         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7524         on file load
7525
7526         * gtk/gtkiconfactory.c: Update to reflect addition of error
7527         handling to gdk-pixbuf loaders
7528
7529 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7530
7531         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7532         move to new modularized testgtk.
7533
7534 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7535
7536         * gtk/gtktreeview.c: Draw the arrows correctly.
7537
7538         * gtk/gtktreemodel.c: Added user docs.
7539
7540         * gtk/gtk.h: remove gtktreedatalist.h.
7541
7542         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7543         parent when generating my type.
7544
7545         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7546         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7547
7548 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7549
7550         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7551         GtkTreeModel from object to interface.
7552
7553 2000-10-16  Havoc Pennington  <hp@redhat.com>
7554
7555         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7556         compilation
7557
7558 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7559
7560         * gtk/gtktreeselection.c: Add API documentation to all public
7561         functions.
7562
7563         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7564         functions.
7565
7566 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7567
7568         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7569         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7570         docs to all public functions.
7571
7572         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7573         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7574         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7575         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7576         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7577         issue.
7578
7579 2000-10-14  Robert Brady  <robert@suse.co.uk>
7580
7581         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7582
7583 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7584
7585         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7586         values other then G_TYPE_STRING.
7587         * gtk/gtktreeselection.c: Minor commenting updates.
7588         * gtk/gtktreeview.c: Format updates.
7589
7590 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7591
7592         * README.win32: Update.
7593
7594         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7595         lines that had been deleted by mistake (?).
7596
7597         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7598         also the case fg==white and bg==black (but still not randomly
7599         coloured cursors). Thanks to Wolfgang Sourdeau.
7600
7601         * gdk/win32/*.c: Silence gcc -Wall.
7602
7603         * gtk/gtk.def: Add missing entry points.
7604
7605         Fixes by Hans Breuer:
7606
7607         * gdk/makefile.msc
7608         * gdk/win32/makefile.msc: Update.
7609
7610         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7611         some MSVC thing, presumably), cause breakpoint on failures. Add
7612         GDK_NOR case. Call g_log_set_always_fatal.
7613
7614         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7615         should be pased by reference.
7616         
7617         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7618         
7619         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7620
7621         * gdk/win32/gdkevents-win32.c
7622         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7623
7624         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7625         implementation object.
7626
7627         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7628         not just windows.
7629         
7630         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7631         Use the wrapper object.
7632         
7633 2000-10-06  Havoc Pennington  <hp@redhat.com>
7634
7635         * Makefile.am (SRC_SUBDIRS): contrib subdir
7636
7637         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7638         so it can be used in Xlib version
7639
7640         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7641         tree
7642
7643         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7644         change from 1.0 tree that returns first frame of animation
7645         if the loaded file is an animation.
7646
7647         * contrib: add new directory to hold stuff that comes with GTK+
7648         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7649         
7650         * configure.in: add contrib/*
7651
7652 2000-10-05  Havoc Pennington  <hp@redhat.com>
7653
7654         * demos/testpixbuf-save.c: add pixbuf save test
7655
7656         * demos/Makefile.am: add testpixbuf-save.c
7657
7658 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7659
7660         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7661         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7662         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7663         * gtk/gtktreeselection.[ch]: Replaced
7664         "node_selected"/"node_unselected" signal with "selection_changed"
7665         signal.
7666
7667 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7668
7669         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7670         tree widget.
7671
7672 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7673
7674         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7675         drawing.
7676
7677 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7678
7679         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7680         Move list pointer forwards before removing item from
7681         list. (Crash reported by Salmaso Raffaele)
7682
7683         * gdk/gdkwindow.h: Remove spurious trailing ,
7684
7685         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7686         dependencies on uninstalled libraries, sorry folks.
7687
7688 2000-10-04  Havoc Pennington  <hp@redhat.com>
7689
7690         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7691         gtk/gtkiconfactory.c: Fix copyrights    
7692
7693         * demos/testpixbuf.c: add inline pixbuf test
7694         
7695 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
7696
7697         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
7698         Add gdk_window_iconify.
7699
7700         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
7701         (gdk_window_set_geometry_hints): Add win_gravity
7702         to geometry structure.
7703
7704         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
7705         Implement _NET_WM_PING.
7706
7707         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
7708         Set _NET_WM_PID on the client leader.
7709
7710         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
7711         Handle UTF-8 better.
7712
7713         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
7714         UTF-8 better, set _NET_WM_NAME as well. Only set
7715         icon name if it hasn't previously been explicitely 
7716         set.
7717
7718 2000-10-03  Havoc Pennington  <hp@redhat.com>
7719
7720         * gtk/testtextbuffer.c: clean up trailing whitespace,
7721         add extensive tests for tag toggle iteration.
7722         
7723         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7724         distance
7725
7726         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7727         optimize case where the tag root is on level 1
7728         (gtk_text_line_previous_could_contain_tag): attempt to implement
7729         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7730         functionality
7731
7732         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7733         Implement this, though not very efficiently.
7734
7735         * gtk/gtktextiterprivate.h: reformat
7736
7737         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7738         iterator
7739
7740         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7741         this to properly revalidate the iterators.
7742
7743         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7744         properly at the end of the line (and therefore on empty lines)
7745
7746         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7747         maybe we should return a value...
7748
7749 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7750
7751         * config.h.win32: Guard definition of alloca(). glib.h now handles
7752         that.
7753
7754         * gdk/gdk.def
7755         * gtk/gtk.def: Add new entry points.
7756
7757         Changes just to make GTK+ build without errors on Win32. No hope
7758         of it working in its current state, though...:
7759         
7760         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7761         some functions from the X11 backend, just to make GTK+ build.
7762
7763         * gdk/makefile.mingw.in
7764         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7765         number. Add new object files.
7766
7767         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7768         GetMessageTime to get timestamp (where on X11 uses
7769         gdk_x11_get_server_time()).
7770
7771 2000-10-02  Havoc Pennington  <hp@pobox.com>
7772
7773         * gtk/gtktextview.c: text_window_* weren't static and should have
7774         been.
7775         Start work on child widgets; not yet complete, syncing to 
7776         office computer.
7777
7778         * gtk/gtktextchild.h: change this to contain a public interface,
7779         starting work on child interfaces.
7780         * gtk/gtktextchildprivate.h: move private interfaces here
7781
7782         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7783
7784         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7785         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7786         gtk/gtktextmark.c: copyright notices
7787
7788         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7789         internal functions      
7790
7791         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7792         internal function
7793
7794         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7795         Reformatting    
7796
7797 2000-09-30  Havoc Pennington  <hp@pobox.com>
7798
7799         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7800         NULL start/end pointers
7801
7802         * gtk/gtktextbuffer.c: Write some docs
7803         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7804         NULL, so you can just check whether there's a selection.        
7805
7806         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7807         cleanup_line or segments_changed ourselves, it gets done 
7808         in unlink_segment
7809
7810         * gtk/gtktextmark.h:
7811         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7812         
7813         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7814
7815         * gtk/gtktextmark.c: delete some more old Tk cruft
7816
7817         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7818         mark before removing it, so we can emit MARK_DELETED with a valid
7819         pointer.
7820         (gtk_text_buffer_mark_set): hold ref across signal emission
7821
7822         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7823         whining about attempts to delete special marks
7824
7825         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7826         underscore, since it's internal.
7827
7828         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7829         now implemented in terms of iterators in gtktextiter.h
7830
7831         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7832         New function, destructively sets contents of buffer. Also 
7833         a convenient way to clear the buffer by setting text to ""
7834
7835         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7836         multiline string literal
7837
7838         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7839         text changes.
7840
7841         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7842         is not dereferenceable
7843         (gtk_text_iter_forward_lines): fix return value
7844
7845 2000-09-29  Havoc Pennington  <hp@redhat.com>
7846
7847         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7848
7849         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7850         that set border window size to have nicer name
7851         (gtk_text_view_mark_set_handler):  Fix this to have the 
7852         right signature.
7853
7854         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7855
7856         * gtk/testtext.c: Update with API changes, put line numbers on 
7857         both sides.
7858         
7859         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7860         with this
7861
7862         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7863         pixbuf; delete a big block of #if 0 Tk code
7864
7865         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7866         insert_pixmap with insert_pixbuf
7867
7868 2000-09-29  Martin Baulig  <baulig@suse.de>
7869
7870         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7871         confusion with the GdkPixbuf of the GNOME 1.x platform.
7872
7873 2000-09-29  Havoc Pennington  <hp@pobox.com>
7874
7875         * gtk/gtktextview.c: Implement the side windows.
7876
7877         * gtk/testtext.c: Implement simple line numbering in the 
7878         left side window; seems to make scrolling sloooow. Oops.
7879         Also, cursor blink is for some reason causing redraws
7880         of the line numbers. Should investigate...
7881
7882 2000-09-28  Havoc Pennington  <hp@redhat.com>
7883
7884         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7885         scrolling child windows, and draw focus rectangle properly.
7886         
7887         (gtk_text_view_buffer_to_window_coords):
7888         Coordinate transformation to deal with all these freaking windows
7889         and offsets
7890         (gtk_text_view_window_to_buffer_coords): transform the other way
7891
7892         * gtk/testtext.c (create_buffer): Update to match Pango API change
7893
7894         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
7895         anonymous tags
7896         (foreach_unref): don't emit remove signal from finalize, just
7897         set tag's parent to NULL
7898
7899 2000-09-26  Havoc Pennington  <hp@redhat.com>
7900
7901         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
7902         Fix some warnings       
7903
7904 2000-09-26  Havoc Pennington  <hp@redhat.com>
7905
7906         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
7907         headers into the private header list
7908
7909         * Makefile.am (pkgconfig_DATA): install pkg-config files
7910
7911         * configure.in: add pkg-config files
7912
7913         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
7914
7915         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
7916         outstanding icon caches on theme change.
7917
7918         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
7919         important types:
7920
7921         (GtkIconSource): Specification for creating a pixbuf 
7922         appropriate for a direction/state/size triplet from 
7923         a source pixbuf or filename
7924
7925         (GtkIconSet): List of GtkIconSource objects that are used to
7926         create the "same" icon (e.g. an OK button icon), and cache for
7927         rendered icons
7928
7929         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
7930         up the icon set for a given stock ID.  GTK maintains a stack of
7931         GtkIconFactory to search, and applications or libraries can add
7932         additional icon factories on top of the stack
7933         
7934         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
7935         the set of GtkIconSource specified for a given stock ID into 
7936         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
7937         RcStyle, under the specified stock ID.
7938
7939         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
7940         render_icon used to derive a GdkPixbuf from a GtkIconSource.
7941         This allows people to theme how prelight, insensitive, etc. are
7942         done.
7943
7944         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
7945         icon factories for a style, and return the resulting 
7946         icon set if any.
7947
7948         (gtk_style_render_icon): Render an icon using the render_icon 
7949         method in the GtkStyleClass.
7950
7951         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
7952         Use the style for a given widget to look up a stock ID, get the
7953         icon set, and render an icon using the render_icon method 
7954         of the style
7955
7956         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
7957         (contains information about a stock item), the built-in stock item
7958         IDs, and functions to add/lookup stock items.
7959
7960         * gtk/stock-icons/*: Stock icons that come with GTK
7961
7962         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
7963         a button based on a GtkStockItem
7964         (gtk_button_new_accel): Takes a uline string and accel group, and
7965         installs the accelerator.
7966
7967         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
7968         image-display widget.
7969
7970 2000-09-25  Havoc Pennington  <hp@redhat.com>
7971
7972         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
7973
7974         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
7975         Fix a bug when removing node data, we didn't properly 
7976         re-splice the linked list after removing the data.
7977
7978         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
7979         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
7980
7981         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
7982
7983         * gtk/gtktextlayout.c (set_para_values): Set tab array 
7984         for the layout from the GtkTextTag.
7985
7986         * gtk/gtktexttypes.h: delete tab and search cruft, 
7987         remove g_convert() in favor of GLib version
7988
7989         * gtk/gtktexttypes.c: remove tab implementation from here,
7990         move to Pango
7991
7992         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
7993         tab stuff using new PangoTabArray from Pango
7994
7995         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
7996         unused border_width stuff
7997
7998 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
7999
8000         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8001         glib) and now useless utf_to_latin1() latin1_to_utf()
8002
8003         * gtk/gtktextview.[ch]: Change ::move_insert and
8004         ::delete_text action signals to ::move and ::delete;
8005         create the signals with the right enumeration type,
8006         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8007         C-v bindings, change Home, End to move to beginning/end
8008         of line, Add C-Home C-End to move to beginning/end
8009         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8010         combine ::scroll_text into ::move; use new GtkSelectionData
8011         functions to simplify DND text handling.
8012         
8013         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8014         deletion enumerations here, rename enumeration values to 
8015         be consistently plural.
8016
8017         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8018         for cut/copy/paste and primary selection.
8019
8020         * gtk/gtktextbuffer.[ch]: Remove excess time and
8021         'interactive' arguments from cut/copy/paste;
8022         rename cut to cut_clipboard, etc; remove
8023         gtk_text_buffer_get_clipboard_contents().
8024
8025         * gtk/gtktextlayout.[ch]: Add 
8026         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8027         line ends.
8028
8029         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8030         Functions to set or get a UTF-8 string on the selection
8031         data.
8032
8033         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8034         interfaces.
8035
8036         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8037         created widgets - one of these is useless if we don't.
8038
8039         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8040         a public function clear all targets registered for the
8041         widget.
8042
8043         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8044         Never call gtk_widget_realize() - that was just asking
8045         for bizarre side-effects.
8046
8047         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8048         gdk_selection_owner_set even if the widget is the
8049         same so that we reliably update the timestamp on
8050         the server.
8051
8052         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8053         gdk_x11_get_server_time() function.
8054         
8055         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8056         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8057         Add some tricky filtering on serial numbers for
8058         selection clear events to fix up long-standard
8059         race condition FIXME's in gtkselection.c.
8060
8061         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8062         routines to convert from utf8 to compound text or
8063         STRING and from a text property to UTF-8.
8064
8065         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8066         a convenience function gdk_get_current_event_time().
8067
8068         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8069         and free selection_data->data properly
8070
8071 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8072
8073         * gtk/gtkthemes.c: Remove some unecessary includes.
8074
8075 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8076
8077         * gtk/gtktextdisplay.c
8078         * gtk/gtktextlayout.c
8079         * gtk/gtktexttag.c
8080         * gtk/gtktexttag.h
8081         * gtk/testtext.c: Change the overstrike property to strikethrough,
8082         to closer match pango.
8083
8084 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8085
8086         * gtk/gtktextview.c: Fix up visibility so that focus,
8087         cursor_visible and blink interact properly.  Reenable cursor blink
8088         which had been roughly disabled. Make blink and focus
8089         properly per-view.
8090
8091         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8092         Add a flag for whether to display insertion cursor and
8093         a function to set the flag.
8094
8095         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8096         get_line_y() to get_line_yrange(), to be a bit more generally
8097         useful.
8098
8099 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8100
8101         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8102           do stop_navigating_submenu, to clear last timeout properly.
8103           Also in gtk_menu_motion_notify move ignore_enter above
8104           the conditional to make it always happen as suggested by Owen
8105
8106 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8107
8108         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8109
8110         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8111         w32api headers.
8112
8113         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8114         declarations.
8115
8116         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8117         (gdk_win32_get_colormap): A line had been deleted by mistake.
8118
8119         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8120         (gdk_event_translate): Handle more virtual keycodes to be able to
8121         generate GDK events for Control-comma, Control-period, etc.
8122
8123         * gtk/gtk.def: Add some missing entry points.
8124
8125 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8126
8127         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8128         Doc comment fixing. (Mostly non-matching parameter names.)
8129
8130         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8131         comments a little to avoid looking like a doc comment.
8132
8133         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8134         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8135         conversions be changed to GError?)
8136
8137         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8138         Move private #defines into .c file.
8139
8140         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8141         order of argument addition, remove duplicates.
8142
8143         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8144         parent class is FrameClass, not BinClass.
8145
8146         * gtk/gtk.h: Add gtkinvisible, which was missing.
8147         (It's occasionalyl useful for client apps, if seldom.)
8148
8149         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8150         #define.
8151
8152 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8153
8154         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8155         coordinates when creating window, instead of GDK-space
8156         coordinates. (Avoid BadValue on too large windows.)
8157
8158 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8159
8160         * configure.in (use_mmx_asm): Remove conftest* after use along the
8161         lines of AC_TRY_COMPILE.        
8162         
8163         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8164         of g_dirname, which is deprecated.
8165         (gtk_rc_parse_any): Removed calls to
8166         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8167
8168         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8169         Removed calls to g_hash_table_{freeze,thaw}, as they are
8170         deprecated now.
8171
8172         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8173         instead of g_basename.
8174         
8175 2000-09-04 Elliot Lee <sopwith@redhat.com>
8176         
8177         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8178         ANSI warning.
8179
8180 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8181
8182         * gtk/gtkwidget.h:  Add some documenting comments about 
8183           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8184           just as owen said on irc.
8185
8186         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8187           set HAS_DEFAULT.  Only set it if there isn't another window
8188           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8189           it if the widget is not the focused window with RECEIVES_DEFAULT.
8190           This fixes weird double default bugs in dialogs which has things
8191           call gtk_window_set_default at times.
8192
8193 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8194
8195         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8196         Nils Barth and David Santiago to improve submenu
8197         navigation. The patch does this by creating a triangular
8198         region from the point where the pointer leaves the
8199         menu to the submenu.  While the pointer is in
8200         that region and a timeout has not expired, events 
8201         that would cause the active submenu to change are
8202         ignored.
8203
8204 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8205
8206         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8207         moving a toplevel window immediately after sizing it would
8208         result in it being sized back to the old size since 
8209         impl->width, impl->height aren't updated until we hear
8210         back from the server. There is still a (longstanding) bug
8211         here that gdk_window_get_size() will give the wrong size
8212         until we do hear back.
8213
8214 2000-08-31  Havoc Pennington  <hp@redhat.com>
8215
8216         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8217         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8218         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8219         Rename GtkTextStyleValues to GtkTextAttributes
8220
8221 2000-08-31  Havoc Pennington  <hp@pobox.com>
8222
8223         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8224         for rapid testing whether an iterator is the end iterator
8225         (gtk_text_btree_new): init end line cache
8226         (gtk_text_line_is_last): use fast cached line to 
8227         see if we're the last line.
8228         (get_last_line): use cached line here too, should 
8229         speed up some random unrelated code.
8230         
8231 2000-08-30  Havoc Pennington  <hp@pobox.com>
8232
8233         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8234         signals.
8235
8236         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8237         delete_text signals. This allows the signals to be used for
8238         implementing undo.
8239
8240         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8241         provide "interactive" argument when emitting insert_text or
8242         delete_text signal.
8243         
8244 2000-08-30  Havoc Pennington  <hp@pobox.com>
8245
8246         * gtk/gtktextbuffer.c: Docs
8247
8248 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8249
8250         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8251         from switch statements, since Tor removed the enumeration
8252         value.
8253         
8254         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8255         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8256
8257 2000-08-29 Elliot Lee <sopwith@redhat.com>
8258         * */*.h: Use G_GNUC_CONST.
8259
8260 2000-08-27  Havoc Pennington  <hp@pobox.com>
8261
8262         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8263         minor indentation fixes, inserted some FIXME about stuff I
8264         realized was broken while documenting it.
8265         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8266         GTK convention  
8267
8268 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8269
8270         * gtk/testgtk.c (create_styles): Fix double free of
8271         font desc.
8272
8273 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8274
8275         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8276         
8277         * gtk/testgtk.c (create_styles): Add a test for modifying
8278         the style through gtk_widget_modify_*.
8279
8280         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8281         a function to get the current modifier style.
8282
8283         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8284         of the passed in GtkRcStyle instead of ref'ing it.
8285
8286         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8287
8288 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8289
8290         * gdk/gdkimage.h
8291         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8292         shared memory image+pixmap GdkImage type, or
8293         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8294         I am dropping that.
8295
8296         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8297         actually call gtk_init_abi_check(), passing also
8298         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8299
8300         * gtk/gtk.def
8301         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8302         New functions, used to check that the GTK+-using code has been
8303         compiled using the correct compiler and switches. In particular,
8304         with gcc one has to use the -fnative-struct switch as GTK+ is
8305         compiled with that.
8306
8307 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8308
8309         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8310         ->prev fields when merging lists. (Found simultaneously
8311         by Pawel Salek and Jakub Jelinek)
8312
8313 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8314
8315         * gdk/gdk.def
8316         * gtk/gtk.def: Add missing entries.
8317
8318         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8319         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8320
8321         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8322         function. Dummy implementation at this point.
8323
8324         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8325         rules. Undefine GTK_COMPILATION when compiling the test programs.
8326         
8327         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8328
8329 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8330
8331         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8332         to convert back and forth from UTF-8 and the "system" (or "current
8333         locale") charset when necessary. Indentation/spacing cleanup.
8334
8335 2000-08-10  Havoc Pennington  <hp@redhat.com>
8336
8337         * Makefile.am (snapshot): Change the format of the snapshot
8338         version to match glib
8339
8340         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8341         from EXTRA_DIST since it doesn't seem to exist
8342
8343 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8344
8345         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8346         version of the directory name (not the UTF-8 one) when building
8347         the path name to stat().
8348
8349 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8350
8351         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8352         PANGO_ATTR_SHAPE set.
8353
8354 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8355
8356         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8357         Peter Osterlund to simplify the code while keeping the
8358         functionality the same.
8359
8360 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8361
8362         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8363         is_viewable() test further inside the function, since removing the 
8364         window from the redraw list without clearing ->update_area
8365         was also very broken.
8366
8367 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8368
8369         * configure.in: Check for <unistd.h>.
8370
8371 2000-08-01  Martin Baulig  <baulig@suse.de>
8372
8373         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8374         to display the message that this is a development version of GTK+.
8375
8376 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8377
8378         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8379         was depending on widget->allocation instead of the width of text_area,
8380         which was incorrect for subclasses like GtkSpinButton.
8381
8382         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8383         with width == 1 tests that should be width == -1.
8384
8385 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8386
8387         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8388         (broken, Elliot, every single window blank on X) custom code with call
8389         to gdk_window_is_viewable() which a) prevents code duplicate and
8390         b) works. 
8391
8392 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8393
8394         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8395         to get the GDK_PARENT_ROOT() macro to work.
8396         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8397         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8398         of, windows that aren't shown.
8399         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8400         pointer grab stuff.
8401
8402 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8403
8404         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8405           s/gtk_main_iteration/g_main_iteration/
8406
8407           Did this already in change:
8408                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8409           don't know how it got reverted.
8410
8411 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8412
8413         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8414         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8415
8416         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8417         not gdk_pixbuf.
8418
8419 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8420
8421         * configure.in,po/{sp,sr}.po: Added Serbian files
8422
8423 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8424
8425         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8426
8427         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8428         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8429         GIOChannel implementation.
8430
8431         * gdk/win32/gdkinput.c
8432         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8433
8434         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8435         definition to match prototype.
8436
8437         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8438
8439 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8440
8441         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8442         function, to allow handling image formats that cannot be detected
8443         by looking at content alone.
8444
8445 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8446
8447         * docs/tutorial/*.gif *.jpg *.eps
8448           Update these to the same look-n-feel.
8449           Why does including images in DocBook suck so badly?
8450
8451 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8452
8453         * gtk/gtktable.c: applied patch from Phil Thompson
8454         <phil@river-bank.demon.co.uk> that enables space settings for
8455         the last row/columns as well.
8456
8457 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8458
8459         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8460         updates the license headers to the GNU Lesser General Public License,
8461         as well as updating the copyright year to 2000.
8462
8463 2000-07-26  Robert Brady  <rwb197@zepler.org>
8464
8465         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8466           and po/Makefile, was installing and looking for them under gtk20
8467           and gtk2 respectively.
8468
8469 2000-07-25  Havoc Pennington  <hp@redhat.com>
8470
8471         * gtk/testtext.c: Comment out some stuff that depends on the rest
8472         of my patches.
8473
8474 2000-07-25  Havoc Pennington  <hp@redhat.com>
8475
8476         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8477         buffer
8478
8479 2000-07-25  Havoc Pennington  <hp@redhat.com>
8480
8481         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8482         widget changes.
8483
8484         * gtk/gtktextview.h: To be consistent with usage of "line"
8485         throughout the API to mean "newline-terminated thingy", change
8486         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8487         to MOVEMENT_LINE.
8488
8489         (GtkTextView): Add flags for default editability, and whether to
8490         show the cursor. Add functions to get/set that. Add 
8491
8492         (gtk_text_view_get_iter_location): new function
8493
8494         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8495         gtktextlayout.h
8496         (g_convert): Add g_convert temporarily, will go in glib in a bit
8497         
8498         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8499         GtkTextTagTableForeach instead of brokenly using GHFunc.
8500         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8501
8502         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8503         moved to public header.
8504
8505         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8506         "invisible", since "elide" was a bad name.
8507         (gtk_text_tag_get_priority): Added
8508
8509         (GtkTextStyleValues): put this in public header, along with
8510         functions to use it.
8511
8512         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8513         longer include gtktextbtree.h.
8514
8515         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8516         gtk_text_mark_deleted
8517
8518         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8519         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8520         to make this possible. Now we only need to install
8521         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8522         (However the Makefile.am isn't changed yet because of the
8523         logistics of merging gtk-hp-patches piecemeal)
8524
8525         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8526         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8527         gtk_text_iter_get_line is now used in the public API for a
8528         different purpose.
8529
8530         * gtk/gtktextiter.h: Clean up function names to be more
8531         consistent. Always call char offset "offset" and byte index
8532         "index". A "line" is always a line number. 
8533
8534         (gtk_text_iter_is_last): new function, more efficient than 
8535         the existing way to check
8536         (gtk_text_iter_is_first): new function, also more efficient
8537
8538         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8539
8540         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8541         gtk_text_iter_forward_char, etc.
8542
8543         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8544         forward_find_tag_toggle, since this isn't a linear search
8545
8546         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8547
8548         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8549         New functions, search for a buffer substring.
8550
8551         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8552         interactive and default editable (since we need to store that info
8553         until we receive the selection data).
8554
8555         Remove all the _at_char and at_line etc. versions of functions;
8556         only have iterator versions.
8557
8558         Add _interactive() versions of functions, that consider the
8559         editability of text. (FIXME add interactive flag to the 
8560         insert/delete signals per Darin's suggestion)
8561
8562         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8563         tag table if necessary
8564
8565         Remove declaration of gtk_text_buffer_get_iter_from_string
8566
8567         (_gtk_text_buffer_get_btree): private/internal function, added.
8568         
8569
8570         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8571         (gtk_text_line_is_last): new function
8572
8573 2000-07-25  Havoc Pennington  <hp@redhat.com>
8574
8575         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8576         using GtkProgressBar. See Changes-2.0.txt for details.
8577
8578         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8579         "pulse_step" which are the equivalent of
8580         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8581         Implement new API.
8582         
8583         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8584         (use_text_format) to mark whether text set on the progress bar is
8585         a format string. Deprecate entire GtkProgress interface.
8586
8587         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8588         (gtk_progress_build_string): make this a no-op if use_text_format
8589         is FALSE
8590
8591         * docs/Changes-2.0.txt: Describe progress bar changes.
8592
8593 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8594
8595         * Makefile.am: Include the build directory.
8596
8597         * configure.in: Generate build/Makefile, build/win32/Makefile,
8598         gdk/, gdk/win32/, and gtk/makefile.mingw.
8599
8600         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8601         Add GETTEXT_PACKAGE.
8602         
8603         * gdk/gdk.def
8604         * gtk/gtk.def: Updates.
8605
8606         * gdk/gdkfont.h
8607         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8608         need them any longer.
8609
8610         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8611
8612         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8613         PANGOWIN32_LIBS and gdk_pixbuf.
8614
8615         * gdk/win32: Compiles, but no doubt doesn't work at all.
8616
8617         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8618
8619         * gdk/win32/gdkinput.c: New file, temporarily.
8620         
8621         * gdk/win32/gdkinput-win32.h: New file
8622
8623         * gdk/win32/gdkinputprivate.h: Remove.
8624
8625         * gdk/win32/gdkpango-win32.c: New file.
8626
8627         * gtk/makefile.mingw.in: New file
8628
8629         * gtk/makefile.cygwin: Removed
8630         
8631         * gtk/Makefile.am: Update accordingly.
8632
8633         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8634         made externally visible.
8635
8636         * gtk/gtkmain.c: Use it.
8637         
8638         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8639         is enough.
8640
8641         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8642
8643 2000-07-24 Elliot Lee <sopwith@redhat.com>
8644         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8645         individual backends already.
8646         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8647         again. Yes, there really is a good reason for this, if you are using the gdkregion
8648         internals, and if you're not, why do you care?
8649         * gdk/gdkwindow.c: Fix inverted condition
8650         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8651         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8652         * gtk/gtkrange.c: Redraw trough when moving.
8653         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8654         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8655
8656 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8657
8658         * configure.in: Check for mkstemp and sigsetjmp. Output
8659         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8660
8661         More work on GDK for Win32. Still in an intermediate state.
8662
8663         * gdk/makefile.cygwin
8664         * gdk/win32/makefile.cygwin: Removed.
8665         
8666         * gdk/makefile.mingw.in
8667         * gdk/win32/makefile.mingw.in: New files.
8668
8669         * gdk/Makefile.am
8670         * gdk/win32/Makefile.am: Generate and distribute them.
8671
8672         * gdk/win32/gdkwindow-win32.h
8673         * gdk/win32/gdkdrawable-win32.h
8674         * gdk/win32/gdkpixmap-win32.h: New files.
8675
8676         * gdk/win32/gdkcolor-win32.c
8677         * gdk/win32/gdkcursor-win32.c
8678         * gdk/win32/gdkdrawable-win32.c
8679         * gdk/win32/gdkgc-win32.c
8680         * gdk/win32/gdkimage-win32.c
8681         * gdk/win32/gdkprivate-win32.h
8682         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8683         Rename fields and variables called xcursor, xid, etc (these names
8684         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8685
8686 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8687
8688         * gtk/gtkentry.[ch]: Fix some problems with vertical
8689         alignment.
8690
8691         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8692         char/byte confusion.
8693
8694 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
8695
8696         * gtk/gtktextview.c (changed_handler): Fix bug where
8697         redraw wasn't being done properly when height of
8698         dirty region changed.
8699
8700         * demos/Makefile.am: Remove various references to
8701         -lgmodule
8702
8703 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
8704
8705         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
8706         PangoAttrShape to reserve space for pixmaps, add 
8707         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
8708         in the display functions.
8709         
8710         * gtk/testgtk.c (create_layout): Set some more exotic
8711         scrolled window options
8712
8713         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
8714         Add function to set the shadow type of a window, to allow
8715         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8716         which don't draw their own frame.
8717
8718 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8719
8720         * docs/tutorial/package-db-tutorial.sh: New file for
8721           packaging DocBook format tutorial
8722
8723 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8724
8725         * docs/tutorial/gtk-tut.sgml: Minor updates
8726
8727         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8728
8729 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8730
8731         * gtk/gtksignal.c: Fix C++ comment.
8732
8733         * gtk/gtkimmulticontext.c
8734         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8735         don't return value from void functions.
8736
8737         * gtk/gtk.def: Add gtk_rc_style_unref.
8738
8739 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8740
8741         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8742         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8743         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8744         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8745         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8746         gtk/gtktypeutils.h: Include files outside of the extern "C"
8747         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8748         <vakatov@peony.nlm.nih.gov>.
8749
8750 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8751
8752         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8753           Completes first pass. Hurrah!
8754
8755 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8756
8757         * docs/tutorial/gtk-tut.sgml: More clean ups.
8758
8759 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8760
8761         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8762         paint the background of the text area which was accidentally
8763         removed at some point.
8764
8765         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8766           
8767          - Move most of the functionality from the theme vtable
8768            into GtkRcStyleClass and GtkStyleClass. The moved
8769            vtable functions were changed a bit in the move to
8770            work better in their new home.
8771
8772          - Get rid of the engine and engine_data fields from
8773            GtkRcStyle and GtkStyle; instead the theme
8774            engine derives theme-specific subclasses of GtkRcStyle
8775            and GtkStyle
8776
8777          - Add extra dlsym() found entry point to themes,
8778            theme_create_rc_style().
8779
8780         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8781         in gtk_style_real_copy.
8782
8783         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8784         to register a type associated with an engine. (The engine
8785         won't be unloaded as there is an instance of the type.)
8786
8787
8788 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8789
8790         * docs/tutorial/gtk-tut.sgml: Clean ups.
8791
8792 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8793
8794         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8795           of cleaning up to do.
8796
8797 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8798
8799         * gdk/testgdk.c: New file, quick hack to test backends for
8800         pixel-by-pixel correctness of the most simple graphic operations.
8801
8802 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8803
8804         * Really release 1.3.1
8805         
8806         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8807         include structure.
8808
8809 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8810
8811         * Released 1.3.1
8812
8813 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8814
8815         * gtk/gtktextlayout.c: use FALSE for size_only most
8816         of the time when calling gtk_text_layout_get_line_display()
8817         to avoid causing double reshapes when a redraw follows
8818         immediately after.
8819
8820 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8821
8822         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8823         appropriate region and gdk_window_process_updates() so trough
8824         updating doesn't lag behind the window being scrolled.
8825
8826         * gdk/gdkgc.c: Make parent_class pointer static.
8827          
8828 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8829
8830         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8831         include <string.h>.
8832          
8833         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8834         cut-and-paste error in computing memory offset for 4 channels.
8835
8836 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8837
8838         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8839         gtk_rc_append_default_pixmap_path(), since it wasn't
8840         adding an interesting path and we don't have a meaningful
8841         default for this value.
8842
8843 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8844
8845         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8846         gtk-config to gtk-config-2.0 move gtk_.m4 to
8847         gtk-2.0.m4
8848
8849         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8850         gdk/Makefile.am demos/Makefile.am: Change 
8851         library names to libgtk-1.3.la, etc, so that we
8852         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8853
8854         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8855         gdk/Makefile.am gdk/x11/Makfile.am
8856         Move include files into /usr/include/gtk-2.0, 
8857         /usr/lib/gtk-2.0/include/
8858          
8859         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8860         gtk/gtkintl.h: Change package for gettext from 
8861         gtk+ to gtk20. Put hack in autogen.sh to modify
8862         po/Makefile.in.in after gettextize to make this
8863         possible.
8864
8865         * gtk+.spec: Some updates, not tested.
8866
8867         * gdk-pixbuf/Makefile.am: Move loaders into
8868         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8869
8870         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8871         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8872         to THEMENAME/gtk-2.0/. Move engine directory  to
8873         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8874         
8875 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8876
8877         Win32 changes, still doesn't build though.
8878
8879         * gdk/makefile.cygwin
8880         * gdk/win32/makefile.cygwin
8881         * gtk/makefile.cygwin: Updates.
8882
8883         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8884         default values for fg and bg pixel as X11 does (0 and 1), not
8885         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8886         Use 0 for pen width by default (treated as 1 anyway later, but for
8887         apps that might check the value in the GdkGC).
8888         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
8889         interface to gdk_gc_predraw and _postdraw.
8890
8891         * gdk/win32/gdkwin32.h
8892         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
8893
8894         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
8895         extraneous semicolon.
8896
8897         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
8898
8899         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
8900         not the Win32 bitspixel value.
8901
8902         * gdk/win32/gdkcc-win32.c:
8903         * gdk/win32/gdkcolor-win32.c 
8904         * gdk/win32/gdkprivate-win32.h
8905         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
8906         GDK object structure.
8907
8908 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
8909
8910         * docs/tutorial/gtk_tut_12.es.sgml (name): 
8911         * docs/tutorial/gtk_tut_it.sgml (name): 
8912         * docs/tutorial/gtk_tut_fr.sgml (name): 
8913         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
8914         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
8915
8916 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
8917
8918         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
8919           small changes.
8920
8921 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
8922
8923         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
8924         a bug here, never been here and never fixed anything ;(
8925         (don't segfault if tree->root_tree is NULL, which happens prior
8926         to widget realization, but puke instead).
8927
8928 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
8929
8930         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
8931         add the necessary tokens.
8932
8933         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
8934         (gtk_rc_style_to_style): copy thicknesses.
8935         (gtk_rc_init_style): apply thicknesses.
8936         (gtk_rc_parse_style): parse xthickness and ythickness.
8937
8938         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
8939
8940         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
8941         (gdk_window_new): 
8942         (_gdk_windowing_window_init): 
8943         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
8944         (gdk_pixmap_create_from_data): 
8945         (gdk_bitmap_create_from_data): 
8946         (gdk_pixmap_new): 
8947         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8948         (gdk_image_new): 
8949         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
8950         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
8951         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
8952         (gdk_colormap_get_system): 
8953         (gdk_colormap_new): 
8954         * gdk/gdkwindow.c (gdk_window_init): 
8955         * gtk/gtkstyle.c (gtk_style_new):
8956         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
8957         * gdk/gdkpixmap.c (gdk_pixmap_init): 
8958         * gtk/gtkrc.c (gtk_rc_style_new):
8959         use g_object_new() instead of g_type_create_instance() which
8960         is a private function for fundamental type implementations.
8961
8962 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
8963
8964         * configure.in: Add check for db2html
8965
8966 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
8967
8968         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
8969         hack to set glib_debug_objects based on gtk_debug_flags.
8970
8971 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
8972
8973         * INSTALL.in: Update the Prerequisites section.
8974
8975         * Makefile.am demos/Makefile.am docs/Makefile.am
8976         docs/tutorial/Makefile.am gdk/x11/Makefile.am
8977         gdk/linux-fb/Makefile.am: Dist fixes
8978
8979 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
8980
8981         * NEWS: 10,000 foot view of 1.3.1 changes.
8982
8983 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
8984
8985         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
8986         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
8987         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
8988         gdk/x11/gdkmain-x11.c: 
8989
8990         Patch from George Lebl to add a GdkGrabStatus enumeration to use
8991         as a return value of gdk_*_grab(). Previously, we just
8992         returned the X11 values directly.
8993
8994 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
8995
8996         * gdk/x11/Makefile.am: Patch from George Lebl to 
8997         install all the headers in the right place.
8998
8999 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9000
9001         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9002           initial conversion to DocBook.
9003
9004 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9005
9006         * README.win32: Improve a bit.
9007
9008         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9009         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9010         Alt+0nnn on the numpad (used to enter characters by numeric code
9011         from current DOS or ANSI codepage) working correctly, as in other
9012         Windows apps.
9013
9014         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9015         same argument validity tests as in X11 version.
9016         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9017
9018         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9019         definitions in case missing from headers.
9020
9021         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9022         destroy the window-specific cursor.
9023         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9024         calling GetModuleHandle(NULL).
9025         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9026         with CopyCursor before setting it as the window-specific
9027         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9028         also its Windows cursor) after calling this function. Destroy any
9029         previous window-specific cursor.
9030
9031 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9032
9033         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9034         font charset is iso8859-1, not iso-8859-1.
9035
9036 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9037
9038         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9039         Use g_get_charset() instead of g_get_codeset().
9040
9041         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9042         Comment out some strdup'ing functions to keep timj
9043         happy until we finish fighting this out.
9044
9045 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9046
9047         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9048         <= width or height.
9049
9050         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9051         from 1.2 for parent/child states.
9052
9053         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9054         of typos.
9055
9056         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9057         event structures, replace with a generic axes field. Replace 
9058         deviceid/sourec with GdkDevice *device.
9059
9060         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9061         to extract particular axis use value from event. (Also
9062         can be used for normal X/Y.)
9063
9064         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9065         allow for arbitrary number of axes, namespace everything
9066         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9067         everywhere.
9068
9069         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9070         Get rid of the gdk_input_vtable setup if favor of simply
9071         defining the functions in gdkinput-none/gxi/xfree.c in
9072         a similar fashion to the way that the port structure is 
9073         done.
9074
9075         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9076         for new event structures. 
9077
9078         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9079         new device interfaces.
9080
9081 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9082
9083         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9084         set the initial text.
9085
9086         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9087         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9088         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9089         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9090
9091         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9092         pango_layout_set_font_description to simplify.
9093
9094 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9095
9096         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9097         pango_layout_set_font_description to simplify.
9098
9099 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9100
9101         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9102         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9103         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9104
9105         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9106         PANGO_PIXELS() macro.
9107
9108 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9109
9110         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9111         that returns a PangoContext owned by the widget and updated to
9112         match future changes in the widget. Also, make 
9113         gtk_widget_create_pango_layout() use this context. If we ever
9114         add a ::changed signal to PangoContext, this will make things
9115         much more convenient. 
9116
9117         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9118         in the appropriate places instead of destroying the layouts and
9119         creating new ones.
9120
9121         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9122         in a few strategic places.
9123
9124 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9125
9126         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9127         gtk_widget_size_request() on reparented child, if one. Otherwise,
9128         queue_resize() on the child never results in it getting size-requested
9129         at all.
9130
9131         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9132         in option menus, so that (with luck) people won't copy it into
9133         their apps in the future.
9134
9135         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9136         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9137         a lot of problems with changing the size of the menu's menu
9138         items after adding it to the option menu.
9139
9140         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9141
9142         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9143         the text direction for a widget changes.
9144
9145         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9146         ::direction_changed to get rid of various hacks.
9147
9148 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9149
9150         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9151         name.
9152
9153 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9154
9155         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9156         flag to the structure. Do not call XFreePixmap on pixmaps created
9157         by gdk_pixmap_foreign_new().
9158
9159 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9160
9161         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9162         value using GdkRGB functionality given GdkColormap and GdkColor.
9163         (name not final, waiting for inspiration.)
9164         
9165         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9166         set the foreground/background of a GC using the GC's colormap
9167         and GdkRGB. (name not final, waiting for inspiration.)
9168
9169         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9170         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9171
9172         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9173         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9174         purely a function of the corresponding colormap. Make
9175         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9176
9177         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9178         gdk_pixbuf_*create_from_xpm_* in terms of
9179         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9180         code.
9181
9182         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9183         advantage of the new draw_rgb_32_image_dithalign.
9184
9185         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9186
9187         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9188         on each created GC.
9189
9190         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9191
9192         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9193         which we initialize from the drawable when the GC is created,
9194         if the drawable has a colormap.
9195
9196         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9197
9198         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9199
9200         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9201
9202 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9203
9204         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9205         actually returning expose events, make sure to set
9206         the count field properly.
9207
9208         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9209         accidentally reintroced bug which always cleared
9210         the graphics_exposures value. 
9211
9212 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9213
9214         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9215
9216 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9217
9218         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9219
9220 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9221
9222         * docs/faq/gtk-faq.sgml: Start of Section 6.
9223
9224 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9225
9226         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9227         
9228         (Fixes problem with drawing childless frames. Pointed out
9229         by and a first patch from Anders)
9230         
9231         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9232         compute a child_allocation, even if we don't have a child.
9233
9234         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9235         Always chain to the parent's impl, even if we don't have a child.
9236
9237 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9238
9239         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9240         use multiple parts of it instead of creating a bunch of separate
9241         segments, since the maximum number of segments per system is not
9242         large. (This might be worth backporting to GTK+-1.2.x if we make a
9243         new release )
9244
9245         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9246         structure in preparation for per-colormap GdkRGB.
9247
9248         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9249         to False when we get EINVAL from shmget so that the caller of
9250         gdk_image_new can retry with a smaller segment size.
9251
9252 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9253
9254         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9255
9256 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9257
9258         * configure.in: make the current version number 1.3.1 (binary age 0,
9259         interface age 0).
9260         
9261         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9262         gtkcompat.h is all we want.
9263
9264         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9265         GLib primitive types. fixed g_type_register_fundamental() argument
9266         ordering.
9267
9268         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9269         compiles.
9270
9271         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9272         object code cleanup, comment trigraph fixes, etc...
9273
9274 2000-06-23  Havoc Pennington  <hp@redhat.com>
9275
9276         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9277         instead of making up a bogus name for first_para_mark
9278
9279         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9280         0 as a context ID
9281
9282 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9283
9284         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9285
9286 2000-06-21  Havoc Pennington  <hp@pobox.com>
9287
9288         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9289         we didn't check window->bg_pixmap != GDK_NO_BG.
9290
9291         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9292         gdk-pixbuf
9293
9294 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9295
9296         * docs/faq/gtk-faq.sgm: Move file to here.
9297           TODO: Update Makfile.am 
9298
9299 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9300
9301         * docs/gtk-faq.sgm: Add Section 2
9302
9303 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9304
9305         * docs/gtk-faq.sgm: New file. Start of DocBook
9306           version of the FAQ.
9307
9308 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9309
9310         * configure.in (GDK_PIXBUF_MAJOR): Define version
9311         numbers for GDK_PIXBUF_*, as they get substituted
9312         into a header file. Need to consider versioning
9313         for gdk-pixbuf more carefully later.
9314
9315 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9316
9317         Work with srcdir != builddir.   
9318         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9319         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9320         * demos/testpixbuf.c: Likewise.
9321         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9322         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9323         <gdk/x11/gdkx.h>.
9324         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9325         "gdk-pixbuf.h".
9326         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9327
9328 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9329
9330         * TODO.xml: Change 1.4 version numbers to 2.0.
9331
9332 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9333
9334         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9335         fixups to GTK+ standard.
9336
9337 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9338
9339         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9340         gdk-pixbuf.
9341
9342         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9343         fixups for GObject.
9344
9345         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9346         gdk-pixbuf with GDK dependencies moved into GDK.
9347         
9348         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9349         move gdk-pixbuf-loader here until GObject has signals.
9350
9351         * demos/: New directory of demos. Move demos from
9352         gdk-pixbuf here.
9353
9354         * demos/pixbuf-init.c: Small bit of code to check for
9355         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9356         set GDK_PIXBUF_MODULEDIR appropriately.
9357
9358         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9359         define which no longer makes sense.
9360
9361 2000-06-21  Havoc Pennington  <hp@redhat.com>
9362
9363         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9364         gtk_get_default_language
9365
9366         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9367         new function to get the default language
9368
9369         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9370         s/gtk_text_view_style_values/gtk_text_style_values/
9371
9372         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9373         Add a "language" field to tags.
9374
9375         (gtk_text_tag_set_arg): Fix bug in setting
9376         "bg_full_height_set" tag.
9377
9378 2000-06-21  Havoc Pennington  <hp@redhat.com>
9379
9380         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9381         in the interfaces
9382
9383         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9384         stuff instead when possible.
9385
9386         * gtk/gtktexttypes.h: Delete some unused constants
9387
9388         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9389         testtextbuffer.c: use glib instead of custom unicode routines
9390
9391 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9392
9393         * docs/es/: Removed mistakenly added generated sgml
9394
9395         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9396         Remove outdated info files.
9397
9398         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9399         Moved tutorial files into subdir
9400
9401         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9402         subdir.
9403
9404         * docs/man/gtk_button.pod: Remove. (contents will be
9405         integrated into gtk-reference button page.)
9406
9407         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9408         docs/faq/Makefile.am: Adjust for new organization
9409
9410 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9411
9412         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9413         not $(MKINSTALLDIRS)
9414
9415 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9416
9417         * gtk/testgtk.c (create_text): Finish the job Elliot started
9418         of removing font setting test for text widget. (Since text widget
9419         and GdkFont are not deprecated, and cause portability problems.)
9420
9421 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9422
9423         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9424         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9425         Remove use of libunicode in favor of new GLib functions.
9426
9427         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9428         nano-x, framebuffer. The X11 include is just a hack until we get
9429         the necessary functions in gdkcolor.h, so there is no reason to
9430         add other includes of platforms.
9431
9432         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9433         window bigger than the screen change.
9434
9435         * gtk/testgtk.c: Revert some random changes from Elliot
9436         that had no particular point and were causing testgtkrc
9437         not to function correctly.
9438         
9439         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9440         because GdkSegment and GdkRegionBox have the same fields,
9441         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9442         results in clearer code.
9443
9444         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9445         gdk_input_translate_coordinates): Fix missed GdkObjectification
9446
9447 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9448
9449         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9450         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9451
9452 2000-06-20  Havoc Pennington  <hp@redhat.com>
9453
9454         * modules/linux-fb/Makefile.am: Make this compile
9455         without framebuffer enabled
9456
9457         * gdk/linux-fb/Makefile.am: Add conditional to not build
9458         framebuffer unless specified in configure
9459
9460         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9461         the size of the target instead of source if -1 was passed for
9462         width/height
9463
9464         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9465         width/height confusion.
9466
9467 2000-06-19  Havoc Pennington  <hp@redhat.com>
9468
9469         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9470         GDK_DRAWABLE_XID. In the future, we probably want to make it
9471         faster with G_DISABLE_CHECKS turned on.
9472
9473 2000-06-14  Havoc Pennington  <hp@redhat.com>
9474
9475         * gdk/Makefile.am: add gdkpixmap.c
9476
9477         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9478         s/gdk_image_init/_gdk_windowing_image_init
9479
9480         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9481         ref/unref
9482
9483         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9484
9485         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9486         GdkWindowType is now non-deprecated; 
9487         change gdk_window_get_type() compat to be
9488         gdk_window_get_window_type().
9489
9490         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9491
9492         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9493         virtual GObject. Make all functions call into the vtable.
9494         Move gdk_image_put() guts in here. Remove GdkDrawableType
9495         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9496         draw_image, get_depth, get_size, set_colormap, get_colormap,
9497         get_visual added to the vtable.
9498         
9499         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9500         GObject. Virtualize everything. 
9501         (gdk_gc_new_with_values): remove check for destroyed window,
9502         because now GdkWindow::create_gc will check this.
9503         (gdk_gc_set_values): New function to set GC values, this 
9504         was already implemented but wasn't in the header
9505
9506         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9507
9508         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9509         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9510         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9511         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9512         _gdk_windowing_window_init, rename gdk_image_init to
9513         _gdk_windowing_image_init.
9514         
9515         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9516         (gdk_draw_layout): Remove check for destroyed window, 
9517         because all the drawable methods already check it.
9518         
9519         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9520         Add gdkpixmap.c which contains implementation of GdkDrawable
9521         virtual table (by chaining to a platform-specific implementation
9522         object).
9523         
9524         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9525         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9526         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9527         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9528         GdkColormapPrivate. 
9529
9530         * gdk/gdktypes.h: #include <glib-object.h>
9531
9532         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9533         Move most functionality to platform-specific implementation
9534         object. GdkWindow itself now handles the backing store, then
9535         chains to the platform-specific implementation.
9536         (gdk_window_get_window_type): return GdkWindowType of the window.
9537         (gdk_window_peek_children): New routine, returns the children of 
9538         a GdkWindow
9539         (gdk_window_get_children): Was in X11-specific code and did 
9540         XQueryTree. Changed to simply return a copy of window->children; 
9541         so it can go in cross-platform code.
9542         
9543         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9544
9545         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9546         GdkColormap; just changed to use the new private data instead
9547         of casting to GdkColormapPrivate.
9548
9549         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9550         gdk_cursor_new().
9551
9552         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9553         (private data member in the GObject). 
9554         (xdnd_manager_source_filter): Function had broken 
9555         error handling, fix it (use gdk_error_trap_push).
9556
9557         * gdk/x11/gdkdrawable-x11.c: This file now implements
9558         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9559         base class is purely for the convenience of the X port,
9560         and not part of the interface to cross-platform GDK.
9561
9562         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9563         
9564         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9565         specific to X, and returned by the create_gc virtual method
9566         of GdkDrawableImplX11. 
9567         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9568         rather than gchar, this was also changed in the GdkGC vtable.
9569         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9570         mask is 0, return immediately, instead of checking every flag.
9571         This is faster, and keeps us from segfaulting if values is NULL
9572         and the mask contains some nonzero flags.
9573
9574         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9575         GdkWindow.
9576
9577         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9578         GdkWindowPrivate is gone.
9579
9580         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9581
9582         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9583         remove the image_put stuff that got transferred to GdkDrawable.
9584         
9585         * gdk/x11/gdkinput.c: renamings
9586
9587         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9588
9589         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9590
9591         * gdk/x11/gdkprivate-x11.h: indentation fixes
9592
9593         * gdk/x11/gdkproperty-x11.c: renamings
9594
9595         * gdk/x11/gdkselection-x11.c: renamings
9596
9597         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9598         implements the platform-specific "impl" object.
9599         Moved gdk_window_get_children to gdk/gdkwindow.c
9600
9601         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9602         that no longer exist. Add declaration of GdkGCX11 object here.
9603         Fix all the macros to still work. 
9604
9605         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9606         GdkDragContext from the boxed types since they are now GObjects.
9607
9608         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9609         moved xthickness/ythickness into the instance. GtkStyleClass
9610         functions are now in the standard vtable for GtkStyle, so you have
9611         to create a GObject subclass to write a theme engine.
9612         (gtk_style_copy): fixed a leaked PangoFontDescription
9613         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9614         can be the standard GObject function.
9615         
9616         * Throughout GTK:
9617         s/style->klass->[xy]thickness/style->[xy]thickness
9618         s/pango_layout_unref/g_object_unref/
9619
9620         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9621         
9622         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9623         accessing GDK internals.
9624
9625         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9626         accessing GDK internals.
9627
9628 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9629
9630         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9631
9632         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9633         problem by calculating event position relative to the trough
9634         rather than the slider.
9635         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9636
9637         * gdk/gdkgc.h: Add GDK_NOR.
9638
9639         * configure.in, Makefile.am: Add modules top level dir
9640         * configure.in: Only use pangox library if building x11 target.
9641         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9642
9643 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9644
9645         * gtk/gtkcolorsel.c: Change private class member to be named
9646         private_data throughout the file.
9647
9648         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9649         private_data to avoid clashing with keyword.
9650
9651 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9652
9653         * gdk/gdkdnd.h: Add comment to remove warning.
9654
9655 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9656
9657         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9658         Byelorussian language; changed the Makefile and file names 
9659         to reflect that.
9660
9661 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9662
9663         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9664         rather than gdk_window_hide; this makes things work
9665         correctly if the window is programmatically hidden while
9666         iconified.
9667
9668 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9669
9670         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9671         cut and paste typo where wrong pixmap was being
9672         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9673
9674 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9675
9676         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9677         Add helper function to compute format / bytes 
9678         relationship. Use in a couple places to fix up
9679         errors which assume 8 * format.
9680
9681         * gtk/gtkselection.c (gtk_selection_request): Use 32
9682         rather than 8 * sizeof (GdkAtom), to work correctly
9683         on Alpha.
9684
9685 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9686
9687         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9688         libgtk.la
9689         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9690         versions
9691
9692         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
9693         checking macros return NULL since the function has a return value.
9694
9695 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
9696
9697         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
9698         GTK+ from building at all.
9699
9700         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
9701
9702 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
9703
9704         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
9705         gtk/Makefile.am: make it possible to configure gtk for different
9706         targets on the same platform. The library name is now 
9707         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
9708         flag. Only the x11 target compiles right now.
9709         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
9710         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
9711         * gdk/nanox/gdk*generic*: delete generic region code.
9712         * gdk/linux-fb/gdk*generic*: delete generic region code.
9713         * README.nanox: update information.
9714         
9715 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9718         prepend not append. (Pointed out by Brett Hall.)
9719
9720 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9721
9722         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9723
9724 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9725
9726         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9727         need this later, and this makes sure that the atexit for
9728         glib gets called after that for GDK, so atexits are
9729         properly ordered for object leak checking.
9730
9731         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9732
9733         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9734         pango_x_shutdown_display()
9735
9736         * gtk/simple.c (main): Close window on destroy.
9737
9738 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9739
9740         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9741         to treat initial creation different from setting with 
9742         regards to the graphics-exposures parameter, so add a parameter
9743         indicating whether this is initial or not.
9744
9745 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9746
9747         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9748         to sort of work by adding an extra return_exposes arg
9749         to gdk_event_translate() - it might be better to simply
9750         deprecate the function altogether and force people to rewrite
9751         without it. gdk_window_scroll() handles most of it, and where
9752         gdk_window_scroll() doesn't work, simply redrawing more does.
9753
9754         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9755         assertion.
9756
9757         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9758
9759         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9760         bunch of pretty much useless /* Print debugging info */ comments 
9761         which had drifted away from the code they were commenting.
9762
9763 2000-06-02  Havoc Pennington  <hp@pobox.com>
9764
9765         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9766         is in working order.
9767         
9768         * gtk/testtext.c: Change to reflect anonymous mark API
9769
9770         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9771
9772         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9773         field, which was unused.
9774
9775         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9776         saves some typing.
9777
9778         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9779
9780         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9781         flag on the insertion point and selection bound
9782
9783         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9784         make mark-manipulation functions take a GtkTextMark* instead of a
9785         mark name.
9786         
9787         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9788         GtkTextMarkBody; will be used to detect attempts to delete
9789         the permanent marks (insert and selection bound)
9790
9791         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9792
9793 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9794
9795         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9796         flag to on.
9797
9798         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9799         Honor DOUBLE_BUFFRED_FLAG
9800
9801         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9802         function to set the DOUBLE_BUFFERED flag.
9803
9804         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9805         or not exposes done on the widget should be double-buffered.
9806
9807         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9808         to be what would be expected. (Fixes problem with a
9809         g_return_if_fail() validating a TextDirection enumeration)
9810
9811 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9812
9813         * gtk/gtkwidget.c: Remove all references to 
9814         offscreen flag which was no longer used.
9815
9816         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9817
9818         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9819         for non-null label_widget->parent.
9820
9821         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9822         which no longer was used.
9823
9824         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9825
9826         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9827         for null arguments.
9828
9829         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9830         check for destroyed windows.
9831
9832 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9833
9834         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9835         the slave context there.
9836
9837         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9838         identical to GtkWindow.
9839
9840 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9841
9842         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9843         pangox to here, so we can write them independent of rendering
9844         system, using GDK primitives.
9845
9846         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9847         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9848         since we have a rendering-system independent implementation in
9849         terms of draw_glyphs().
9850         
9851         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9852         function to render a single line.
9853
9854         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9855         into ../gdkpango.c, which simplifies things, since we
9856         don't have to deal with raw X gc's.
9857
9858 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9859
9860         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9861         get the logical attributes for a given GtkTextLine.
9862
9863 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9864
9865         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9866         g_locale_get_codeset() to g_get_codeset() change.
9867
9868 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9869
9870         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9871         descriptions.
9872
9873         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9874         the entry.
9875
9876         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9877         redoing (vastly simplifying) for Pango. Still needs quite
9878         a bit of work. (Size selection is currently poor. List of 
9879         predefined sizes is not a good idea, since all of these
9880         sizes won't necessarily be distinct.)
9881
9882 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9883
9884         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9885         CODESET results for LANG=C.
9886
9887 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
9888
9889         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
9890         which takes a stringized pango font description;
9891         ignore the older 'font' and 'fontset' declarations.
9892
9893         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
9894         field with a GdkFont derived via gdk_font_from_description(),
9895         for compatibility. (Should we just remove it entirely?
9896         Probably too much compatibility breakage, but people
9897         should be migrating to the new Pango stuff as quickly
9898         as possible.)
9899
9900 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
9901
9902         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
9903
9904 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
9905
9906         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
9907         redoing; there are some bugs in size allocation right
9908         now, the semi-existant distinction between header / day
9909         fonts was removed, but, with Pango, could actually
9910         be made functional in a nice way.
9911         
9912         * gtk/testcalender: Move calender from examples into this
9913         directory as a test program. (We really need to restrcture
9914         testgtk into a whole directory full of tests for every
9915         widget or functionality group, separated into multiple .c
9916         files.)
9917
9918 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
9919
9920         * gtk/testgtk.c (file_exists): Fix stupid typo that
9921         was keeping RC file from being loaded.
9922
9923         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
9924         RC file font code.
9925
9926 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
9927
9928         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
9929         Add function to load a GdkFont from a PangoFontDescription.
9930
9931 2000-05-29  Tor Lillqvist  <tml@iki.fi>
9932
9933         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
9934         variable should be of type GdkEventPrivate.
9935
9936 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
9937
9938         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
9939         to have any widget for the label, use a GtkLabel widget
9940         to display the text. (Based partially on a patch from
9941         Anders Carlson.)
9942
9943         (Quite a bit of code reorganization - strip 90% of the
9944         guts out of gtkaspectframe and add a single virtual
9945         func to GtkFrameClass - compute_child_allocation.)
9946
9947 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
9948
9949         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
9950         (Removed clist->row_center_offset field because caching
9951         it wasn't saving time or code, added private function
9952         _gtk_clist_create_cell_layout()).
9953
9954 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
9955
9956         * gtk/gtkaccellabel.c: Pangoized.
9957
9958         * gtk/[hv]ruler.c: Pangoized
9959
9960 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
9961
9962         * gtk/gtkfilesel.c (gtk_file_selection_init):
9963         Use gtk_clist_set_column_auto_resize() to remove need
9964         need for manual column width computations.
9965
9966 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
9967
9968         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
9969         ensuring Pango correctness, and considerably simplifying the
9970         code.
9971         
9972         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
9973
9974         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
9975         getting of numbers of lines.
9976
9977         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
9978         to the actual requested width of the lable, not to the wrap
9979         width we set.
9980
9981         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
9982
9983         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
9984           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
9985
9986         * gtk/gtktextview.c: Fix structure inheritance.
9987
9988         * gtk/gtkprogressbar.c: Pangoize.
9989
9990 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
9991
9992         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
9993         in a function.
9994
9995         * gtk/gtktextlayout.c (find_display_line_above): Fixed
9996         bug with computing line tops.
9997
9998         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
9999
10000 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10001
10002         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10003         and y_offset coordinates to do what we need now. (The offset between
10004         buffer and layout coordinates has been reintroduced, but is a 
10005         bit different than before.)
10006
10007         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10008         handle the adjustments ourselves, and scroll as necessary using
10009         the new gdk_window_scroll().
10010         
10011         The advantage of this is that when we are incrementally revalidating,
10012         we are essentially rearranging things around the visible portion
10013         of the screen. With the old setup, the visible portion of the
10014         screen was moved around in the layout, so scrolling and redrawing
10015         to track that caused jumping of the display. Since we now
10016         control the scrolling ourselves, we can suppress this and
10017         only redraw when things actually change.
10018
10019 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10020
10021         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10022         the region not just redisplay it after-all, since we store the
10023         cursors in the LineDisplay. (Ugly interactions here between
10024         GtkLayout and GtkTextBTree here.)
10025         
10026         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10027
10028 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10029
10030         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10031         Added function to scroll contents of a window while keeping the
10032         window constant. Works by XCopyArea or guffaw-scrolling depending
10033         on the details of how the window is set up. (guffaw-scrolling
10034         still needs to be filled in.)
10035
10036 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10037
10038         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10039         move the debugging that was tied to a global variable
10040         to that.
10041
10042         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10043
10044         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10045         validated flag, in line data instead of setting height/width to
10046         -1. This allows us to perform operations with partially invalid
10047         buffer (using the old size for invalid lines) and thus to do
10048         incremental vaidation. Keep height/width aggregates up to date
10049         when deleting text and rebalancing the tree.
10050
10051         * gtk/gtktextbtree.[ch]: Add functions validate a line
10052         (gtk_text_btree_validate_line), and to validate up
10053         to a number of pixels (gtk_text_btree_validate).
10054
10055         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10056         that indicates that something is changed and a revalidation
10057         pass is needed. Change ::need_repaint to ::changed, and
10058         make it take old and new yranges instead of a rectangle.
10059
10060         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10061         the line_data_destroy() function from 
10062         gtk_text_btree_add_view() to a virtual function in 
10063         GtkTextLayout
10064
10065         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10066         since we are handling partial repaints in a different fashion
10067         now.
10068
10069         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10070         of the selection instead of queueing a repaint on the
10071         entire widget.
10072
10073         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10074         get_selection_bounds() down to btree, make the function
10075         in buffer a wrapper around the btree function.
10076
10077         * gtk/gtktextlayout.[ch]: Add functions to check if the
10078         layout is valid and to recompute either a range of pixels
10079         aroudn a line or a certain total number of pixels.
10080
10081         * gtk/gtktextlayout.[ch]: Cache a single line display;
10082         now that we only redraw the needed portions, the hit rate
10083         for this cache is quite high.
10084         
10085         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10086         on the screen so that when re-laying-out the buffer, we can
10087         keep the same place. This requires connecting to ::value_changed
10088         on the adjustments
10089
10090         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10091         the buffer after we receive an ::invalidated signal.
10092         
10093 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10094
10095         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10096         to max of allocation and layout size, not just to the
10097         layout size.
10098
10099         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10100         Invalidate window so it gets redrawn properly.
10101
10102         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10103         to mean the entire window.
10104
10105         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10106         into public header.
10107
10108 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10109
10110         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10111         to get the name of a mark.
10112
10113         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10114         to find the paragraph from a y position.
10115
10116 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10117
10118         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10119         nodes have width/height >= 0, not > 0.
10120
10121 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10122
10123         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10124         Add a size_only flag, so when we only need the size, we don't create
10125         useless appearance attributes.
10126
10127         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10128         duplicate setting of font description.
10129
10130         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10131
10132 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10133
10134         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10135         EXTRA_DIST. It does not work well when the file that
10136         everything depends on is not in the tarball.
10137
10138 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10139
10140         * gtk/testgtk.c: Some hacks and fixes so that it basically
10141         works when not sitting in the GTK+ build tree.
10142
10143 2000-05-03  Havoc Pennington  <hp@redhat.com>
10144
10145         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10146         Properly determine the ordering of the tag root and the current
10147         line within the tree. Previous algorithm only worked if the tag
10148         root's immediate parent was the common root of both the current
10149         line and the tag root.
10150
10151 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10152
10153         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10154         alignment.
10155
10156         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10157         the widget text directional dynamically.
10158
10159         * gtk/gtktextview.[ch]: Added functions to get and set default
10160         wrap mode.
10161
10162 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10163
10164         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10165         in cursor location computation.
10166
10167 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10168
10169         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10170         vadjusment values properly when layout gets smaller.
10171
10172         * gtk/gtktextview.c (need_repaint_handler): Areas being
10173         passed in are far completely inaccurate, and sometimes
10174         too small, so, for now, just queue a redraw on the
10175         whole visible region.
10176
10177 2000-04-25  Havoc Pennington  <hp@redhat.com>
10178
10179         * gtk/gtktextbtree.c (summary_destroy): new function to 
10180         destroy tag summary nodes
10181         (gtk_text_line_next_could_contain_tag): this function was 
10182         totally broken if the line passed in wasn't below the tag
10183         root. Fix it.
10184         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10185         "wildcard" case, we have to do a linear scan. Blah.
10186         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10187         we have to do the linear scan
10188         (tag_removed_cb): When a tag is removed from the tag table, 
10189         remove the GtkTextTagInfo node from the btree.
10190         (gtk_text_btree_spew): Implement the spew function, for 
10191         our debugging pleasure.
10192
10193 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10194
10195         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10196         a problem with referring to the wrong buffer.
10197
10198         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10199
10200         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10201         font description to gtk_style_new() - otherwise things
10202         don't work without a .gtkrc file.
10203
10204         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10205         tags table if we create it ourself, too.
10206
10207         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10208         it was conflicting with XKB modifiers.
10209
10210         * gtk/gtktextview.[ch]: Add simple support for 
10211         GtkIMContext.
10212
10213 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10214
10215         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10216         with deletion from last commit.
10217
10218 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10219
10220         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10221         in the context from the current locale.
10222         
10223         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10224         context, not hardcoded value.
10225
10226         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10227         not logical.
10228
10229 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10230
10231         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10232         attributes - that doesn't handle partial-glyph selection
10233         properly. Instead use new pango_layout_line_get_x_ranges()
10234         functionality to draw the selection.
10235
10236         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10237         now properly handles out-of-range coordinates.
10238
10239         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10240
10241         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10242         public.
10243
10244         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10245         for paragraphs opposite to the base direction of the widget.
10246
10247         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10248
10249         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10250         causes Arabic words to reshape as you cursor through.
10251
10252         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10253         cursor position when moving vertically with the arrow keys and
10254         scrolling with page-up/page-down. (Arrow keys save only the X,
10255         scrolling saves both X and Y.)
10256
10257         This means you can line-up / line-down or page-up / page-down
10258         without losing your place, and also that moving vertically
10259         with the cursor keys keeps the same X position, not the same
10260         character count:
10261
10262         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10263         arrow keys move by display lines, not paragraphs.
10264
10265 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10266
10267         * gtk/gtklayout.c: Make sure that the bin window is at least
10268         as big as the allocation. (Should we also make sure that the
10269         bin window is big enough to completely cover widget->window?)
10270
10271         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10272         function to get the onscreen rectangle.
10273
10274         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10275         for offsets in window coordinates.
10276
10277 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10278
10279         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10280         confusion.
10281
10282         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10283         from the widget direction.
10284
10285         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10286         Add a "direction" attribute.
10287
10288         * gtk/gtktextview.c: global s/tkxt/text_view/.
10289
10290         * gtk/testtext.c: Added long block of text in Arabic, to test out
10291         the direction attributes. (Some problems with the shaping system
10292         for arabic become obvious - like the fact the cursor splits words
10293         into unjoined pieces.)
10294
10295 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10296
10297         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10298
10299         * gtk/gtktextlayout.c: Fix up alignment.
10300
10301         * gtk/testtext.c: Add some tests for centering, wrapping.
10302
10303 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10304
10305         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10306         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10307         If we wrote GTK+-specific layout-render function this could just replace
10308         the draw_layout() operation in the vtable.
10309
10310         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10311         pango_layout_get_cursor_pos() and use that function.
10312
10313         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10314         is a non-static symbol.
10315
10316         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10317         with gtk_text_btree_find_line_by_y()
10318
10319         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10320         renderer that handles GtkTextAppearance attributes.
10321
10322         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10323
10324           - Move the values in the style that don't affect geometry into a
10325             GtkTextAppearance structure.
10326           - Change underline to take a PangoUnderline and "font" a string
10327             representation of a font description
10328           - Add a "font_desc" attribute which takes a FontDescription structure.
10329
10330         * gtk/gtktextlayout.[ch]:
10331
10332           - Get rid of the display-line list per each line. Instead, we
10333             generate, on demand, a GtkTextLineDisplay structure which]
10334             contains a PangoLayout * and other necesary information
10335             (offsets, cursor locations) for displaying a paragraph.
10336           - Get rid of the code to wrap lines, create display chunks,
10337             etc. Instead, we just go through a paragraph and convert
10338             it into the necessary inputs to a PangoLayout.
10339           - Implement a new attribute type, GtkTextAttrAppearance. This
10340             holds a GtkTextAppearance, and is used to pass colors, 
10341             stipple, etc, through from the layout to the display without
10342             having to use lots and lots of individual attributes.
10343           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10344             in terms of PangoLayout functions.
10345         
10346         * gtk/gtktextview.c: 
10347          
10348           - Handle passing the necessary PangoContext to the layout
10349           - Some fixups in painting to deal with the automatic backing store
10350             and offsetting of GTK+-1.4
10351           - Add a style_set handler so that the default style reacts
10352             properly to theme changes.
10353         
10354         * gtk/gtktext?*.[ch]: Random code-style fixes.
10355
10356         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10357
10358 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10359
10360         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10361         in original form preparatory to Pango-ization and gdkimcontext-ization.
10362
10363 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10364
10365         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10366         so that we can derive from gtkimcontext in language bindings properly.
10367
10368 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10369
10370         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10371         Add a compose table including (almost) all the compose combinations
10372         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10373         data in the XIM implementation.
10374
10375         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10376         Moved functions to convert keyvalues from and to unicode here from
10377         the win32 port and made them public.
10378
10379 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10380
10381         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10382
10383 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10384
10385         * gtk/gtkimcontext.[ch]: Base class for new input context system
10386
10387         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10388         the real input context implementation to be loaded from modules
10389         and switched on the fly.
10390
10391         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10392         context that just does direct keysymbol => unicode translation.
10393
10394         * gtk/gtkentry.[ch]: Start switching editing over to using
10395         GtkInputContext. (No handling of preedit yet.)
10396
10397 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10398
10399         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10400         many substitutions. (klass should not be subsituted.)
10401
10402 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10403
10404         * configure.in: Add checks for Pango
10405
10406         * configure.in docs/Makefile.am: Add test for sgml2html
10407         and allow 'make dist' without building html, but print out
10408         warnings in that case. (For making snapshots)
10409
10410         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10411         Add Pango libraries and C flags
10412
10413         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10414         Add function (gdk_draw_layout) to draw a pango layout.
10415
10416         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10417         for getting Pango contexts for GDK.
10418
10419         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10420
10421         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10422         editing.
10423
10424         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10425         keysym => unicode translations. More languages can be added
10426         here, but real input-method support is needed.
10427
10428         * docs/Changes-1.4.txt: Added note about entry behavior.
10429         
10430         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10431         to set the reading direction for a widget and the global direction.
10432         Add test which allows toggling the global direction. Two private
10433         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10434
10435         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10436           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10437
10438         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10439
10440         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10441         underlining now handled by Pango.
10442
10443         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10444         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10445         is temporary.)
10446
10447         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10448         convenience functions for creating contexts and layouts for widgets.
10449
10450         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10451
10452 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10453
10454         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10455         titles to be active, even if they aren't visible.
10456         (gtk_clist_column_titles_passive):  Ditto.
10457
10458 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10459
10460         * gtkmenu.c:
10461         * gtkmenu.h:
10462         * gtktypeutils.h: Spelling/grammar fixes in comments.
10463
10464 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10465
10466         * gdk/nanox/*.h: add missing header files.
10467
10468 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10469
10470         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10471         send_event to TRUE.
10472         (gtk_drawing_area_size): queue a resize.
10473
10474 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10475
10476         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10477         the handlers, also invalidate them. bug nailed down by Karl Nelson
10478         <kenelson@ece.ucdavis.edu>.
10479
10480 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10481
10482         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10483         "(nil)" foundries, patch from Grigorios Magklis.
10484
10485         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10486         on non-available fonts, based on a patch by Grigorios Magklis
10487         <maglis@cs.rochester.edu>.
10488
10489 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10490
10491         * gdk/x11/gdkregion-generic.c: If a region does not have any
10492         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10493         instead of GDK_OVERLAP_RECTANGLE_IN.
10494
10495 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10496
10497         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10498         OFFSCREEN, as it is no longer necessary.
10499
10500 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10501
10502         * gtk/gtkcolorsel.c: Patch from David Santiago
10503         <mrcooger@cyberverse.com> to change things so that the 
10504         indicator of the active palette entry is done independently,
10505         not via the focus, since it should always be visible.
10506
10507 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10508
10509         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10510         refcount leaks as in the X11 backend.
10511
10512         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10513         cosmetics.
10514
10515         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10516         backend. Add _gdk_windowing_window_destroy().
10517
10518         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10519         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10520         either, but these probably do exist on nanox?)
10521         
10522         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10523         which isn't necessarily defined by <math.h>.
10524
10525         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10526         ancestry past GtkObject.
10527
10528         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10529         from DLL on Win32.
10530
10531         * gtk/gtk.def: Update corresponding to recent changes.
10532
10533         * gtk/makefile.{cygwin,msc}: Updates.
10534
10535 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10536
10537         * docs/Changes-1.4.txt: A bit of editing.
10538
10539         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10540         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10541         to clear the update area for the window, and clear it
10542         when hiding a window.
10543
10544         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10545         if window destroyed.
10546
10547         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10548
10549         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10550         gdk_window_destroy() to the generic code, since there was a lot of 
10551         window-system-independent logic it in. Add a function:
10552         
10553          _gdk_window_destroy() 
10554
10555         to the internal API to destroy a window without unreferencing it.
10556         Add a function:
10557
10558          _gdk_windowing_window_destroy()
10559
10560         That does the windowing-system-dependent part of destroying 
10561         the window.
10562
10563 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10564
10565         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10566
10567 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10568
10569         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10570         Make gtk_widget_shape_combine_mask() keep a reference count on
10571         the pixmap since it keeps it around.
10572
10573 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10574
10575         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10576         leak.
10577
10578         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10579         leak with event filters.
10580
10581 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10582
10583         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10584         signal handlers with the right data arguments. (Fixes
10585         some warnings when a widget was repeatedly set as a drag
10586         destination.)
10587
10588         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10589         window so we can avoid avoid setting the DND properties on the
10590         toplevel window repeatedly.
10591
10592 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10593
10594         * gdk/win32/gdkwin32.h: Define more message types missing from
10595         mingw headers.
10596
10597         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10598         call gdk_window_destroy_notify(). It was never called. This
10599         probably meant that the GdkWindow was never freed. Thanks Owen for
10600         noticing (!).
10601
10602         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10603         window as destroyed before calling DestroyWindow(). DestroyWindow()
10604         causes a call to the window procedure (gdk_WindowProc), which
10605         calls gdk_event_translate(), which calls
10606         gdk_window_destroy_notify(), which gets confused unless the window
10607         is set as destroyed.
10608
10609         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10610         this function to indicate it's win32 only. Put inside #ifdef
10611         G_ENABLE_DEBUG.
10612
10613         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10614         debugging function. (gdk_event_translate:) Add a default branch
10615         that uses the above function to print debug messages with all
10616         Windows messages symbolically.
10617
10618         * gdk/win32/gdkprivate-win32.h: Declare it, and
10619         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10620
10621 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10622
10623         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10624         public header file.
10625
10626 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10627
10628         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10629
10630         * gtk/gtktext.c: made the adjustments no-construct args, simply
10631         provide default adjustments.
10632         (gtk_text_destroy): release adjustments.
10633
10634         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10635         adjustment argument non-construct.
10636
10637         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10638         instead of in finalize.
10639         (gtk_progress_get_text_from_value): 
10640         (gtk_progress_get_current_text): 
10641         (gtk_progress_set_value): 
10642         (gtk_progress_get_percentage_from_value): 
10643         (gtk_progress_get_current_percentage): 
10644         (gtk_progress_set_percentage): 
10645         (gtk_progress_configure): ensure an adjustment is present.
10646
10647 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10648
10649         * gtk/gtkcolorsel.[hc]:
10650         * gtk/gtkcolorseldialog.[hc]:
10651         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10652         their parent implementation, use bit fields for boolean values, don't
10653         create unused widgets, usage of glib types, braces go on their own
10654         lines, function argument alignment, #include directives etc. etc. etc..
10655
10656         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10657
10658 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10659
10660         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10661
10662         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10663         of NULL.
10664
10665         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10666         to freed data.
10667         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10668
10669         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10670         to NULL when the toplevel is getting destroyed.
10671         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10672         (gtk_menu_destroy): 
10673         (gtk_menu_init): store the information of whether we have to
10674         readd the initial child ref_count during destruction in a new
10675         GtkMenu field needs_destruction_ref_count.
10676
10677         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10678         here, those reading: learn from my mistake! ;)
10679         in order for set_?adjustment to support a default adjustemnt if
10680         invoked with an adjustment pointer of NULL, the code read (pseudo):
10681         if (v->adjustment) unref (v->adjustment);
10682         if (!adjustment) adjustment = adjustment_new ();
10683         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10684         now imagine the first unref to actually free the old adjustment and
10685         adjustment_new() creating a new adjustment from the very same memory
10686         portion. here, the latter comparision will unintendedly fail, and
10687         all hell breaks loose.
10688         (gtk_viewport_set_hadjustment):
10689         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10690         after unreferencing it.
10691
10692         * gtk/gtkcontainer.[hc]: removed toplevel registration
10693         functions: gtk_container_register_toplevel(),
10694         gtk_container_unregister_toplevel() and
10695         gtk_container_get_toplevels() which had wrong semantics
10696         anyways: it didn't reference and copy the list.
10697
10698         * gtk/gtkwindow.c: we take over the container toplevel registration
10699         bussiness now. windows are registered across multiple destructions,
10700         untill they are finalized. the initial implicit reference count
10701         users are holding on windows is removed with the first destruction
10702         though.
10703         (gtk_window_init): ref & sink and set has_user_ref_count, got
10704         rid of gtk_container_register_toplevel() call. add window to
10705         toplevel_list.
10706         (gtk_window_destroy): unref the window if has_user_ref_count
10707         is still set, got rid of call to
10708         gtk_container_unregister_toplevel().
10709         (gtk_window_finalize): remove window from toplevel list.
10710         (gtk_window_list_toplevels): new function to return a newly
10711         created list with referenced toplevels.
10712         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
10713
10714         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10715         adjustment a non-construct arg.
10716         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10717         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10718         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10719
10720         * gtk/gtkrange.c: added some realized checks.
10721         (gtk_range_destroy): get rid of the h/v adjustments in the
10722         destroy handler instead of finalize. remove timer.
10723         (gtk_range_get_adjustment): demand create adjustment.
10724
10725         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10726         we simply create them on demand now and get rid of them in
10727         the destroy handler.
10728         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10729         destroy handler instead of finalize.
10730         (gtk_viewport_get_hadjustment): 
10731         (gtk_viewport_get_vadjustment): 
10732         (gtk_viewport_size_allocate): demand create h/v adjustment
10733         if required.
10734
10735         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10736         gtk_widget_real_destroy () functionality.
10737         (gtk_widget_real_destroy): reinitialize with a new style, instead
10738         of setting widget->style to NULL.
10739
10740 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10741
10742         * gtk/gtkcalendar.c:
10743         * gtk/gtkbutton.c: ported _get_type() implementation over to
10744         GType, either to preserve memchunks allocation facilities,
10745         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10746
10747         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10748         over. prepare for ::destroy to be emitted multiple times.
10749         removed reference tracer magic. chain into GObjectClass.shutdown()
10750         to emit ::destroy signal.
10751
10752         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10753         fundamental.
10754
10755         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10756         cludge.
10757
10758         * gtk/gtksocket.c:
10759         * gtk/gtkplug.c:
10760         * gtk/gtklayout.c:
10761         * gtk/gtklabel.c:
10762         * gtk/gtkargcollector.c:
10763         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10764         not being a fundamental anymore, and to work with the new
10765         type system (nuked fundamental type varargs clutter).
10766
10767         * gtk/*.c: install finalize handlers in the GObjectClass
10768         part of the class structure.
10769         changed direct GTK_OBJECT()->klass accesses to
10770         GTK_*_GET_CLASS().
10771         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10772
10773         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10774         GType. made most of the GTK_*() type macros and Gtk* typedefs
10775         simple wrappers around macros and types provided by GType.
10776         most notably, a significant portion of the old API vanished:
10777         GTK_TYPE_MAKE(),
10778         GTK_TYPE_SEQNO(),
10779         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10780         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10781         GTK_TYPE_ARGS,
10782         GTK_TYPE_CALLBACK,
10783         GTK_TYPE_C_CALLBACK,
10784         GTK_TYPE_FOREIGN,
10785         GtkTypeQuery,
10786         gtk_type_query(),
10787         gtk_type_set_varargs_type(),
10788         gtk_type_get_varargs_type(),
10789         gtk_type_check_object_cast(),
10790         gtk_type_check_class_cast(),
10791         gtk_type_describe_tree(),
10792         gtk_type_describe_heritage(),
10793         gtk_type_free(),
10794         gtk_type_children_types(),
10795         gtk_type_set_chunk_alloc(),
10796         gtk_type_register_enum(),
10797         gtk_type_register_flags(),
10798         gtk_type_parent_class().
10799         replacements, where available are described in ../docs/Changes-1.4.txt.
10800         implemented compatibility functions for the remaining API.
10801
10802         * configure.in: depend on glib 1.3.1, use gobject module.
10803
10804 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10805
10806         * TODO.xml: Various updates to current status.
10807
10808 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10809
10810         * gtk.m4: Print out version when test succeeds.
10811
10812 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10813
10814         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10815         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10816         
10817         (Original triangle color selector from Simon Budig
10818         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10819         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10820         Santiago <mrcooger@cyberverse.com>)
10821
10822         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10823         out into a separate widget.
10824
10825         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10826         and opacity controls.
10827
10828 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10829
10830         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10831         snuck in prematurely.
10832
10833 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10834
10835         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10836         had deleted a ! operator by mistake, which caused
10837         GDK_SELECTION_CLEAR events never to be generated, which caused
10838         only the first copy to the clipboard from an gtkeditable to
10839         actually cause a copy to the Windows clipboard.
10840
10841 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10842
10843         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10844         compilation, too. Current mingw gcc distributions include the
10845         necessary headers. Also the necessary IIDs are now in mingw
10846         headers/libraries, and own definitions unnecessary.
10847
10848         More hacking on OLE2 DND, still doesn't work though, and thus
10849         ifdeffed out.
10850
10851         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10852         here, too.
10853
10854 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10855
10856         * gdk/nanox/*: nano-X port work in progress.
10857         * gdk/simple.c: simple test for Gdk.
10858         * README.nanox: notes about the port: read this first!
10859         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10860         with nano-X.
10861
10862 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10863
10864         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10865         gdk_window_clear() into common code, implement in terms of
10866         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10867         not redirected to the backing rectangle.
10868
10869 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10870
10871         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10872         EXTRA_DIST. It does not work well when the file that
10873         everything depends on is not in the tarball.
10874
10875 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10876
10877         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10878         with recursion where process_updates() is called from
10879         an expose handler. (GtkTextView is highly broken in
10880         doing this, but it should work, so it is a nice test
10881         case.)
10882
10883 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10884
10885         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10886         handle the case where updates are queued during processing of
10887         updates.
10888
10889 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10890
10891         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
10892         window is on gdk_display - use that instead of segfaulting.
10893
10894 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
10895
10896         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
10897         broken and require an empty arg, give it to them.
10898
10899 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
10900
10901         * gtk/gtklabel.h: indentation fixes.
10902
10903 2000-05-02  Tor Lillqvist  <tml@iki.fi>
10904
10905         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
10906         draw too narrow or too low arcs, they seem to fail, at least with
10907         some display drivers.
10908
10909         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
10910
10911         Large changes to the Win32 backend, partially made necessary by
10912         the changes to the backend-independent internal
10913         structures. Attempts to implement similar backing store stuff as
10914         on X11. The current (CVS) version of the Win32 backend is *not* as
10915         stable as it was before the no-flicker branch was merged. A
10916         zipfile with that version is available from
10917         http://www.gimp.org/win32/. That should be use by "production"
10918         code until this CVS version is usable. (But note, the Win32
10919         backend has never been claimed to be "production quality".)
10920
10921         * README.win32: Add the above comment about versions.
10922
10923         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
10924
10925         * gdk/gdk.def: Update.
10926
10927         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
10928         presumably be replaced by some more better mechanism as 1.4 gets
10929         closer to release shape.
10930
10931         * gdk/makefile.{cygwin,msc}: Update.
10932
10933         * gdk/win32/*.c: Correct inclusions of the backend-specific and
10934         internal headers. Change code according to changes in these. Use
10935         gdk_drawable_*, not gdk_window_* where necessary.
10936
10937         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
10938         our old DND.
10939
10940         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
10941         to interpret single characters as UTF-8. Thanks to Hans Breuer.
10942         Use correct function name in warning messages.
10943
10944         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
10945         GSourceFuncs gdk_event_prepare and gdk_event_check.
10946         (gdk_event_get_graphics_expose): Do implement, use
10947         PeekMessage. Thanks to Hans Breuer.
10948         (event_mask_string): Debugging function to print an GdkEventMask.
10949         (gdk_pointer_grab): Use it.
10950
10951         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
10952         (old) book I used claimed was Hangul actually is CJK Unified
10953         Ideographs Extension A. Also, Hangul Syllables were missing.
10954         Improve logging.
10955
10956         * gdk/win32/gdkgc-win32.c: Largish changes.
10957
10958         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
10959         g_win32_getlocale() from GLib, and not setlocale() to get current
10960         locale name.
10961
10962         * gdk/win32/gdkprivate-win32.h
10963         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
10964         gdkwin32.h, similarily as in the X11 backend.
10965
10966         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
10967         assignment was used instead of equals in if test. Thanks to Hans
10968         Breuer.
10969
10970         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
10971         the X11 version.
10972
10973         * gdk/win32/makefile.{cygwin,msc}
10974         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
10975         path to the Win32 headers that works also with the mingw compiler.
10976
10977         * gtk/gtkstyle.c: Include <string.h>.
10978
10979 2000-04-26  Havoc Pennington  <hp@redhat.com>
10980
10981         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
10982         replacing the broken gtk_label_get ()
10983
10984 2000-04-15  Havoc Pennington  <hp@pobox.com>
10985
10986         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
10987         this keeps scanner scripts from getting confused.
10988
10989         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
10990         data, rather than void
10991
10992 2000-04-15  Tor Lillqvist  <tml@iki.fi>
10993
10994         * gtk/gtkclist.c (gtk_clist_motion)
10995         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
10996         with is_hint FALSE, get x and y from the event. They used to be
10997         used uninitialised. The Win32 backend never sends motion events
10998         marked as hints. This for instance fixes the annoying file and
10999         font selector behaviour in the Win32 version.
11000
11001 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11002
11003         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11004         gtk_private_n_signals variables, they are used by some software,
11005         sigh.
11006
11007         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11008         installation directory from the Registry, where the installer
11009         should have put it.
11010
11011 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11012
11013         * gdk/x11/Makefile.am: Fix problem with installation directory for
11014         gdkx.h
11015
11016         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11017         <mrcooger@cyberverse.com> so that when selecting menus with the
11018         mouse, the first item will not be selected, but when selecting
11019         with an accelerator, or navigating left-right on a menubar with
11020         the menus popped up, the first item will be selected.
11021
11022 2000-04-05  Dan Damian  <dand@dnttm.ro>
11023
11024         * configure.in: Added "ro" to ALL_LINGUAS.
11025
11026 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11029         indentation.
11030
11031         * Makefile.am (EXTRA_DIST): Fix typo.
11032
11033         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11034         to catch gdkconfig.h
11035
11036         * gtk/gtkitemfactory.c: Added FIXME.
11037
11038 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11039
11040         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11041         s/return_if_fail/return_val_if_fail/g and add a return value.
11042
11043 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11044
11045         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11046         merge slipup.
11047
11048         * gdk/gdkinput.h: Fix missing line from merge.
11049
11050 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11051
11052         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11053         instead of gdkprivate.h.
11054
11055 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11056
11057         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11058         parent class to correctly be GtkDialogClass.
11059
11060 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11061
11062         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11063         toplevel windows and their immediate children by their parents,
11064         since the size of toplevel windows is out of our immediate
11065         control and we don't get any real benefit from trying to track
11066         this size for clipping.
11067
11068         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11069         for input_only windows.
11070
11071         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11072         to fix some hacks and make sure that we don't try to set the
11073         background of input only windows.
11074
11075 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11076
11077         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11078         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11079         stuff that we've traditionally exposed.
11080
11081         * gdk/**.c: Use gdkinternals.h where appropriate.
11082
11083         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11084         not include gdkprivate-x11.h, move all stuff of conceivable public
11085         interest into gdkx.h; keep all really private stuff in
11086         uninstalled header gdkprivate-x11.h.
11087
11088         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11089         image->image_put on windows through a new function _gdk_window_draw_image()
11090         to allow us to do backing store for images. (Sort of ugly)
11091
11092         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11093         contexts locally so that we can offset them properly when drawing 
11094         onto backing pixmaps.
11095
11096         * gdk/gdkinput.h: Reindented
11097
11098         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11099         pixmap or color for the window, so we can properly initialize
11100         our double-buffer pixmaps, and also so that we temporarily set
11101         a background of None while scrolling.
11102
11103         * gdk/gdkregion.h: Revise region boolean operators to have an
11104         interface that is actually convenient - switch from creating new
11105         regions on every op, to "methods" that modify existing regions
11106         (A = A OP B). 3 argument forms which allow dest == src, would also
11107         be possible, but the current interfaces seem to map nicely
11108         onto what needs to be done. (There is quite a lot of region
11109         code in GDK now.)
11110
11111         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11112         operator.
11113
11114         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11115         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11116         to 32 bit coordinates, modify it to be mostly GTK+ style
11117         and to have interfaces that match gdkregion.h.
11118
11119         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11120         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11121         create a backing pixmap and redirect all drawing to
11122         that backing pixmap until a matching gdk_window_end_paint().
11123
11124         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11125         Create a special drawable class for GtkWindow's that 
11126         redirects the drawing to the backing pixmap as necessary
11127         and then calls the real operations in _gdk_windowing_window_class.
11128
11129         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11130         Store invalid region for each window. Generate expose events for invalid
11131         region in an idle. This replaces both the expose compression
11132         and the redrawing queuing in GTK+. It is both more efficient and
11133         simpler than either one individually and far more so then the
11134         combination.
11135
11136         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11137         Emulate 32 bit coordinates for windows with 16 bit coordinates
11138         by offsetting drawing, guffaw scrolling techniques and
11139         mapping/unmapping child windows as necessary.
11140
11141         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11142         where, when invalid regions are processed, the region is stored,
11143         and if expose events come in that are detectably duplicate
11144         the processed exposes (by comparison of event serial numbers),
11145         the stored region is subtracted out of those exposes.
11146
11147         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11148         regions newly exposed when scrolling or resizing windows.
11149         This, combined with forcing processesing of queued invalidated
11150         regions, gives nice flicker-free scrolling.
11151
11152         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11153         invalidated regions after every scroll.
11154
11155         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11156         emulation in GDK. Its, for all practical purposes just a
11157         GtkViewport/GtkFixed hybrid now.
11158
11159         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11160         (16-bit) structures as necessary instead of just casting.
11161
11162         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11163         in terms of the structures from gdkregion-generic.c, using appropriate
11164         offsets from GDK to X11 coordinates. Cache clip mask and
11165         origin and ts origin locally and only flush to the server
11166         when drawing, to avoid constantly setting and resetting these
11167         values when offsetting GC's for scrolling and backing pixmaps.
11168
11169         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11170
11171         * gtk/gtkcontainer.c: Call process_all_updates at end
11172         of resizing to reduce flicker. (Avoids having redraw
11173         lag arbitrarily behind resize under some circumstances)
11174
11175         * gtk/gtkentry.c: Remove old backing store code, and simply take
11176         advantage of the new backing store capabilities of GDK.
11177
11178         * gtk/gtkmain.c: Simple implementation of widget backing
11179         store - simply push a paint while handling each expose.
11180         (Should really be configurable widget for widget.)
11181         
11182         * gtk/gtkwidget.c: Remove all the old complicated redraw
11183         code, and simply invalidate the GDK windows from
11184         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11185         debugged complexity ... gone to the winds.)
11186
11187         Remove all the code for suppressing expose events while
11188         resizes are pending; this isn't needed since the invalid
11189         areas won't be processed until after the resizes are
11190         processed, since they are in a lower priority idle.
11191
11192 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11193
11194         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11195         and height of dest rectangle for non-intersecting rectangles.
11196
11197 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11198
11199         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11200         for GdkRectangle.
11201
11202 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11203
11204         * gdk/gdk{events,image,private,types,window}.h
11205          gdk/x11/gdkinputprivate.h: Change all coordinates
11206          from int16 to int. Also, Change width and height from
11207          unsigned to signed to avoid all the stupid C 
11208          signedness bugs.
11209
11210 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11211
11212         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11213         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11214         Add some more detailed checking.
11215
11216         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11217         New function to retrieve the depth of a drawable.
11218
11219         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11220         field, reorder fields to save memory. 
11221
11222 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11223
11224         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11225         of the background image instead of scaling the background down to
11226         a line.
11227
11228         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11229         which temporarily set slider to wrong size.
11230
11231         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11232         queue_clear().
11233
11234 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11235
11236 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11237
11238         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11239
11240 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11241
11242         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11243         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11244
11245         * gdk/win32/gdkfont-win32.c
11246         * gdk/win32/gdkproperty-win32.c
11247         * gdk/win32/gdkselection-win32.c
11248         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11249         now declared such.
11250
11251 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11252
11253         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11254
11255 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11256
11257         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11258         is called without trapping X errors.
11259
11260 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11261
11262         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11263         way into the fontset lists.
11264
11265 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11266
11267         * gtk/gtkthemes.h: add extern "C" scope.
11268
11269 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11270
11271         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11272         to make appends to the list constant. (gtk-guy-990901-0.patch)
11273
11274 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11275
11276         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11277         for the typename hash table.
11278
11279 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11280
11281         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11282         to make sure we never divide by zero. 
11283         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11284
11285 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11286
11287         * gtk/gtkfontsel.c: Apply patch from
11288         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11289         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11290
11291         Also, some cleanups in atom handling.
11292
11293 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11294
11295         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11296         not GtkWidget.
11297
11298 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11299
11300         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11301         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11302         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11303         more guint wrap-around bugs before going to bed.
11304
11305 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11306
11307         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11308         guint wrap arounds in allocation.width.
11309
11310         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11311         process untill we fit the allocation given.
11312
11313 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11314
11315         * gtk/gtkwidget.c:
11316         (gtk_widget_unrealize): guard widget access with ref/unref
11317         around signal emission.
11318         (gtk_widget_hide): same here, but also check its destroyed
11319         state before queueing a resize.
11320
11321 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11322
11323         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11324         of gtk_default_insensitive_bg as insensitive base color.
11325
11326         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11327         to the widget's state.
11328         (gtk_text_realize): same here.
11329         (gtk_text_state_changed): same here.
11330         (draw_bg_rect): compare background color against base[] from
11331         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11332
11333 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11334
11335         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11336         grabs are active, unless a delete event is send to the toplevel
11337         of the currently grab holding widget.
11338
11339 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11340
11341         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11342         debugging g_print's.
11343
11344 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11345
11346         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11347         ever make the scrolled-window requisition ever depend on the 
11348         visibility state of the scrollbars for the AUTOMATIC policy. 
11349         This breaks the GTK+ requisition model, and causes loops.
11350
11351 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11352
11353         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11354         the default font to avoid problems with XFree86-4.0 where the
11355         default charset is iso10646-1, not iso8859-1.
11356
11357 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11358
11359         * acinclude.m4
11360         * config.guess
11361         * config.sub
11362         * ltconfig
11363         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11364
11365         * gtk/Makefile.am: minor cosmetic consistency tweak
11366
11367 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11368
11369         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11370         the activate_time to 0, so that we handle a quick
11371         press/release press/release properly and don't suppress
11372         the second release. (Red Hat bug #7545)
11373
11374 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11375
11376         * gtk/gtkctree.c (row_delete):
11377         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11378         bugs with destruction notifier, *always* update internal
11379         structures *before* calling user code.
11380
11381 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11382
11383         A few more fixes for bug #5487, #2051, #2677.
11384         * gtk/gtkclist.c : 
11385         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11386         not GDK_BUTTON_PRESS.
11387         (resync_selection): resync only if selection_mode is
11388         GTK_SELECTION_EXTENDED
11389         * gtk/gtkctree.c (resync_selection): same here
11390
11391 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11392
11393         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11394         gdk_drag_get_selection() and gtk_menu_detach().
11395
11396         [ From Jeroen Ruigrok/Asmodai ]
11397
11398 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11399
11400         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11401         page->tab_label can be NULL.
11402
11403 2000-01-25  Havoc Pennington  <hp@pobox.com>
11404         
11405         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11406         arg is boolean
11407
11408         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11409
11410         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11411
11412         * gdk/gdkproperty.c (gdk_property_get): return boolean
11413
11414         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11415
11416         * gdk/gdkim.c (gdk_im_ready): return boolean
11417
11418         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11419
11420         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11421         glib clash, should fix glib)
11422
11423         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11424         (gdk_get_show_events): return gboolean, and canonicalize 
11425         to TRUE/FALSE
11426
11427         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11428         colormap is private
11429         (gdk_colors_alloc): gboolean whether to be contiguous
11430         (gdk_color_equal): return gboolean since we are a predicate
11431         and not a qsort() (this looks semi-wrong due to glib breakage,
11432         IMO glib should be fixed)
11433         
11434         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11435         (gdk_get_use_xshm): return gboolean
11436         (gdk_pointer_is_grabbed): return gboolean
11437
11438         * gdk/gdk.h: Change prototypes to match all the above changes,
11439         and re-run egtk-format-protos as required.
11440
11441 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11442
11443         * gtk/gtkctree.c (resync_selection): 
11444         * gtk/gtkclist.c (resync_selection):
11445
11446         Return immediately if clist->drag_pos < 0. This is a workaround
11447         for the corrupt state that the clist gets into when a
11448         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11449
11450         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11451         
11452         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11453         variable from recent commit.
11454
11455 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11456
11457         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11458
11459 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11460
11461         * gtk/Makefile.am: prefix all autogenerated source that get build in
11462         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11463         in builddir. since we subsequently cd into srcdir for autogeneration,
11464         the paths have to be stripped from the target file names, thusly we
11465         use $(@F) as target names now.
11466         put a comment about configure.in's --disable-rebuilds option,
11467         which can be used for non-writable source directories, for development
11468         setups though, srcdir has to be *writable*.
11469
11470 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11471
11472         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11473           Finish the job of allowing event to be NULL.
11474           (Fixes bug #4283, reported by Chris Blizzard)
11475
11476         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11477           things so that the cursor appears on screen, properly
11478           take into account INNER_BORDER.
11479           (Fixes bug #4754, reported by Antonio Campos)
11480
11481 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11482
11483         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11484           show the tab_label unless it itself is visible.
11485
11486           gtk/gtknotebook.c (gtk_notebook_size_request):
11487           Do a better job of making sure that the visibility
11488           of the tab label corresponds to whether it should
11489           be mapped or not.
11490
11491 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11492
11493         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11494           Use the requisition, not the allocation, since the
11495           allocation has not necessarily been computed yet.
11496           (Pointed out by Eugene Osintsev)
11497
11498 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11499
11500         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11501           style/base[GTK_STATE_INSENSITIVE] both to
11502           gtk_default_insensitive_bg!
11503           (Bug #2187, reported by Jonathan Blandford)
11504
11505         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11506           Add Alt_L, Alt_R to list of invalid accelerators.
11507           (Bug #3736, reported by Vlad Harchev)
11508
11509 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11510
11511         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11512         bugs which occured after an attempt to open 
11513         invalid home directory left cmpl_state->reference_dir == NULL.
11514
11515          - completion on files in home directory didn't work
11516          - completion on an empty string caused  segfault
11517
11518          (Bug #3678, reported by Steve Ratcliffe)
11519
11520         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11521         cut and paste error that was causing scales to
11522         be incorrectly positioned.
11523         (Bug #2956,
11524          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11525
11526 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11527
11528         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11529         when checking for dcgettext, if we've found we needed
11530         it for dgettext.
11531 +
11532 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11533
11534         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11535         queue_clear on NO_WINDOW widgets during a reparent,
11536         since at that point the window and widget heirarchies
11537         are out of sync. This stops crashing in some cases
11538         (the scrolled window reparent test, for instance), and
11539         _probably_ won't cause drawing errors.
11540
11541         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11542         test do what it was supposed to do and be robust against
11543         window closings, etc. (Bug #2443)
11544
11545 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11546
11547         * gtk/gtkentry.c: Fix return values on mouse events.
11548         (Bug #2686, Sky <seb_sky@yahoo.com>)
11549
11550         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11551         (pointed out by George Lebl)
11552
11553         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11554         (From Ettore Perazzoli  <ettore@helixcode.com>)
11555  
11556 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11557
11558         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11559         clicks between rows or outside calender area correctly.
11560         (Patch from Damon Chaplin)
11561
11562         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11563         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11564           Call destroy function when overwriting existing data. 
11565           (Pointed out by Damon Chaplin)
11566
11567 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11568
11569         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11570           which was causing problems on various systems with Xmu.
11571           This hasn't been needed for a very long time.
11572           (Fixes #1185 3167)
11573
11574 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11575
11576         * gdk/gdki18n.h: Include <ctype.h> when defining
11577           gdk_isw* in terms of is* as a fallback.
11578           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11579
11580 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11581
11582         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11583           realize the widget when it is size allocated!
11584           (old, old bug)
11585
11586         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11587           Removed unused call to gdk_window_get_size() that
11588           showed up when the above was fixed.
11589
11590 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11591
11592         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11593           fix up widget->window when the widget is a
11594           NO_WINDOW container widget.
11595
11596 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11597
11598         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11599           to account for the fact that feof() does _not_ 
11600           return TRUE on errors, and thus avoid infinite loops
11601           when trying to use gdk_pixmap_create_from_xpm()
11602           on unreadable values.
11603
11604 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11605
11606         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11607
11608 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11609
11610         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11611           gdk_gc_set_dashes to take gint8 instead of gchar to
11612           make it clearer that it is _not_ a NULL terminated string.
11613
11614         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11615           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11616           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11617           arguments.
11618
11619 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11620
11621         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11622         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11623         background size relative to our allocation, guard against small
11624         allocations, we may have not yet been size allocated.
11625
11626 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11627
11628         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11629         not just version == 3. We implement all 3 + most of 4 - 
11630         (we don't support matching text/plain;charset=iso-8859-1
11631         to a dest that expects text/plain). We'll still advertise
11632         3 to be safe, but any client implementing version >= 3
11633         must interoperate with 3.
11634         
11635 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11636
11637         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11638         background and gc members, add a warning in gtk_tooltips_set_color()
11639         indicating that this function is deprecated.
11640
11641 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11642
11643         * docs/gtkfaq.sgml: FAQ Update:
11644           - Minor cleanups (Emmanuel, me)
11645           - New questions:
11646                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11647                 How can I retrieve the text from a GtkMenuItem? (timj)
11648                 How do I validate/limit/filter the input to a GtkEntry? (me)
11649                 Memory does not seem to be released when I free the list
11650                         nodes I've allocated (timj)
11651
11652 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11653
11654         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11655         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11656         for which it is no use to call GetLastError onWin9x.
11657         (gdk_other_api_failed) New function, for general error
11658         reporting without calling GetLastError.
11659         (gdk_win32_api_failed) OTOH, this function always calls
11660         GetLastError. (gdk_win32_last_error_string) Remove this function,
11661         GLib has the equivalent now.
11662
11663         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11664         call them with function name, file name and line number in the
11665         arguments.
11666
11667         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11668         functions.
11669         
11670         * gtk/gtk.def: Add some missing entry points.
11671
11672         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11673         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11674         
11675         Fixes by Hans Breuer:
11676
11677         * gdk/makefile.msc: Update for debugging.
11678
11679         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11680         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11681         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11682         in the dash_list.
11683
11684         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11685         the x11 backend.
11686
11687         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11688
11689         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11690
11691 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11692
11693         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
11694         just pixel value of background colour.
11695
11696         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
11697         containing code snippet previously duplicated in a couple of
11698         places.
11699         
11700         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
11701         gdk_colormap_color.
11702
11703         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
11704         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
11705         events for autorepeated Shift, Control and Alt keys. Use
11706         gdk_colormap_color.
11707
11708         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
11709         pointer is inside the window the cursor of which we are setting,
11710         call SetCursor immediately.
11711
11712         * gdk/win32/makefile.cygwin
11713         * gtk/makefile.cygwin: If we don't have the build number stamp
11714         file, use zero.
11715
11716         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11717         gtk_paned_set_gutter_size as empty.
11718
11719         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11720         
11721 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11722
11723         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11724           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11725           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11726           docs/gtk_tut.sgml docs/gtk.texi TODO:
11727
11728           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11729
11730 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11731
11732         * gtk/gtkcalendar.c: Implement num_marked_dates,
11733           and don't emit mutiple day_selected signals on
11734           month_prev.
11735
11736 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11737
11738         * docs/make-todo (lineno): let title and logo be configurable so
11739         that GNOME can use this script too.
11740
11741         * TODO.xml: added logourl and a title
11742
11743 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11744
11745         * TODO.xml: Added some UI items, and an explanatory
11746         comment at the top of the file.
11747
11748 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11749
11750         * TODO.xml: some updates, added abunch of new entries.
11751         a note for those fiddeling with this file, when done
11752         with it, invoke:
11753         $ ./docs/make-todo TODO.xml >/dev/null
11754         and correct output errors before comitting changes.
11755
11756 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11757
11758         * TODO.xml: Added XML-structured TODO file.
11759         * docs/make-todo: python script to turn TODO.xml into
11760           pretty XML output. 
11761
11762 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11763
11764         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11765         the function to let it draw the seven dots, instead of the old,
11766         much maligned, method.
11767         (draw_dot): New function to draw a dot.
11768
11769         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11770         to draw the handle inside the border width as opposed to outside.
11771         Use paint function instead of gdk_draw_point.
11772
11773         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11774         to draw the handle inside the border width as opposed to outside.
11775         Use paint function instead of gdk_draw_point.
11776
11777         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11778         Change indenting to be more GTK like.
11779
11780 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11781
11782         * docs/gtk_tut.sgml: New section on GtkCalendar
11783         * examples/calendar: Update example code
11784
11785 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11786
11787         * docs/gtkfaq.sgml: FAQ Update
11788
11789 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11790
11791         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11792         to prevent the scroll event to be propagated upwards.
11793
11794 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11795
11796         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11797         OwnerGrabButtonMask from button entries for
11798         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11799
11800         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11801         to the event mask (which will result in button/press release
11802         being added to the event mask on Unix) so scrolling works
11803         for layouts in scroll windows.
11804
11805         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11806
11807         Patch from Anders Carlsson  <andersca@gnu.org> to add
11808         a scroll event.
11809
11810         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11811         scrolling to the "Test Scrolling" part of testgtk.
11812  
11813         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11814  
11815         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11816         it against GDK_SCROLL.
11817  
11818         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11819         way of mouse wheel scrolling.
11820  
11821         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11822  
11823         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11824  
11825         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11826  
11827         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11828         gdk_event_mask_table.
11829  
11830         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11831         GdkEventScroll handler.
11832  
11833         * gdk/gdkevents.h: Added GdkEventScroll structure.
11834  
11835 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11836
11837         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11838         and Anders Carlsson to change the Paned widgets so that they
11839         can be dragged from anywhere along the length. Also change
11840         the way that this is drawn to make this apparent.
11841
11842         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11843         from George Lebl to check that option_menu->menu is present
11844         before getting history.
11845
11846 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11847
11848         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11849         before the assertion for non-NULL segment list.
11850
11851         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11852         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11853         machine, but it might be display driver dependent. Sigh, so make
11854         sure the stipple is that size. Does Windows suck or what?
11855
11856         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11857         places.
11858
11859 2000-02-13  Havoc Pennington  <hp@pobox.com>
11860
11861         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11862         refcount to 1
11863         (gdk_cursor_new): init refcount to 1
11864
11865         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11866
11867 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11868
11869         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11870         so that we don't have to do unnecessary settings to the HDC.
11871
11872         * gdk/win32/gdkdrawable-win32.c
11873         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11874         gdk_gc_predraw.
11875
11876         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11877         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11878         GDI paths, call WidenPath to get the outline of the stroken path,
11879         and then fill the outline (with the brush that was built from the
11880         stipple).
11881
11882         * gdk/win32/gdkgc-win32.c: Factor out common code from
11883         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11884         gdk_win32_gc_values_to_win32values. Use correct colour for
11885         SetBkColor() (Until now the code actually used a random colour in
11886         the call to SetBkColor()... but that didn't show up as not many
11887         GDI APIs use the background colour. Pattern (opaque stippled)
11888         brushes do.)
11889
11890         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
11891         gdk_win32_api_failed): New functions for error logging.
11892
11893         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
11894         WIN32_API_FAILED to call them, passing function or file name and
11895         line number.
11896
11897         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
11898
11899         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
11900         GdkColor for foreground and background in GdkGCWin32Data.
11901
11902         * gdk/makefile.cygwin: Link in the resource object separately.
11903
11904         * gdk/win32/rc/gdk.rc
11905         * gtk/gtk.rc (New file)
11906         * gdk/win32/makefile.cygwin
11907         * gtk/makefile.cygwin: Update build number in DLLs automatically,
11908         as in GLib.
11909
11910 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
11911
11912         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
11913         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
11914         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
11915         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
11916         parameters given and cursor->ref_count. coding style fixups.
11917
11918         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11919         not GtkWidget.
11920         
11921         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
11922         fix up widget macros and add _GET_CLASS() variant.
11923         
11924         * gtk/*.c: some GtkType fixups.
11925
11926 2000-02-09  Tor Lillqvist  <tml@iki.fi>
11927
11928         * gdk/win32/gdkproperty-win32.c
11929         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
11930         were reversed.
11931
11932 2000-02-04  Tor Lillqvist  <tml@iki.fi>
11933
11934         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
11935         g_filename_to_utf8 to convert the font names Windows gives us from
11936         whatever is the default codepage to UTF-8.
11937         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
11938         in the other direction.
11939
11940         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
11941         error in debugging output.
11942
11943 2000-02-02  Tor Lillqvist  <tml@iki.fi>
11944
11945         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
11946         and height parameters to gdk_window_clear_area(). Not minus one.
11947
11948 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
11949
11950         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
11951         checks if the widget passed to gtk_drag_get_data() was not the
11952         dest widget.
11953
11954 2000-02-01  Tor Lillqvist  <tml@iki.fi>
11955
11956         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
11957         g_filename_from_utf8 functions (which were added a moment ago to
11958         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
11959         size buffers.
11960
11961         gtk_file_selection_get_filename returns the filename in the C
11962         runtime encoding. It calls g_filename_from_utf8, but copies the
11963         returned string to a static buffer, which is returned. I think
11964         this is better than returning the result from g_filename_from_utf8
11965         directly, which would mean all apps that use it would have to free
11966         the return value. Or should this function care about this issue at
11967         all? Maybe a new function with clearly defined semantics.
11968
11969         * gtk/gtkfilesel.h: Add comment about
11970         gtk_file_selection_get_filename returning the filename in the C
11971         runtime's encoding.
11972
11973         * README.win32
11974         * gdk/gdk.def
11975         * gdk/makefile.{cygwin,msc}
11976         * gtk/gtk.def: Updates.
11977
11978         * gdk/gdkcursor-win32.c: Initialise refcount.
11979
11980 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
11981
11982         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
11983
11984 2000-01-30  Havoc Pennington  <hp@pobox.com>
11985
11986         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
11987         destroy
11988
11989         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
11990
11991         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
11992         implemented in platform-specific code
11993
11994         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
11995
11996         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
11997         underscore in front
11998
11999         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12000         put an underscore in front
12001
12002         * gdk/gdkcursor.c: new file, implements
12003         gdk_cursor_ref/gdk_cursor_unref
12004
12005         * gdk/gdkcursor.h: Refcount GdkCursor
12006
12007         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12008
12009 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12010
12011         * gdk/gdkwindow.h
12012         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12013
12014 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12015
12016         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12017         structures to properly inherit from GtkWidget not GtkBin.
12018
12019 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12020
12021         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12022         (bug #5178 - Peter Wainright)
12023         
12024         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12025         so that it will be installed.
12026         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12027
12028 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12029
12030         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12031         for the GtkStyleClass vtable const.
12032
12033         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12034         take a const string argument like GtkTranslateFunc. This will
12035         require changes in use code.
12036
12037 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12038
12039         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12040         semantics (to mimic the X11 backend, which just calls XClearArea)
12041         is to check for zero width (and height), and in that case use the
12042         window's width minus x (height minus y). This fixes for instance
12043         some redraw problems with gtkclist, which were easily noticeable
12044         in the gtk file selection widget.
12045
12046         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12047         windows.
12048
12049 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12050
12051         * configure.in
12052         * gdk/Makefile.am
12053         * gdk/x11/Makefile.am
12054         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12055         (bug #5177).
12056         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12057         out later.
12058
12059 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12060
12061         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12062         WM_MOVE for iconified or invisible windows. This fixes various
12063         problems when minimising windows. Thanks to Bernd Herd.
12064
12065 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12066
12067         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12068         backend's draw_lines method, not draw_points.
12069
12070 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12071
12072         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12073         before Owen's reorganisation: Don't have queued_events and
12074         queued_tail statics in this file, but use gdk_queued_events and
12075         gdk_queued_tail. This makes exposure event compression work again.
12076
12077         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12078         seem to be needed?
12079
12080 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12081
12082         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12083         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12084         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12085         doesn't do anything.
12086
12087         * gdk/gdk.def: Add gdk_xid_table_insert.
12088
12089         * gdk/win32/gdkprivate-win32.h
12090         * gdk/win32/gdkevents-win32.c
12091         * gdk/win32/gdkinput-win32.c
12092         
12093         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12094         extension_events field in the GdkWindowWin32Data struct. Use only
12095         the extension_events field in GdkWindowPrivate. Previously one was
12096         set, and the other one tested, which broke tablet
12097         functionality. Thanks to Keishi Suenaga for pointing this out.
12098
12099 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12100
12101         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12102         When handling a single character (text length == 1), don't handle
12103         it as if it was UTF-8.
12104
12105 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12106
12107         * Makefile.am: Distribute README.win32.
12108         
12109         * gdk/Makefile.am
12110         * gdk/win32/Makefile.am: Distribute Win32 files.
12111
12112         * gdk/makefile.msc: New file.
12113
12114         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12115         after label).
12116
12117         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12118         gdk_error_code as GDKVAR, as they are referred outside GDK.
12119
12120         * gdk/win32/makefile.msc: Update.
12121
12122         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12123         tweaks. Check only if at least one of those Unicode subrange bits
12124         we care for is set. If no code page bits are set, guess (wildly)
12125         based on the charset.
12126
12127         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12128
12129         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12130         non-NULL.
12131
12132         * gtk/gtkdnd.c
12133         * gtk/gtklayout.c
12134         * gtk/gtkplug.c
12135         * gtk/gtkselection.c
12136         * gtk/gtksocket.c
12137         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12138         appropriate. There must be a cleaner way to handle this?
12139
12140         * gtk/gtkrc.c: Must include windows.h on Win32.
12141
12142         * gtk/testgtk.c: No need to include gdkx.h.
12143
12144         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12145
12146 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12147
12148         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12149         the rbearing is set to the same as the width, but this should be
12150         fixed.
12151
12152 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12153
12154         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12155         function. If Windows doesn't tell us what Unicode subranges a font
12156         covers, guesstimate based on the codepages it covers. This will
12157         hopefully help those Windows versions or fonts that don't give us
12158         any useful Unicode subrange information with GetTextCharsetInfo.
12159         Call this function in gdk_font_load_internal.
12160
12161         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12162         minor changes.
12163
12164 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12165
12166         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12167         New function, long needed.
12168
12169 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12170
12171         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12172         only_if_exists argument of gdk_atom_intern to
12173         bool.
12174
12175 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12176
12177         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12178         Fix two copy&paste errors.
12179
12180         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12181         win32 has changed.
12182
12183         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12184         GdkWin32SingleFont struct.
12185
12186         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12187         subranges of loaded fonts. Clear font signature first, in case
12188         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12189         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12190
12191         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12192         Unoffset clip region.
12193
12194 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12195
12196         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12197         event->any.window before calling filter functions.
12198
12199 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12200
12201         * gtk/gtkgamma.h: Adapt cast macros to standard.
12202
12203 [ Merges from 1.2 ]
12204
12205 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12208         If translation does not include a '/', use entire
12209         translation instead of crashing.
12210
12211 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12212
12213         * docs/gtk_tut.sgml:
12214         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12215
12216 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12217
12218         * gtk/gtkselection.c (gtk_target_list_remove): Use
12219         g_list_remove_link, not g_list_remove.
12220
12221         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12222         
12223 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12224
12225         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12226         statement upon unselection (how the heck did that slip in?).
12227
12228 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12229
12230         * gtk/gtktext.c (gtk_text_freeze): 
12231         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12232         in frozen state (and aparently crashes). patch provided by Anders
12233         Melchiorsen <and@kampsax.dtu.dk>.
12234
12235 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12236
12237         * fix insensitive default/focus widget activation,
12238         reported by Matt Goodall <mgg@isotek.co.uk>.
12239
12240         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12241         (gtk_window_activate_default):
12242         (gtk_window_activate_focus):
12243         return handled=FALSE for actiavtion of insensitive default
12244         widgets. return handled=TRUE for activation of insensitive
12245         focus widgets. don't activate in either case.
12246
12247 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12248
12249         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12250         and $glib_cflags to match library order and in the
12251         theory that an old version of GLib is more likely to
12252         be in the include directory for X then vice-versa.
12253         (Bug #2776)
12254
12255 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12256
12257         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12258         to determine the locale for fontsets, not LC_MESSAGES;
12259         the user may want English messages with a handling
12260         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12261         will still be broken) (Bug #2891)
12262
12263 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12264
12265         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12266
12267 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12268
12269         * gtk/gtkrc.ko: Changed the Korean default fontset.
12270
12271 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12272
12273         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12274         where when scrolling to the left or top double exposes
12275         were done, causing major slowdowns.
12276
12277 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12278
12279         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12280         names to lowercase and alphanumeric, before looking
12281         them up.
12282
12283         * gtk/Makefile.am: Install codeset variant gtkrc files
12284         with normalized names.
12285
12286 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12287
12288         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12289         popup menus when the menu is already visible, but its parent
12290         is still hidden, (happens after tornoff window got hidden).
12291
12292 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12293
12294         * gtk/Makefile.am (install-data-local): Fix
12295         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12296         deleted, causing error messages on install.
12297
12298 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12299
12300         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12301         the handle as well, since we now sometimes ignore
12302         exposes on the handle while resizing.
12303
12304 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12305
12306         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12307         extra g_free introduced in one of the last one or two 
12308         commits.
12309
12310 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12311
12312         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12313         consistent, put each style that a gtkrc.* file creates
12314         in a unique namespace, remove old files before installing.
12315
12316 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12317
12318         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12319         gtk_rc_init is called multiple times. (Yes, people who
12320         do that have bugs in their code.)
12321
12322 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12323
12324         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12325         Remove it since it's generated by the Makefile anyway
12326
12327 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12328
12329         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12330         device->info.axes for core pointer.
12331
12332 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12333
12334         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12335         idle_id, to deal with obsolete, broken C libraries.
12336
12337 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12338
12339         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12340         allocation->x/y twice!
12341
12342         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12343         consistent with gtk_vscale_pos_trough().
12344
12345 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12346
12347         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12348         be queueing a resize on a toplevel container between
12349         the time we show it and when we map it. So, we need
12350         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12351         use GTK_WIDGET_DRAWABLE() for child windows.
12352
12353 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12354
12355         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12356         (fixes bug #2144)
12357
12358 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12359
12360         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12361         container DRAWABLE (instead of VISIBLE), so we don't queue
12362         resizes on non-toplevel containers.
12363
12364 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12365
12366         * gtk/gtkselection.[ch]: Make the data argument
12367         const guchar *.
12368
12369 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12370
12371         * gtk/gtkwindow.c: Try to behave sensibly if 
12372         the focus widget is the window itself. (Should
12373         we allow this at all?)
12374
12375 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12376
12377         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12378         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12379         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12380         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12381         in prototypes and implementations consistent (Tomas Ogren).
12382
12383         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12384         before the widget is unparented (reported by damon).
12385
12386         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12387         since we provide unsigned data anyways.
12388
12389 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12390
12391         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12392         the call to gtk_tooltips_layout_text() until later.
12393
12394         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12395         Call gtk_widget_ensure_style() before using the style.
12396
12397 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12398
12399         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12400         for old widgets that don't propagate draws to all
12401         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12402
12403 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12404
12405         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12406         for a redraw but just the widget that requested the resize.
12407
12408 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12409
12410         * gtk/gtkcontainer.c: added new widget level method
12411         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12412         reallocate_redraws : 1 to reflect the setting, exported this through
12413         the argument system as a boolean ::reallocate_redraws.
12414
12415         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12416         on the widget because the allocation changes, do so as well for
12417         widget->parent if the parent has reallocate_redraws set to TRUE.
12418         with that containers requesting reallocation redraws get automatically
12419         redrawn if their children changed allocation (this unfortunately
12420         affects also other children that didn't change allocation, but we
12421         cannot work around that before 1.3).
12422
12423 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12424
12425         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12426         _and_ height are >0 (not _or_).
12427
12428         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12429         instead of gtk_container_queue_resize(), which is a core gtk internal
12430         function (must have been on crack when i queued that).
12431
12432         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12433         we can check more reliably if we want to discard expose events.
12434         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12435         flag.
12436         
12437         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12438         we simply trust these events. for deciding whether to discard exposes,
12439         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12440         
12441 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12442
12443         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12444         queues of areas that are completely off screen.
12445
12446         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12447         logic for handleboxes.
12448
12449         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12450         check on width/height.
12451
12452 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12453
12454         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12455         we are fine with using $@ the way we do (if we actually encounter
12456         brokeness with $@ in VPATH builds because of additional path prefixes,
12457         we need to use $(@F) actually).
12458
12459 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12460
12461         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12462         short lived bugs, that would allow language bindings to do surgeries
12463         to our guts.
12464
12465 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12466
12467         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12468         where comparison was being done against an uninitialized
12469         value causing intermittant results depending on
12470         compiler flags. Also make it clearer that we aren't
12471         ever initializing the child as 0x0 (though this will
12472         be caught in gtk_widget_size_allocate())
12473
12474 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12475
12476         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12477         gtk_window_unset_transient_for() call after we do checks
12478         involving the old transient parent.
12479         [ From Lance Capser <lmc@cyberhighway.net> ]
12480
12481 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12482
12483         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12484         an empty file.
12485
12486 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12487
12488         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12489         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12490
12491 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12492
12493         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12494         `$@' is valid only in the build dir, not after we've done 
12495         `cd $srcdir'.  Also use `test -f' instead of less portable
12496         `test -e'.
12497
12498 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12499
12500         * gtk/gtktext.c (correct_cache_insert): Rewrite
12501          for simplicity, and hopefully correctness.
12502          (Fixes bug #1322, which was a segfault when
12503           on some insertions with the properties around
12504           the insertion set up just wrong.)
12505
12506         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12507          a "changed" signal, clamp the new value to the adjustment
12508          bounds to avoid segfaulting if someone tries to change
12509          the adjustment to a bogus value. (Bug #1795)
12510
12511 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12512
12513         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12514         for children, for toplevel windows handle them
12515         like delete_event.
12516
12517         * gtk/gtkplug.c: Add an unrealize handler so that
12518         we unref plug->socket_window when we are done
12519         with it.
12520
12521 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12522
12523         * gtk/gtktext.c (clear_area): Fix stupid signedness
12524          problem that was causing background to sometimes
12525          be misaligned.
12526
12527 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12528
12529         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12530         
12531         * gtk/gtkmenu.c (gtk_menu_position): Make
12532          sure we never position menus with negative x, y,
12533          since gtk_widget_set_uposition() can't handle that.
12534
12535         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12536          Modify the positioning code a bit so that we always
12537          put the top-left corner onscreen. (This is for
12538          UI reasons, gtk_menu_position() now takes care of
12539          gtk_widet_set_uposition() brokeness.)
12540
12541 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12542
12543         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12544
12545 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12546
12547         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12548           RC style that is passed in. The lack of the ref
12549           before was a bug. If people worked around this
12550           bug, this will introduce a slight memory leak
12551           in their code. The code should typically look like:
12552
12553             rc_style = gtk_rc_style_new ();
12554             [...]
12555             gtk_widget_modify_style (widget, rc_style);
12556             gtk_rc_style_unref (rc_style);
12557
12558         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12559           the style if it was already set.
12560
12561         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12562           style if it was set before.
12563
12564 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12565
12566         * gtk/testgtk.c (main): Add a check to see if we
12567           are being run from the correct directory and
12568           to quit nicely if we are not.
12569
12570         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12571           static.
12572
12573 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12574
12575         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12576
12577         * gtk/gtkwindow.c:
12578         queue resizes unconditionally (gtk_widget_queue_resize will figure
12579         what to do if the window is not realized).
12580         (gtk_window_move_resize): only recenter the window
12581         for GTK_WIN_POS_CENTER_ALWAYS.
12582         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12583         the same way as GTK_WIN_POS_CENTER.
12584
12585 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12586
12587         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12588         with (!(info->last_flags & GDK_HINT_POS)) instead of
12589         (!info->last_flags & GDK_HINT_POS).
12590
12591         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12592         new_height unconditionally, because we use these values even if
12593         !default_size_changed && !hints_changed.
12594         comented the (default_size_changed || hints_changed) case with
12595         respect to resize rejects from the window manager.
12596
12597         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12598         in the zvt condition hack, since this includes the window hints, set
12599         the hints after the handling_resize case.
12600
12601         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12602         window is initially shown with to the geometry.
12603
12604 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12605
12606         * gtk/gtkwindow.c (gtk_window_move_resize):
12607         s/size_changed/default_size_changed/g so i know what's
12608         really going on (frying brain on smaller flame now).
12609
12610 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12611
12612         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12613         we have size_changed upon handling_resize. this is a gross
12614         workaround for the broken zvt widget and should be removed in
12615         1.3 again (search for FIXME).
12616         Owen provided an accurate comment for this:
12617
12618         /* We could be here for two reasons
12619          *  1) We coincidentally got a resize while handling
12620          *     another resize.
12621          *  2) Our computation of size_changed was completely
12622          *     screwed up, probably because one of our children
12623          *     is broken. It's probably a zvt widget.
12624          *
12625          * For 1), we could just go ahead and ask for the
12626          * new size right now, but doing that for 2)
12627          * might well be fighting the user (and can even
12628          * trigger a loop). Since we really don't want to
12629          * do that, we requeue a resize in hopes that
12630          * by the time it gets handled, the child has seen
12631          * the light and is willing to go along with the
12632          * new size. (this happens for the zvt widget, since
12633          * the size_allocate() above will have stored the
12634          * requisition corresponding to the new size in the
12635          * zvt widget)
12636          *
12637          * This doesn't buy us anything for 1), but it shouldn't
12638          * hurt us too badly, since it is what would have
12639          * happened if we had gotten the configure event before
12640          * the new size had been set.
12641          */
12642
12643 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12644
12645         * gtk/gtkrc.c: deal properly with the fact that RC
12646           style lists may include rc styles more than once.
12647
12648         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12649           unused static function.
12650
12651         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12652           stack of directories of RC files currently being
12653           parsed and implicitely add them to pixmap path.
12654           
12655           This fixes a bug where the directory would get
12656           appended then overwritten by pixmap_path declarations.
12657
12658           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12659
12660         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12661           theme's exit function. (Patch from Peter Wainwright,
12662           bug #1454)
12663
12664         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12665           Add a destroy() handler to take care of removing
12666           group for menu item. (Fixes bug #1197)
12667
12668         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12669           in warning message.
12670
12671 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12672
12673         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12674         roundtrip to figure window's width and height, since we know that
12675         anyways from widget->allocation.
12676
12677 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12678
12679         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12680           the hints after we request the new size.
12681
12682 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12683
12684         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12685           GTK_WIDGET_REALIZED() assertion - we can compute the
12686           hints before we are realized.
12687
12688         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12689           hint changing so that we have a value of hints_changed
12690           when we decide whether to constrain the window size.
12691
12692         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
12693
12694         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
12695         change back to G_MAXINT.
12696
12697 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
12698
12699         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
12700         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
12701         contain uncluttered values.
12702         (gtk_window_compute_hints): simply assert that window is realized
12703         and that geometry_info is valid, since we rely on this anyways.
12704         (gtk_window_constrain_size): major cleanups to the code.
12705         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
12706         for the base size, instead of the minimums. use 32767 as max width
12707         and height (like in gtkwindow.c) instead of G_MAXINT.
12708
12709 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
12710
12711         * cleaned up the GtkContainer.need_resize flag handling mess, we
12712         only need to force resize requests when we were prematurely
12713         realized, or our widget tree was modified when we were temporarily
12714         hidden. handling these cases directly upon showing the window (i.e.
12715         while the GdkWindow is still unmapped) avoids the need to wait for
12716         a configure event response and therefore makes the GUI more snappier
12717         and avoids blank windows during the roundtrip.
12718
12719         * gtk/gtkwidget.c:
12720         (gtk_widget_hide): 
12721         (gtk_widget_show): don't queue resizes on toplevels, they know how
12722         to deal with matters.
12723
12724         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12725         flag directly for not visible resize containers and spare us unecessary
12726         signal emissions.
12727
12728         * gtk/gtkwindow.c:
12729         (gtk_window_realize): if we need to enforce premature size allocation,
12730         queue a container resize so we are correctly resized later on.
12731         (gtk_window_init):
12732         (gtk_window_size_request):
12733         don't freak around with the ->need_resize flag,
12734         gtk_container_queue_resize() will care about that.
12735         (gtk_window_show):
12736         handle initial resizing issues here, we can handle matters better in
12737         this place, especially since we know that our GdkWindow is still
12738         unmapped.
12739         (gtk_window_move_resize):
12740         don't care about ->need_resize at all.
12741         handle size changes properly that occoured while we waited for a
12742         configure event.
12743
12744 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12745
12746         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12747         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12748         Move the hint setting code from gtk_widget_set_uposition
12749         to here; set the hints so that we respect any previously
12750         set geometry hints.
12751
12752         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12753         change the window hints here or move the window here,
12754         let that happen in gtk_window_move_resize().
12755
12756 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12757
12758         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12759         to already queued resizes (and therefore redraws) on a widget, check
12760         its anchestry as well.
12761
12762         * gtk/gtkcontainer.c:
12763         (gtk_container_queue_resize): clear resize widgets for resize
12764         containers before aborting prematurely. this is especially important
12765         for toplevels which may need imemdiate processing or their resize
12766         handler to be queued.
12767         (gtk_container_dequeue_resize_handler): added new internal function for
12768         gtkwindow.c.
12769
12770         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12771         configure event, take possible changes in window position into account
12772         as well.
12773         if we request a new window size, queue up a resize handler that will
12774         last until the configure event response arrives.
12775         combined the ->need_resize case (initial show) with the general size
12776         (hints) changed case and added even more comments.
12777         if !auto_shrink, only revert to the old allocation if the new size
12778         is smaller than the current allocation.
12779
12780 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12781
12782         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12783                            gtk_window_set_geometry_hints
12784                            gtk_window_set_default_size):
12785         When hints are set, queue a resize so that the hints will
12786         be eventually reset on the toplevel.
12787
12788         * gtk/gtkwindow.c (gtk_window_show): Use
12789         gtk_window_compute_default_size(). Clear the need_resize flag
12790         on the initail map so that we don't unnecessarily trigger the
12791         resize code.
12792
12793         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12794         into separate functions. Compare the hints we are setting
12795         with what we set last time so that we can accurately
12796         tell when we need to reset the hints.
12797
12798         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12799         function to figure out the size from requisition
12800         and default_size.
12801
12802         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12803         from fvwm to constrain a size to the geometry hints.
12804
12805         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12806         to compare two sets of geometry hints.
12807
12808         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12809         from gtk_window_set_hints(), just compute the hints,
12810         don't set them.
12811
12812         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12813         code from gtk_window_move_resize() to separate function,
12814         rationalize a bit.
12815
12816 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12817
12818         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12819         structure into a new private structure.
12820
12821         * gtkrc.c: Split GtkRcStyle into public/private.
12822         In the private part, add a list of pointers to the
12823         RcStyle lists this RcStyle participates in.
12824
12825         * gtkrc.c: When a RcStyle is free, remove all
12826         lists referencing it from the 
12827         realized_style_ht hash, and free those lists.
12828         
12829         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12830         gtk_rc_init(), since that adds the default styles
12831         to the list of parsed RC files again.
12832
12833         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12834         
12835 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12836
12837         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12838         checks that ensure that a widget's allocation is at least 1 in width
12839         and height. (GNOME note: this doesn't affect old panel code anymore,
12840         because GtkSocket will request width and height of at least 1 since
12841         Fri Jul 23).
12842
12843         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12844         allocated yet (happens if the user realizes the window prematurely),
12845         size request and allocate it.
12846         (gtk_window_size_allocate): guard against guint underflows.
12847
12848 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12849
12850         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12851         in gtk_built_sources, so gtk.defs gets built prior to all other
12852         sources.
12853
12854 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12855
12856         * gtk/Makefile.am:
12857         invoke indent on gtkmarshal.*. 
12858         rewrote source generation rules, use COPYING as oldest source tag for
12859         a piggyback rule to generate all sources from (don't touch it ;).
12860         major cleanups, strip spaces on build rules for GNU Make.
12861
12862         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12863         source and target files from commandline arguments. don't invoke indent.
12864
12865 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12866
12867         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12868         notebook after switch to avoid drawing problems.
12869         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12870         
12871         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12872         show them instead. 
12873         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12874
12875 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12876
12877         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12878         notebook after switch to avoid drawing problems.
12879         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12880         
12881         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12882         show them instead. 
12883         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12884
12885 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12886
12887         * gtk/gtkwindow.c:
12888         we use window->need_resize from configure_event now, to indicate that
12889         the gtkwindow should keep its allocation (e.g. because the user resized
12890         the window through window manager handles). resize_count is now reliably
12891         used to figure whether we got the allocation we requested from the
12892         window manager.
12893         configure events get queued as resizes now, the real stuff (size
12894         computation and allocation) now only goes on in gtk_window_move_resize().
12895         GtkWindow's requisition now contains its *real* requisition (like all
12896         other widgets), *not* taking usize into account.
12897         geometry_info->last_{width|height} is now updated from set_hints() only
12898         so it always contains the last hints we set for the window manager.
12899         made some event handlers return TRUE instead of FALSE.
12900         the overall code should be much more straight forward now, and the
12901         significant code portions are accompanied by comments now.
12902         (gtk_window_set_hints):
12903         removed requisition argument and made it
12904         fetch the requisition through gtk_widget_get_child_requisition.
12905         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
12906         does that now.
12907         (gtk_window_show):
12908         ensure that the widget is realized before calling 
12909         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
12910         ensure that we got properly size requested and allocated before
12911         realization.
12912         (gtk_window_configure_event):
12913         ignore plain window moves, or reallocate the widget tree through the
12914         resize queue otherwise.
12915         (gtk_window_move_resize):
12916         mostly rewrote this function to figure window manager hints more
12917         reliably, coalesce window moves and resizes to reduce configure events
12918         and do actuall size allocations.
12919
12920 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12921
12922         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
12923         that have a resize pending, because a redraw is already queued for them.
12924
12925         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
12926         hack to clear resize_widgets.
12927
12928         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
12929         for resize containers prior to size allocation. (this is also a bit
12930         ugly, but avoids side effects for stopped emissions and is thus more
12931         reliable).
12932         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
12933
12934         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
12935         function from gtk_tooltips_expose, as we connect to ::expose_event
12936         *and* ::draw now.
12937
12938 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12939
12940         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
12941         checks.
12942         (gtk_target_list_unref): Likewise.
12943
12944         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
12945
12946 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
12947
12948         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
12949         guard against division by zero. (Fixes bug #1339)
12950
12951 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
12952
12953         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
12954         Prevent the trivial leak of information of allowing
12955         word motion when the entry is not visible.
12956
12957 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
12958
12959         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
12960         modality to error dialog as well as confirmation dialogs.
12961         (Bug #1803, reported by Rosanna Wing Sze Yuen)
12962
12963 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12964
12965         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
12966         tree->view_lines.
12967         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
12968
12969         * gtk/Makefile.am (install-data-local): Solaris apparently
12970         has various troubles with ln -f; use rm first instead.
12971         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
12972
12973 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
12974
12975         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
12976         use `cp' followed by `rm' (the `rm' was already there).
12977
12978 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12979         
12980         * configure.in: Fix autoconf warnings about cross compilation by
12981         trying to provide sane defaults for AC_TRY_RUN.
12982         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
12983         put them into $(srcdir) when generated. Also add a dependency of
12984         gtksignal.h on gtkmarshal.h for -j builds. 
12985         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
12986
12987 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
12988
12989         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
12990         GDK_THREADS_{LEAVE,ENTER} pair.
12991         (From Paul Fisher <pnfisher@redhat.com>)
12992
12993 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
12994
12995         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
12996         width and height are always >0 (owen).
12997
12998 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
12999
13000         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13001         change that assured that a widget's allocated with and height are
13002         always >1, since this breaks *buggy* panel code. unfortunately this
13003         back-breaks the gimp's color selector.
13004
13005         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13006         allocation is always >0 in width and height, before sending the
13007         configure event; this is a *gross* hack to get the gimp back to work.
13008         
13009         * marked both cases with TODO-1.3
13010
13011 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13012
13013         * gtk/gtktext.c: Don't display wrap indicators when
13014         text is not editable and word wrap is on.
13015
13016 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13017
13018         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13019         option menus here as they are not derived from menu shell, assure that
13020         the option menu has a menu we can add items to.
13021
13022 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13023
13024         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13025         width/height to (gint) before calculations and check against < 0 to
13026         avoid guint wraparounds.
13027
13028 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13029
13030         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13031         width and height is never zero. sanity check both dimensions against
13032         32767 and issue a warning if the allocation is greater than that.
13033
13034 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13035
13036         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13037         to g_main_pending() as well.
13038
13039 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13040
13041         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13042         call to g_main_iteration() - since that will regrab
13043         GTK+ lock to process events.
13044
13045 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13046
13047         * gtk/gtkwindow.c
13048         - Regularize with the rest of GTK+ by making widget->requisition
13049           not reflect the set_usize()
13050         - Always recompute geometry hints, then check if they
13051           changed before sending them to the X server. The
13052           previous checks for changes would fail in a number
13053           of circumstances. 
13054
13055 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13056
13057         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13058
13059 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13060
13061         * gtk/gtkdnd.c:
13062         - Code cleanups
13063         - Instantaneously update on modifier key presses
13064         - Allow cancellation of the drag with Escape.
13065
13066 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13067
13068         * gtk/testgtk.c (create_handle_box): Set the policy
13069         to auto_shrink - otherwise the appearance is rather
13070         strange when flipping between horizontal and vertical.
13071
13072 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13073
13074         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13075         (gtk_window_set_default_size): don't change a value if it's < 0.
13076         queue a resize.
13077
13078 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13079
13080         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13081
13082 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13083
13084         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13085         add an extra "/" when concating "/" + filename.
13086         (From Matt Grossman <mattg@oz.net>)
13087
13088 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13089
13090         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13091         for fg_gc if we set it for drawing pixmap.
13092
13093 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13094
13095         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13096         
13097         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13098         already set, call old engine's destroy function and
13099         unref the old engine.
13100
13101 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13102
13103         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13104
13105 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13106
13107         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13108
13109 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13110
13111         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13112         expand behaviour changed.
13113
13114         * gtk/gtklabel.c (gtk_label_set_pattern):
13115         (gtk_label_set_justify):
13116         (gtk_label_set_line_wrap):
13117         don't bother invoking queue_clear, the reallocation does
13118         that for us, always free_words so the upcoming resize will
13119         relayout the label's contents.
13120
13121 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13122
13123         * applied argument implementation patches from Elena Devdariani
13124         <elena@cogent.ca>.
13125
13126         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13127         ::space_style, ::relief
13128         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13129         * gtk/gtkpreview.c: ::expand
13130         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13131         * gtk/gtknotebook.c: ::homogeneous
13132         * gtk/gtklabel.c: ::wrap
13133         * gtk/gtklist.c: ::selection_mode
13134         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13135         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13136         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13137         * gtk/gtkclist.c: ::sort_type
13138         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13139         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13140
13141 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13142
13143         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13144         comment.
13145
13146 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13147
13148         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13149         counting right when we have to attach a new style
13150         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13151
13152         * gtk/gtkstyle.c: Documented the refcounting
13153         peculularities of gtk_style_attach.
13154
13155 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13156
13157         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13158         window types.
13159
13160         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13161         of GTK_TOPLEVEL for creating the window.
13162
13163 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13164
13165         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13166         the last argument (reported by Per Winkvist).
13167         
13168 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13169
13170         Fixes for invisible XOR lines (Frank Loemker
13171         <floemker@TechFak.Uni-Bielefeld.DE>)
13172         
13173         * gtk/gtkclist.c (gtk_clist_realize): Always use
13174         a non-zero pixel for GDK_XOR.
13175
13176         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13177         Use GDK_INVERT instead of GDK_XOR.
13178
13179 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13180
13181         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13182         signals if h/voffsets differ from adjustment values.
13183         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13184
13185 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13186
13187         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13188         ::selection-done emissions up to the topmost menu shell.
13189
13190 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13191
13192         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13193         the user data on the window before destroying it.
13194
13195         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13196         unrealize handler to take care of destroying 
13197         notebook->panel properly. 
13198         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13199
13200         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13201         of g_new and g_realloc to stop memory leak. (Actually,
13202         we could just use g_realloc(), but I'm not 100% sure
13203         that is portable).
13204         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13205
13206 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13207
13208         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13209
13210         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13211         for fontsets.
13212
13213         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13214         with bin/button confusion.
13215
13216 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13217
13218         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13219         and show how preselection of radio items is done.
13220
13221 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13222
13223         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13224         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13225         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13226         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13227         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13228         * gtk/gtktable.c (gtk_table_attach): 
13229         * gtk/gtklist.c (gtk_list_insert_items): 
13230         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13231         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13232         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13233         * gtk/gtkbin.c (gtk_bin_add): 
13234         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13235         * gtk/gtkfixed.c (gtk_fixed_put): 
13236         * gtk/gtklayout.c (gtk_layout_put):
13237         general fixups to container_add logic. always realize child if
13238         child->parent is realized, only map the child and queue a resize
13239         if child and child->parent are both visible.
13240
13241 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13242
13243         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13244         instead of gtk_container_foreach to walk and unrealize children, so
13245         composite children get also unrealized.
13246         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13247         (gtk_widget_map): assert that the widget is visible (basic constrain).
13248         (gtk_widget_real_map): assert that the widget is realized (basic
13249         constrain).
13250
13251 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13252
13253         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13254
13255 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13256
13257         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13258         file for iso-8859-2 locales.
13259
13260         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13261
13262 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13263
13264         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13265          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13266          Remove some suspicious and useless lines. 
13267
13268 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13269
13270         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13271         width,height = 0, 0 to mean - here to edge of window,
13272         instead of -1, -1, since the former is all we support.
13273
13274 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13275
13276         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13277         when removing from quit_functions list.
13278
13279 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13280
13281         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13282
13283 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13284
13285         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13286          When redrawing characters on non-visible entry, use appropriate
13287          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13288
13289 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13290
13291         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13292         from drag coordinates.
13293         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13294         use drag_dest_cell.
13295
13296         * gtk/gtktree (drag_dest_cell)
13297         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13298         (Bug #1129)
13299
13300 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13301
13302         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13303         translate_* fields.
13304         (gtk_item_factory_finalize): invoke translate_notify independant from
13305         translate_data.
13306         (gtk_item_factory_set_translate_func): likewise.
13307         (gtk_item_factory_destroy): only remove ifactory pointer from those
13308         widgets that belong to us (stupid me).
13309
13310 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13311
13312         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13313         rc_style list when lookup succeeeds.
13314
13315 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13316
13317         * gtk/gtkctree.c (resync_selection): 
13318         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13319         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13320         bug.
13321
13322 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13323
13324         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13325         Add some missing GDK_THREADS_ENTER()/LEAVE around
13326         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13327
13328 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13329
13330         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13331         rather than emit_by_name.
13332
13333         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13334         on the widget across multiple signal emissions.
13335         (gtk_editable_delete_text): same here.
13336         (gtk_editable_class_init): set widget_class->activate_signal after
13337         editable_signals[ACTIVATE] has been created.
13338
13339 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13340
13341         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13342         position here prematurely -- we might not have the
13343         right ->min_position and ->max_position yet.
13344
13345 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13346
13347         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13348         Add error traps so if the other end of the connection
13349         dies, we survive.
13350
13351         * gtk/gtkselection.c (gtk_selection_notify): Clean
13352         up properly when selection property retrieval fails.
13353         
13354         * gtk/gtkselection.c (gtk_selection_request): Correctly
13355         reject SelectionRequest notifies where the handler
13356         returns no data.
13357
13358 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13359
13360         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13361         when we've previously highlighted.
13362
13363         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13364         emit two "drag_leave" signals for Motif drops.
13365
13366         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13367         back the correct status messages when dropping from
13368         Motif onto a proxy window that is rejecting the
13369         drop.
13370
13371 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13372
13373         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13374         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13375         to compare two argument values. added gtk_arg_to_valueloc() to set a
13376         variable from an arg through its location (pointer).
13377
13378         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13379         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13380         as gfloat*, uchars are collected as guchar*, ints are collected as
13381         gint*, etc...
13382
13383 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13384
13385         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13386         Include <string.h> instead of <strings.h>.
13387
13388         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13389         (actually, a lot more duplicate includes occur if
13390          you trace through the sequence of #include's)
13391         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13392         
13393 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13394
13395         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13396         gtk-a-higuti-990322-[0-3]
13397
13398         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13399         that was causing -DX_LOCALE not to work.
13400
13401         * gtk/gtkrc.c (gtk_rc_init):
13402         X_LOCALE will never have LC_MESSAGES defined
13403
13404 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13405
13406         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13407         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13408
13409         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13410         left/right as well (gtk-michael-980726-0.patch.gz).
13411
13412         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13413         for pointer values, use gchar instead of char. fixed uline allocation
13414         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13415         chunks instead of G_ALLOC_ONLY.
13416         (gtk_label_size_request): always alter requisition as passed and leave
13417         widget->requisition alone.
13418         (gtk_label_set_text): allow NULL strings.
13419         (gtk_label_new): likewise.
13420
13421 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13422
13423         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13424
13425 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13426
13427         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13428         *and* mapped (i.e. drawable).
13429         (gtk_bin_expose): only send exposes to drawable children.
13430
13431         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13432         (gtk_box_expose): only send exposes to drawable children.
13433
13434         * gtk/gtkhscale.c (gtk_hscale_draw): 
13435         * gtk/gtkvscale.c (gtk_vscale_draw):
13436         hm, this is an ugly one. we first compute the size of our trough area
13437         here (window relative) and then check intersection with the draw_area
13438         which is parent relative because we're a NO_WINDOW widget, so we need
13439         to offset the trough area by allocation.x and allocation.y before the
13440         check. (this must not be done for the background area though, since
13441         that's already computed parent relative).
13442
13443 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13444
13445         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13446         unrealize title buttons.
13447
13448 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13449
13450         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13451         (gtk_clist_column_title_active): 
13452         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13453
13454         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13455         zero initialize event, removed superfluous gdk_window_get_pointer call
13456
13457         * gtk/gtklist.c (gtk_list_vertical_timeout)
13458         (gtk_list_horizontal_timeout): removed superfluous
13459         gdk_window_get_pointer call
13460
13461 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13462
13463         * plugging problems reported by "Bruce Mitchener, Jr."
13464         <bruce@puremagic.com> due to a purify session.
13465
13466         * gtk/gtkstyle.c:
13467         (gtk_style_ref): 
13468         (gtk_style_unref): assert ref_count to be > 0.
13469
13470         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13471         the requisition.
13472         (gtk_clist_set_shift): likewise.
13473
13474         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13475         adjustments.
13476
13477         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13478         event before sending it and set send_event to TRUE (which needs to
13479         be done for *all* synthesized events).
13480         (gtk_list_vertical_timeout): likewise.
13481
13482         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13483         leaks.
13484
13485         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13486         to TRUE when synthesizing events.
13487
13488 [ *** end of merges from 1.2 *** ]      
13489         
13490 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13491
13492         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13493         (or copied from gdkconfig.h.win32 on Win32, sigh).
13494
13495         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13496
13497         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13498
13499         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13500
13501         * gdk/gdkconfig.h.win32: New file.
13502
13503         * gdk/win32/makefile.cygwin: Build just a static archive here.
13504
13505         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13506         for the DLL from the static archive built above.
13507
13508         * gdk/gdk.def: Moved here from the win32 subdirectory.
13509
13510         * gdk/win32/*: Adapt for the changed private struct organisation.
13511
13512         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13513
13514 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13515
13516         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13517         for wheel mice (buttons 4 and 5).
13518
13519 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13520
13521         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13522         drawables use just the pixel field in the foreground and
13523         background GdkColor of the GdkGC.
13524
13525         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13526         GdkColors containing uninitialized (red,green,blue) fields, and
13527         just the pixel field filled in, and furthermore in the
13528         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13529         It thus turns out that we really don't need to have the full
13530         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13531         it later to have just the pixel values.
13532
13533 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13534
13535         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13536
13537 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13538
13539         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13540         New question on GtkLabel background colors.
13541
13542         * docs/gtk_tut.sgml:
13543           - Correct the example code callback
13544             function definitions.
13545           - Update the gtkdial example code, from Frans van Schaik.
13546           - Update setselection.c to current API.
13547
13548         * examples/Makefile examples/*/*.c: Update to code
13549         listed in tutorial.
13550
13551 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13552
13553         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13554         subrange table (from the "Developing International Software for
13555         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13556         block... Get the loaded font's charset correctly.
13557
13558         (Note that this, and the other *-win32.c files, still really are
13559         the old ones, the win32 subdirectory is not ready for compilation
13560         yet after the reorg.)
13561
13562 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13563
13564         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13565         check.
13566
13567 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13568
13569         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13570         on results of XQueryDeviceState().
13571
13572 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13573
13574         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13575         we need to accesss only ->children. We need an accessor
13576         for the children.
13577
13578         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13579         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13580         to get rid of gdkx.h include.
13581         
13582         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13583         and random references to 'None'.
13584
13585         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13586         Get rid of unused #include <gdk/gdkx.h>
13587
13588         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13589         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13590         gdkconfig.h.
13591
13592 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13593
13594         * gdk/win32/gdkdraw.c
13595         * gdk/win32/gdkfont.c
13596         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13597         following yesterday's changes. (Unrelated to Owen's reorg.)
13598
13599 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13600
13601         * gdk/x11/gdkinput-gxi.c: Add missing include,
13602           fix GdkWindowPrivate => GdkDrawablePrivate.
13603
13604         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13605
13606         * gdk/x11/Makefile.am (xinput_sources): Add missing
13607         backslash to fix building with --with-xinput=none
13608
13609 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13610
13611         Move all X specific code into the x11/ directory.
13612         Aside from shuffling things around, did the following:
13613
13614        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13615          gdk_arg_context_* - a simple argument parsing system
13616          in the style of popt.
13617
13618        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13619          gdk/x11/gdkprivate-x11.h:
13620          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13621          add ->klass and ->klass_data fields. The klass_data
13622          field points to an auxilliary structure that is
13623          windowing system dependent.
13624
13625        * gdk/gdkfont.c: Make most of the measurement functions
13626          simply wrappers around gdk_text_extents().
13627
13628        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13629          _gdk_font_strlen() function that hides the weird
13630          behavior in gtk+-1.[02] where a string is interpreted
13631          differently for 8-bit and 16-bit fonts.
13632
13633        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13634          to store common code for synthesizing double/triple
13635          press events.
13636         
13637        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13638          Make all the function that modify an existing GC
13639          simply wrappers around gdk_gc_set_values().
13640          
13641        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13642          for throwing out later.
13643
13644        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13645          GdkImagePrivate and GdkColormapPrivate to have a
13646          windowing system dependent part (GdkFontPrivateX etc.)
13647          that "derives" from the system-independent part.
13648
13649        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13650          Got rid of the included-source-files for XInput in
13651          favor of automake conditionals. (Which didn't exist
13652          when XInput support was originally added.)
13653
13654        * gdk/gdkrgb.c: Remove the visual id from the debugging
13655          statements since that is X11 specific; print out
13656          type/depth info instead.
13657          
13658
13659 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13660
13661         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13662         loading duplicates of hashed fonts.
13663
13664         * gdk/gdk.c (gdk_keysym_convert_case): rename
13665         gdk_XConvertCase to gdk_keysym_convert_case, allow
13666         results to be NULL in the GTK+ style.
13667
13668         * gdk/gdkcompat.h: Started compatibility header
13669         for renames.
13670
13671 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13672
13673         * gdk/win32/gdkprivate.h: New font private structures, related to
13674         fontsets.
13675
13676         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13677         gdk_font_list_free(). On X11, will just be wrappers to
13678         XListFonts() and XFreeFontNames(). On Win32, the code previously
13679         in gtkfontsel.c is now here.
13680
13681         New function gdk_font_xlfd_create(). On X11 will get the FONT
13682         property of the font (for GDK_FONT_FONTs), or call
13683         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13684         builds a XLFD style name from the font information in the LOGFONT
13685         struct(s).
13686
13687         New function gdk_font_xlfd_free(), which correspondingly frees the
13688         string returned by gdk_font_xlfd_create().
13689
13690         Implement fontsets on Win32. Add a function that iterates over a
13691         wide char string and calls a callback function for each substring
13692         of wide chars from the same Unicode subrange (and thus probably
13693         available in the same real font).
13694
13695         Improve the XLFD emulation a bit.
13696
13697         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
13698
13699         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
13700         Beta3, WM_IME_CHAR messages don't seem to contain the composed
13701         multi-byte char as with the Active IMM on Win9x. Oh well, handle
13702         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
13703         ImmGetCompositionStringW() to get the composed Unicode chars.
13704
13705         * gdk/win32/gdkgc.c
13706         * gdk/win32/gdkdraw.c: Changes needed because of the font private
13707         struct changes.
13708
13709         * gdk/win32/gdk.def: Add the new functions.
13710
13711 1999-11-04  Tor Lillqvist  <tml@iki.fi>
13712
13713         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
13714         get the Platform SDK to get <dimm.h>.
13715
13716         * gdk/win32/gdkevents.c: More event handling fixes and
13717         simplification. Never generate motion events with is_hint true. We
13718         used to do that on bogus grounds earlier. Windows sends
13719         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13720         moved, ignore these.
13721
13722         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13723
13724         * gdk/win32/gdkglobals.c
13725         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13726         the TrackMouseEvent function, and use it.
13727
13728         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13729         char before calling WideCharToMultiByte in order to get a string
13730         for the window title.
13731
13732         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13733
13734         * gdk/win32/gdk.def: Remove obsolete functions.
13735
13736         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13737         /nodefaultlib and /defaultlib switches.
13738
13739         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13740
13741 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13742
13743         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13744         EuroSign).
13745
13746         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13747         same type as GdkWChar, especially on Win32.
13748
13749         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13750
13751         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13752         before passing to Windows GDI for drawing etc. Convert to the
13753         system default codepage before passing to Windows as window
13754         titles.
13755
13756         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13757         support changing input locale on the fly.
13758
13759         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13760         on-the-fly changes. Convert incoming characters from the current
13761         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13762         on the current input language. Use keysym<->Unicode mapping tables
13763         and functions borrowed from xterm sources.
13764
13765         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13766         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13767         Manager) if available. IMEs and the Active IMM are available under
13768         the disguise of Chinese, Korean and Japanese support for IE and
13769         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13770         support is present in all editions (as long as you install it).
13771
13772         Call DispatchMessage from gdk_events_queue() (and thus
13773         gdk_WindowProc()), instead of duplicating the code in
13774         gdk_WindowProc().
13775
13776         Reworked the grab handling and propagation code, factored out
13777         duplicated code snippets into separate functions. Other cleanups,
13778         too.
13779
13780         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13781         the <dimm.h> header describing the Active IMM.
13782
13783         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13784         just do the same as for "single" fonts.
13785
13786         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13787         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13788         the new keysyms from gdkkeysyms.h.
13789
13790         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13791         fontset, so that gtkentry uses wide characters.
13792
13793         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13794         GTk+'s system directory "gtk+", not "gtk".
13795
13796 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13797
13798         * docs/gtkfaq.sgml: FAQ update
13799
13800 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13801
13802         * gdk/win32/gdkprivate.h: Add more font private data.
13803
13804         * gdk/win32/gdkfont.c
13805         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13806         fonts and strings. Now works much better. You still have to
13807         have a correct font selected, though. No fontset emulation yet.
13808
13809 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13810
13811         * gtk/maketypes.awk: Use G_OS_WIN32.
13812
13813         * gtk/gtk.def: Add some missing entry points. Also some non-public
13814         ones, but PyGTK porter claims to need them.
13815
13816         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13817         built-in type generation.
13818
13819 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13820
13821         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13822         GDK_FONT_FONT fonts (which is all we have for now, we don't
13823         emulate fontsets). The X11 version uses plain XDrawString in that
13824         case, too. The string passed to gdk_draw_text_wc seems to be in
13825         fact (at least, when used by gtkentry and gtktext) either in a
13826         single-byte charset, or a DBCS. Not Unicode.
13827
13828         This fixes the problem in gtkfontsel, where even if you had
13829         selected a font with a non-Latin1 charset (windows-greek, for
13830         instance), the preview still used Latin-1 glyphs.
13831
13832         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13833         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13834         (gdk_font_load): Recognize the demibold etc weights, even if we
13835         don't have the corresponding constants in the headers.
13836         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13837         version. Should save font resources a bit, when we don't have
13838         multiple HFONTs for the same font.
13839
13840         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13841         version.
13842
13843 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13844
13845         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13846         X values
13847
13848 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13849
13850         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13851         layout support (as mentioned on
13852         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13853
13854 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13855
13856         * gtk/fnmatch.c
13857         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13858
13859 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13860
13861         * configure.in (ALL_LINGUAS): Added Galician (gl)
13862
13863 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13864
13865         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13866
13867         * gdk/win32/gdkcompat.c: New file, actually provide an
13868         implementation for the deprecated functions. (Just temporarily.)
13869
13870         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13871
13872         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13873
13874         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13875
13876 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13877
13878         * configure.in: Added "uk" to ALL_LINGUAS.
13879         
13880 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13881
13882         * configure.in: correct checking for BeOS check
13883
13884         * gdk/gdktypes.h
13885         * gtk/fnmatch.c
13886         * gtk/gtkfilesel.c
13887         * gtk/gtkitemfactory.c
13888         * gtk/gtkmain.[ch]
13889         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
13890
13891 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13892
13893         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
13894         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
13895         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
13896         by Bulgarian). 
13897
13898 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
13899
13900         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
13901         Fix a reference to window_private->destroyed.   
13902
13903         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
13904         (ugly) setting of an internal GdkWindow member to use
13905         a _slightly_ cleaner macro.
13906
13907         * gdk/gdkprivate.h: Split GdkWindowPrivate into
13908         GdkDrawablePrivate and GdkWindowPrivate.
13909         Add extra macros for accessing GDK_DRAWABLE_ components.
13910
13911         * *.[ch]: Massive adjustments for the above, use the
13912         new macros in a lot of places.
13913
13914 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
13915
13916         * gdk/gdktypes.h: Make GdkDrawable the base type,
13917         not GdkWindow.
13918
13919 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
13920
13921         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
13922
13923 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
13924
13925         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
13926
13927 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
13928
13929         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
13930         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
13931
13932         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
13933
13934         * docs/gtk-config.1: Now autogenerated.
13935         * docs/Changes-1.4.txt: started
13936         
13937 1999-10-03  Tor Lillqvist  <tml@iki.fi>
13938
13939         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
13940         to #ifdef also here.
13941
13942         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
13943         Owen did to the X11 backend.
13944
13945         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
13946         ScrollWindowEx when blitting inside a window, it can't be correct
13947         in the general case.
13948
13949         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
13950         WM_GETMINMAXINFO is easier.
13951
13952         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
13953         depth equal to the bitspixel value, not the visual's depth.
13954
13955         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
13956         to 24 even if the bitspixel value is 32.
13957
13958         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
13959         need to check for depth==32 when bpp==32, depth will always be 24.
13960
13961 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
13962
13963         * docs/Changes-1.4.txt: Started
13964         
13965         * gtk/Makefile.am (gdk_headers): Include all the new headers.
13966
13967         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
13968         
13969         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
13970         into C file.
13971         
13972         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
13973         header to gdkinputprivate.h.
13974
13975         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
13976         unused since before 1.2.
13977
13978 1999-09-30  Tor Lillqvist  <tml@iki.fi>
13979
13980         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
13981         expand possible hex escapes in the font family (put there by
13982         logfont_to_xlfd if the font name isn't a legal XLFD font family,
13983         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
13984         On Win32, add hex escapes here, too.
13985
13986 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
13987
13988         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
13989         to #ifdef GDK_WINDOWING_X11.
13990
13991 [ Merges from gtk-1-2 ]
13992
13993 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
13994
13995         * configure.in: fixed "GNU Make" check to pass with new make version
13996         3.77.95.
13997
13998 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
13999
14000         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14001         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14002         AM_PATH_GTK() macros don't get confused by the -pre1.
14003
14004 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14005
14006         * configure.in (REBUILD): Change check for perl5
14007           to check explicitely for v >= 5.002. (5.001
14008           does not work with our scripts.)
14009
14010 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14011
14012         * configure.in: evaluate $PERL for the perl version check. added
14013         --disable-rebuilds to give the user an option to completely disable
14014         any source autogeneration rules.
14015
14016 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14017
14018         * configure.in: evaluate $ac_make when checking for GNU Make.
14019
14020 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14021
14022         * docs/Makefile.am: added generation.txt.
14023
14024         * Makefile.am: require automake 1.4, build README from README.in and
14025         INSTALL from INSTALL.in in dist-hook.
14026         
14027         * README.in:
14028         * INSTALL.in: new files to autogenerate README and INSTALL from.
14029
14030         * configure.in: figure whether we have GNU Make
14031
14032         * docs/generation.txt: minor additions/corrections.
14033
14034 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14035
14036         * docs/gtkfaq.sgml: FAQ Update
14037
14038 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14039         
14040         * configure.in: Fix autoconf warnings about cross compilation by
14041         trying to provide sane defaults for AC_TRY_RUN.
14042
14043 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14044
14045         * ltconfig
14046         * ltmain.sh: upgrade to libtool 1.3.3
14047
14048 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14049
14050         * INSTALL: Indicate that the --with-glib= configure
14051         time flag is unsupported.
14052
14053 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14054
14055         * docs/generation.txt: Added a file that gives
14056         documenation about the autogeneration process for
14057         various autogenerated files.
14058         
14059 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14060
14061         * configure.in (LIBS): Look for libgmodule in the
14062         right location.
14063
14064 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14065
14066         * docs/gtk_tut.sgml: Removed references to
14067         code examples in my directory on gtk.org as
14068         they should all be in the tutorial now.
14069
14070         * docs/gtk_tut.sgml: Added sources for dial-test
14071         and scribble-xinput programs that were previously
14072         missing.
14073
14074 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14075
14076         * TODO: Added entry about menu keyboard navigation, removed
14077         some finished items.
14078
14079 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14080
14081         * acinclude.m4: Standardize on func_dgettext
14082         not func_gettext, so that the checks for dgettext
14083         actually are paid attention to.
14084
14085 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14086
14087         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14088         directly, rather than repeating the checks for
14089         gettext.
14090
14091         * INSTALL: Added information about gettext and
14092         NLS support.
14093
14094         * acinclude.m4 (LIBM): Check for dgettext, not
14095         just gettext. This should hopefully fix things wrt
14096         systems with old versions of GNU gettext installed.
14097
14098 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14099
14100         * configure.in (LIBS): Look for libgmodule in the
14101         right location.
14102
14103 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14104
14105         * autogen.sh: add --enable-maintainer-mode
14106
14107         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14108
14109 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14110
14111         * docs/gtk-config.1.in:
14112           docs/Makefile.am:
14113           configure.in: gtk-config is now generated.
14114
14115         * docs/gtk-config.1: Removed, now generated.
14116
14117 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14118
14119         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14120         handle CreateNotify itself, still put out a debuging message for
14121         --gdk-debug=events. made the ReparentNotify debugging message more
14122         verbose.
14123         wrap xcoords translation for ConfigureEvents into an error trap,
14124         a destroy event may already be pending, and in that case, the
14125         actuall coordinate values are not at all critical.
14126
14127 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14128
14129         * gdk/gdkcc.c: Stop leaking the color_hash all over
14130         the place. Simplify and improve the logic.
14131
14132 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14133
14134         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14135         for prototypes and function implementations consistent (reported
14136         by Tomas Ogren).
14137
14138 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14139
14140         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14141         send_event set in debugging output.
14142         (gdk_compress_exposures): default initialize the event so we don't
14143         operate on bogus values (namely send_event).
14144
14145 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14146
14147         * gdk/gdkwindow.c: When we receive an unexpected
14148         destroy notify on one of our windows, don't just
14149         warn about it, also mark our windows as destroyed.
14150
14151 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14152
14153         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14154           name => font and name => fontset hashes. The 
14155           name => fontset hash is a _big_ win since we
14156           weren't previously caching fontsets at all and loading
14157           fontsets is expensive. The name => font hash
14158           is less of a win, but it does save us from doing
14159           repeated XQueryFont calls on the same font.
14160
14161         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14162           list so we can remove font/fontset from hash.
14163
14164 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14165
14166         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14167           and slightly confusing test. [ XInternAtom (,,TRUE)
14168           will never return None ].
14169
14170 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14171
14172         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14173           gdk/gdkwindow.c (gdk_window_set_hints):
14174
14175         Don't omit setting the properties if flags == 0 -
14176         there may be an existing set of properties there
14177         already. (Very old bug. Would it be better to
14178         delete the property instead?)
14179
14180         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14181           spelling error in comment.
14182
14183 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14184
14185         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14186           to avoid stomping over gdk_error_warnings.
14187
14188         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14189           as (bits_per_pixel + 7) / 8. This gives the same
14190           result as before for multiples of 8, but actually
14191           a "reasonable" value for 1bit or 4bit displays.
14192
14193 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14194
14195         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14196         GNU Make.
14197
14198 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14199
14200         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14201         discarding configure events.
14202
14203 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14204
14205         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14206         refcount is greater than zero.
14207
14208         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14209
14210         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14211
14212         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14213
14214         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14215
14216 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14217
14218         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14219         that format 32 => sizeof(item) == 4. It really is
14220         sizeof(long).
14221
14222 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14223
14224         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14225         core dump at all on X IO errors, only core dump
14226         if --enable-debug for X errors.
14227
14228 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14229
14230         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14231         unknown window:" message. disabled ConfigureNotify discarding code,
14232         because it led to events being processed out of order.
14233
14234 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14235
14236         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14237
14238         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14239         we export this function, supress error warnings and don't reset the
14240         error code in the first half of this function.
14241
14242         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14243         code (instead of just -1) so gdk_error_trap_pop() reveals something
14244         actually informative about the error that happened.
14245
14246         * gdk/*.c:
14247         don't rely on gdk_error_code being -1 if an error occoured, but just
14248         gdk_error_code != 0.
14249
14250 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14251
14252         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14253         pointer *before* invoking the filter function, so we at least don't
14254         crash if a filter is removed that is currently executed. window filters
14255         *really* need to be made truely reentrant at some point.
14256
14257 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14258
14259         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14260         PropertyNotify debug messages.
14261
14262 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14263         
14264         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14265         
14266         * gdk/gdkim.c: Fix cut-and-paste errors for 
14267         x/y and PreeditAttributes/StatusAttributes.
14268
14269 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14270
14271         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14272         G_MAXINT to 2^16 to alleviate overflow problems in
14273         various window managers.
14274
14275 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14276
14277         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14278         for fontsets.
14279
14280 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14281
14282         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14283         Initialize size_hints.x and size_hints.y because kwm
14284         brokenly pays attention to them.
14285         (Bug #1181 -  Lars Heete <hel@admin.de>)
14286
14287 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14288
14289         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14290         return value of gdk_list_visuals(). 
14291         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14292
14293 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14294
14295         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14296         XSetIMValues to (void *) when comparing to NULL, to workaround
14297         the problem of some compilers barfing since older X headers don't
14298         have the prototype for it.
14299
14300 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14301
14302         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14303         for pseudocolor where colormap->colors was double
14304         allocated.
14305
14306         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14307         color value in the hash table with the pixel filled
14308         in so when we do later hash table lookups, the color
14309         value is correct.
14310         
14311 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14312
14313         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14314         making the call
14315
14316 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14317
14318         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14319         pointed out by Morten Welinder <terra@diku.dk>.
14320
14321 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14322
14323         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14324           default filter from the list
14325
14326 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14327
14328         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14329           default filter from the list
14330
14331 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14332
14333         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14334
14335         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14336         g_strdup_printf instead of calcing the length separately
14337
14338 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14339
14340         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14341         that we don't do in many other places. (Fixing duplicate 
14342         #include of config.h)
14343
14344         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14345         Otherwise, #ifndef XINPUT_NONE check in the latter
14346         doesn't work. (Bug #546)
14347
14348 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14349
14350         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14351         "None" case insensitive.
14352
14353 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14354
14355         * gdk/gdkselection.c: 
14356         Add error traps so if the other end of the connection
14357         dies, we survive.
14358
14359 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14360
14361         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14362         dest_xid field into two fields - one for the window
14363         to send in messages, one to indicate the last looked
14364         up window for caching purposes. This is needed, so
14365         that Leave messages get the correct window.
14366
14367 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14368
14369         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14370         Fix warning created by people mucking around
14371         with the gsource API.
14372
14373         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14374         Change mapping between GIOCondition and GdkInputCondition
14375         to match the way the Linux kernel does it. This should
14376         fix problems where closed pipes were no longer signalling
14377         GDK_INPUT_READ on systems with a native poll().
14378
14379 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14380
14381         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14382         explicitly for the string "None" - it is in the XPM
14383         spec and some servers treat unknown colors in odd ways
14384         (like asking the user!)
14385
14386 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14387
14388         * gdk/gdkevents.c: made "->" into a "." of previous change so
14389         it compiles
14390
14391 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14392
14393         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14394         window field of the event structure before calling
14395         user filters.
14396
14397 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14398
14399         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14400         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14401
14402 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14403
14404         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14405         intermediate text property - prevents major memory
14406         leak when gdk_use_mb.
14407         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14408
14409 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14410
14411         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14412         gtk-a-higuti-990322-[0-3]
14413
14414         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14415         sizeof(wchar_t) != sizeof (GdkWChar)
14416
14417         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14418         that was causing -DX_LOCALE not to work.
14419
14420         * gtk/gtkrc.c (gtk_rc_init):
14421         X_LOCALE will never have LC_MESSAGES defined
14422
14423         * gdk/gdk.c (gdk_init_check):
14424         Remove --xim-preedit and --xim-status from argv properly.
14425
14426         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14427         that the client window is present on the X server
14428         before we pass it to the input method.
14429
14430 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14431
14432         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14433         if --display is specified on the command line, than
14434         the drag window will not be created on that display.
14435         
14436 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14437
14438         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14439         lookups with only_if_exists == TRUE were inserting
14440         bogus values into the atom cache.
14441
14442 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14443
14444         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14445         then reset it to NULL.
14446
14447         * gdk/gdkcolor.c:
14448         (gdk_colors_free): 
14449         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14450         key for g_hash_table_remove() in both functions, this prevents us
14451         from accessing possibly uninitialized portions of a GdkColor structure
14452         where we are only interested in its pixel value.
14453
14454 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14455
14456         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14457         font hash table, if we have a GdkFontPrivate entry for this font
14458         already, simply increment its reference count, provided by Olaf Dietsche
14459         <olaf.dietsche+list.gtk@netcologne.de>.
14460
14461 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14462
14463         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14464         just to be sure.
14465
14466         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14467         unused variables, leftovers from the X11 version.
14468
14469         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14470
14471         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14472         downcase fields on X11.
14473
14474 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14475         
14476         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14477         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14478
14479 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14480
14481         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14482
14483         * gtk/makefile.msc: Correct path to libintl.
14484
14485         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14486         use of gint vs. int, and gint vs. gboolean in headers and
14487         definitions. Use GtkType for the *_get_type functions. Note that
14488         these changes preserve binary compatibility.
14489
14490         * gdk/gdk.c
14491         * gdk/win32/gdk.c
14492         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14493
14494         * gtk/gtkmain.c
14495         * gtk/gtkclist.c
14496         * gtk/gtkmenufactory.c
14497         * gtk/gtknotebook.c
14498         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14499         vs. gboolean.
14500
14501         * gtk/gtkcolorsel.[ch]
14502         * gtk/gtkcombo.[ch]
14503         * gtk/gtkdrawingarea.[ch]
14504         * gtk/gtkgamma.[ch]
14505         * gtk/gtkhandlebox.[ch]
14506         * gtk/gtkhpaned.[ch]
14507         * gtk/gtkhruler.[ch]
14508         * gtk/gtkplug.[ch]
14509         * gtk/gtkpreview.[ch]
14510         * gtk/gtkruler.[ch]
14511         * gtk/gtksocket.[ch]
14512         * gtk/gtkstatusbar.[ch]
14513         * gtk/gtktoolbar.[ch]
14514         * gtk/gtkvbbox.[ch]
14515         * gtk/gtkvpaned.[ch]
14516         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14517         functions.
14518
14519         * gtk/gtkgamma.h: Fix bug, missing () in call of
14520         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14521
14522 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14523
14524         * gdk/gdkcolor.c (gdk_colormap_new)
14525         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14526         colormap->colors was allocated twice.
14527
14528         * gdk/win32/gdk.c: Remove some unused stuff.
14529
14530         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14531         colormap.
14532
14533         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14534         * gtk/gtklabel.h (gtk_label_get_type)
14535         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14536         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14537         in a couple of places, not guint.
14538
14539 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14540
14541         * configure.in,po/et.po: added Estonian language file
14542
14543 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14544
14545         * configure.in,po/da.po: added Danish file
14546
14547 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14548
14549         * docs/gtkfaq.sgml: Minor FAQ Update
14550
14551 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14552
14553         * docs/gtkfaq.sgml: FAQ update
14554
14555 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14556
14557         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14558         way to get window contents continually refreshed while resizing. I
14559         didn't like the effects myself, so it's not on by default.
14560
14561         * gdk/win32/gdkprivate.h: New flag variable
14562         gdk_event_func_from_window_proc, FALSE by default.
14563
14564         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14565         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14566         are passed --gdk-event-func-from-window-proc.
14567
14568         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14569         and we have am event_func, call it instead of enqueing the event.
14570
14571 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14572
14573         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14574         Kelley: Set expose_count in GdkEventExposes correctly.
14575
14576         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14577         MULTIPLE_WINDOW_CLASSES).
14578
14579         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14580         for bug in NT, apparently NT *does* draw the end pixel, too, in
14581         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14582
14583 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14584
14585         Improvements by Hans Breuer: 
14586
14587         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14588
14589         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14590         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14591         window contents while dragging" is turned on. Allocate at least
14592         one unique class for every GdkWindowType. If support for single
14593         window-specific icons is ever needed (eg. Dialog specific), every
14594         such window should get its own class.
14595
14596 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14597
14598         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14599         error that caused crashes.
14600
14601 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14602
14603         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14604         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14605         bugs when for instance part of the window was outside the
14606         display. Thanks to Philippe Colantoni for finding and fixing this.
14607
14608 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14609
14610         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14611         endpoint calculations which were totally wrong. (A little RTFMing
14612         helps a lot ;-)
14613
14614         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14615         from a separate directory, not from gettext, because of licensing
14616         issues (we want to use the LGPL version).
14617
14618         * README.win32: Mention the intl from glibc vs from gettext issue.
14619
14620 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14621
14622         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14623         in the key event handling: Now AltGr chars work again. Also,
14624         now Alt-digits are passed up as well as Control-digits.
14625         Pass keypad plus and minus as normal plus and minus.
14626
14627 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14628
14629         * docs/gtkfaq.sgml: FAQ Update
14630
14631 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14632
14633         * README.win32
14634         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14635         the Wintab SDK.
14636
14637         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14638         OK, but getting closer. Guard against bogus tilt data from Wacom
14639         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14640         enable easier building without Wintab.
14641
14642         * gdk/win32/gdkinput.h
14643         * gdk/win32/gdkevents.c 
14644         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14645         
14646         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14647         code. As we have just one visual on Win32, no sense to have it in a
14648         table, and no need for the hash table.
14649
14650         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14651         better on white background.
14652
14653 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14654
14655         * README.win32: Update gcc build instructions. Mention gettext is
14656         GPL.
14657
14658         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14659         supported cursor size with GetSystemMetrics.
14660
14661         * gdk/win32/gdkfont.c
14662         * gtk/gtkfontsel.c: Guard against some font weight and charset
14663         symbols being undefined (in mingw32 headers).
14664
14665         * gdk/win32/makefile.cygwin
14666         * gtk/makefile.cygwin
14667         * gtk/gtkthemes.c: No longer need to have differently named
14668         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14669
14670 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14671
14672         * docs/gtkfaq.sgml: Long awaited FAQ update.
14673
14674 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14675
14676         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14677         it. Obscure bit manipulation needed.
14678
14679         * gdk/win32/gdkevents.c: Logging.
14680         
14681         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14682         style (file name include compiler name) for theme engines.
14683
14684 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14685
14686         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14687
14688         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14689         events. The key.string wasn't zero-terminated, still we strdup'ed
14690         it in gdk_event_copy(). Synthesize crossing events for button
14691         events before possible propagation.
14692
14693         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
14694
14695         * gdk/win32/makefile.cygwin
14696         * gtk/makefile.cygwin: Use new DLL naming style for the
14697         GCC-compiled ones.
14698
14699         * gdk/win32/makefile.msc
14700         * gtk/makefile.msc: Cosmetics mostly.
14701
14702         * gtk/gtk.def: Add missing entry points.
14703
14704         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
14705
14706 1999-07-09  Tor Lillqvist  <tml@iki.fi>
14707
14708         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
14709         or height is zero. Don't print a warning if Pie or Arc fails, they
14710         always fail (?) for very narrow ellipses.
14711
14712         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
14713         the part or the destination window corresponding to source area
14714         outside of the source drawable's boundary.
14715
14716         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14717         anything if less than two points.
14718
14719         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14720         return NULL. Gtk cut-and-paste inside a single program works
14721         better this way. (It always gets the clipboard contents from
14722         Windows, not from its own copy, which is cleared anyway. I can't
14723         say I fully understand what happens... Emulating the X selection
14724         and property stuff is a bit of a mess.)
14725
14726         * gdk/win32/gdkevents.c
14727         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14728
14729         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14730         that never got deleted). Revamp gdk_region_shrink.
14731
14732         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14733         after use.
14734
14735         * gtk/gtk.def: Add some missing entry points.
14736
14737         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14738         component.
14739
14740 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14741
14742         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14743         Control-digits specially.
14744
14745 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14746
14747         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14748
14749 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14750
14751         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14752         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14753         finding this.)
14754
14755 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14756
14757         * gtk+.spec.in: Corrected some typos in files section.
14758         
14759 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14760
14761         * README.win32: Mention using GNU gettext.
14762         * config.h.win32: Enable NLS stuff.
14763         * gtk/makefile.msc: Use GNU gettext.
14764         * gdk/win32/gdkdnd.c: Minor header reorg.
14765         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14766         cosmetics.
14767         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14768         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14769
14770 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14771
14772         * acinclude.m4
14773         * config.guess
14774         * config.status
14775         * ltconfig
14776         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14777
14778 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14779
14780         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14781         SafeAdjustWindowRectEx. Don't override all calls to
14782         AdjustWindowRectEx by it, but use it only in two places: When
14783         creating a new top-level window and when moving a top-level
14784         window.
14785
14786         Use screen coordinate rectangle, not client rectangle, in
14787         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14788         when we try to place a window so that the decoration (mainly,
14789         title bar) isn't visible.
14790
14791         These changes fix the bug that showed up for instance as the
14792         GIMP's saved top-level windows moving right and down (by an amount
14793         equal to the window decoration) for each session. This bug showed
14794         up also in testgtk's "Saved Position".
14795
14796         gdk_window_resize also redone a bit.
14797
14798 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14799
14800         * gtk/testgtkrc: Add (commented out) Windows-style theme
14801         include line.
14802
14803         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14804
14805 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14806
14807         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14808         gdkx.h to a gdk subdirectory, so that applications can include
14809         these with <gdk/*.h> without trouble.
14810
14811         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14812         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14813         have their bitmap destroyed.
14814
14815         * gdk/win32/gdk.def: Add gdk_root_parent.
14816
14817 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14818
14819         * configure.in
14820           gtk-config.in
14821           ltconfig
14822           ltmain.sh     
14823           gtk/Makefile.am: changes to compile nicely (with xlib) 
14824           on BeOS
14825
14826 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14827
14828         * acinclude.m4
14829         * config.guess
14830         * config.sub
14831         * ltconfig
14832         * ltmain.sh: upgrade to libtool 1.3
14833
14834 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14835
14836         * gtk/gtkclist.c:
14837         * gtk/gtkctree.c: merges from gtk-1-2
14838
14839 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14840
14841         Support added for building using a GNU toolchain on Win32,
14842         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14843
14844         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14845         * config.h.win32: Changes for gcc.
14846         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14847         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14848         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14849         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14850         Protect shl stuff unavaiilable with mingw32 headers.
14851         * gdk/win32/gdkevents.c: Fix typo.
14852         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14853         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14854         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14855         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14856         the mingw32 headers.
14857         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14858         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14859         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14860         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14861         Test for NATIVE_WIN32, not _MSC_VER.
14862         * gtk/gtkmain.c: No use warning about developer version on Win32,
14863         there aren't any non-developer versions anyhow.
14864         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14865         * gtk/makefile.msc: Use pthread from another directory. Minor other
14866         changes. 
14867
14868 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14869
14870         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14871           default filter from the list
14872
14873 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14874
14875         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14876          when gtk_widget_grab_default() is called for a widget that
14877          is not within a GtkWindow.
14878
14879 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14880
14881         * docs/gtk_tut.sgml, examples/clist.c: use a
14882           scrolled window in the clist example. Minor
14883           tutorial fixes.
14884
14885 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14886
14887         * docs/gtk_tut.sgml: Style check from David King
14888           <dking@youvegotmail.net>
14889
14890 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
14891
14892         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
14893         compile with unknown value of GDK_WINDOWING
14894
14895 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
14896
14897         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
14898         after the rule is fired.
14899         (install-exec-local): Install gdkconfig.h only if the contents are
14900         different from the currently installed gdkconfig.h.
14901
14902 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
14903
14904         * gdk/Makefile.am (configexecincludedir): Rename from 
14905         configincludedir so that gdkconfig.h will be installed 
14906         as part of `make install-exec'. 
14907
14908 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
14909
14910         * acinclude.m4
14911         * config.guess
14912         * config.sub
14913         * ltconfig
14914         * ltmain.sh: upgrade to libtool 1.2f
14915
14916         * autogen.sh: libtool is not required to autogen gtk+
14917
14918         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
14919         needed)
14920
14921 1999-03-18  Tor Lillqvist  <tml@iki.fi>
14922
14923         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
14924         declaring gdk variables exported/imported from the DLL. New image
14925         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
14926         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
14927         GDK_DRAG_PROTO_OLE2.
14928
14929         * gdk/gdk.h: Merge in Win32 version: Two new functions,
14930         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
14931         declared only for the Win32 version, but could be in the X11
14932         version as well. (Needed for a Xlib-less gdk_imlib.)
14933         gdk_color_hash should have only one parameter. Declare
14934         gdk_threads_mutex with GDKVAR.
14935         
14936         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
14937         just one parameter.
14938
14939         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
14940         per pixel, not bits.
14941
14942         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
14943         Fetch bpp (which means bits-per-pixel here) from another place on
14944         Win32. Accept also depth==32 (which we might get on Win32) with
14945         bpp==32.
14946
14947         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
14948         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
14949         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
14950         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
14951         in the backend-dependent directory, not in the common gdk
14952         directory.
14953
14954         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
14955         headers.
14956
14957 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
14958
14959         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
14960         want to use the Gtk+ devel version (which is true, and yes - even i am
14961         currently working with the 1.2.x branch). so everyone reading this, you
14962         probably want to issue
14963         cvs checkout -r glib-1-2 glib
14964         and
14965         cvs checkout -r gtk-1-2 gtk+
14966         as your next two comands.
14967
14968 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
14969
14970         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
14971         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
14972
14973         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
14974         file. strongly deprecated the GTK_HAVE_* macros, we provide
14975         GTK_CHECK_VERSION() for people that need to check for certain
14976         Gtk+ versions.
14977
14978         * gtk/gtkcompat.h: removed this from CVS.
14979         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
14980         idea right from the start, it just didn't seem like that back then.
14981
14982 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
14983
14984         * merges from gtk-1-2:
14985
14986 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
14987
14988         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
14989         item factory class has been created.
14990         (gtk_item_factory_parse_rc): likewise.
14991
14992         * gtk/gtkmenu.c:
14993         keep proper references for old_active_menu_item.
14994         (gtk_menu_reparent): unset the usize of the new parent,
14995         so the menu can sanely be size requested and we don't get nasty screen
14996         artefacts upon next reparentation.
14997         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
14998         enter notify. only synthesize enter notifies if the pointer really is
14999         inside the event window.
15000         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15001         (gtk_menu_popup): move the background setting stuff into
15002         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15003
15004         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15005         gtk_menu_shell_select_item() to select the new item.
15006         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15007         do the right thing for deselection as well.
15008
15009 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15010
15011         * gtk/gtkwidget.[hc]:
15012         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15013         are locked.
15014
15015         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15016         existing accelerators if the widget's accelerators are locked.
15017
15018 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15019
15020         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15021
15022         * gtk/gtkmenu.c: truely forward key press and key release events to
15023         the menu widget from the toplevel or tearoff window. we can't simply
15024         connect to that, we need to stop further processing of the events as
15025         well.
15026
15027 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15028
15029         * gtk/gtkmenu.c:
15030         (gtk_menu_key_press): pass event->keyval, event->state to
15031         gtk_accelerator_valid, instead of event->keyval twice.
15032         refuse to install single letter accelerators for menus that use
15033         single letter shortcuts.
15034
15035         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15036         gtk_menu_ensure_uline_accel_group().
15037
15038         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15039         which will always return an uline accel group, made
15040         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15041         yet created.
15042
15043 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15044
15045         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15046
15047         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15048         Leave button sensitive, trap  button_press, button_release,
15049         motion_notify, enter_notify and leave_notify events instead.
15050         (gtk_clist_column_title_active): disconnect event handler.
15051         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15052         Guillaume Laurent <glaurent@worldnet.fr>
15053
15054 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15055
15056         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15057         width/height mixups.
15058
15059         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15060         if needed.
15061
15062 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15063
15064         * gtk/testgtk.c (create_item_factory): unref the item factory after
15065         window's destruction.
15066
15067         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15068         count on the menu shell around the menu item's activation, since the
15069         signal emission may cause menu shell destruction.
15070
15071         * gtk/gtkitemfactory.c:
15072         the previous code leaked one accel group per menu. we use
15073         gtk_menu_get_uline_accel_group() now to fix that, and with that
15074         also create the underline accelerator group of the menus only if
15075         required (i.e. an underline accelerator has been specified).
15076         (gtk_item_factory_construct):
15077         (gtk_item_factory_create_item): removed code that would create an
15078         extra accel group for the menu (and leak references).
15079         (gtk_item_factory_create_item): adapted the underline accelerator
15080         installation code to properly feature gtk_menu_get_uline_accel_group().
15081
15082         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15083         menu->accel_group, this may return NULL if the accelerator group
15084         hasn't been set yet.
15085         added gtk_menu_get_uline_accel_group() to retrive the underline
15086         accelerator group of the menu, this will be created on demand
15087         and proper care is taken about its reference count.
15088
15089         * gtk/gtkitemfactory.h:
15090         * gtk/gtkitemfactory.c:
15091         dumped the approach of keeping a widgets by action list on the
15092         factory since the factory<->widget destroy negotiation didn't work
15093         and would be hard to get going at all. instead we keep a list of
15094         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15095         persistant throughout a program's life time).
15096         also, i removed the static const gchar *key_* variables, and made
15097         them inline strings (they weren't actually used anyways).
15098         (gtk_item_factory_add_item): update ifactory->items.
15099         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15100         the item factory pointer from the remaining ifactory widgets).
15101         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15102         list to find the widget.
15103         (gtk_item_factory_get_item): new function that works around
15104         gtk_item_factory_get_widget() limitations, this function will only
15105         return menu items, even for <Branch> entries.
15106
15107 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15108
15109         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15110         font hash table, if we have a GdkFontPrivate entry for this font
15111         already, simply increment its reference count, provided by Olaf Dietsche
15112         <olaf.dietsche+list.gtk@netcologne.de>.
15113
15114         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15115         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15116
15117 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15118
15119         * gtk/gtkcontainer.c:
15120         (gtk_container_add_with_args):
15121         (gtk_container_addv):
15122         (gtk_container_add): before adding a child to a conatiner, make sure
15123         it is (default) constructed, this is neccessary because under certain
15124         circumstances the child will get relized and mapped immediatedly, in
15125         which case it has to be constructed already.
15126
15127 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15128
15129         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15130         values > 1 as TRUE also.
15131
15132 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15133
15134         * README.win32: New file.
15135                 
15136         * configure.in: Check for lstat.
15137
15138         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15139         completeness.
15140
15141         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15142
15143         * gtk/gtk.def: Removed CRs.
15144
15145         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15146         ..\gdk\win32).
15147
15148         * gdk/win32/makefile.msc: Correct upwards relative paths.
15149         
15150 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15151
15152         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15153           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15154           it was connecting a void function to expose_event and the int
15155           returning function to the draw signal
15156
15157 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15158
15159         * configure.in:
15160         Use correct path to libgmodule.la when ref'ing uninstalled copy
15161         of glib.  (Already in stable branch, Bug #417)
15162
15163 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15164
15165         Win32 merge and general portability stuff:
15166                 
15167         * acconfig.h,configure.in: Check for <sys/time.h>.
15168
15169         * gdk/win32: New directory (actually, been there for a while).
15170         
15171         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15172         NATIVE_WIN32, and use these. Always case fold on Win32. No
15173         backslashed escapes on native Win32.
15174
15175         * gtk/{gtk.def,makefile.msc}: New files.
15176
15177         * gtk/Makefile.am: Add above new files.
15178         
15179         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15180         instead of <strings.h>.
15181
15182         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15183         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15184         <unistd.h> appropriately.
15185
15186         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15187         Use ABS() (from <glib.h>) instead of abs().
15188         
15189         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15190         of gtk (and thus glib) headers, so that WIN32 will be
15191         defined. With MS C, include <direct.h> for mkdir prototype.
15192
15193         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15194         some casts, needed by MS C.
15195
15196         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15197         implemented).
15198
15199         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15200         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15201         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15202
15203         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15204                 
15205         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15206         the event is not a hint, or its window is not the slider. Needed
15207         on Win32, at least.
15208
15209         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15210         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15211         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15212         a subdirectory of the Windows directory as gtk system
15213         configuration directory.
15214
15215         * gtk/gtkselection.c: No chunks on Win32.
15216
15217         * gtk/gtksocket.c: Not implemented on Win32.
15218
15219         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15220
15221         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15222
15223         * gtk/maketypes.awk: Declare variables with a macro that expands to
15224         necessary export/import magic in the case of Win32.
15225                 
15226         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15227
15228 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15229
15230         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15231         since those were meant only for gdki18n.h.  
15232         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15233         for widechar tests.
15234         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15235
15236 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15237
15238         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15239         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15240
15241         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15242         installed) to CFLAGS.
15243
15244         * gdk/Makefile.am: Add rules for gdkconfig.h.
15245
15246         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15247         APIs.
15248
15249         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15250         gdkx.h anyway when compiling for X11.
15251         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15252         general): Merge in Win32 version.
15253         
15254         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15255         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15256         expansion (if we don't have HAVE_PWD_H), allow for drive
15257         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15258         included code from Craig Setera's port to Win32 (the one that uses
15259         X11, and the cygwin dll), even if it probably will be abandoned.
15260
15261         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15262         the user entered one herself.  This way one can complete *.h and
15263         don't get matches on any .help files, for instance.
15264         
15265 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15266
15267         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15268         font hash table, if we have a GdkFontPrivate entry for this font
15269         already, simply increment its reference count, provided by Olaf Dietsche
15270         <olaf.dietsche+list.gtk@netcologne.de>.
15271
15272         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15273         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15274
15275 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15276
15277         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15278         the number of calls to gdk_draw_point() (and thus to X) by
15279         clipping the points by hand.
15280
15281         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15282         the clip parameter.
15283         (gtk_handle_box_paint): Only paint the handle if the expose area
15284         intersects it.
15285
15286 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15287
15288         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15289
15290 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15291
15292         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15293         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15294
15295 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15296
15297         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15298          textmode (O_TEXT) for OS/2 version.
15299
15300 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15301
15302         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15303         GtkSpinButton, "input" and "output", to make the output more flexible.
15304         The user has to provide a mapping between adjustment->value and the
15305         output string (and vice versa, if the spin button is editable). 
15306         See testgtk for examples.
15307
15308 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15309
15310         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15311         new one.
15312         
15313         * configure.in: set gtk+ version to 1.3.0.