]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Return FALSE, not TRUE. (Fixes #52925)
[~andy/gtk] / ChangeLog.pre-2-4
1 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
4         not TRUE. (Fixes #52925)
5
6 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
7
8         * Released 1.3.4
9
10         * NEWS: Updated
11
12         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
13         use GTK_TYPE_ENUM.
14
15 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
16
17         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
18
19         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
20         names to compatibility #defines so docs work.
21
22         * gtk/gtkenums.h: Remove GtkMenuFactoryType
23
24         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
25
26         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
27
28         * tests/testgtkrc: No magenta cursors, please.
29
30         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
31
32         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
33         
34 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
35
36         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
37         grabs, since they are no longer necessary.
38
39         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
40         by signal_connect() and call gtk_button_pressed() rather
41         than signal_connect_after().
42
43         * tests/testgtk.c: Restore radio menu items to combos 
44         since they'll look OK with Raleigh, and it is easier
45         than finishing the process of removing them that was
46         started earlier.
47
48 2001-04-16  Hans Breuer  <hans@breuer.org>
49
50         * gdk/gdk.def :
51         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
52
53         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
54         we are interested in the functions return value not the function address
55         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
56
57         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
58
59 2001-04-14  Hans Breuer  <hans@breuer.org>
60
61         * gdk/gdk.def :
62         * gdk/makefile.msc : updated
63
64         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
65         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
66         (the testgtk::text backgound pixmap is drawn again)
67         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
68         Win32 Pango change
69         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
70
71         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
72         Not sure if the returned settings have the right unit, because I couldn't
73         find any docs for the X version ...
74
75         * gtk/gtk.def :
76         * gtk/makefile.msc.in : updated
77
78 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
79
80         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
81         wording problems. (Compared to version from Johannes Stezenbach to
82         check correctness.)
83
84 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
85
86         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
87         this to compile.
88
89 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
90
91         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
92         not pixbufpos.
93
94         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
95
96         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
97         are unsigned insts, therefore use g_value_set_uint.
98         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
99
100 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
101
102         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
103
104         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
105         GTK_TYPE_STRING.
106
107         * gtk/gtktreeview.c: New functions to allow initial column
108         dragging work.
109
110         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
111
112         * tests/testtreefocus.c: give dave some love.
113
114         * tests/testtreesort.c: Modify test to check really long samples.
115
116 2001-04-11  Alexander Larsson  <alexl@redhat.com>
117
118         * gtk-2.0.m4: Pass pkg-config options
119         before the other args so it works even if
120         POSIXLY_CORRECT is set.
121
122 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
123
124         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
125         0, interface 0).
126
127 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
128
129         * gtk/gtkcalendar.c (gtk_calendar_button_press):
130         check for action_func != NULL
131
132 2001-04-04  Sven Neumann  <sven@gimp.org>
133
134         * tests/testgtk.c (test_init): corrected path to gtk.immodules
135
136 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
137
138         * Released Gtk+-1.3.3.
139
140 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
141
142         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
143
144 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
145
146         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
147         files to/from source dir. (if we don't stay in builddir, we
148         can't reach make-inline-pixbuf.
149
150         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
151         deps.
152
153         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
154         ages 0).
155
156 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
157
158         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
159         moved to the GtkTreeSortable interface.
160
161         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
162         Make more efficient (fixes #50262).
163
164 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
165
166         * NEWS: Updated.
167
168         * configure.in: Remove support for uninstalled glib.
169
170         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
171         so as not to stop emission.
172
173         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
174         is no longer supported.
175
176         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
177         into tests, change build order to build modules before
178         gtk/.
179
180         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
181         to here.
182
183 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
184
185         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
186         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
187         GPatternSpec. this is actually unlikely to cause breakage in
188         third-party apps since except for gle, pretty much ever caller
189         passes NULL here.
190
191         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
192
193         * *.c: use g_pattern_*() API.
194
195         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
196
197         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
198         directions aren't passed in.
199
200         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
201         functionality to be usable from gtkstyle.c as well, give precedence
202         for conversion to user-supplied parsers.
203         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
204
205         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
206         _gtk_settings_parse_convert() for rcporperty value conversion.
207
208 2001-04-03  Alexander Larsson  <alexl@redhat.com>
209
210         * gdk/linux-fb/gdkevents-fb.c:
211         Add empty gdk_setting_get().
212
213 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
214
215         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
216         variable names.
217         
218         * gtk/makeenums.pl: touch this so enum files get remade.
219
220 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
221
222         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
223         work again when not sorted.
224
225         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
226         and "expand_row" signal, closing bug 52578.
227
228         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
229         support.
230
231         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
232         support.
233
234 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
235
236         * gdk/gdkevents.h: Add GdkEventSetting event for notification
237         of changes to system settings, gdk_setting_get() to retrieve
238         a single system setting.
239
240         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
241         to the draft XSETTINGS mechanism.
242
243         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
244         XSETTINGS.
245
246         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
247         of GDK settings changes to the GtkSettings object.
248
249         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
250         double-click-timeout property to GDK.
251
252         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
253         Define GDK boxed types here.
254
255         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
256         gdk/gdkenumtypes.[ch] for enum definitions.
257
258         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
259         * gtk/gtk-boxed.defs: Comment out GDK types
260         * gtk/gtktypeutils.h: Remove GDK types
261         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
262
263 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
264
265         * Applied patch from Ron Steinke to add signal accumulators
266         so that signals with the convention 'TRUE return means
267         handled' stop emission on a TRUE return.
268
269         * gtk/gtkmain.[ch]: Add private accumulator 
270         _gtk_boolean_handled_accumulator, used throughout GTK+.
271         
272         * gtk/gtkspinbutton.c: Add accumulator for ::output.
273
274         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
275         
276         * gtk/gtkwidget.c: Add accumulators for event signals,
277         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
278         for ::mnemonic-activate.
279
280         * gtk/gtkwindow.c: Add accumulator for ::frame_event
281
282 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
283
284         * gtk/gtkwidget.c: Add missing include.
285
286 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
287
288         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
289         marshaller.
290
291         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
292         "changed" signal to "range_changed".
293
294         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
295         removing a tree from one model would remove all trees from that
296         model.
297         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
298         changed signal instead.
299
300 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
301
302         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
303         chaining up to parent impl, since we have a INPUT_ONLY
304         window.
305
306         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
307         foreground color for the cursor.
308
309 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
310
311         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
312         param spec when caching property values, since we unref it
313         later when we free the style.
314
315         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
316         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
317
318 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
319
320         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
321         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
322         stupidity.
323
324 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
325
326         [ First pass at adding style properties. Still needs some definite
327         fine-tuning. ]
328
329         * gtk/gtkbutton.c: Add ::default_spacing style property.
330          
331         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
332         ::indicator_spacing style properties.
333
334         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
335         style properties.
336
337         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
338         rather than a normal property.
339
340         * gtk/gtkwidget.c: Add an ::interior_focus style property to
341         draw focus inside buttons, in the Windows/Java Metal/etc. style.
342
343         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
344         Honor ::interior_focus.
345         
346         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
347         TRUE.
348
349         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
350         Add ::slider_width, ::trough_border, ::stepper_size,
351         ::stepper_spacing style properties.
352
353         * gtk/gtkscale.[ch] Add ::slider-length style property.
354
355 2001-04-02 Alexander Larsson   <alexl@redhat.com>
356
357         * gdk/linux-fb/gdkwindow-fb.c:
358         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
359         warnings that were spewed on startup.
360
361         * gtk/gtkwindow-decorate.c:
362         gtk_window_reposition -> _gtk_window_reposition
363
364 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
365
366         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
367         Add boxed type for GtkRequistion. Use it for ::size-request.
368
369         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
370         Add a new GtkBorder structure useful for geometry properties
371         for widgets. Add corresponding GTK_TYPE_BORDER.
372         
373         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
374         Support automatic parser selection like
375         gtk_settings_install_property_parser().
376
377         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
378         functionality for use by gtk_widget_class_install_style_property.
379         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
380
381 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
382
383         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
384         g_param_spec_unichar(). 
385
386 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
387
388         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
389         _NET window managers.
390
391         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
392
393 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
394
395         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
396         bad needs to be nuked, not just deprecated.
397
398         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
399         gtk_widget_popup().
400
401         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
402         
403         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
404         widget.
405         
406         * docs/Changes-2.0.txt: updates.
407         
408 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
409
410         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
411         for (i = 0; i < 100; i ++)
412           g_print ("I will confirm it compile before committing\n");
413
414 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
415
416         * gtk/gtktreestore.c: Initial work on implementing the
417         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
418
419 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
420
421         * gtk/gtkwidget.c: fixed a bunch of notifications, added
422         reference counts around emissions where the widget is used afterwards.
423         added freeze/thaws around multiple properties being notified.
424         (_gtk_widget_get_aux_info): cleanups.
425         
426         * gtk/gtksettings.c (gtk_settings_install_property): provide
427         default parsing functions for gdkcolor, enums and flags.
428
429         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
430         applied by owen.
431         backed out gtk_window_get_location(), gtk_window_set_location(),
432         gtk_window_get_size() and gtk_window_set_size(), these
433         have to be sorted out wrg x/y/width/height/default_with/default_height
434         properties.
435         kept a flag in GtkWindowGeometryInfo to handle user
436         resetting default sizes.
437         cleaned up ZVT comments.
438         bunch of assorted bug fixes, notification fixes.
439         (_gtk_window_reposition): make this a really internal function.
440         
441         * gtk/testgtk.c: fixups.
442         
443 2001-03-31  Hans Breuer  <hans@breuer.org>
444
445         * config.h.win32.in : disable USE_MMX for msvc build cause
446         the assembler doesn't fit and is out of my scope. Disable
447         USE_GMODULE for msvc build as wel. The right way to share
448         binaries on win32 would be to use libtiff.dll etc. To reduce
449         installation hassles IMO it's better to include all fileformats
450         builtin to gdk-pixbuf
451
452         * gdk-pixbuf/makefile.msc : new file
453
454         * gdk/gdk.def : updated
455
456         * gdk/win32/gdkevents-win32.c : don't erase the background if
457         .no_bg is set. It improves the scrolling (e.g. of testgtk main
458         buttons
459         * gdk/win32/gdkgeometry-win32.c : added comment about the above
460
461         * gdk/win32/gdkwindow-win32.c : added three new functions like
462         the X version. Only one is implemented, because the other two
463         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
464         be default behaviour on win32 anyway ...
465
466         * gtk/gtk.def : updated
467
468         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
469         from where it was built and add an additional rule to automagically
470         build gtkmarshal.[hc]
471
472         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
473         before array access for the current entry isn't finished
474
475         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
476         use g_return_val_if_fail
477
478         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
479         for the static array, but let the compiler calculate it. It
480         makes me wonder if gcc isn't capable to catch bugs like this ...
481
482 2001-03-31  James Henstridge  <james@daa.com.au>
483
484         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
485         constant "-1" in the aux info structure.
486
487 2001-03-30  Alexander Larsson  <alexl@redhat.com>
488
489         * gtk/gtkbutton.c (gtk_button_get_property):
490         * gtk/gtklabel.c:
491         Remove leaks.
492         
493         * gtk/gtkcontainer.c:
494         * gtk/gtkhscale.c:
495         * gtk/gtkhscrollbar.c:
496         * gtk/gtklayout.c:
497         * gtk/gtkmisc.c:
498         * gtk/gtkprogress.c:
499         * gtk/gtkprogressbar.c:
500         * gtk/gtkrange.c:
501         * gtk/gtktable.c:
502         * gtk/gtkviewport.c:
503         * gtk/gtkvscale.c:
504         * gtk/gtkvscrollbar.c:
505         * gtk/gtkwidget.c:
506         Property patches, based on patches from John Margaglione and Lee Mallabone.
507
508 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
509
510         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
511         adjustment. Cleaned redundant preconditions (spin != NULL). Added
512         inline API function docs.
513         (gtk_spin_button_new_with_range): New convenience constructor.
514         (gtk_spin_button_set_increments): New adjustment helper.
515         (gtk_spin_button_set_range): New adjustment helper.
516
517         * gtk/testgtk.c : added test of the new convenince constructor and
518         value_changed signals.
519
520 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
521
522         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
523         listen to the reorder signal.
524
525 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
526
527         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
528         to get the aux info structure fo the widget.
529
530         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
531         above function.
532
533         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
534
535         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
536         to get the size of the window manager frame, basically the same
537         code that gdk_window_get_root_origin() had
538         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
539
540         * gtk/gtkwindow.c (gtk_window_set_default_size): use
541         gdk_window_resize() if the window is realized and resizeable
542
543         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
544         typo so that setting gravity works
545
546         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
547         allocation if auto_shrink is on, even if the default size
548         has not changed.
549
550         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
551         g_return_if_fail
552
553 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
554
555         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
556         reordering/sorting work.  Now pretty much works.
557
558         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
559         reorder mostly work.  Still need to get the parity correct.
560
561         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
562         signal, so I can listen for the sort_column_changed signal so I
563         can change my "sort_indicator" property.  Cool.
564
565 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
566
567         [ Patch from Havoc Pennington, hp@redhat.com ]
568
569         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
570         Add functions gdk_window_begin_resize_drag/begin_move_drag
571         to start resizing or moving a toplevel window. This
572         is done either using the _NET_WM_MOVERESIZE protocol,
573         or, if that isn't present, by emulation.
574
575         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
576         to export the above to GTK+-land.
577
578         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
579         
580         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
581         Move this function into gdkwindow, since we need it
582         when implementing fallback resizing.
583
584         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
585         Fix typo when setting gravity.
586
587         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
588         Add an optional (but on by default) resize grip for resizing 
589         the parent window.
590
591 01-03-29  Alexander Larsson  <alexl@redhat.com>
592
593         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
594         Don't return TRUE from the event handler, that blocks all
595         event signals on the tooltip widget. Now you can press buttons
596         in toolbars again.
597
598 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
599
600         * gtk/testtext.c (create_buffer): Add missing NULL on
601         valist.
602
603         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
604         c-n-p problem with INCONSISTENT property.
605
606         [ Patch from Havoc Pennington  <hp@redhat.com> ]
607
608         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
609         hook.
610
611         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
612         signal as a hook for extending the default popup menu
613
614         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
615         use radio menu items for the input method menuitems
616
617         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
618         inserted unicode from Ctrl-Shift-hex input method
619
620         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
621         validatation here, already done at GtkTextBuffer level.
622
623         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
624         popup_menu run action signal and Shift+F10 and Menu keybindings.
625
626         * gtk/gtkentry.c: implement a default handler for popup_menu
627
628         * gtk/gtktextview.c: implement a default handler for popup_menu
629
630         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
631         from a key event
632         
633         * gtk/gtklabel.c: remove "trailer" cruft
634
635 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
636
637         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
638         handle reordering of trees.  Seems to mostly work w/ the exception
639         of the parity flag.
640
641         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
642         signal.
643
644 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
645
646         * gtk/gtkwidget.h: c++ fixes.
647
648 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
649
650         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
651         memory.
652
653 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
654
655         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
656         Nils Barth fixing event return values. (#51041)
657
658         * gtk/gtkwidget.c: Fix some return values for default
659         functions.
660
661         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
662         return values for trough_keys functions.
663
664         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
665         value for add_accelerator (shoudl have been a void
666         return.)
667
668         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
669         Fix return type of EVENT.
670
671         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
672         signal return a boolean.
673
674 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
675
676         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
677         reordered signal.
678
679         * tests/testtreesort.c (main): fix spelling.
680
681 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
682
683         * gtk/gtkliststore.c: More work on implementing sortable
684         interface.
685
686 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
687
688         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
689         reference the widgets in the resulting list. (#11821)
690         This makes this consistent with gtk_container_children.
691
692         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
693         uses of gtk_window_list_toplevels.
694
695 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
696
697         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
698         a virtual function to set whether the IM context should use 
699         the preedit string. (#51922)
700         
701 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
702
703         * gdk/gdkpango.h: Remove stale FIXME comment.
704
705 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
706
707         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
708         Fixed bug that returned NULL if a filename was selected.
709
710 2001-03-24  Havoc Pennington  <hp@pobox.com>
711
712         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
713         to contain the word "theme"
714
715 2001-03-24  Havoc Pennington  <hp@pobox.com>
716
717         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
718         slower but finer-grained
719         (gtk_hsv_focus): get initial focus on the ring or triangle 
720         according to tab direction
721
722         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
723
724 2001-03-23  Havoc Pennington  <hp@pobox.com>
725
726         * gtk/gtkhsv.c: make this somewhat key-navigable
727
728         * gtk/gtkfontsel.c: mnemonics
729
730         * gtk/gtkgamma.c: mnemonics
731
732         * gtk/gtkcolorsel.c: add mnemonics to labels
733
734 2001-03-22  Havoc Pennington  <hp@pobox.com>
735
736         Applied big patch from Seth Lytle to fix event handler return
737         values, slightly modified.
738
739         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
740         handled.
741         (gtk_calendar_key_press): return TRUE for GDK_space triggers
742         select_day
743
744         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
745         (gtk_clist_button_release): return TRUE if handled
746
747         * gtk/gtkcolorsel.c (mouse_release):
748         (palette_activate): 
749         (palette_press): 
750         (palette_new): 
751         (mouse_press): 
752         (get_screen_color): 
753         fixed return type (void to gboolean), return TRUE,
754         added GTK_SIGNAL_FUNC cast
755
756         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
757         (void to gboolean), and return TRUE
758         (gtk_combo_button_release): changed return value to TRUE after
759         gtk_grab_add on combo->popwin
760
761         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
762         collapse or expand
763
764         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
765         button/motion
766
767         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
768         press/release and motion that trigger act
769
770         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
771
772         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
773         for GDK_Return
774         
775         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
776         (gtk_list_button_release): return TRUE if selection
777
778         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
779         press
780
781         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
782         (gtk_menu_shell_button_release): chain parent_menu_shell retval
783
784         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
785         nothing triggered
786         (gtk_notebook_button_release): return TRUE if we do anything
787
788         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
789         (gtk_spin_button_button_release): return TRUE or chained retval
790
791         * gtk/gtktext.c (gtk_text_button_press): 
792         (gtk_text_button_release): return TRUE
793         (gtk_text_key_press): remove redundant retval code
794         
795         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
796         and sensitive
797         (gtk_tree_item_subtree_button_click): changed type to gint, and return
798         TRUE if sensitive
799
800         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
801         return TRUE
802
803 2001-03-23  Havoc Pennington  <hp@redhat.com>
804
805         * gtk/testgtk.c: fix warnings
806
807         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
808
809         * gtk/gtktextview.c: fix warnings
810
811         * gtk/gtktext.c (find_cursor_at_line): fix warning
812
813         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
814
815         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
816         of this function
817
818         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
819         fix warning
820
821         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
822
823         * gtk/gtkfontsel.c: fix warning
824
825         * gtk/gtkcolorsel.c: fix warnings
826
827 2001-03-23  Havoc Pennington  <hp@redhat.com>
828
829         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
830
831         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
832
833         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
834         and deprecated gtk_check_menu_item_set_show_toggle().
835         
836         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
837
838         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
839
840         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
841
842 2001-03-23  Havoc Pennington  <hp@redhat.com>
843
844         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
845         some docs
846
847 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
848
849         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
850         this.
851
852         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
853         set_cell to set_value
854
855         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
856         set_cell to set_value
857
858 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
859
860         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
861         fix braino.
862         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
863         support.
864
865         * gtk/gtktreeview.c: Addition of initial sortable support.
866
867         * gtk/gtktreestore.c: Addition of initial sortable support.
868
869         * gtk/gtkliststore.c: Addition of initial sortable support.
870
871         * gtk/gtkmarshal.list: yet another marshaller.
872
873         * gtk/gtktreedatallist.[ch]: shared code between the store models
874         for handling sorting headers.
875
876 2001-03-22  Havoc Pennington  <hp@redhat.com>
877
878         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
879         (gtk_container_unset_focus_chain): Add ability to override the 
880         focus chain for a container explicitly
881
882 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
883
884         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
885         added PROP_MNEMONIC_WIDGET.
886
887         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
888         (gtk_window_remove_mnemonic): 
889         (gtk_window_add_mnemonic): fixed assertions.
890         (gtk_window_activate_mnemonic): constrain modifier checks to those
891         permitted by gtk_accelerator_get_default_mod_mask().
892         got rid of gtk_window_get_default_accel_group().
893
894         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
895         activatable widgets either by focussing or a warning.
896         added a signal accumulator to ::activate_mnemonic which stops the
897         emission once a handler returned TRUE.
898
899 2001-03-22  Havoc Pennington  <hp@pobox.com>
900
901         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
902         the stock item label
903
904         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
905
906         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
907
908         * demos/gtk-demo/*.c: Add mnemonics all over the place
909
910         * gtk/gtklabel.h: mark parse_uline deprecated
911
912 2001-03-21  Alexander Larsson  <alexl@redhat.com>
913
914         * gtk/gtkitemfactory.[ch]:
915         Add support for stock and normal imagemenuitems.
916         
917         * gtk/testgtk.c:
918         Add some tests for mnemonics, stock toolbars, stock
919         and image menuitems in itemfactory and gdk_window_scroll.
920
921 2001-03-21  Alexander Larsson  <alexl@redhat.com>
922
923         * gtk/gtkbutton.[ch]:
924         * gtk/gtkdialog.c:
925         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
926         removed accel_group argument. Renamed gtk_button_new_accel() to
927         gtk_button_new_with_mnemonic() and removed accel_group argument.
928
929         * gtk/gtkcheckbutton.[ch]:
930         New function gtk_check_button_new_with_mnemonic().
931
932         * gtk/gtkentry.c:
933         Override activate_mnemonic and just grab focus.
934
935         * gtk/gtkitemfactory.c:
936         Don't add menu uline accel group, instead use mnemonics support.
937
938         * gtk/gtklabel.[ch]:
939         New support for mnemonics.
940
941         * gtk/gtkmarshal.list:
942         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
943
944         * gtk/gtkmenu.[c]:
945         * gtkmenushell.c:
946         Use mnemonics instead of accel groups for uline
947         support in menu items.
948         Removed gtk_menu_get_uline_accel_group() and
949         gtk_menu_ensure_uline_accel_group().
950
951         * gtk/gtkmenuitem.c:
952         Override activate_mnemonic to handle switching between
953         menu items if there are collisions.
954         
955         * gtk/gtknotebook.c:
956         Connect to activate_mnemonic on the tab_label, so that
957         activating it switches to that notebook page.
958
959         * gtk/gtkwidget.[ch]:
960         Add activate_mnemonic signal. New function
961         gtk_widget_activate_mnemonic() to emit it.
962         Default implementation does activate/grab_focus.
963
964         * gtk/gtkwindow.[ch]:
965         Add support for mnemonics in windows.
966         New functions:
967         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
968         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
969
970         * gtk/testgtk.c:
971         Update to function name changes.
972         
973 2001-03-21  Alexander Larsson  <alexl@redhat.com>
974
975         * gtk/gtkimagemenuitem.[c]:
976         Add gtk_image_menu_item_new_from_stock()
977
978 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
979
980         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
981         Fix buglet in meeting.
982
983 2001-03-19  Havoc Pennington  <hp@redhat.com>
984
985         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
986         add a bunch of accessor functions. This is because we have
987         reasonable expectations of extending what fields it contains in
988         the future.
989
990         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
991         changes
992
993         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
994         GtkIconSource   
995
996 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
997
998         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
999         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1000
1001         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1002           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1003           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1004           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1005         Change float to double everywhere with the exception of 0<->1.0 alignment
1006         and GtkCurve.
1007
1008 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1009
1010         * gdk/win32/gdkdrawable-win32.c
1011         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1012         output.
1013
1014         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1015         gdkwin32.h.
1016
1017 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1018
1019         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1020         print_event_state, print_event): Use preprocessor macro to make
1021         code more compact. Print also GDK_WINDOW_STATE events.
1022         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1023         
1024         * gtk/gtk.def
1025         * gtk/makefile.mingw.in: Update.
1026
1027         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1028         to catch also Cygwin.
1029
1030 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1031
1032         * gtk/gtkspinbutton.[hc]: added rc-style argument
1033         GtkSpinButton::shadow_type.
1034         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1035         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1036         rc-style settings.
1037
1038         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1039
1040         * gtk/gtkwidget.c: quark cleanups.
1041
1042         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1043         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1044         to create_rc_style() (we don't do cloning in standard OO sense).
1045         added per rc style properties.
1046         
1047         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1048         property values and for caching those. some cleanups.
1049         
1050         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1051         
1052         * gtk/gtksettings.[hc]: new file for global rc-file properties
1053         (at least currently, should get extended to support X properties
1054         and other communication mechanisms).
1055         
1056         * gtk/gtkwidget.[hc]: added style property support:
1057         (gtk_widget_class_install_style_property_parser): install style
1058         property pspec with parser function for rc-file values other
1059         than LONG, DOUBLE or STRING.
1060         (gtk_widget_class_install_style_property): same as above without
1061         parser (parsers are going to be needed quite infrequently).
1062         (gtk_widget_style_get_property): retrive style property value.
1063         (gtk_widget_style_get_valist): same as above with varargs support,
1064         has NOCOPY semantics.
1065         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1066
1067 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1068
1069         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1070         "row_activated" signal.
1071
1072         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1073         stupidity.  Lets actually pass in the row with this signal...
1074
1075 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1076
1077         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1078
1079         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1080
1081         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1082         everything into the ::destroy function, and freed a lot more.
1083
1084 2001-03-16  Havoc Pennington  <hp@redhat.com>
1085
1086         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1087         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1088         are now allowed.
1089
1090 2001-03-16  Havoc Pennington  <hp@redhat.com>
1091
1092         * Applied patch from Nils Barth (bug # 51041) to 
1093         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1094         in various places.
1095
1096 2001-03-15  Havoc Pennington  <hp@redhat.com>
1097         
1098         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1099         for properties to set on the tag.
1100
1101         * gtk/testtext.c: fixups to reflect create_tag change
1102         
1103         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1104         background/foreground stipple are objects, not boxed.
1105
1106         * demos/gtk-demo/textview.c: intellihancing
1107
1108 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1109
1110         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1111         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1112
1113 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1114
1115         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1116         Fix sign error with queued region translations.
1117
1118 2001-03-15  HideToshi Tajima  <tajima@happy>
1119
1120         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1121         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1122         * gtk/gtkentry.c (update_im_cursor_location): 
1123         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1124         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1125         set_cursor_pos to set_cursor_location in GtkInputContext class
1126
1127 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1128
1129         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1130         the location of the cell relative to its area.
1131         * gtk/gtkcell*: modified for above change
1132         * gtk/gtktreeview.c: modified for above change.
1133
1134 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1135
1136         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1137          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1138         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1139
1140 2001-03-14  Havoc Pennington  <hp@redhat.com>
1141
1142         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1143         
1144         * gtk/gtk.h: remove gtkdata.h
1145
1146         * gtk/Makefile.am: remove gtkdata
1147         
1148         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1149         not "disconnect" on the adjustments.
1150         
1151         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1152         GtkData
1153
1154         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1155         not GtkData
1156
1157         * configure.in: handle case where X render exists, but Pango lacks
1158         Xft support.
1159
1160 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1161
1162         * gtk/gtktoolbar.[ch]:
1163         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1164         to add stock items to toolbars.
1165
1166         * gtk/Makefile.am:
1167         Remove ../gdk/gdkim.h from gdk_headers.
1168
1169 2001-03-15  Sven Neumann  <sven@gimp.org>
1170
1171         * gdk/gdkim.h: removed
1172         
1173         * gdk/gdkprivate.h
1174         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1175
1176 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1177
1178         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1179         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1180         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1181         set_cursor_pos() virtual method
1182
1183         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1184         (gtk_im_context_xim_set_cursor_pos): add implementation for
1185         set_cursor_pos() method
1186
1187         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1188         position to input methods
1189
1190 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1191
1192         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1193         code a lot.
1194
1195         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1196         g_mem_chunk.
1197         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1198         (_gtk_tree_data_list_node_to_value): Fix to switch on
1199         G_TYPE_FUNDAMENTAL.
1200         (_gtk_tree_data_list_value_to_node): Fix to switch on
1201         G_TYPE_FUNDAMENTAL.
1202         (_gtk_tree_data_list_node_copy): Fix to switch on
1203         G_TYPE_FUNDAMENTAL.
1204
1205 2001-03-12  Havoc Pennington  <hp@redhat.com>
1206
1207         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1208         to convert to new property API. Also, change default_width and
1209         default_height get_property to return 0 as the flag value for
1210         "unset"; -1 is not a valid value for these fields.
1211
1212 2001-03-12  Havoc Pennington  <hp@redhat.com>
1213
1214         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1215         enum with registration for icon sizes, instead of strings.
1216
1217         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1218         gtkwidget.c: Fix to reflect GtkIconSize
1219         
1220 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1221
1222         Make GtkFB compile and link.
1223         
1224         * gdk/linux-fb/gdkdrawable-fb2.c:
1225         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1226         
1227         * gdk/linux-fb/gdkwindow-fb.c:
1228         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1229         Added gdk_window_shape_combine_region.
1230         Added assorted placeholders for unimplemented new GdkWindow API calls.
1231
1232 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1233
1234         * gtk/gtkfilesel.c:
1235         Add more test when converting filenames from/to utf-8.
1236         Don't allow entering text in the filename entry which isn't allowed in
1237         a filename. Just beep instead.
1238
1239 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1240
1241         * gtk/gtkclist.c:
1242         Scroll using gdk_window_scroll(). Don't wait for exposes.
1243         Move the column headers in an order that makes them flash less.
1244
1245 2001-03-10  Hans Breuer  <hans@breuer.org>
1246
1247         * gdk/gdk.def : updated
1248
1249         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1250         to offseting the clip_mask at the right place
1251
1252         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1253         for all the gdkClasses, especially not for the input_only case.
1254         Otherwise flickering wont be avoidable, because we don't get
1255         WM_ERASEBKGND message for these windows.
1256
1257         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1258         and fixed massive redraw problems apparently triggered by Alexanders 
1259         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1260         but it seems to work quite well :-)
1261
1262         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1263         prototype
1264
1265 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1266
1267         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1268         (gtk_list_store_set_cell): Fix a stupid typo.
1269
1270 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1271
1272         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1273         select_all not work if you're in SINGLE mode (it doesn't make that
1274         much sense, anyway.)
1275
1276         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1277         handle types more sanely.
1278         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1279         (_gtk_tree_data_list_node_copy): handle types more sanely.
1280
1281         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1282         GValue better. Converts the type as well.
1283
1284         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1285         GValue better. Converts the type as well.
1286
1287 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1288
1289         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1290         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1291         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1292         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1293
1294         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1295         gdk_im/gdk_ic.
1296
1297 2001-03-09  Hans Breuer  <hans@breuer.org>
1298
1299         * gdk/gdk.def : updated
1300
1301         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1302         for their palette
1303
1304         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1305         removing
1306
1307         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1308         removing and implemented Havoc's GdkWindow state functions; 
1309         stick/unstick only as no-op, cause I don't know how to emulate 
1310         on win32 ...
1311
1312         * gtk/gtk.def : updated
1313
1314         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1315
1316         * gtk/gtktypeutils.c : #include <string.h>
1317
1318         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1319
1320 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1321
1322         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1323         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1324         not a boxed.
1325
1326 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1327
1328         * docs/Changes-2.0.txt:
1329         Document expose event->region change and that gtk_widget_event
1330         doesn't allow passing expose events.
1331
1332         * gdk/gdkevents.h:
1333         Add region to expose event.
1334         
1335         * gdk/gdkevents.c:
1336         Handle event->region in gdk_event_copy() and gdk_event_free().
1337
1338         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1339         Generate expose_event->region when creating expose events.
1340
1341         * gdk/x11/gdkevents-x11.c:
1342         Generate expose events with regions when translating X events.
1343
1344         * gtk/gtkcontainer.[ch]:
1345         Default expose handler that propagates expose events to NO_WINDOW
1346         children. New function gtk_container_propagate_expose()
1347
1348         * gtk/gtkwidget.[ch]:
1349         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1350         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1351         expose events. New function gtk_widget_send_expose() to send expose
1352         events. New function gtk_widget_region_intersect() to calculate
1353         window/region intersections.
1354         
1355         * gtk/gtkmain.c (gtk_main_do_event):
1356         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1357         Use gtk_widget_send_expose() to send expose events.
1358         
1359         * gtk/gtkbin.c:
1360         * gtk/gtkbox.c:
1361         * gtk/gtkfixed.c:
1362         * gtk/gtkimagemenuitem.c:
1363         * gtk/gtklist.c:
1364         * gtk/gtkpacker.c:
1365         * gtk/gtktable.c:
1366         * gtk/gtktree.c:
1367         Remove expose handler, using the default container implementation
1368         instead.
1369         
1370         * gtk/gtkbutton.c:
1371         * gtk/gtkcheckbutton.c:
1372         * gtk/gtkeventbox.c:
1373         * gtk/gtkfixed.c:
1374         * gtk/gtkhandlebox.c:
1375         * gtk/gtklayout.c:
1376         * gtk/gtklistitem.c:
1377         * gtk/gtkmenu.c:
1378         * gtk/gtkmenubar.c:
1379         * gtk/gtkmenuitem.c:
1380         * gtk/gtknotebook.c:
1381         * gtk/gtkoptionmenu.c:
1382         * gtk/gtkpaned.c:
1383         * gtk/gtkscrolledwindow.c:
1384         * gtk/gtktogglebutton.c:
1385         * gtk/gtktoolbar.c:
1386         * gtk/gtktreeitem.c:
1387         * gtk/gtkviewport.c:
1388         Chain expose handler to parent class handler. Use
1389         gtk_container_propagate_expose() to propagate exposes.
1390
1391         * gtk/gtkclist.c (check_exposures):
1392         * gtk/gtktext.c (process_exposes):
1393         Use gtk_widget_send_expose instead of gtk_widget_event.
1394
1395 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1396
1397         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1398
1399 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1400
1401         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1402         unref the nodes.   Fixes bug #50058.
1403
1404         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1405         "::ref_iter" to "::ref_node".
1406         (gtk_tree_model_unref_node): change "::unref_iter" to
1407         "::unref_node". Fixes bug #50064.
1408
1409 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1410
1411         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1412         support for invisible cells.
1413          (gtk_tree_view_bin_expose): ditto
1414
1415 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1416
1417         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1418         on gobjects.
1419
1420         * tests/testtreefocus.c (main): New test file.
1421
1422         * tests/testtreeview.c: update to latest glib changes.
1423
1424         * tests/testtreecolumns.c: update to latest glib changes.
1425
1426 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1427
1428         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1429
1430 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1431
1432         * *.c: added accumulator data argument to g_signal_newc()
1433         functions.
1434
1435         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1436         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1437         * gtk/treestoretest.c (make_window):
1438         s/g_signal_connect/g_signal_connectc/.
1439
1440         * gtk/gtktextbuffer.c: completed signal arg fixups,
1441         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1442
1443 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1444
1445         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1446         G_CONST_RETURN.
1447
1448         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1449         ::hierarchy-changed signal when a widget changes
1450         from anchored to unanchored or vice versa.
1451         (anchored means 
1452          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1453         Use a private flag to keep track of this efficiently.
1454
1455 2001-03-07  Havoc Pennington  <hp@redhat.com>
1456
1457         * gtk/testgtk.c (create_spins): uglify so that size request gets
1458         tested.
1459
1460         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1461         request on values for upper/lower, completes #6152
1462
1463 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1464
1465         * Makefile.am: Remove gtk-config-2.0 again.
1466         (Grrrr, pkg-config. And stops make loops.)
1467
1468 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1469
1470         * gtk/gtksignal.[hc]: removed old emission hook API.
1471         
1472         * docs/Changes-2.0.txt: fixed sections.
1473         
1474         * gtk/gtktextbuffer.c: signal arg fixups.
1475
1476 2001-03-07  Havoc Pennington  <hp@redhat.com>
1477
1478         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1479
1480         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1481         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1482         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1483         validation and the redraw which is higher priority than the
1484         validation.
1485
1486 2001-03-07  Havoc Pennington  <hp@redhat.com>
1487
1488         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1489         (gtk_entry_set_property): remove trailer
1490
1491         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1492         (gtk_entry_get_width_chars): new functions, to set size request to 
1493         a given number of characters
1494
1495         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1496
1497         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1498         (gtk_dialog_get_has_separator): new function
1499         (run_delete_handler): fix to not emit "response" signal
1500         because we already did in the delete event handler installed
1501         at dialog creation time.
1502         
1503         * gtk/gtkdialog.h: add a has_separator property,
1504         add GTK_DIALOG_NO_SEPARATOR flag
1505
1506 2001-03-07  Havoc Pennington  <hp@redhat.com>
1507
1508         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1509         off decorations for a window.
1510
1511         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1512         changes
1513
1514         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1515         to get location of PangoLayout inside the label, closes #51198
1516
1517         * gtk/testgtk.c (create_bbox): fix up button box usage
1518
1519         * gtk/testcalendar.c (create_calendar): fix up button box usage
1520
1521         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1522
1523         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1524
1525         * gtk/gtkhbbox.h: deprecations
1526
1527         * gtk/gtkvbbox.h: deprecations
1528
1529         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1530         emulate deprecated gtk_button_box_get_spacing
1531
1532         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1533         the "set global default" functions
1534         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1535         GtkBox base class
1536
1537         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1538
1539         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1540         render the icon, return the missing image icon.
1541
1542         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1543         image icon if the load fails.   
1544
1545         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1546         when no image is found; should be the Netscape "missing image"
1547         icon eventually but for now is a random image
1548
1549         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1550         role for the session manager
1551
1552         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1553
1554         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1555         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1556
1557         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1558
1559 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1560
1561         * gtk/*.c: marshaller fixes.
1562         
1563         * gtk/gtkmarshal.list: extreme cleanup.
1564
1565         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1566         param spec for now.
1567
1568         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1569         where appliable.
1570
1571         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1572         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1573         which are not reference counted:
1574         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1575         PangoFontDescription, GtkTreeIter and GtkTreePath.
1576
1577 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1578
1579         * gtk/gtktreeselection.h: 
1580         * gtk/gtktreemodel.c:
1581         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1582         file should be included directly, and gobject/gmarshal.h
1583         as well as gtk/gtkmarshal.h even can't be included directly.
1584
1585         * Makefile.am: grr, install gtk-config-2.0.
1586
1587         * gtk/testgtk.c:
1588         * gtk/simple.c:
1589         * gtk/gtkmenu.c:
1590         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1591         passing "*signal*::*" args to gtk_widget_set().
1592         
1593         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1594         
1595         * gtk/*.c: removed trailer arg from property setters and getters.
1596         macro fixups.
1597
1598 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1599
1600         * gtk/gtklabel.c (set_markup): Removed warning
1601
1602 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1603
1604         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1605         field to allow you to hide cell renderers.
1606
1607         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1608
1609         * gtk/gtktreeview.c: Add support for invisible cells.
1610
1611 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1612
1613         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1614         Add "clicked" signal back to columns.
1615
1616         * ChangeLog: remove conflict markers.
1617
1618 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1619
1620         * gtk/gtkbutton.c: Add animation of activation by, on 
1621         activate, pressing the button, and adding a timeout that 
1622         releases the button after 250ms or on key release and
1623         emits ::clicked. (#51501)
1624
1625         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1626         action area, we connect to ::clicked instead of ::activate
1627         so the dialog stays up through the animation.
1628
1629 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1630
1631         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1632         check the ignore_enter flag for the menu shell that
1633         the item is actually a child of, not for attached
1634         submenus. (#51536)
1635
1636 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1637
1638         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1639         special key-press grab handling for widgets within
1640         GtkWindows. Otherwise, fall through to normal case.
1641
1642         This prevents key events being sent twice to GtkInvisible
1643         widgets, which can cause all sorts of mischief.
1644
1645 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1646
1647         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1648         widget is in effect, give the grab widget a first
1649         crack at KEY_PRESS/RELEASE events. (#424)
1650
1651 2001-03-06  James Henstridge  <james@daa.com.au>
1652
1653         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1654         offset for the window_state_event to point at window_state_event
1655         rather than no_expose_event.
1656
1657 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1658
1659         * gtk/gtkimmodule.h: fix busted /* comment */
1660
1661 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1662
1663         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1664         object properties.
1665
1666 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1667
1668         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1669         add object properties.
1670
1671         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1672         to add object properties.
1673
1674         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1675         object properties.
1676
1677         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1678         add object properties.
1679
1680         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1681         object properties.
1682
1683 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1684
1685         * gtk/gtktreemodel.c: renamed "child_toggled" to
1686         "has_child_toggled".
1687
1688         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1689         handle new signal name.
1690
1691         * gtk/gtktreestore.c: Updated to handle new signal name.
1692         * gtk/gtklisttore.c: Updated to handle new signal name.
1693         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1694
1695 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1696
1697         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1698         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1699
1700 2001-03-05  Michael Natterer  <mitch@gimp.org>
1701
1702         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1703         pixbuf-engine coincidentially also failed to make one of it's
1704         parent_class pointers static, causing overwriting of GtkLabel's
1705         parent_class pointer in pixbuf_style_class_init().
1706         (Will commit the fix to the pixbuf-engine too).
1707
1708 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1709
1710         * gdk/gdkwindow.h:
1711         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1712         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1713         gdk_window_set_icon_list for net wmspec functionality.
1714
1715         * gdk/x11/gdkwindow-x11.c:
1716         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1717         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1718         gdk_window_set_icon_list.
1719         Added gdk_wmspec_change_state helper function and used it in the code.
1720         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1721
1722         * gtk/gtkdialog.c (gtk_dialog_init):
1723         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1724
1725         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1726         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1727
1728         * gtk/gtkwindow.c:
1729         new function gtk_window_set_type_hint.
1730         On realize, set type hint and modal hint.
1731
1732         * gtk/gtkwindow.h:
1733         Added type_hint field and gtk_window_set_type_hint.
1734
1735 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1736
1737         * gtk/gtklabel.[ch]:
1738         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1739         New function gtk_label_get_accel_keyval () to get the underline accelerator
1740         of the label. Setting the label pattern overrides other attributes.
1741
1742 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1743
1744         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1745         Added missing initializers to gtk_rc_style_init().
1746
1747 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1748
1749         * gtk/gtktextview.c: fixed bug #51097 about setting 
1750         gtk_text_view_set_border_window_size() if the widget is 
1751         already realized.
1752
1753 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1754
1755         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1756
1757         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1758         comment. Won't do to have duplicated doc comments between
1759         the platform subdirs.
1760
1761 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1762
1763         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1764           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1765
1766         Detectable auto-repeat - make a repeating key generate
1767         press/press/press/release instead of press/release pairs.
1768
1769         If we have Xkb and XkbSetDectableAutoRepeat supports
1770         that, we do it that way. Otherwise, when we get
1771         a release event, we check ahead with XPending to see
1772         if the next key is a KeyPress with the same keycode
1773         and timestamp. (Not 100% reliable, but pretty close.)
1774           
1775 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1776         
1777         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1778         special key-press grab handling for widgets within
1779         GtkWindows. Otherwise, fall through to normal case.
1780  
1781         This prevents key events being sent twice to GtkInvisible
1782         widgets, which can cause all sorts of mischief.
1783  
1784 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1785  
1786         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1787         widget is in effect, give the grab widget a first
1788         crack at KEY_PRESS/RELEASE events. (#424)
1789  
1790 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1791
1792         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1793         to extend the selection. (Roughly based on patch
1794         from Jay Cox, #50939)
1795
1796         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1797         to properly handle previous GDK_BUTTON_PRESS. 
1798         (Patch from Jay Cox, #50938)
1799
1800         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1801         '\0' back along with the deleted text. (#51148)
1802
1803 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1804
1805         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1806         the group when extracting it from the X keyboard event.
1807
1808         * modules/input/Makefile.am modules/input/imipa.c: 
1809         Simple module for entering IPA. (Do we need a 
1810         gtk-stupid-input-tricks CVS module?)
1811
1812 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1813
1814         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1815         const.
1816
1817         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1818
1819         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
1820         is no focus widget for the dialog currently, grab the focus as well
1821         as the default.
1822
1823         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
1824         the action area's children to iterate through, not the
1825         dialog's children.
1826
1827 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
1828
1829         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
1830         Add plug-socket tests. (Won't work worth a darn until I commit
1831         the rest of the plug-socket changes, but no reason these
1832         can't go into CVS now.)
1833
1834 2001-03-02  Havoc Pennington  <hp@redhat.com>
1835
1836         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
1837         _gdk_region_get_xrectangles()
1838
1839         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
1840
1841         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1842
1843         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1844         function, contributed by Ron Steinke    
1845
1846         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1847         gdk_net_wm_supports
1848
1849         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1850         New function, contributed by Ron Steinke
1851
1852         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1853         used to line up the text in the entry when using the entry for
1854         editable sheet cell hacks
1855
1856         * gtk/testgtk.c (create_entry): test the activate_default setting
1857         on GtkEntry
1858
1859         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1860         cause the entry to activate the default button for a dialog when 
1861         activated
1862         (gtk_entry_get_activates_default): new function
1863
1864 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1865
1866         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1867         Hwang to move call to sync_selection() up a few lines
1868         to before the row list is modified, to fix crash when
1869         removing rows in the undo_selection list.
1870
1871         (Test case provided by Daniel Elstner:
1872
1873         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1874
1875 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1876
1877         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1878         of tree->root_tree in parent_set rather than _map(), 
1879         fixing #50892 in a bit better manner.
1880
1881 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1882
1883         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1884
1885 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1886
1887         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1888         gtk_default_draw_shadow.
1889
1890 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1891
1892         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1893         warning, make warnings more verbose, treat a error
1894         in shmat as permanent, and don't try again.
1895         (#51163, Ed Randall.)
1896
1897 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1898
1899         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1900         delay for the first click before starting to scroll.
1901         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1902
1903         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1904         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1905
1906 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1907
1908         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1909         cleanup to remove some references to unused
1910         ->xoffset, ->yoffset.
1911
1912 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1913
1914         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1915         mask. (#51039, fix from Martin Maierhofer)
1916
1917 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1918
1919         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1920         for unshifted + and shifted = for non-us keyboards.
1921         Make <Control>+ and <Control>- work as well as 
1922         <Control>KP_Plus, <Control>KP_Minus for recursive
1923         open/close.  (#2682, René Seindal)
1924
1925 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1926
1927         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1928         the active menu item before deactivating the menu,
1929         so gtk_menu_popdown doesn't change the history. (#50964)
1930         
1931 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1932
1933         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1934         draw lines with text_gc rather than black_gc.
1935         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1936
1937 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1938
1939         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1940         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1941         less interrelated then it was, but it still requires the
1942         GtkTreeView to map it.
1943
1944         * test/testtreecolumn.c: Now I can add a column to one view,
1945         remove it, add it to the another view, remove it, then re-add it
1946         to the first.  Nifty.
1947
1948 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1949
1950         * docs/tutorial/gtk-tut.sgml: Minor corrections
1951
1952 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1953
1954         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1955         GtkRowReference.
1956
1957 2001-02-28  Havoc Pennington  <hp@redhat.com>
1958
1959         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1960         draw_default
1961         (gtk_widget_draw_focus): remove this function; we could instead
1962         make it just gtk_widget_draw(), but in most cases I think the
1963         result would be broken user code, so think it's better to have
1964         that code not compile and get fixed
1965         (gtk_widget_draw_default): ditto
1966
1967         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1968         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1969         
1970         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1971         widgets lose/get the default, instead of calling draw_default
1972         
1973         * docs/Changes-2.0.txt: note about all this
1974
1975         Then fixed every widget in GTK, I won't list all the filenames.
1976
1977 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1978
1979         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1980         _gtk_tree_row_reference_deleted.
1981         (inserted_callback): Proxy out to
1982         _gtk_tree_row_reference_inserted.
1983         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1984         get around signal emission ordering problem.
1985
1986         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1987         fix to work with SINGLE 
1988         (_gtk_tree_selection_internal_select_node): Major sanitization on
1989         selections.  SINGLE now seems to work.
1990
1991         * tests/Makefile.am: add testtreecolumn.c:
1992
1993         * tests/testtreecolumn.c: New test.  Mostly points out selection
1994         bugs currently, but will test columns later.
1995
1996         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1997         selection bug.  I hate touching this code -- it's scary.
1998
1999 2001-02-26  Havoc Pennington  <hp@redhat.com>
2000
2001         * gtk/testgtk.c: test the window state stuff
2002
2003         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2004         window come to the user's attention as if it were just created
2005         (gtk_window_iconify): new function
2006         (gtk_window_deiconify): new function
2007         (gtk_window_stick): new function
2008         (gtk_window_unstick): new function
2009         (gtk_window_maximize): new function
2010         (gtk_window_unmaximize): new function
2011
2012         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2013
2014         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2015
2016         * gdk/x11/gdkevents-x11.c: create window state events when
2017         appropriate
2018         (gdk_wmspec_supported): new function
2019
2020         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2021         iconification before showing the window
2022         (gdk_window_deiconify): new function
2023         (gdk_window_stick): new function
2024         (gdk_window_unstick): new function
2025         (gdk_window_maximize): new function
2026         (gdk_window_unmaximize): new function
2027
2028         * gdk/gdkwindow.c: store the window state in the window; 
2029         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2030         window->mapped.
2031         (gdk_window_get_state): return the current window state
2032
2033         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2034         (gdk_event_get_state): handle GDK_WINDOW_STATE
2035         (gdk_synthesize_window_state): function to create the window state
2036         events
2037
2038         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2039         event, for changes to "window state" such as maximized, sticky, 
2040         etc.
2041         
2042         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2043         focuses a window
2044
2045         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2046         finds out if we support a given WM spec hint
2047
2048 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2049
2050         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2051
2052 2001-02-25  Hans Breuer  <hans@breuer.org>
2053
2054         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2055         cause we want to loose those prototypes only in the latter case
2056
2057         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2058         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2059         impl member variable instead
2060
2061         * gtk/gtk.def : updated
2062
2063         * gtk/gtklist.c : 
2064         * gtk/gtkmenus.c : include <string.h> for memset ()
2065
2066         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2067         for everthing built here, but for gtk-x.x.dll only. This solves
2068         problem of indifferent gtk type definitions
2069
2070 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2071
2072         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2073
2074 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2075
2076         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2077         column that is exposed.
2078
2079         (_gtk_tree_view_update_size): Changed name from set_size, and
2080         changed function to do more work, and not force people calling it
2081         to figure out the size.  Simplifies a lot of code elsewhere.
2082
2083 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2084
2085         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2086         return solid masks for xpms that have no transparent color.
2087         This makes the ..._create_from_xpm... API backwards
2088         compatible.
2089
2090 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2091
2092         * README.win32: Update. Mention the gtk-1-3-win32-production
2093         branch.
2094
2095         * gdk/win32/bdfcursor.c: New file. A program that generates
2096         xcursors.h. Thanks to Stefan Ondrejicka.
2097
2098         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2099         compact format.
2100
2101         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2102
2103         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2104         function, uses xcursors.h.
2105         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2106         cursor from inline data instead of using LoadCursor() to generate
2107         it from a resource.
2108
2109         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2110         event, must check the Windows message for mouse button state, as
2111         the GDK event state might not have been built if it is
2112         undelivered. Remove one goto.
2113
2114         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2115         SetCursor() if the current cursor as returned by GetCursor() is
2116         the window's previous cursor. The ChildWindowFromPoint() test
2117         apparently didn't work correctly.
2118
2119         * gdk/win32/rc/*.cur: Remove.
2120
2121         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2122
2123         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2124
2125         * gtk/makefile.{mingw,msc}.in: Updates.
2126
2127 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2128
2129         * gtk/gtktreemodel.h: add functions for signal emission.
2130
2131         * gtk/gtktreestore.c: move to use above functions instead of
2132         g_signal_emit.
2133
2134         * gtk/gtkliststore.c: ditto
2135
2136 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2137
2138         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2139         GObject instead of GtkObject.
2140
2141         * gtk/gtkliststore.c: ditto.
2142
2143         * gtk/gtktreemodelsort.c: ditto.
2144
2145         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2146         GtkTreeModelIface, instead of in each model.
2147
2148 2001-02-21  Havoc Pennington  <hp@redhat.com>
2149
2150         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2151         unbreak this function
2152
2153         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2154         properties
2155
2156         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2157         properties
2158
2159         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2160         properties
2161
2162         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2163         mean unset the max length
2164
2165 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2166
2167         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2168         Changed name to be set_cell_data_func to make it clear what
2169         the functino does.  Close bug #51069.
2170
2171 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2172
2173         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2174         have memory actually freed.  Keeps box running longer.
2175
2176 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2177         
2178         * gtk/gtkseparatormenuitem.[ch]:
2179         Added new menu separator item. The drawing and size handling
2180         is still done in GtkMenuItem, but the API is a bit more sane.
2181         
2182         * gtk/Makefile.am:
2183         Add gtkseparatormenuitem.[ch].
2184
2185         * gtk/gtk.h:
2186         Add gtkseparatormenuitem.h.
2187         
2188         * gtk/gtkentry.c:
2189         * gtk/gtkmenufactory.c:
2190         * gtk/gtktextview.c:
2191         Use the new API for menu separators.
2192         
2193         * demos/gtk-demo/menus.c (create_menu):
2194         Add some GtkSeparatorMenuItem demo code.
2195
2196 2001-02-20  Havoc Pennington  <hp@redhat.com>
2197
2198         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2199         Lee Mallabone
2200
2201         * gtk/gtkarrow.c: Convert to new property API, patch from 
2202         Lee Mallabone
2203
2204 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2205
2206         * tests/testtreeview.c (toggled_callback): fix to reflect change
2207         in GtkTreeModelStore.
2208
2209 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2210
2211         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2212         function to create an icon set from a pixbuf.
2213
2214 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2215
2216         * gtk/gtkcellrenderertext.[ch]:
2217         Add a "markup" property.
2218
2219         * gtk/treestoretest.c:
2220         Use the markup property, remove some leftover stuff from
2221         GtkTreeModelMapping.
2222
2223 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2224
2225         * gtk/gtklabel.c (gtk_label_set_selectable):
2226         Queue a redraw if the selectable setting was changed.
2227
2228 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2229
2230         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2231         Actually copy the whole gc, not just the public parts.
2232         
2233         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2234         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2235         labels.
2236
2237 2001-02-19  Havoc Pennington  <hp@pobox.com>
2238
2239         * gdk/gdkwindow.c: docs
2240
2241         * gdk/gdkrgb.c: docs
2242
2243         * gdk/gdkregion-generic.c: docs
2244
2245         * gdk/gdkgc.c (gdk_gc_set_values): docs
2246
2247         * gdk/gdkdraw.c: docs
2248
2249         * gdk/gdkdrawable.h: deprecate drawable get/set data
2250
2251 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2252
2253         * demos/gtk-demo/dialog.c: Add simple new demo.
2254
2255 2001-02-19  Havoc Pennington  <hp@redhat.com>
2256
2257         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2258         insert_child_anchor signal, bug #50245
2259
2260         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2261         from create_child_anchor, so the anchor is passed in
2262
2263         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2264         (_gtk_widget_segment_new): have the child anchor object passed in, 
2265         instead of creating it.
2266
2267         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2268         to gtk_text_buffer_get_modified
2269
2270 2001-02-19  Havoc Pennington  <hp@redhat.com>
2271
2272         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2273         changed GLib without fixing GTK
2274
2275         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2276         functions to have an underscore in front. Most of them should 
2277         probably just go away, but for starters don't export them.
2278         Bug #50482
2279
2280 2001-02-19  Havoc Pennington  <hp@redhat.com>
2281
2282         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2283         excluded by default
2284
2285         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2286         clean up the old code a bit
2287
2288         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2289         inconsistent state
2290
2291         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2292         draw inconsistent state
2293
2294         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2295         (create_menu): add inconsistent test
2296
2297         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2298         new function
2299         (gtk_check_menu_item_get_inconsistent): new function
2300         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2301         state (using etched in for now)
2302
2303         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2304         draw inconsistent state
2305
2306         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2307         function, used when the user has selected a range of stuff in
2308         different states
2309         (gtk_toggle_button_get_inconsistent): accessor for that
2310         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2311         don't know what else to do)
2312
2313 2001-02-19  Hans Breuer <hans@breuer.org>
2314
2315         * gtk/gtk.def : updated exported symbols
2316
2317         * gtk/makefile.msc.in : updated
2318
2319         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2320         a colormap, when invoked from testgtk::entry. I'm not sure where
2321         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2322         avoids immediate crashing ...
2323
2324         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2325         any objections ?
2326
2327         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2328         0 parameter. At least msvc doesn't like macros with var args. 
2329         I simply removed the extra 0, was it a feature or a typo ?
2330
2331         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2332         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2333         because the value assignment to the internal struct wasn't working.
2334         I'm not absolutely sure. The problem could have been resolved by
2335         changing the "func" declartion in the struct, but was the pointer
2336         to the function pointer intended ?
2337
2338         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2339
2340         * gdk/gdk.def : updated exported symbols
2341
2342         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2343         only use SetDIBitsToDevice if there is a palette at the drawable
2344         and the image is GDK_VISUAL_PSEUDO_COLOR
2345
2346         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2347
2348         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2349
2350         * gdk/*/makefile.msc : updated
2351
2352 2001-02-19  Havoc Pennington  <hp@redhat.com>
2353
2354         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2355         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2356
2357         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2358         (gdk_key_repeat_restore): nuke
2359
2360         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2361         (gdk_init_check): no atexit func
2362
2363         * gdk/gdkrgb.h: mark some stuff deprecated
2364
2365         * gdk/gdkcolor.h: mark some stuff deprecated
2366         
2367         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2368
2369         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2370
2371 2001-02-16  Havoc Pennington  <hp@redhat.com>
2372
2373         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2374         scroll steps.
2375
2376         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2377         steps, and add Ctrl-arrow shortcuts for paging visually as with
2378         HScale, since Page Up and Page Down move logically.
2379
2380         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2381         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2382         
2383         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2384         steps
2385         (gtk_range_scroll): handle the visual steps
2386
2387         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2388         scroll steps
2389
2390         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2391         steps, not the logical ones.
2392
2393         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2394         (scroll_vertical): handle up/down steps
2395
2396 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2397
2398         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2399         Copy data and free data with free().
2400
2401         * gdk-pixbuf/gdk-pixbuf.c:
2402         * gdk-pixbuf/io-jpeg.c:
2403         * gdk-pixbuf/io-png.c:
2404         Use g_try_malloc/g_free instead malloc/free.
2405         
2406         * gdk-pixbuf/test-gdk-pixbuf.c:
2407         Must... initialize... gobject...
2408         
2409         * gdk-pixbuf/pixops/timescale.c:
2410         * gtk/gtkcalendar.c:
2411         Use g_malloc instead of malloc.
2412         
2413 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2414
2415         * gtk/testgtkrc:
2416         Comment out property assignments, these don't work yet.
2417
2418 2001-02-17  Havoc Pennington  <hp@pobox.com>
2419
2420         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2421         bit.
2422
2423 2001-02-17  Havoc Pennington  <hp@pobox.com>
2424
2425         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2426         shadowed variables that had broken size request in some cases,
2427         leading to bogus tooltips (#50996)
2428
2429 2001-02-06  Jon K Hellan  <hellan@acm.org>
2430
2431         Implement fast browsing of tooltips, bug #50619
2432         
2433         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2434         and last_popdown
2435         
2436         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2437         use_sticky_delay and last_popdown.
2438         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2439         time of popdown.
2440         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2441         is NULL.
2442         (gtk_tooltips_recently_shown): New static function.  Return true
2443         if < sticky_delay has elapsed since last popdown.
2444         (gtk_tooltips_event_handler): Display window after sticky_delay
2445         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2446         since last popdown.
2447         
2448 2001-02-17  Havoc Pennington  <hp@pobox.com>
2449
2450         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2451         instead of (). #6394
2452
2453         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2454         G_CONST_RETURN, make it return by reference, #50473
2455         
2456 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2457
2458         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2459         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2460         setup fields contain garbage (e.g. subwindow, breaking
2461         gdk_drawable_ref() upon event copy).
2462         (gtk_menu_stop_navigating_submenu_cb): same here.
2463
2464         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2465         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2466         * gtk/gtkclist.c (vertical_timeout): 
2467         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2468         default-zero-intialization for unions to memset(,0,), as unions are
2469         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2470         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2471
2472         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2473         g_closure_sink() warning.
2474
2475         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2476         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2477         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2478         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2479         
2480 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2481
2482         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2483         gtk_*_store_get, and moved to GtkTreeModel.
2484
2485         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2486
2487         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2488
2489         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2490
2491         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2492         set the func.
2493
2494         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2495         freeze/thaw notify between setting all the properties for a cell.
2496
2497         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2498
2499 2001-02-15  Havoc Pennington  <hp@redhat.com>
2500
2501         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2502         the X coordinates so they're with respect to the line, rather than 
2503         with respect to the layout.
2504
2505         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2506         Mallabone
2507
2508         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2509         and inverted test
2510
2511         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2512         #50806
2513
2514         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2515
2516         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2517         gtk_text_iter_is_end
2518
2519         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2520         rename gtk_text_buffer_get_end_iter
2521
2522         * gtk/testgtk.c (create_labels): Add test for selectable
2523
2524         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2525         the selection stuff. This code is kind of broken since it doesn't 
2526         use the theme engine.
2527
2528         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2529         fix infinite loop and y offset problem
2530         (gdk_draw_layout_line_with_colors): fix foreground color handling
2531
2532         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2533         that makes the label selectable.
2534         
2535         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2536         layout when the style is set, since fonts etc. could have changed.      
2537
2538 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2539
2540         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2541
2542         * gtk/gtktreemodelsimple.[ch]: removed.
2543
2544 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2545
2546         * gtk/gtktreemodelmapping.[ch]:
2547         New files. Implement GtkTreeModelMapping.
2548         
2549         * gtk/Makefile.am:
2550         Add gtktreemodelmapping.[ch].
2551         
2552         * gtk/gtk.h:
2553         Add gtktreemodelmapping.h
2554
2555         * gtk/treestoretest.c:
2556         Test the GtkTreeModelMapping
2557
2558 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2559
2560         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2561         have a demo, we might as well pass in real values.  Thanks to
2562         clahey for pointing this out.
2563
2564 2001-02-14  Havoc Pennington  <hp@pobox.com>
2565
2566         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2567         "static" to a private function
2568         (gtk_image_menu_item_class_init): remove destroy handler,
2569         add "image" object property
2570
2571 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2572
2573         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2574         Add a shortcut if the window and the current clip_region doesn't
2575         overlap. This is needed when there are a lot of windows in a
2576         window. The layout test in testgtk is a good test.
2577
2578         * gdk/linux-fb/gdkwindow-fb.c:
2579         Whitespace fix.
2580
2581 2001-02-13  Sven Neumann  <sven@convergence.de>
2582
2583         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2584
2585 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2586
2587         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2588         Don't reference last_cursor if it is null. Fixes crash when rotating
2589         the screen before having moved the mouse.
2590
2591         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2592
2593         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2594
2595         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2596         when using 90 or 270 degrees rotation.
2597
2598 2001-02-12  Havoc Pennington  <hp@pobox.com>
2599
2600         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2601         it always set the foreground, even if we were only using
2602         a stipple.
2603         (gdk_draw_layout_line_with_colors): new function, allow
2604         override colors
2605         (gdk_draw_layout_with_colors): new function, allow override
2606         colors
2607         (gdk_pango_layout_line_get_clip_region): function to get the clip
2608         region for a logical text range
2609         (gdk_pango_layout_get_clip_region): get the clip region for a
2610         logical text range
2611
2612         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2613         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2614         the right number of arguments.
2615
2616         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2617         enhance the function to check that node data corresponds to a 
2618         view still belonging to the tree.
2619
2620         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2621         GtkTreePath
2622         (gtk_tree_view_inserted): ditto
2623         (gtk_tree_view_child_toggled): ditto
2624
2625         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2626         simplify this code.
2627
2628         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2629         a PangoAttrList
2630
2631         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2632
2633         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2634
2635         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2636         size in the size request 
2637         (gtk_menu_bar_size_allocate): consider toggle size here
2638
2639         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2640         that displays a widget in the toggle slot
2641
2642         * gtk/testgtk.c: test GtkImageMenuItem
2643
2644         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2645         
2646         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2647         request and allocation
2648
2649         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2650
2651         * gtk/gtkcheckmenuitem.c
2652         (gtk_check_menu_item_toggle_size_request): ditto
2653         
2654 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2655
2656         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2657         reference.
2658
2659         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2660         and refuse to initialize GTK+ if they fail.
2661
2662 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2663
2664         * configure.in: Add check for gtk-doc version.
2665
2666 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2667
2668         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2669         where the xpad/ypad was only being used on one side!
2670
2671 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2672
2673         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2674         function, copied from X11 version.
2675
2676         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2677         DestroyCursor failures. The reason for the problem (despite the
2678         inconsistent messages from GetLastError()) was that
2679         DestroyCursor() cannot be called while a cursor is set in a
2680         window. Set the new cursor first and then destroy the old one.
2681         Thanks to jpe@archaeopteryx.com.
2682
2683         * gdk/win32/gdkcc-win32.c: Remove.
2684
2685         * gdk/win32/Makefile.am: Remove from here, too.
2686         
2687         * gdk/gdk.def
2688         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2689
2690         * gtk/gtk.def
2691         * gtk/makefile.mingw.in: Updates.
2692
2693 2001-02-08  Havoc Pennington  <hp@redhat.com>
2694
2695         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2696         add a widget to a bin that already has a child.
2697
2698         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2699
2700         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2701         
2702         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2703
2704         * gdk/gdk.h: remove gdkcc.h
2705
2706         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2707
2708         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2709         GdkPixbuf, since the previous implementation was GdkColorContext
2710         dependent.
2711
2712         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2713         
2714 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2715
2716         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2717         a sane value!
2718
2719 2001-02-08  Havoc Pennington  <hp@redhat.com>
2720
2721         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2722         lighten them.
2723
2724 2001-02-08  Havoc Pennington  <hp@redhat.com>
2725
2726         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2727         validation idle
2728
2729         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2730         cell renderer
2731
2732         * demos/pixbuf-demo.c (timeout): remove deprecated
2733         gtk_widget_draw
2734
2735         * demos/testpixbuf-save.c (main): remove deprecated
2736         gtk_drawing_area_size
2737
2738         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2739         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2740         at the start of the allocation.
2741         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2742         unsetup or NULL model.
2743
2744         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2745         even/odd/sorted cells in the tree view.
2746
2747         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2748         bugfixes
2749
2750         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2751         backgrounds with draw_flat_box using different detail for even/odd
2752         rows.
2753
2754         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2755         row, so we can draw the alternating colors thing
2756
2757         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2758         property from a synonym property, notify for the synonym.
2759         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2760         (gtk_text_tag_get_property): Always return the font, even if
2761         all its fields aren't set
2762
2763         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2764         store the attr list; it leaves us with no way to change attributes
2765         in _render according to the render flags, and no way to implement
2766         get_property. Instead store all the specific text attributes. 
2767         Separate whether an attribute is enabled from its value. Sync all
2768         properties with GtkTextTag, make them all consistent, etc.
2769
2770         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2771         renderers can highlight the sort row/column     
2772
2773         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2774         accessor functions to get values; this has the side effect of
2775         showing up which accessor functions were missing. Added those.
2776
2777         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2778         set_alignment, to be consistent with GtkLabel, GtkMisc
2779
2780         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2781         arrow.
2782
2783         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2784
2785         * gtk/gtktreesortable.h: updates in here
2786
2787 2001-02-07  Sven Neumann  <sven@convergence.de>
2788
2789         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2790         pango dimensions after painting the background. We used to draw
2791         gigantic flat boxes here.
2792
2793 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2794
2795         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2796         error introduced with earlier commit) (pointed out by
2797         Ollie Lho)
2798
2799 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2800
2801         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2802         which are no longer necessary.
2803
2804 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2805
2806         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2807
2808 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2809
2810         * gdk/gdk.def
2811         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2812         Provide dummy implementations.
2813
2814 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2815
2816         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2817
2818         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
2819         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
2820         deprecated this function.
2821
2822         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
2823         argument.
2824
2825 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
2826
2827         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
2828
2829 2001-02-03  Havoc Pennington  <hp@pobox.com>
2830
2831         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
2832         Mikael Hermansson with patch from Mikael (if there was a toggle
2833         start one after the first character in the range, this function
2834         was broken). Bug #50380
2835
2836 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
2837
2838         * configure.in: Remove confusing comment about X11.
2839
2840 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2841
2842         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2843         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2844         
2845 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2846
2847         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2848         it breaks things on BSD. If you want to compile GTK+ with
2849         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2850         when configuring, since GTK+ simply can't be "pure ANSI" 
2851         in the header files it uses. (#8170, Greg Hudson)
2852
2853 2001-02-02  Havoc Pennington  <hp@redhat.com>
2854
2855         * gtk/gtkwindow.c: docs
2856
2857         * gtk/gtkwidget.c: docs
2858         (gtk_widget_set_colormap): add a reference to the colormap
2859         (gtk_widget_get_default_colormap): add a reference to the colormap
2860
2861         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2862
2863         * gtk/gtktextiter.c: docs
2864
2865         * gtk/gtkmain.c (gtk_propagate_event): docs
2866
2867         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2868         (gtk_paned_set_position): docs
2869
2870         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2871         sort interface, no implementation yet.
2872
2873         * demos/testpixbuf.c (new_testrgb_window): replace
2874         gtk_drawing_area_size() with gtk_widget_set_usize()
2875
2876         * demos/testpixbuf-drawable.c (main): ditto
2877         
2878         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2879
2880         * gtk/gtktextbuffer.c: docs
2881
2882         * gtk/gtkstock.c: docs
2883
2884         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2885
2886         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2887
2888         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2889         
2890         * gtk/gtkimage.c: add some docs in here
2891         (gtk_image_size_request): change name of
2892         gtk_widget_render_stock_icon
2893         (gtk_image_get_icon_set): don't dup returned string
2894         (gtk_image_get_icon_set): don't dup returned string
2895
2896         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2897         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2898         and gtkiconfactory.h functions
2899
2900         * gtk/gtkiconfactory.c: add some docs in here
2901
2902         * gtk/gtkmain.c (gtk_get_default_language): document
2903         (gtk_get_current_event): document
2904         (gtk_get_current_event_state): document
2905         (gtk_get_event_widget): document
2906
2907         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2908
2909         * gtk/gtkcontainer.c: Add some documentation
2910         (gtk_container_add): give a more explanatory warning on adding an
2911         already-parented widget, this is kind of a FAQ and also a common
2912         typo that's easier to debug with a nice warning 
2913
2914         * gtk/gtkcellrenderertoggle.c
2915         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2916         adding this, it's useless
2917         (gtk_cell_renderer_toggle_set_active): remove
2918         (gtk_cell_renderer_toggle_get_radio): add
2919
2920         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2921         the NULL cell renderer, that doesn't make any sense to me. 
2922
2923         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2924         demo code should never use deprecated features.
2925
2926         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2927         code should never use deprecated features.
2928
2929         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2930         gtk_widget_queue_clear_area deprecated
2931
2932         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2933         deprecated
2934
2935         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2936
2937         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2938         a GdkImage deprecated, replaced by new consistently-named
2939         functions       
2940
2941         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2942
2943         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2944
2945         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2946         deprecated
2947
2948         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2949         so it won't appear in docs and confuse people.
2950
2951         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2952
2953         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2954         macros deprecated. (can't mark the type itself deprecated, since
2955         GtkProgressBar is not deprecated and we need the type decl to use
2956         GtkProgressBar)
2957
2958         * gtk/gtkpixmap.h: Mark deprecated
2959
2960         * gtk/gtkoldeditable.h: Mark deprecated
2961
2962         * gtk/gtklist.h: Mark deprecated
2963
2964         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2965         for anything anymore.
2966
2967         * gtk/gtkctree.h: Mark deprecated
2968
2969         * gtk/gtkclist.h: Mark deprecated
2970
2971         * gtk/gtkpreview.h: Mark deprecated
2972
2973         * gtk/gtkpacker.h: Mark deprecated
2974
2975         * gtk/gtktipsquery.h: Mark deprecated
2976
2977         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2978
2979         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2980
2981         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2982
2983         * gtk/gtkruler.h: Add comment that it will move out of GTK
2984
2985         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2986
2987         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2988
2989 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2990
2991         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2992         gdk_colormap_sync private since it was never exported
2993         in a header file.
2994
2995         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2996         colormap->colors[] for StaticGray, StaticColor colormaps.
2997
2998         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2999         was being used as if it was image->bits_per_pixel.
3000
3001         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3002         for the image in the GdkImage structure since it isn't
3003         reconstructable, and we need it to handle packed types
3004
3005         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3006         the assumption that on Win32 image->bits_per_pixel == image->depth,
3007         always.
3008
3009         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3010
3011         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3012         warning message if no converter can be found. 
3013
3014 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3015
3016         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3017         chars to isupper() / tolower(). (#567)
3018
3019         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3020         to clear up 64-bit warnings. (#567)
3021
3022 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3023
3024         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3025         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3026
3027         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3028         since some people set $(libdir) separately. (#1290, David Kaelbling)
3029
3030 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3031
3032         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3033         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3034         MAXPATHLEN, but the code here depends on a fixed value.)
3035         (#4524)
3036
3037 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3038
3039         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3040         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3041
3042 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3043
3044         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3045         viewable there is no way that moving the node will cause the 
3046         focus row to become not viewable, so omit check on the visibility
3047         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3048
3049 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3050
3051         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3052         selection before inserting new text.
3053
3054 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3055
3056         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3057         Make the sensitivity of the reparented child track that of
3058         the original parent menu item. (#34218, David Hodson)
3059
3060         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3061         the case where the current item is destroyed properly.
3062
3063         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3064         some edge cases with child-less menuitems.
3065         
3066 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3067
3068         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3069         key pop down window. (#12074, Jon K Hellan)
3070
3071 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3072
3073         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3074         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3075         The solution here isn't perfect - you get an extraneous
3076         emission of "toggle", which could conceivably confuse an app,
3077         but better than the current situation. LXR search seems to
3078         indicate that no apps in GNOME CVS connect to "toggle".
3079
3080 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3081
3082         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3083         gtk_public_h_sources to directly here to avoid warning when
3084         building srcdir != builddir. (#9656)
3085
3086 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3087
3088         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3089         handlers in gtkrange.c return the proper values (TRUE == handled)
3090         (#10316).
3091
3092         This is just the tip of the iceberg, but gtkrange.c is the
3093         most common place where the propagation is problematical,
3094         and also a place where it is almost certainly safe to change
3095         this in the stable branch.
3096
3097         (You don't want right click popups on a range control or anything...)
3098
3099 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3100
3101         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3102         area on focus out, even if a background pixmap isn't set.
3103         (#13941)
3104         
3105 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3106
3107         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3108         to deal with setting the shape properly when scrolling arrows are
3109         turned on, but not visible because there is sufficient space.
3110         (#13432)
3111
3112 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3113
3114         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3115         items with submenus, destroy the item along with the submenu.
3116         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3117         properly.
3118
3119         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3120         later.
3121
3122 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3123
3124         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3125         the focus widget sometimes wasn't drawn with the default if there
3126         was no default widget.
3127
3128         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3129         unreference pixmaps. 
3130
3131         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3132         for some extra safety.
3133
3134 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3135
3136         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3137         the text of a cell to the old pointer value better, by
3138         copying the new text before freeing the old text. Some code
3139         cleanup. (#8079, Karl Nelson)
3140
3141 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3142
3143         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3144         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3145
3146 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3147
3148         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3149         item from a menu, check to see if it matches 
3150         menu->old_active_menu_item, and if so, unref and clear
3151         old_active_menu_item (Patch from Pavel Cisler)
3152
3153         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3154         menu_shell->active_menu_item, if it is the child being
3155         removed. (Patch based on that of Gene Ragan, #50337)
3156
3157 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3158
3159         * gdk/linux-fb/gdkselection-fb.c: 
3160         * gdk/linux-fb/gdkcolor-fb.c: 
3161         * gdk/linux-fb/gdkdrawable-fb2.c: 
3162         * gdk/linux-fb/gdkfont-fb.c: 
3163         * gdk/linux-fb/gdkim-fb.c: 
3164         * gdk/linux-fb/gdkinput.c: 
3165         * gdk/linux-fb/gdkkeyboard-fb.c: 
3166         * gdk/linux-fb/gdkmain-fb.c: 
3167         * gdk/linux-fb/gdkrender-fb.c: 
3168         A bunch of whitespace cleanup.
3169         
3170 2001-01-30  Havoc Pennington  <hp@pobox.com>
3171
3172         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3173         #ifdef GTK_ENABLE_BROKEN.
3174
3175         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3176         GTK_ENABLE_BROKEN just before including the broken headers.
3177         
3178         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3179         deprecated types registered.
3180
3181         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3182         we have to test the broken stuff.
3183
3184         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3185         
3186 2001-01-30  Havoc Pennington  <hp@redhat.com>
3187
3188         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3189         here where prev pointer was set to the wrong thing
3190
3191         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3192         (gtk_tree_path_is_descendant): new function
3193
3194         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3195         cached length
3196         (gtk_list_store_get_iter): don't modify iter if we can't get the
3197         path.
3198
3199         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3200         
3201         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3202         GtkTreeDragDest
3203
3204         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3205         was causing segfault
3206
3207         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3208         pointer to NULL
3209
3210         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3211
3212         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3213         on returning FALSE
3214         (gtk_list_store_iter_children): ditto
3215         (gtk_list_store_iter_nth_child): ditto
3216         (gtk_list_store_iter_nth_child): ditto
3217         (gtk_list_store_iter_parent): ditto
3218
3219         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3220         on iter->user_data != NULL instead of silently accepting it.
3221         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3222         we are returning TRUE.
3223         (gtk_tree_store_iter_children): ditto
3224         (gtk_tree_store_iter_nth_child): ditto
3225         (gtk_tree_store_iter_parent): ditto
3226         (gtk_tree_store_insert): remove handling of parent->user_data ==
3227         NULL, replace with parent == NULL       
3228
3229         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3230         and a comment explaining things
3231
3232         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3233         interface support to GtkTreeStore.
3234
3235         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3236         FALSE if no prev, fix
3237
3238         * gtk/gtktreeview.c (set_source_row): use a row reference
3239         (set_dest_row): use a row reference
3240
3241 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3242
3243         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3244         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3245         (gtk_tree_selection_select_iter): The same as above.
3246
3247 2001-01-26  Havoc Pennington  <hp@redhat.com>
3248
3249         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3250         which holds a handle to a specific row (particular set of values
3251         in the model, i.e. pointer-identity row).
3252
3253         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3254         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3255         Still need to use it for the src/dest row saved on the drag context.
3256
3257 2001-01-26  Havoc Pennington  <hp@redhat.com>
3258
3259         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3260
3261         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3262         not offset by TREE_VIEW_HEADER_HEIGHT
3263         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3264         TREE_VIEW_HEADER_HEIGHT
3265
3266         * configure.in (included_loaders): for me, --with-included-loaders
3267         generates the error "the specified loader yes does not exist",
3268         i.e. the arg defaults to "yes", so change test for value ""
3269         to test for value "yes", and include all loaders in that case.
3270
3271         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3272
3273         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3274         handle TREE_VIEW_VERTICAL_SEPARATOR
3275         (gtk_tree_view_bin_expose): fix to consider the row offset as
3276         pointing halfway into vertical separator.       
3277         (gtk_tree_view_draw_node_focus_rect): ditto
3278
3279         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3280         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3281         (TRUE) to be called.
3282
3283         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3284         debug mode where the invalid region is colored in on invalidate,
3285         so you can see the flicker and know whether your redraw code is 
3286         doing a good job.
3287
3288         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3289         tree window coordinates (clip rect is in tree window coords)
3290
3291         * gtk/Makefile.am: add gtktreednd.[hc]
3292
3293         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3294
3295         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3296         drag-and-drop data operations on a model (so we can set up tree
3297         drag-and-drop automatically)
3298
3299         * gtk/testgtk.c: Add a window to change sensitivity in the
3300         GtkLabel test; add a way to change the entry frame in GtkEntry
3301         test
3302
3303         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3304         (gtk_entry_get_has_frame): new functions to remove the frame
3305         around an entry
3306         (gtk_entry_size_request): shrink requisition if no frame
3307         (gtk_entry_draw_focus): don't draw frame if no frame
3308
3309         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3310         checks inside a cell renderer
3311         (gtk_default_draw_option): ditto for options
3312
3313         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3314         children from the alignment, not the button
3315         (gtk_tree_view_column_init): ref/sink the column, to emulate
3316         GObject refcounting.
3317
3318         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3319         
3320         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3321         Use theme functions to draw the toggles 
3322
3323         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3324
3325         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3326         GdkPangoAttrEmbossed to use in rendering insensitive text
3327
3328         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3329
3330         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3331         using new GDK features
3332         
3333 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3334
3335         * gtk/gtkimage.c:
3336         Splitted gtk_image_clear into gtk_image_clear() and
3337         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3338         to avoid leaks.
3339
3340         * gtk/gtklabel.c (set_markup):
3341         Don't leak text.
3342
3343         * gtk/gtktextlayout.c:
3344         Always free display->shaped_objects.
3345
3346         * gtk/testgtk.c (create_clist):
3347         Don't leak custom style.
3348
3349 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3350
3351         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3352         Don't leak image. Simplify using gdk_colormap_query_color().
3353         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3354
3355         * linux-fb/gdkcolor-fb.c:
3356         Implemented gdk_colormap_query_color.
3357
3358 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3359
3360         * linux-fb/gdkcursor-fb.c:
3361         Don't leak built-in cursors.
3362
3363         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3364         Don't leak tmp_points.
3365
3366         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3367         Don't modify desc. Don't leak font if the PangoFont
3368         isn't found.
3369         
3370         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3371         Free dash_list.
3372
3373         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3374         Don't leak string.
3375         
3376 2001-01-20  Havoc Pennington  <hp@pobox.com>
3377
3378         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3379         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3380         me, matches Pango
3381
3382 2001-01-22  Havoc Pennington  <hp@redhat.com>
3383
3384         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3385
3386         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3387
3388         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3389         Remove, move back to gdk-pixbuf
3390
3391         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3392         to all the word functions
3393
3394         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3395         before doing anything on NULL layout or if we don't have the focus
3396
3397         * gtk/testtext.c (fill_example_buffer): "justification"
3398
3399         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3400         to be called "justification" not "justify"
3401
3402         * demos/gtk-demo/textview.c (create_tags): "justification"
3403         
3404         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3405
3406 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3407
3408         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3409         Don't leak visible_region. Use visible_region instead of region.
3410         
3411         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3412         Don't do extra gdk_drawable_ref(). This is not X.
3413         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3414         gdk_fb_focused_window is ref:ed.
3415         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3416         windows.
3417
3418 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3419
3420         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3421         Don't leak the PangoFontDescriptor.
3422
3423 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3424
3425         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3426         when not realized.
3427         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3428         (gtk_tree_view_realize): add scroll_to support
3429         (gtk_tree_view_finalize): add a finalize method.  Populate.
3430         (gtk_tree_view_insert_column): ref and sink the column.
3431         (gtk_tree_view_append_column): ref and sink the column.
3432         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3433         individual nodes.  Should make the code much more efficient, if
3434         actually used.
3435
3436 2001-01-19  Havoc Pennington  <hp@redhat.com>
3437
3438         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3439         byte_offset variable was being used to mean both "offset into
3440         layout" and "offset into buffer line" which was no longer true
3441         with addition of preedit string; fix
3442
3443 2001-01-19  Havoc Pennington  <hp@redhat.com>
3444
3445         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3446
3447         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3448         function
3449
3450         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3451         implement
3452
3453         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3454         scroll_to_cell, matches TextView scroll functions better
3455         (gtk_tree_view_tree_to_widget_coords): new function
3456         (gtk_tree_view_widget_to_tree_coords): new function
3457         (gtk_tree_view_get_visible_rect): new function
3458         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3459         (gtk_tree_view_draw_node_focus_rect): new function moved from
3460         draw_focus, also, use width of bin_window as width of the focus
3461         rect
3462         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3463         already-expanded rows
3464         (gtk_tree_view_get_cell_rect): new function
3465         (gtk_tree_view_get_path_at_pos): return the click position
3466         relative to the passed-in cell
3467         (gtk_tree_view_set_expander_column): new function
3468
3469         * configure.in: remove gtk-config-2.0 chmod
3470
3471         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3472         and properly handle drags with targets we don't understand
3473         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3474         scrolling anyway
3475         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3476         mark invisible
3477
3478         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3479         function
3480         (gtk_drag_dest_get_target_list): new function
3481         (gtk_drag_dest_set_target_list): new function
3482         
3483         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3484
3485         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3486         related to drag-and-drop
3487
3488 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3489
3490         * gdk/linux-fb/gdkprivate-fb.h:
3491         Define EMULATE_GDKFONT.
3492         Add extra pango_font stuff to GfkFontPrivate.
3493         
3494         * gdk/linux-fb/gdkdrawable-fb2.c:
3495         * gdk/linux-fb/gdkfont-fb.c:
3496         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3497         emulation using PangoFont.
3498
3499 2001-01-17  Havoc Pennington  <hp@pobox.com>
3500
3501         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3502         all the non-deprecated set_foo functions. Added missing object
3503         properties, and added g_object_notify() to setters. 
3504         Wrote docs.
3505         
3506 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3507
3508         * gtk/gtkmain.c
3509         * gtk/gtkrc.c: (Win32) Use the new
3510         g_win32_get_package_installation_(sub)directory() functions.
3511
3512         * config.h.win32.in: New file.
3513         
3514         * config.h.win32: Removed.
3515
3516         * configure.in: Output config.h.win32.
3517
3518         * Makefile.am: Add it to EXTRA_DIST.
3519
3520         * gtk/gtk.def: Update.
3521
3522 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3523
3524         * gtk/gtklabel.c (gtk_label_size_request): Set the
3525         attributes onto the PangoLayout even if they are newly
3526         created from label->pattern.
3527
3528 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3529
3530         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3531
3532         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3533         structures in functions. Fixes bug where gtk_dataset_*
3534         was accidentally still being used in one place, causing
3535         every dest side event to be treated independently.
3536
3537         * gtk/gtkdnd.c: Remove last vestages of handling
3538         ::draw (fixes warning)
3539         
3540         * gtk/gtkentry.[ch]: Add drag and drop support.
3541
3542         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3543         new function gtk_check_drag_threshhold() for checking
3544         to check if (dx,dy) has exceeded the threshhold for starting
3545         a drag and use it everywhere.
3546
3547 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3548
3549         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3550         add -I{includedir}/gtk-2.0.
3551
3552         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3553         gdk/gdk-pixbuf.h: Doc fixups.
3554         
3555         * gtk/gtkobject.h: Remove trailing , from enum
3556
3557 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3558
3559         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3560         Doh! Mixed up x and y.
3561
3562         * gdk/linux-fb/gdkglobals-fb.c:
3563         Removed gdk_fb_pointer_grab_window_events,
3564         added _gdk_fb_pointer_grab_owner_events and
3565         _gdk_fb_keyboard_grab_owner_events.
3566
3567         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3568         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3569         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3570         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3571         Send crossing events after ungrab finished.
3572         (gdk_keyboard_grab): Set ..._owner_events
3573         (type_masks): Move out of function.
3574         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3575         gdk_fb_keyboard_event_window): New functions, return the
3576         window an event should be targeted at. Handles grabs and
3577         event propagation. Can return NULL.
3578         (gdk_event_make): Remove event_mask checking. Now always
3579         returns an event.
3580                 
3581         * gdk/linux-fb/gdkkeyboard-fb.c:
3582         * gdk/linux-fb/gdkproperty-fb.c:
3583         * gdk/linux-fb/gdkselection-fb.c:
3584         Use new event_window/gdk_event_make() behaviour.
3585         
3586         * gdk/linux-fb/gdkmouse-fb.c:
3587         Use new event_window/gdk_event_make() behaviour.
3588         Only send motion events if in the same window.
3589         If grabbed, use cursor from window if sibling of grabbed
3590         window, and cursor from grabbed window otherwise.
3591
3592         * gdk/linux-fb/gdkprivate-fb.h:
3593         Update gdk_fb_window_send_crossing_events, gdk_event_make
3594         and grab varaible declarations. Add gdk_fb_*_event_window().
3595
3596         * gdk/linux-fb/gdkwindow-fb.c:
3597         Use new event_window/gdk_event_make() behaviour.
3598         Keep correct track of focus window.
3599         (gdk_window_set_events): Set all specific button motion masks
3600         if GDK_BUTTON_MOTION_MASK set.
3601
3602         * gtk/gtkdnd.c (gtk_drag_update):
3603         Free info->last_event if gdk_drag_motion returned FALSE.
3604
3605 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3606
3607         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3608         Eliminate redraws when input-only windows are shown or
3609         hidden. Thanks to jpe@archaeopteryx.com.
3610
3611 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3612
3613         * docs/faq/gtk-faq.sgml: FAQ update:
3614           - Update to bugzilla
3615           - Add GTK+ and security/SUID/SGID
3616           - Add DnD question
3617
3618 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3619
3620         * gdk/linux-fb/gdkdnd-fb.c:
3621         Some cleanups.
3622         
3623 2001-01-15  Havoc Pennington  <hp@pobox.com>
3624
3625         * tests/testtreeview.c: add test stuff for CellRendererToggle
3626
3627         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3628         accessor
3629
3630         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3631         only toggle on button press (would do release like GtkButton, but
3632         we'd need implicit grab code for treeview cells)
3633
3634 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3635
3636         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3637
3638         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3639         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3640
3641         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3642         to g_{locale,filename}_{to,from}_utf8 to match current API.
3643
3644         * gtk/makefile.msc.in (gtk_OBJECTS)
3645         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3646
3647         * gtk/gtk.def: Update.
3648
3649 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3650
3651         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3652         implementaion that more closely mimics the events that an X server
3653         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3654         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3655         with nested preview widgets, for instance, more responsive when
3656         you move the mouse quickly into them.
3657         (find_window_for_pointer_event): Make it actually compile.
3658         (gdk_event_translate): Set send_event to the value of
3659         InSendMessage (). This doesn't really mean the same as X11's
3660         send_event flag, but is close enough, says jpe@archaeopteryx.com
3661
3662 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3663
3664         * gdk/linux-fb/gdkdnd-fb.c:
3665         Implemented drag and drop.
3666         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3667         when it tries to free and then copy the same event (info->last_event).
3668         I am not sure about why this happens, but will continue looking.
3669
3670 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3671
3672         * gdk/linux-fb/gdkwindow-fb.c:
3673         Use gdk_window_invalidate_rect instead of
3674         gdk_window_invalidate_rect_clear to minimise flashing.
3675         When hiding windows you need to clear the root window though.
3676
3677 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3678
3679         * gdk/linux-fb/gdkdrawable-fb2.c:
3680         For optization, add an full_shapes argument to gdk_fb_clip_region.
3681         If this is false, only the cliprects of the shapes are used.
3682
3683         * gdk/linux-fb/gdkprivate-fb.h:
3684         Export gdk_fb_window_peek_shape.
3685         Add full_shapes to gdk_fb_clip_region.
3686
3687         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3688         When moving a window, don't clear everything under the it, just the
3689         root window. Makes stuff faster and flash less.
3690         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3691         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3692         offset of the shape.
3693         
3694
3695 2001-01-12  Havoc Pennington  <hp@redhat.com>
3696
3697         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3698         current invalid region, fixes redraw bug while scrolling the 
3699         text widget
3700
3701         * gtk/gtktextview.c, gtk/gtktextview.h:
3702         Rearrange the scrolling/validation/etc. code in a major way, 
3703         so it seems to make sense to me. Probably isn't genuinely that
3704         much better, but...
3705
3706         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3707         notifies
3708
3709         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3710
3711 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3712
3713         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3714         Hide mouse pointer while rotation. Show it afterwards.
3715
3716 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3717
3718         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3719         windows in consideration when generating clip region.
3720
3721         * gdk/linux-fb/gdkfb.h:
3722         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3723
3724         * gdk/linux-fb/gdkprivate-fb.h:
3725         Add shape to GdkWindowFBDatat.
3726         exported gdk_fb_window_get_abs_shape().
3727         removed gdk_fb_draw_lines declaration.
3728
3729         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3730         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3731         send focus changes when there is a grabbed window.
3732         (gdk_window_get_pointer): Handle shaped windows.
3733         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3734         (gdk_fb_window_peek_shape): Returns the shape for a window,
3735         handles GDK_FB_USE_CHILD_SHAPE.
3736         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3737         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3738         (gdk_window_shape_combine_mask): Implement.
3739
3740         * gtk/gtkwindow-decorate.c:
3741         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3742         setting the shape of a window makes the window transparent.
3743
3744 2001-01-11  Havoc Pennington  <hp@redhat.com>
3745
3746         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3747
3748 2001-01-10  Havoc Pennington  <hp@redhat.com>
3749
3750         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3751         add this function, bug 40251
3752
3753         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3754         of type macro   
3755
3756 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3757
3758         * acconfig.h:
3759         Added ENABLE_SHADOW_FB
3760
3761         * configure.in:
3762         Added --disable-shadowfb
3763
3764         * gdk/linux-fb/gdkcursor-fb.c:
3765         Update shadowfb when updating cursor
3766
3767         * gdk/linux-fb/gdkdrawable-fb2.c:
3768         Added wrappers for shadowfb that calls  the normal drawable
3769         methods, but calls gdk_shadow_fb_update(bounding box) when
3770         GdkWindows are drawed to.
3771         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3772         which also returns the bounding box.
3773
3774         * gdk/linux-fb/gdkfb.h:
3775         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3776
3777         * gdk/linux-fb/gdkgeometry-fb.c:
3778         Update shadowfb when scrolling window.
3779
3780         * gdk/linux-fb/gdkglobals-fb.c:
3781         Add _gdk_fb_screen_angle.
3782         
3783         * gdk/linux-fb/gdkkeyboard-fb.c:
3784         Test code for screen rotation. Shift-F2 in the xlate driver
3785         rotates the screen.
3786
3787         * gdk/linux-fb/gdkmain-fb.c:
3788         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3789
3790         * gdk/linux-fb/gdkmouse-fb.c:
3791         Use fb_width/height instead of modeinfo.xres/yres.
3792
3793         * gdk/linux-fb/gdkprivate-fb.h:
3794         Added fb_men, fb_width, fb_height & fb_stride. When using
3795         shadow fb these can differ from the framebuffer stuff.
3796         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3797         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3798         _gdk_fb_screen_angle. Removed CM, RP.
3799
3800         * gdk/linux-fb/gdkrender-fb.c:
3801         Added code for shadowfb handling and screen rotation using
3802         shadowfb.
3803
3804         * gdk/linux-fb/gdkwindow-fb.c:
3805         Use fb_mem, fb_stride, fb_width, fb_height.
3806         Added recompute_rowstride to reset the rowstride of all windows.
3807         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3808         window abs positions and window rowstrides. Usefull when the
3809         rotation has changed.
3810
3811 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3812
3813         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3814
3815 2001-01-10  Havoc Pennington  <hp@redhat.com>
3816
3817         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3818         where sibling == iter
3819         (gtk_tree_store_insert_after): handle sibling == iter
3820         (gtk_tree_store_prepend): remove stamp checks
3821         (gtk_tree_store_insert_before): ditto
3822         (gtk_tree_store_append): ditto
3823         (gtk_tree_store_get_path): ditto
3824         (gtk_tree_store_get_value): ditto
3825         (gtk_tree_store_iter_has_child): ditto
3826         (gtk_tree_store_iter_n_children): ditto
3827         (gtk_tree_store_iter_nth_child): ditto
3828         (gtk_tree_store_insert_after): ditto
3829         (gtk_tree_store_is_ancestor): ditto
3830         (gtk_tree_store_iter_depth): ditto
3831         (gtk_tree_store_insert_before): assert that sibling's parent is
3832         the same as the passed-in parent
3833         (gtk_tree_store_insert_after): assert that sibling's parent is
3834         the same as the passed-in parent
3835
3836         
3837         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
3838         function to get the first iterator in a model
3839         
3840         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3841         conventionally the "root" in this sense is just NULL afaict.
3842
3843         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3844         where sibling == iter
3845         (gtk_list_store_insert_after): handle case where sibling == iter
3846
3847         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3848         automated tests for ListStore, TreeStore
3849
3850         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3851         (gtk_list_store_insert): update tail pointer, and fix it to work
3852         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3853         (gtk_list_store_append): use tail to be faster
3854         (gtk_list_store_prepend): fix it, update tail pointer
3855         (gtk_list_store_insert_after): fix it, update tail pointer
3856
3857         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3858         the list
3859
3860 2001-01-09  Havoc Pennington  <hp@redhat.com>
3861
3862         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3863         is NULL due to a pending resize
3864
3865         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3866         column width to values less than 1
3867
3868         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3869         width to be between min/max width, and still set the width 
3870         even if autosize is turned on, so the tree view can use this 
3871         function in order to autosize.
3872         (gtk_tree_view_column_init): set initial width to 1 not 0
3873
3874         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3875         setter function to modify column width, so we get notification
3876         (gtk_tree_view_insert_iter_height): ditto
3877         (gtk_tree_view_calc_size): ditto
3878         (gtk_tree_view_check_dirty): ditto
3879
3880         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3881         properties to change all the interesting attributes of the tree
3882         view column.
3883         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3884         (gtk_tree_view_column_get_clickable): add
3885         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3886         attributes; assume a cell renderer with equivalent object
3887         properties has been swapped in. Do g_object_notify().
3888         (gtk_tree_view_column_set_visible): g_object_notify
3889         (gtk_tree_view_column_get_sizing): rename from get_col_type
3890         (gtk_tree_view_column_set_sizing): g_object_notify
3891         (gtk_tree_view_column_set_width): add g_object_notify
3892         (gtk_tree_view_column_set_min_width): ditto
3893         (gtk_tree_view_column_set_max_width): ditto
3894         (gtk_tree_view_column_set_title): ditto
3895         (gtk_tree_view_column_set_clickable): ditto
3896         (gtk_tree_view_column_set_widget): ditto
3897         (gtk_tree_view_column_set_justification): ditto
3898
3899 2001-01-09  Havoc Pennington  <hp@redhat.com>
3900
3901         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3902         there are no rows in the model
3903
3904         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3905         NULL, then return the start of the list
3906
3907         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3908         if we can't get any rows from an empty model 
3909
3910         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3911         extraneous * after function pointer typedef usage
3912
3913         * Makefile.am: don't specify full path to cp and rm
3914
3915         * gtk/gtkcellrenderertextpixbuf.c
3916         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3917         NULL before dereferencing, fixes a segfault that happened from
3918         time to time
3919
3920         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3921         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3922         and reindent the function
3923         (gtk_cell_renderer_pixbuf_get_size): indentation
3924
3925         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3926         we quit it
3927         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3928         (gtk_dialog_set_default_response): New function, to set default
3929         button
3930         (gtk_dialog_set_response_sensitive): New function, to set 
3931         sensitivity of buttons
3932
3933         * gtk/gtkcellrendererpixbuf.c
3934         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3935         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3936
3937         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3938         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3939         also boxed types.
3940         (_gtk_tree_data_list_value_to_node): ditto
3941
3942         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3943         --gtk-debug=tree
3944
3945         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3946
3947         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3948
3949 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3950
3951         * gdk/win32/gdkevents-win32.c: Implement better mouse
3952         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3953         (find_window_for_pointer_event): New function.
3954         (gdk_event_translate): Use it when handling mouse events.
3955
3956 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3957
3958         * configure.in:
3959         Added --with-included-loaders option
3960
3961         * gdk-pixbuf/Makefile.am:
3962         * gdk-pixbuf/gdk-pixbuf-io.c:
3963         Add support for including selected gdk-pixbuf loaders only.
3964
3965         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3966         gtk_window_set_has_frame):
3967         Added inline documentation.
3968
3969         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3970         * docs/reference/gdk/tmpl/windows.sgml:
3971         Added inline documentation.
3972
3973 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3974
3975         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3976         realizing buttons that have already been realized.
3977
3978 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3979
3980         * tests/testtreeview.c (main): Show menu items before adding to
3981         option menu.
3982
3983         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3984         around if we kill them.
3985
3986         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3987         Return if we pass in a NULL model.
3988
3989 2001-01-08  Havoc Pennington  <hp@redhat.com>
3990
3991         * tests/testtreeview.c: hack on this some
3992
3993         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3994         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3995         list
3996         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3997
3998         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3999         functions
4000
4001 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4002
4003         * gtk/gtkwindow-decorate.[hc]:
4004         * gtk/Makefile.am:
4005         New files. Contains an implementation of a minimal WM for
4006         linux-fb.
4007
4008         * gtk/gtkwindow.h:
4009         Add the possibility for GtkWindows to specify a frame. This
4010         is used for the window decoration code, but could concievably
4011         be used for X programs too (xmms style windows).
4012         GtkWindow->frame is the toplevel window if the window is framed.
4013         The signal frame_event gets all events that are targeted to
4014         GtkWindow->frame.
4015         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4016         
4017         * gtk/gtkwindow.c:
4018         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4019         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4020
4021 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4022
4023         * docs/README.linux-fb:
4024         Correct filename ~/.pangoft2_aliases
4025
4026         * gdk/gdkwindow.h:
4027         Added new function gdk_window_get_decorations.
4028
4029         * gdk/linux-fb/gdkfb.h:
4030         Removed _gdk_window_get_decorations declaration.
4031         Renamed _gdk_window_set_child_handler to
4032         gdk_fb_window_set_child_handler.
4033
4034         * gdk/linux-fb/gdkwindow-fb.c:
4035         Renamed _gdk_window_set_child_handler to
4036         gdk_fb_window_set_child_handler.
4037
4038         * gdk/x11/gdkwindow-x11.c:
4039         New function gdk_window_get_mwm_hints().
4040         Implemented gdk_window_get_decorations.
4041
4042         * docs/reference/gdk/tmpl/windows.sgml:
4043         * docs/reference/gdk/gdk-sections.txt:
4044         Added gdk_window_get_decorations docs.
4045         
4046 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4047
4048         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4049         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4050         gdk_fb_window_send_crossing_events):
4051         Possibly send focus events when the mouse moves from one
4052         window to another.
4053
4054 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4055
4056         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4057         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4058         to match current API.
4059
4060         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4061         environment variable is set, don't call g_error when on a
4062         palettized (PseudoColor) display. Some people want to use GTK+ 
4063         in 256-colour mode even though works only partially.
4064
4065         * gdk/gdk.def
4066         * gtk/gtk.def
4067         * gtk/makefile.mingw.in: Update.
4068
4069 2001-01-05  Havoc Pennington  <hp@redhat.com>
4070
4071         * tests/testtreeview.c: hack on this a bit
4072
4073         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4074         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4075
4076         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4077         was spelled incorrectly
4078         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4079
4080         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4081         from gtk_tree_view_set_headers_active   
4082
4083         * gtk/gtktexttag.c:
4084         (gtk_text_tag_get_property): handle PROP_DIRECTION
4085         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4086         properties, bug 40235
4087
4088         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4089         forward_to_line_end
4090
4091 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4092
4093         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4094         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4095         for unicode,locale,filename conversion functions.
4096
4097 2001-01-05  Havoc Pennington  <hp@redhat.com>
4098
4099         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4100         broken if called on the first position in the buffer.
4101
4102         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4103         forward_to_delimiters to be called only if we aren't already at
4104         the delimiters.
4105
4106 2001-01-05  Havoc Pennington  <hp@redhat.com>
4107
4108         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4109
4110 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4111
4112         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4113         colormap in here. Sync from X port.
4114         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4115         Sync from X port.
4116         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4117         This happens now and then, and i don't think it is a bug.
4118         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4119         != endpoint.
4120         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4121         GDK_LINE_SOLID.
4122
4123         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4124         some of the fields filled in at least.
4125
4126         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4127         miLineArcD is no more, remove it from the function definition.
4128
4129 2001-01-04  Havoc Pennington  <hp@redhat.com>
4130
4131         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4132         this
4133
4134         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4135         user_data instead of tree_node
4136
4137         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4138         TREE_VIEW_COLUMN_SIZE
4139
4140         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4141         "size" field to "width" finishes bug 40061
4142
4143         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4144         for bitfields, bug 40268
4145
4146 2001-01-04  Havoc Pennington  <hp@redhat.com>
4147
4148         Rename some stuff:
4149         
4150         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4151
4152         s/GtkModelSimple/GtkTreeModelSimple/g;
4153         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4154         s/gtk_model_simple/gtk_tree_model_simple/g;
4155         s/gtkmodelsimple/gtktreemodelsimple/g;
4156
4157         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4158
4159         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4160         s/column_set_col_type/column_set_sizing/g;
4161
4162         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4163         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4164
4165         s/GtkCellRendererType/GtkCellRendererState/g;
4166         
4167         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4168         (gtk_cell_renderer_toggle_class_init): change "state" property to
4169         "active", to match GtkToggleButton
4170         (gtk_cell_renderer_toggle_get_active): new function, bug
4171         40269
4172         (gtk_cell_renderer_toggle_set_active): new function
4173         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4174         state through gtk_cell_renderer_set_active
4175
4176 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4177
4178         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4179         temporarily until they work again.  Brought up to date with
4180         changes in the model.
4181         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4182         model.
4183
4184 2001-01-04  Havoc Pennington  <hp@redhat.com>
4185
4186         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4187         equal to the line length, then position iterator before paragraph 
4188         separators. Fixes crash reported by Mikael Hermansson when
4189         pressing left arrow from the start of a line.   
4190
4191         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4192         about byte indexes off the end
4193         (iter_set_from_char_offset): add g_error about char offsets
4194         off the end
4195
4196 2001-01-03  Havoc Pennington  <hp@redhat.com>
4197
4198         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4199
4200         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4201         of private functions; remove inclusion of private headers.
4202
4203         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4204         function, so we don't need private functions in gtktextdisplay.c
4205
4206         * gtk/gtktextiterprivate.h: underscore-ification
4207
4208         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4209         to instead say "only useful to implement widgets"
4210
4211         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4212         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4213         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4214
4215         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4216         This function was completely broken
4217
4218         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4219
4220         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4221
4222         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4223
4224         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4225
4226         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4227
4228         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4229
4230         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4231         gtk_paint_layout
4232
4233         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4234         gtk_paint_layout
4235
4236         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4237         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4238         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4239         which were not implemented.     
4240
4241         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4242         insert_pixbuf signal. Rename delete_text to delete_range since it
4243         also deletes pixbufs and child anchors. This almost closes bug
4244         40245 (still need to deal with child anchors)
4245
4246         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4247         insert_pixbuf, change signal names as appropriate, change types of
4248         signals taking marks/tags to have the specific type, not just
4249         G_TYPE_OBJECT
4250         
4251         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4252         closes bug 40051
4253
4254         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4255         unnecessary remove_contents() call
4256         (gtk_option_menu_class_init): add a "changed" signal, closes
4257         bug 40039
4258         (gtk_option_menu_update_contents): emit "changed" if the 
4259         active menu item changes
4260
4261         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4262         cast to GtkObject, reported by Jonas Borgstrom
4263         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4264         we can't do stuff with side effects in finalize. Instead, spew a
4265         warning if the loader isn't closed.
4266
4267         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4268         colormap in here, non-X ports probably need to sync to this change
4269
4270         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4271         assertion that colormap != NULL, you can set the colormap to NULL
4272         if you like.
4273         
4274         * Makefile.am: remove gtk-config-2.0
4275
4276         * configure.in: Use pkg-config to locate GLib. Remove
4277         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4278         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4279         Use pkg-config to locate Pango. Output correct Pango libs to
4280         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4281
4282         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4283         files
4284         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4285         X11 pc files
4286
4287         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4288         unref from here
4289
4290 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4291
4292         * configure.in:
4293         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4294
4295 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4296
4297         * gtk/gtktextlayout.c
4298         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4299         variable when moving back onto a single line.
4300
4301 2001-01-01  Havoc Pennington  <hp@redhat.com>
4302
4303         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4304
4305         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4306
4307         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4308         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4309
4310 2001-01-01  Havoc Pennington  <hp@redhat.com>
4311
4312         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4313
4314         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4315         GtkTextAttributes
4316
4317         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4318         #40246
4319         (gtk_text_attributes_copy_values): rename from 
4320         gtk_text_attributes_copy
4321         (gtk_text_attributes_copy): a more standard GTK copy function, 
4322         which returns a new object
4323
4324 2001-01-01  Havoc Pennington  <hp@redhat.com>
4325
4326         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4327         
4328         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4329         don't fill in tree_view->priv->selection, kind of an unexpected
4330         side effect
4331
4332         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4333         gtkintl.h
4334         
4335         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4336         gtkintl.h
4337         (gtk_cell_renderer_get_property): remove calls to g_value_init
4338
4339         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4340         gtkintl.h
4341
4342         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4343         and include gtkintl.h
4344         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4345         property names
4346
4347         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4348         GtkTreeSelection
4349         (_gtk_tree_selection_new_from_with_view): rename, return
4350         GtkTreeSelection
4351         (_gtk_tree_selection_set_tree_view): rename with uscore
4352         (gtk_tree_selection_get_selected): fill in the "model" out param
4353         first, so it gets filled in even if we return at the top of the 
4354         function
4355         (gtk_tree_selection_real_select_all): add a comment and an else{}
4356         to clarify this a bit
4357         (gtk_tree_selection_real_unselect_all): add the same else{}
4358
4359         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4360         set_tree_view to have underscore prefixes, move them to the
4361         private header, fix return type of new_with_tree_view
4362         (struct _GtkTreeSelection): mark struct
4363         fields private  
4364
4365         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4366         GtkTreeModelFlags, not a guint
4367         (gtk_tree_path_prev): return gboolean not gint
4368         (gtk_tree_path_up): return gboolean not gint
4369
4370         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4371         return GtkTreeModelFlags, not a guint
4372
4373         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4374         that child model is non-null before unrefing it
4375         (g_value_int_compare_func): make this a qsort compare func, not 
4376         a boolean predicate
4377
4378         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4379         (add -umn to the end), and mark it unimplemented
4380         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4381         I don't see what it's for - doesn't the model always sort itself?
4382         (gtk_tree_model_sort_set_compare): this had the wrong signature
4383
4384         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4385         Fix the docs to say that it destructively replaces existing
4386         attributes (previously said that it added attributes).
4387         (gtk_tree_view_column_set_visible): canonicalize bool before
4388         equality testing. Also, check for realization before
4389         hiding/showing the tree_column->window; if this window could exist
4390         before realization, then it's busted and needs fixing, we can't 
4391         create GDK resources pre-realization. Also, remove
4392         superfluous queue_resize(), since set_size() does that for us.
4393         (gtk_tree_view_column_set_col_type): check realization before 
4394         using tree_column->window
4395
4396         * gtk/gtktreedatalist.c: fix filename in copyright notice
4397
4398 2000-12-31  Havoc Pennington  <hp@pobox.com>
4399
4400         * gtk/gtktextview.c: Rearrange all the
4401         scroll-while-dragging-or-selecting code to be different, not
4402         necessarily better. ;-)
4403         (gtk_text_view_scroll_to_mark): Change this
4404         function to take within_margin as a fraction instead of a pixel
4405         value, and to take alignment arguments (indicating where to align 
4406         the mark inside the visible area)
4407         
4408         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4409         to GtkObject
4410
4411         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4412         behavior so that offsets past the end of the line are not 
4413         allowed, and an offset equal to the line length moves the iterator
4414         to the next line
4415         (gtk_text_iter_set_line_index): make parallel change
4416         (gtk_text_iter_get_bytes_in_line): add this function
4417         
4418         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4419         of byte indexes off the end of the line; byte index at the end of
4420         the line now returns FALSE and doesn't fill in the requested
4421         values, byte index past the end of the line is an error.  Also,
4422         don't allow -1 offset anymore, since its meaning is unclear.
4423
4424         This change exposes some bug in visual cursor motion, where we
4425         end up with a huge invalid byte index; needs fixing. Symptom of 
4426         bug is a crash when you hit up arrow.
4427         
4428         (_gtk_text_line_char_locate): match the change to byte_locate
4429
4430         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4431         from start of line properly. fixes bug reported by Mikael
4432         Hermansson where backspace would delete all text before the
4433         cursor.
4434
4435 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4436
4437         * gdk/win32/gdkwindow-win32.c
4438         (gdk_window_impl_win32_get_visible_region): New function, as in
4439         the X11 backend.
4440         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4441         instead of duplicating the same code here.
4442
4443         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4444         GDK_COLORMAP macro.
4445
4446         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4447         destroy function.
4448         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4449         access that.
4450
4451         * gtk/gtk.def: Update.
4452
4453         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4454
4455 2000-12-30  Havoc Pennington  <hp@pobox.com>
4456
4457         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4458         colormap on input only windows, to avoid special cases all over
4459         the code for these windows.
4460
4461 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4462
4463         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4464         we are on a palettized display ("PseudoColor" in X11), as the code
4465         for that doesn't work anyway, and never has.
4466
4467 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4468
4469         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4470         Don't use isprint() for chars > 255.
4471
4472 2000-12-21  Havoc Pennington  <hp@redhat.com>
4473
4474         * tests/testtreeview.c: more work
4475
4476 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4477
4478         * docs/README.linux-fb:
4479         Update the docs to the new pangoft2 way.
4480
4481 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4482
4483         * configure.in:
4484         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4485         pango version.
4486         Remove modules/linux-fb/Makefile.
4487
4488         * gdk/linux-fb/gdkdrawable-fb2.c:
4489         Render glyphs using freetype.
4490
4491         * gdk/linux-fb/gdkfb.h:
4492         Add new fb-specific functions needed for managing windows.
4493
4494         * gdk/linux-fb/gdkmain-fb.c:
4495         Remove gdk_font_init/fini() calls.
4496
4497         * gdk/linux-fb/gdkpango-fb.c:
4498         Remove old implementation. Use pangoft2 instead.
4499
4500         * gdk/linux-fb/gdkprivate-fb.h:
4501         Remove PangoFBFont and related stuff.
4502
4503         * gdk/linux-fb/gdkwindow-fb.c:
4504         Implement drawable->get_visible_region.
4505         Implement support for _gdk_window_set_child_handler () and
4506         _gdk_window_get_decorations().
4507
4508         * modules/Makefile.am:
4509         Remove linux-fb subdir.
4510
4511         * modules/linux-fb/*:
4512         Removed all.
4513         
4514 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4515
4516         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4517         calls, as they are no longer needed.
4518
4519         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4520         
4521         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4522         figure out how to emit a signal on an interface.
4523
4524 2000-12-20  Havoc Pennington  <hp@redhat.com>
4525
4526         * tests: new directory to contain tests, gtk/test* should move
4527         here sometime (with appropriate on-cvs-server hackery)
4528
4529         * tests/testtreeview.c, tests/Makefile.am: a test
4530         
4531         * configure.in (AC_OUTPUT): add tests/Makefile
4532
4533         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4534         and "invisible_set" which were missing
4535
4536         * gtk/gtkrbtree.h: some cheesy indentation fix
4537         
4538 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4539
4540         * gtk/gtkinvisible.c (gtk_invisible_realize):
4541         Attach the style to the window so that the style it is not
4542         leaked when unrealizing the window.
4543
4544 2000-12-18  Havoc Pennington  <hp@redhat.com>
4545
4546         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4547         begin/end user action where appropriate
4548         (gtk_text_view_commit_handler): add begin/end user action
4549
4550         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4551         bracket interactive operations with begin/end user action pair.
4552         
4553         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4554         "interactive" arg from insert_text and delete_text signals.
4555         Add begin_user_action, end_user_action signals
4556         (gtk_text_buffer_begin_user_action): 
4557         (gtk_text_buffer_end_user_action): New functions to delimit 
4558         a user-visible action
4559
4560         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4561         signals.
4562         
4563 2000-12-18  Havoc Pennington  <hp@redhat.com>
4564
4565         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4566         was pretty non-working.
4567
4568         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4569         by passing the length to g_utf8_validate().
4570
4571 2000-12-16  Havoc Pennington  <hp@pobox.com>
4572
4573         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4574         Port to GObject, can go back in gdk-pixbuf after setting up 
4575         a gdk-pixbuf-marshal.h header over there.
4576
4577         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4578         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4579         args
4580         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4581         set
4582         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4583         here, do it when we create the buttons later
4584         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4585         (gtk_tree_view_map): paranoia checks that column->button is shown 
4586         and unmapped
4587         (gtk_tree_view_size_request): only request visible children.
4588         Move header size calculation in here, for cleanliness, and 
4589         to maintain invariants for child widgets if we eventually 
4590         let users set different children inside the buttons
4591         (gtk_tree_view_map_buttons): factor out code to map buttons,
4592         since it was being called several times
4593         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4594         windows instead of just moving them; their height may change 
4595         if we allow random widgets in there, or the theme changes.
4596         (gtk_tree_view_size_allocate): move button size allocation 
4597         above emitting the scroll signals, to ensure a sane state when we
4598         hit user code
4599         (gtk_tree_view_button_release): remove queue_resize after
4600         tree_view_set_size(), set_size() will handle any resize queuing
4601         that's needed
4602         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4603         draw_focus goo
4604         (gtk_tree_view_focus): use gtk_get_current_event() and
4605         gdk_event_get_state()
4606         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4607         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4608         semicolon
4609         (gtk_tree_view_create_button): show the button here
4610         (gtk_tree_view_button_clicked): actually emit the clicked signal
4611         on the column
4612         (_gtk_tree_view_set_size): return right away if the size is
4613         unchanged, as a cheesy optimization
4614         (gtk_tree_view_setup_model): rename set_model_realized to 
4615         setup_model to match the flag that indicates whether we've 
4616         called it
4617         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4618         exist, because set_scroll_adjustment does that and it shouldn't
4619         matter what order you call these in
4620         (gtk_tree_view_get_vadjustment): ditto
4621         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4622         for paranoia
4623         (gtk_tree_view_set_headers_visible): call
4624         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4625         (gtk_tree_view_append_column): clarify whether the return value
4626         is the count of columns before or after, and do the increment 
4627         separately from the return statement so you can tell from the code.
4628         (gtk_tree_view_remove_column): ditto
4629         (gtk_tree_view_insert_column): ditto
4630         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4631         outside the existing range, the docs say that outside-range
4632         columns are allowed, so we handle them as documented. (Presumably
4633         this allows a nice loop with column != NULL as test.)
4634         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4635         mean (left/right/center etc.).
4636         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4637         (gtk_tree_view_expand_row): add docs
4638         (gtk_tree_view_collapse_row): add docs
4639
4640         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4641         function to emit the clicked signal on a column
4642         
4643         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4644         state of an event
4645         (gdk_event_get_time): don't treat GDK_SCROLL 
4646         as a button event, remove default case from switch so gcc 
4647         will whine if we don't explicitly handle all event types
4648
4649         * gtk/gtktreeselection.h: added some FIXME 
4650         
4651         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4652         "columns" to "n_columns" and "column" to "columns" for clarity
4653
4654 2000-12-16  Havoc Pennington  <hp@pobox.com>
4655         
4656         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4657         stuff. This should make e.g. the delete key work again in the
4658         text widget...
4659         (gtk_text_iter_forward_cursor_positions): handle negative count
4660         (gtk_text_iter_backward_cursor_positions): handle negative count
4661         (gtk_text_iter_forward_word_ends): handle negative count
4662         (gtk_text_iter_backward_word_starts): handle negative count
4663
4664         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4665         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4666         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4667         GObject. No doubt will cause breakage.
4668
4669         * demos/gtk-demo/textview.c: remove hacks around
4670         non-GObject-ification of the text objects
4671
4672         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4673         the text tag
4674         
4675 2000-12-14  Havoc Pennington  <hp@pobox.com>
4676
4677         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4678         that we have Xrender
4679
4680 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4681
4682         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4683         Add two virtualized functions gdk_drawable_get_clip_region - to
4684         get the clip region when drawing.
4685         
4686         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4687         use invalidate_region.
4688
4689         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4690         region.
4691
4692         * acconfig.h configure.in: Check for Xft. For now, assume
4693         that if Xft is found, Pango was compiled with Xft support
4694         as well.
4695
4696         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4697         gdk_colormap_query_color().
4698         
4699         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4700         with Xft if appropriate.
4701
4702         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4703         a pangoxft context if we have XFT and the environment
4704         variable GD_USE_XFT is set.
4705         
4706         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4707         and also possibly an XftDraw structure.
4708
4709         * gtk/gtkfontsel.c: Handle the case where the font from the
4710         style doesn't match any of the fonts a bit better.
4711         
4712         * gtk/testgtk.c: Add tabs between directional segments for
4713         hebrew/arabic test. (Not really necessary, just a little
4714         prettier.)
4715
4716 2000-12-14  Havoc Pennington  <hp@redhat.com>
4717
4718         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4719         reading a file
4720
4721 2000-12-14  Havoc Pennington  <hp@redhat.com>
4722
4723         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4724         unused call to get_last_line()
4725
4726         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4727         here until boxed is working (and maybe after that - we should
4728         really not gratuitously break old code)
4729
4730         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4731         specific types for font_desc and tabs args, move them to
4732         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4733         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4734
4735         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4736         use GTK_TYPE_POINTER for signal signatures as a hack-around
4737
4738         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4739         PangoTabArray
4740
4741         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4742         make static
4743         (line_display_index_to_iter): make static
4744
4745         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4746         to marshal a string not a boxed
4747
4748         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4749
4750         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4751         since the UTF-8 isn't validated yet
4752
4753         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4754         lines to end in '\n'
4755         
4756         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4757         forward_to_delimiters, and grapheme boundaries
4758         (gtk_text_view_delete_from_cursor): properly handle non-newline
4759         delimiters, and grapheme boundaries
4760
4761         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4762         to gtk_text_iter_forward_to_delimiters, and make it work properly
4763         if empty lines end with a character other than '\n'
4764
4765         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4766         position
4767
4768 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4769
4770         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4771
4772         * gtk/gtk.def
4773         * gdk/gdk.def: Update.
4774
4775         * gdk/win32/gdkmain-win32.c
4776         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4777         gdkmain-win32.c here.
4778
4779         * gdk/win32/makefile.mingw.in (all): No need to make
4780         gdk-win32res.o here, the makefile one step up will call us to make
4781         it.
4782
4783         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4784         gdkkeys-win32.
4785
4786         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4787
4788         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4789         call to g_source_add().
4790
4791         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4792         leak. Thanks to Andreas Kemnade.
4793
4794 2000-12-13  Havoc Pennington  <hp@pobox.com>
4795
4796         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4797
4798         * gtk/gtktext*.[hc]: update accordingly
4799         
4800 2000-12-13  Havoc Pennington  <hp@pobox.com>
4801
4802         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4803         header file
4804
4805         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4806
4807 2000-12-13  Alex Larsson  <alexl@redhat.com>
4808
4809         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4810         Add support for ps2 intellimouse.
4811
4812         * gdkkeyboard-fb.c:
4813         Move shift-F1 repaint handling to xlate handler only.
4814         
4815         * docs/README.linux-fb:
4816         Add imps2 to docs.
4817         Document the new refresh keys.
4818         
4819 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
4820
4821         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
4822
4823         * gtk/gtkbox.c: change property types from (u)long to (u)int for
4824         ::position and ::padding.
4825
4826         * gtk/gtkcontainer.c: make ::border_width an INT property.
4827
4828         * gtk/gtkpacker.c: make ::position an INT property.
4829
4830         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4831         guard against NULL h/v scrollbars, since this is used at construction
4832         time.
4833
4834         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
4835         internal gtk_clist_constructor().
4836
4837         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
4838         gtk_ctree_constructor().
4839
4840         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4841         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4842
4843         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4844         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4845
4846         * gtk/gtkwidget.[hc]:
4847         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4848         and gtk_widget_get().
4849         (gtk_widget_new): use g_object_new_valist().
4850         (gtk_widget_set): use g_object_set_valist().
4851
4852         * gtk/gtkobject.[hc]:
4853         removed gtk_object_arg_get_info(), gtk_object_getv(),
4854         gtk_object_query_args(), gtk_object_newv(),
4855         gtk_object_class_add_signals(),
4856         gtk_object_class_user_signal_new(),
4857         gtk_object_class_user_signal_newv(),
4858         gtk_object_arg_set(), gtk_object_arg_get(),
4859         gtk_object_args_collect(),
4860         gtk_object_default_construct(),
4861         gtk_object_constructed(),
4862         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4863         removed nsignals, signals and n_args members from GtkObjectClass.
4864         (gtk_object_new): use g_object_new_valist().
4865         (gtk_object_set): use g_object_set_valist().
4866         (gtk_object_get): use g_object_get_valist().
4867         
4868         * gtk/gtkcompat.h: define gtk_object_default_construct().
4869         
4870         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4871         g_object_new().
4872
4873         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4874         fucntions, cleaned up method assignments (make sure your structures
4875         are setup properly before calling out). removed all GTK_CONSTRUCTED
4876         hacks ;)
4877
4878 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4879
4880         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4881         off-by-one error in checks. (Dave Lambert)
4882
4883 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4884
4885         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4886         Don't free gdk_fb_keyboard twice.
4887
4888 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4889
4890         * gtk/testgtk.c:
4891         (create_tooltips): 
4892         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4893         use GObject swapped_signal:: properties instead.
4894
4895         * gtk/gtkcellrenderertoggle.c: 
4896         * gtk/gtkcellrenderertextpixbuf.c: 
4897         * gtk/gtkcellrenderertext.c: 
4898         * gtk/gtkcellrendererpixbuf.c: 
4899         * gtk/gtkcellrenderer.c:
4900         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4901         missing warnings for invalid property ids, install properties
4902         with g_object_class_install_property() now.
4903         
4904         * gtk/gtksignal.c:
4905         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4906         
4907 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4908         
4909         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4910         to determine if a window is the focus widget within
4911         its toplevel.
4912
4913         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4914         to be boolean.
4915
4916         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4917         of the case where the container CAN_FOCUS to here instead
4918         of having it in each individual move-the-focus place.
4919
4920         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4921         focusing to be geometric in a much more obvious sense. Arrowing
4922         around is still non-intuitive because it isn't perfect and
4923         because entries, etc, grab the arrow keys, but it at least
4924         usually will do what you expect now.
4925         
4926         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4927         file.
4928
4929         * gtk/gtknotebook.c: Change tabs to be a single item in
4930         the focus chain. Make movement of focus on tabs with arrow
4931         keys wrap around.
4932         
4933         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4934         CHECK_FIND_CHILD macro to give informative error messages
4935         instead of silent returns.
4936
4937         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4938         flag since we handle GdkReturn on the tabs.
4939
4940         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4941         windows rather than sending expose events directly.
4942
4943         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4944         definition for GtkNotebookPage into .c file, since it is private.
4945
4946         * gtk/testgtk.c (create_notebook): Add option for 
4947         testing borderless notebook.
4948
4949         * gtk/testgtk.c (page_switch): Removed egregious poking
4950         around in GTK+ internals.
4951
4952         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4953
4954         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4955         properly through gtk_clist_focus. Make the title headers a
4956         single item in the tab-focus chain, and make left-right wrap
4957         around.
4958
4959         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4960         focus method so that wrapping around works properly.
4961
4962         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4963         that is handled for the widget now. 
4964
4965 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4966
4967         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4968         widgets as TOPLEVEL.
4969
4970         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4971         TOPLEVEL widgets are containers.
4972
4973         * gtk/gtkinvisible.h: Remove useless include.
4974
4975 2000-12-11  Havoc Pennington  <hp@redhat.com>
4976
4977         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4978         Handle chopping off \r\n and 0x2029 in addition to \n before
4979         passing to PangoLayout
4980
4981         * gtk/gtkimcontextsimple.c
4982         (gtk_im_context_simple_get_preedit_string): 
4983         return an empty string if no match is pending
4984
4985         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4986         assertion that the returned preedit string was sane
4987
4988         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4989         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4990         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4991
4992 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4993
4994         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4995         Fix up finalizer to chain to its parent.
4996
4997 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4998
4999         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5000         Clearified the difference between the keyboard types. Wrote a note
5001         about the magic sysrq key to get out of raw mode.
5002
5003 2000-12-09  James Henstridge  <james@daa.com.au>
5004
5005         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5006         member to hold masks for detecting the start of a protocol packet.
5007         (mouse_devs): add packet start masks for ps2 and ms device types.
5008         Left the mask for fidmour blank, as I have no idea what it should
5009         be.
5010         (handle_mouse_io): skip bytes until we get to the start of a
5011         packet.  My Logitech mouse seems to be passing an extra NULL pad
5012         byte, and GPM does a similar thing here.
5013         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5014         this is the ms mouse driver.
5015         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5016         completely broken except for button1.  It was checking the wrong
5017         bit in the packet for the status of the right mouse button, and
5018         wrongly assuming right == button2 rather than 3.  I fixed that and
5019         also added support for middle button (button2).
5020
5021 2000-12-08  Havoc Pennington  <hp@redhat.com>
5022
5023         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5024         that cause a segfault on text insertion
5025
5026         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5027         warning
5028
5029         * gtk/gtktextiter.c (test_log_attrs): use
5030         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5031
5032         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5033         Get log attrs for a line, using a cache stored on the buffer
5034         
5035         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5036         reported by Jeff Franks
5037
5038 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5039
5040         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5041         /dev/ttyS0 -> /dev/mouse
5042
5043 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5044
5045         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5046         Added dummy gdk_fontset_load.
5047
5048 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5049
5050         * docs/README.linux-fb:
5051         * docs/Makefile.am:
5052         Initial GtkFB docs.
5053         
5054         * gdk/linux-fb/Makefile.am:
5055         Define GDK_DATA_PREFIX.
5056
5057         * gdk/linux-fb/gdkmain-fb.c:
5058         Fix typo.
5059         Change default display to /dev/fb0.
5060
5061         * gdk/linux-fb/gdkpango-fb.c:
5062         Add $(prefix)/share/fonts/ to font path.
5063         
5064 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5065
5066         * gdk/linux-fb/gdkkeyboard-fb.c:
5067         New file containing the abstracted keyboard driver. Most code
5068         taken from gdkinput-ps2.c
5069
5070         * gdk/linux-fb/gdkinput-ps2.c:
5071         Removed file.
5072         
5073         * gdk/linux-fb/Makefile.am:
5074         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5075
5076         * gdk/linux-fb/gdkcolor-fb.c:
5077         display->fb was renamed to display->fb_fd.
5078
5079         * gdk/linux-fb/gdkcursor-fb.c:
5080         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5081
5082         * gdk/linux-fb/gdkinput.c:
5083         Moved gdk_input_init here from gdkinput-ps2.c
5084
5085         * gdk/linux-fb/gdkmain-fb.c:
5086         display->fb was renamed to display->fb_fd.
5087         Now the tty and the console is opened here instead
5088         of in the keyboard driver. Also check GDK_VT to see what
5089         tty to open.
5090         Move gdk_beep () here from gdkinput-ps2.c
5091         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5092
5093         * gdk/linux-fb/gdkmouse-fb.c:
5094         Add header.
5095         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5096         Return correct keyboard modifiers.
5097         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5098
5099         * gdk/linux-fb/gdkprivate-fb.h:
5100         Add tty and vt info to display.
5101         Add orignal modeinfo storage to display
5102         Update global functions
5103
5104         * gdk/linux-fb/gdkwindow-fb.c:
5105         Added gdk_fb_window_find_focus().
5106         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5107
5108 2000-12-07  Havoc Pennington  <hp@pobox.com>
5109
5110         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5111         function, noticed by Alex
5112
5113 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5114
5115         * configure.in: Detect freetype properly
5116
5117         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5118         above.
5119
5120 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5121
5122         * gdk/linux-fb/Makefile.am:
5123         Add gdkmouse-fb.c
5124         
5125         * gdk/linux-fb/gdkmouse-fb.c:
5126         New file. Abstracted the mouse drivers a bit.
5127
5128         * gdk/linux-fb/gdkcursor-fb.c:
5129         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5130
5131         * gdk/linux-fb/gdkinput-ps2.c:
5132         Removed old mouse handling code. Moved cursor handling code
5133         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5134         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5135         gdk_mouse_get_info.
5136
5137         * gdk/linux-fb/gdkmain-fb.c:
5138         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5139
5140         * gdk/linux-fb/gdkprivate-fb.h:
5141         Removed public gdk_fb_find_common_ancestor, added and renamed
5142         functions for the new mouse handling code.
5143
5144         * gdk/linux-fb/gdkwindow-fb.c:
5145         Moved gdk_fb_window_send_crossing_events here. added global
5146         variable gdk_fb_window_containing_pointer. made
5147         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5148         renamed to gdk_mouse_get_info.
5149
5150 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5151
5152         * gdk/linux-fb/gdkevents-fb.c:
5153         Update to match latest gmain/gsource changes.
5154
5155         * gdk/linux-fb/gdkinput-ps2.c:
5156         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5157         it links. Will be implemented later.
5158
5159 2000-12-03  Havoc Pennington  <hp@pobox.com>
5160
5161         * gdk/Makefile.am: add gdkkeys.[hc]
5162
5163         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5164         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5165
5166         * acconfig.h, configure.in: add checks and command line options
5167         for XKB
5168
5169         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5170         
5171         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5172         and group in the key event
5173
5174         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5175         field with the low-level hardware key code, and a group
5176         field with the keyboard group
5177
5178         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5179         and declare a couple globals used for keymap handling
5180         
5181         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5182         hold down Shift-Control and type a hex number to get a Unicode 
5183         character corresponding to the hex number
5184         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5185         (return bytes not chars)
5186
5187 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5188
5189         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5190         to avoid waste on 64-bit platforms.
5191
5192 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5193
5194         * INSTALL: Fix link to PNG home, remove reference
5195         to fribidi.
5196
5197         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5198         
5199         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5200         tested.)
5201
5202         * gtk/gtkcheckmenuitem.c: Permanently turn on
5203         always_show_toggle.
5204
5205         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5206         be NULL. (Vladimir Klebanov, #26545)
5207
5208         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5209         some signed/unsigned comparison problems. (#6510,
5210         David Kaelbling)
5211
5212         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5213         return type to boolean (Oskar Liljeblad, #18648)
5214
5215 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5216
5217         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5218         Remove bogus colormap setting.
5219
5220 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5221
5222         * gdk/linux-fb/gdkcolor-fb.c:
5223         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5224
5225         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5226         Must set colormap.
5227         
5228 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5229
5230         * docs/tutorial/gtk-tut.sgml: DND updates
5231
5232 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5233
5234         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5235         Remove old debug g_warning().
5236         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5237         or an implementation, just pass the implementation to draw_drawable_2.
5238         
5239         * gdk/linux-fb/gdkprivate-fb.h:
5240         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5241
5242         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5243         clear and invalidate area when window is destroyed.
5244         (send_map_events): Remove old commented out code.
5245
5246 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5247
5248         * gdk/linux-fb/gdkpango-fb.c:
5249         Use italic instead of oblique in font aliases.
5250         
5251         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5252         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5253         other unsupported functions.
5254
5255 2000-12-04  Havoc Pennington  <hp@redhat.com>
5256
5257         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5258
5259         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5260
5261         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5262
5263         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5264         hack to avoid infinite loops (synthetic expose event) - 
5265         Owen has more appropriate fixes in a branch he'll check in later.
5266
5267         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5268         separator, CR, and CRLF as line ends
5269
5270         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5271         into lines using pango_find_paragraph_boundary(); other bits of
5272         the widget are still going to be broken if the boundary isn't '\n'
5273         though
5274
5275 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5276
5277         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5278         multiply.
5279
5280         * gdk/linux-fb/gdkpango-fb.c:
5281         Copied some 26.6 scaling macros from pango to clean up the rounding.
5282         (pango_fb_font_get_glyph_info): Correct sign on x value.
5283
5284         * gdk/linux-fb/gdkprivate-fb.h:
5285         Removed unreferenced external functions.
5286
5287         * modules/linux-fb/Makefile.am: Use ` instead of '.
5288
5289         * modules/linux-fb/basic.c:
5290         Remove dead code. In particular the dummy lang engine which broke all
5291         pango layouts in GtkFB. Don't include tables-big.i anymore.
5292
5293         * modules/linux-fb/tables-big.i:
5294         Upgrade to latest version from pango. Left for reference, basic_ranges
5295         moved to basic.c.
5296         
5297 2000-12-04  Havoc Pennington  <hp@redhat.com>
5298
5299         Fix bugs Alex found:
5300         
5301         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5302         to "draw"
5303
5304         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5305
5306         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5307
5308         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5309         implementation in here, apparently the expose() implementation was
5310         dead code.
5311
5312 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5313
5314         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5315         Return positive descent.
5316
5317 2000-12-02  Havoc Pennington  <hp@pobox.com>
5318
5319         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5320         method and signal
5321         
5322         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5323         calls gdk_window_process_updates() to push the exposes through
5324         (gtk_widget_class_init): No more draw signal, no
5325         gtk_widget_real_draw()  
5326         
5327         * gtk/gtkbin.c (gtk_bin_draw): remove
5328
5329         * gtk/gtkbox.c (gtk_box_draw): remove
5330
5331         * gtk/gtkbutton.c (gtk_button_draw): remove
5332
5333         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5334
5335         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5336
5337         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5338
5339         * gtk/gtkclist.c (gtk_clist_draw): remove
5340
5341         * gtk/gtkentry.c (gtk_entry_draw): remove
5342
5343         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5344
5345         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5346
5347         * gtk/gtkframe.c (gtk_frame_draw): remove
5348
5349         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5350
5351         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5352
5353         * gtk/gtklayout.c (gtk_layout_draw): remove
5354
5355         * gtk/gtklist.c (gtk_list_draw): remove
5356
5357         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5358
5359         * gtk/gtkmenu.c (gtk_menu_draw): remove
5360
5361         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5362
5363         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5364
5365         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5366
5367         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5368
5369         * gtk/gtkpacker.c (gtk_packer_draw): remove
5370
5371         * gtk/gtkrange.c (gtk_range_draw): remove
5372
5373         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5374
5375         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5376
5377         * gtk/gtktable.c (gtk_table_draw): remove
5378
5379         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5380
5381         * gtk/gtktext.c (gtk_text_draw): remove
5382
5383         * gtk/gtktextview.c (gtk_text_view_draw): remove
5384
5385         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5386
5387         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5388
5389         * gtk/gtktree.c (gtk_tree_draw): remove
5390
5391         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5392
5393         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5394
5395         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5396
5397         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5398
5399         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5400
5401         * gtk/gtkwindow.c (gtk_window_draw): remove
5402
5403 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5404
5405         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5406         a GtkToggleButton is both insensitive and active, it was being
5407         drawn by the GtkButton draw handler which doesn't check the
5408         state. Now it's calling gtk_toggle_button_paint instead.
5409         
5410 2000-12-01  Havoc Pennington  <hp@redhat.com>
5411
5412         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5413         dangling pointers to the appearance attributes from the 
5414         line display
5415
5416         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5417         width/height to mean "full width/height of drawable"
5418
5419         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5420         click to select word/line
5421         
5422         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5423         when getting log attrs. Get a slice, so that pixmaps and stuff
5424         are properly handled.
5425
5426         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5427         paste into the selection (replaces selection now, previously
5428         crashed or added to selection). Reveals longstanding btree bug -
5429         select multiple lines, middle-click on the selection, boom. This
5430         isn't related to my changes though.
5431
5432         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5433         PangoLogAttrs changes
5434         (gtk_entry_move_backward_word): ditto
5435
5436         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5437         functions return bool whether the iter moved onto a
5438         dereferenceable position.
5439  
5440         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5441         functions for motion in terms of display lines.
5442
5443         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5444         get the buffer a mark is inside
5445         
5446 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5447
5448         * gdk/linux-fb/Makefile.am:
5449         * modules/linux-fb/Makefile.am:
5450         Freetype 2 final uses freetype-config
5451
5452         * gdk/linux-fb/gdkpango-fb.c:
5453         Upgrade to use Freetype 2 final.
5454         More flexible support for font aliases, this also fixes a bug with
5455         GtkFontSelector, as the aliases must be visible in the font/family list,
5456         or GtkFontSelector reads uninitialized memory.
5457
5458 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5459
5460         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5461         XGetIMValues to properly terminate variable argument list, and do
5462         NULL return check for ic_values and xim_styles.
5463
5464         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5465         Restore preedit state after XmbResetIC().
5466         
5467         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5468         XvaCreateNestedList() should take XvaNestedList, but not
5469         XvaNestedList*.
5470
5471         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5472         preedit_draw_callback, preedit_caret_callback): Match
5473         "preedit-changed" signal name to "preedit_changed" to be
5474         consistent to the spec.
5475
5476         * gtk/gtkimcontextsimple.c (check_table):
5477         Match "preedit-changed" to "preedit_changed" to be consistent
5478         to the spec.
5479
5480 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5481
5482         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5483         gc->clip_region == NULL>
5484
5485 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5486
5487         Changes by Hans Breuer:
5488         
5489         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5490         Dont't use negative width and height as max_hints. This fixes
5491         Owen's recent testgtk changes for win32.
5492
5493         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5494         gdk_win32_hdc_release): These are exported and may be called with
5495         other drawable types than our GdkDrawableImplWin32 (?).
5496
5497         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5498         so always #define USE_BACKING_STORE.
5499
5500         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5501         of printf for debugging output.
5502
5503         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5504         
5505         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5506
5507         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5508         declaration.
5509
5510         * gtk/gtktexttypes.h: Ditto.
5511
5512         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5513         (GDK_VoidSymbol) also if in case of arg check failure.
5514
5515         * gtk/gtkimcontextsimple.c
5516         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5517         position to the pointer, but to the variable it points to.
5518
5519         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5520
5521         * gtk/gtk.def: Updates.
5522
5523 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5524
5525         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5526         GTK_TYPE_TREE_MODEL.
5527
5528 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5529
5530         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5531         Set the size of the font from the description.
5532         (gdk_text_width): Gross hack that calculates the width
5533         of text by text_length * size/2. This is necessary because
5534         GtkLabel does some ugly gtk_string_width call to calculate
5535         an good size.
5536         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5537
5538 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5539
5540         * docs/tutorial/gtk-tut.sgml: DND updates
5541
5542 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5543
5544         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5545         If you pass width or height == 0 to gdk_window_clear_area they
5546         should be calculated from the window size.
5547
5548 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5549
5550         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5551         a grab, but no grab-cursor, use the cursor from the grabbed
5552         window. (gdk_fb_window_send_crossing_events): Send normal
5553         enter/leave notifications if grab and owner_events == TRUE.
5554
5555 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5556
5557         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5558         Do implicit button grabs, even if the window doesn't
5559         want the event.
5560         (gdk_fb_window_send_crossing_events): If there is a
5561         grab, only the grabbed window gets normal enter/leave
5562         notifications. On ungrab go from grabbed window to current.
5563         Don't send any notification to b when propagating from c -> b.
5564         If setting a grab on window, don't set prev_window.
5565         (handle_mouse_input): Send enter/leave events to the window the
5566         mouse is over, not the grabbed one.
5567         
5568 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5569
5570         * gdk/gdkregion-generic.c: Zap warning.
5571         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5572         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5573
5574 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5575
5576         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5577         The cursor should be hidden if it is part of either the
5578         source or destination region. Not only if it is in both.
5579         (gdk_window_set_transient_for): Silence warnings.
5580
5581 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5582
5583         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5584         The default mode in X is Pie Arcs, therefore that is
5585         what Gtk+ uses.
5586
5587 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5588
5589         * gdk/linux-fb/gdkinput-ps2.c:
5590         Implement correct EnterNotify/LeaveNotify:
5591         (gdk_fb_window_send_crossing_events): New function that sends
5592         all GdkCrossingEvents from the last mouse-window to the specified
5593         destination.
5594         (gdk_fb_window_visibility_crossing): Removed function.
5595         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5596         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5597         instead of gdk_window_get_pointer() for better readability.
5598
5599         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5600         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5601
5602         * gdk/linux-fb/gdkprivate-fb.h:
5603         removed gdk_fb_window_visibility_crossing, added
5604         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5605
5606         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5607         New function that finds the least common ancestor of two windows.
5608         (gdk_window_show, gdk_window_hide):
5609         Use gdk_fb_window_send_crossing_events.
5610         (gdk_fb_window_move_resize): Send configure events to toplevel
5611         windows. Use gdk_fb_window_send_crossing_events.
5612
5613 2000-11-27  Havoc Pennington  <hp@redhat.com>
5614
5615         * gtk/gtkprivate.h (enum): Remove a trailing comma
5616
5617 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5618
5619         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5620         the "changed" callback of the adjustment.  We need to redraw the
5621         spin button's arrows when the adjustment's range changes.
5622         (adjustment_changed_cb): Draw the arrows.
5623         (gtk_spin_button_value_changed): Draw the arrows.
5624
5625 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5626
5627         * gdk/linux-fb/gdkselection-fb.c:
5628         Initial selection implementation.
5629
5630         * gtk/gtkselection.c:
5631         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5632         requestor in gtk_selection_request.
5633         
5634         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5635         Added gdk_selection_property atom.
5636
5637         * gdk/linux-fb/gdkprivate-fb.h:
5638         Export _gdk_selection_window_destroyed.
5639         Removed mask_off_x/y from GdkCursorPrivateFB.
5640         Removed hbearing, added top, left to PangoFBGlyphInfo.
5641
5642         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5643         Call _gdk_selection_window_destroyed
5644         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5645         the root window has been created.
5646         (static_dx_hack, static_dy_hack, compare_draw_rects,
5647         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5648         in region. They are already sorted. Instead just traverse them in
5649         reverse if draw_direction < 0.
5650         
5651         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5652         Double-clicks must be sent after the normal button_press.
5653         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5654         
5655         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5656         Pass _gdk_fb_screen_gc instead of NULL.
5657
5658         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5659         Initialize gdk_selection_property.
5660         (gdk_event_make): Remove unused code.
5661
5662         * gdk/linux-fb/gdkcursor-fb.c:
5663         Make the pixmap for the cursor the same size as the mask. Also remove
5664         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5665         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5666         Now the whole cursor is visible.
5667
5668         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5669         Fix bug where xdest+height instead of ydest+height was used
5670         to calculate if the source and dest overlapped. This fixes the
5671         redraw bug when the main window in testgtk was scrolled when
5672         partially covered by a tall window.
5673         Copy rectangles in region in order depending on draw_direction.
5674         Also moved the draw_direction flipping of start_y and end_y into
5675         the gc functions, as this might not be what all of them want.
5676         (gdk_fb_draw_lines): Support dashed lines.
5677         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5678         so that the text is positioned correctly (was 1 pixel high).
5679
5680         gdk/linux-fb/gdkgc-fb.c:
5681         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5682         all lines were drawn a pixel to short. Also checked the default of
5683         the rest of the values, and they're the same as X now.
5684
5685         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5686         Clean up pixel positioning of the glyphs. Just use bgy->top and
5687         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5688         to all divisions to get correct rounding behaviour.
5689
5690         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5691         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5692         Moved start_y/end_y flip into draw_drawable implementations.
5693         Flip also x rendering when draw_direction < 0.
5694         Remove unneccesary multiply with draw_direction.
5695
5696 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5697
5698         * docs/tutorial/gtk-tut.sgml:
5699           - get rid of gtk_toggle_button_toggled FUD
5700           - start DND section - needs work - based on:
5701                 http://wolfpack.twu.net/docs/gtkdnd/
5702
5703 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5704
5705         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5706         Correct calculation of font metrics. Now GtkEntrys have sane
5707         size.
5708
5709 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5710
5711         * gdk/gdktypes.h:
5712         Add new type GdkSpan
5713         
5714         * docs/reference/gdk/gdk-sections.txt,
5715         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5716         gdk/gdkregion.h:
5717         Implement and document gdk_region_spans_intersect_foreach.
5718
5719         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5720         Add new file gdkrender-fb.c which contains all core
5721         rendering code.
5722         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5723         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5724         (optimized rectangle fillers).
5725
5726         * gdk/linux-fb/gdkdrawable-fb2.c:
5727         Move all rendering code to gdkrender-fb.c.
5728         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5729         Use the new span intersection functions in gdk_fb_fill_spans.
5730         gdk_fb_draw_rectangle() clips filled rectangles and calls
5731         gc->fill_rectangle with the result.
5732         gdk_fb_fill_spans() gets extra argument "sorted".
5733
5734         * gdk/linux-fb/gdkevents-fb.c:
5735         Remove unused includes and defines.
5736         New function gdk_fb_get_time() to get correct time for events.
5737
5738         * gdk/linux-fb/gdkinput-ps2.c:
5739         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5740         Make sure to set the time of all events.
5741
5742         * gdk/linux-fb/gdkmain-fb.c:
5743         Use gdk_fb_get_time ().
5744
5745         * gdk/linux-fb/gdkprivate-fb.h:
5746         New virtual GC calls: fill_span & fill_rectangle.
5747         Export gdk_fb_get_time().
5748         gdk_fb_fill_spans() gets extra argument "sorted".
5749
5750         * gdk/linux-fb/mi*.c:
5751         Use GdkSpan instead of GdkRectangle.
5752         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5753         from XFree 4 source)
5754         
5755 2000-11-22    <jrb@redhat.com>
5756
5757         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5758         reversing the order in an if statement will do.  Doing so managed
5759         to make the treemodelsort half work.  Other half will follow after
5760         I get the insert function fully fixed.
5761
5762 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5763         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5764         more than 2 bits. Besides, I need to implement an evil hack. :)
5765
5766 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5767
5768         * docs/tutorial/gtk-tut.sgml: minor corrections
5769
5770 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5771         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5772           convert to and from relative path's and iters.
5773
5774         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5775           testing sorting functions a bit better.  Currently broken -- will
5776           fix in morning.
5777
5778 2000-11-20  Havoc Pennington  <hp@redhat.com>
5779
5780         * gtk/gtkwidget.c: Documented a bunch of functions in here
5781         (gtk_widget_realize): Warn if you try to realize
5782         a widget with no parent that isn't a toplevel
5783         (gtk_widget_intersect): return a gboolean
5784
5785 2000-11-20  Havoc Pennington  <hp@redhat.com>
5786
5787         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5788         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5789         scrolling to be implemented in GDK to finish. Also, right now
5790         we just size_allocate all children on every layout change,
5791         which is pretty lame. Test commented out of testtext.c, 
5792         until it works better.
5793
5794 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5795
5796         * gdk/linux-fb/gdkdrawable-fb2.c:
5797         Removed unused arguments from gdk_fb_drawable_get_pixel().
5798
5799         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5800         Renamed fidur specific mouse packet data in MouseDevice to
5801         generic. Used it in ps2 mouse handling code to avoid blocking
5802         reads.
5803
5804 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5805
5806         * demos/gtk-demo/main.c: Changed to have the list become
5807         non-italic when the demo window is destroyed through an external
5808         event (like a close button).  Doing so found three bugs in the
5809         widget.
5810
5811         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5812
5813         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5814         we actually set the cell.
5815
5816         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5817
5818         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
5819         free a leaked path.  Thanks memprof.
5820
5821 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
5822
5823         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
5824         off-by-one error when destroying allocated segments
5825         on failure. (Elliot)
5826
5827 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
5828
5829         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
5830         memleaks found by Evan Martin.
5831
5832 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
5833
5834         * Released 1.3.2
5835         
5836         * NEWS: Updates for 1.3.2
5837
5838 2000-11-17  Tor Lillqvist  <tml@iki.fi>
5839
5840         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5841         but in general for window system specific events.
5842
5843         * gtk/gtk.def
5844         * gtk/makefile.mingw.in
5845         * gtk/makefile.msc.in: Update.
5846         
5847         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5848
5849 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5850
5851         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5852         distribute gtk.immodules.
5853
5854         * gtk/Makefile.am (install-data-local): Don't install the
5855         gtk.immodules file created for the uninstalled modules;
5856         instead run gtk-query-immodules after install
5857
5858 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5859
5860         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5861         -rpath to the right install location.
5862
5863         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5864         -export-dynamic.
5865
5866         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5867         properly.
5868
5869 2000-11-15  Havoc Pennington  <hp@pobox.com>
5870
5871         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5872         patch from Mikael Hermansson to temporarily stop blinking while
5873         the user is using the keyboard to type or navigate. 
5874
5875         Also, when blinking, stay on for longer than we stay off. Also,
5876         return from start_cursor_blink if !cursor_visible, to save
5877         checking that flag all over the place before we call
5878         start_cursor_blink.
5879
5880 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5881
5882         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5883         only contain a "fontset" line, which is now ignored.
5884
5885         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5886         double-click-to-select-word work.
5887         
5888 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5889
5890         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5891         Don't move back one char when we are actually at the end of the 
5892         paragraph.
5893
5894 2000-11-15  Robert Brady  <robert@suse.co.uk>
5895
5896         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5897         'o' < 'p'.
5898         
5899         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5900         bind_textdomain_codeset.
5901
5902         (gtk_init_check): Make the warning about translating default:LTR
5903         sterner.
5904         
5905 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5906
5907         * **/Makefile.am : remove unecessary rules for win32-specific
5908         config-substituted targets. If you want these rules, use
5909         --enable-maintainer-mode (called automatically by autogen.sh).
5910         Stops a lot of unneccessary make-time warnings.
5911
5912         * gtk/gtktext{layout,display}.c: Factor in total width as
5913         well as screen when figuring alignment for word-wrap as well as
5914         no wrap; this is necessary to handle lines that cannot be wrapped
5915         at all.
5916
5917 2000-11-15  Havoc Pennington  <hp@redhat.com>
5918
5919         * gtk/testtext.c: Implement essential color cycling feature
5920
5921 2000-11-15  Havoc Pennington  <hp@redhat.com>
5922
5923         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5924         when we invalidate the main window.
5925
5926         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5927         GtkTextView will now invalidate the side windows for us when text
5928         changes.
5929
5930 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5931
5932         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5933         unconditionally, since we may need to update the horizontal
5934         scrollbars even if the height didn't change.
5935
5936         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5937         the extra attrs, since some of them affect size.
5938
5939         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5940         x_offset correctly.
5941
5942 2000-11-15  Havoc Pennington  <hp@redhat.com>
5943
5944         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5945         don't move the first line out into the margin, instead move the
5946         whole paragraph in order to make space for the first line within 
5947         the margin
5948
5949 2000-11-15  Havoc Pennington  <hp@redhat.com>
5950
5951         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5952         xoffset in addition to yoffset, so horizontal scrolling doesn't
5953         break redraws
5954
5955 2000-11-15  Havoc Pennington  <hp@redhat.com>
5956
5957         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5958         from the cursor
5959         (render_layout_line): fix reversed test that caused weird
5960         underlines to get drawn
5961
5962 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5963
5964         * gdk/linux-fb/gdkprivate-fb.h:
5965         Fix debug macros.
5966         
5967 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5968
5969         * gdk/linux-fb/gdkprivate-fb.h:
5970         Added virtual functions set_pixel, get_color,
5971         fill_span and draw_drawable to the GC.
5972         Added global _gdk_fb_screen_gc to use instead of
5973         NULL when drawing to the screen.
5974         Added _gdk_fb_gc_calc_state() prototype.
5975
5976         * gdk/linux-fb/gdkgc-fb.c:
5977         Call _gdk_fb_gc_calc_state() on any gc state change.
5978
5979         * gdk/linux-fb/gdkglobals-fb.c:
5980         Add _gdk_fb_screen_gc
5981                 
5982         * gdk/linux-fb/gdkdrawable-fb2.c:
5983         _gdk_fb_gc_calc_state() calculates best functions
5984         for the GC state and depth.
5985         Moved bpp specialized code to separate functions.
5986         Added optimized 24 bpp AA draw_drawable.
5987
5988         * gdk/linux-fb/gdkevents-fb.c:
5989         Silence gcc warning.
5990
5991         * gdk/linux-fb/gdkimage-fb.c:
5992         Use _gdk_fb_screen_gc
5993
5994         * gdk/linux-fb/gdkwindow-fb.c:
5995         Init and use _gdk_fb_screen_gc
5996
5997         * gdk/linux-fb/mitypes.h:
5998         Remove unused types.
5999
6000 2000-11-14  Havoc Pennington  <hp@pobox.com>
6001
6002         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6003         to pixels
6004
6005 2000-11-14  Havoc Pennington  <hp@pobox.com>
6006
6007         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6008
6009         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6010         unknown char, no real reason we were using a variable. 
6011         Remove gtk_text_unknown_char variable. Fix all the text widget
6012         files accordingly.
6013
6014         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6015         since the Unicode spec seems to prefer that character for our
6016         purposes.
6017
6018 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6019
6020         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6021         value of g_getenv() isn't freeable, so g_strdup it.
6022
6023         * modules/input/inuktitut.c: Inuktitut input method.
6024
6025         * modules/input/Makefile.am: Build this.
6026         
6027 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6028
6029         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6030         of gtk programs.
6031
6032 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6033
6034         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6035         reversed > that was causing Home to go to end of previous line.
6036
6037         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6038         modified-keypresses (leave for bindings.)
6039
6040         * modules/input/Makefile.am: Remove useless -export-dynamic
6041         from module LDFLAGS.
6042
6043 2000-11-14  Havoc Pennington  <hp@redhat.com>
6044
6045         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6046         higher.
6047
6048         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6049         account. Also, render rise, underline, background, etc. for
6050         pixbufs as well as text. Also, draw underlines one pixel higher.
6051
6052         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6053         PangoAttribute for the rise, so it gets drawn properly. Also,
6054         add the GtkTextAppearance attribute for pixbuf/widget segments
6055         as well; we should go ahead and have rise, underline, background,
6056         stipple work for those
6057
6058         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6059         Pango
6060
6061 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6062
6063         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6064
6065         * gtk/gtk.def: Update.
6066
6067         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6068         included.
6069         (gtk_rc_get_im_module_file): Use run-time installation directory
6070         on Win32.
6071
6072         * gdk/win32/rc/gdk.rc: Remove.
6073         * gdk/win32/rc/gdk.rc.in: New file.
6074         * gdk/win32/rc/Makefile.am: New file
6075         * gdk/win32/Makefile.am: Corresponding changes.
6076
6077         * gtk/gtk.rc: Remove.
6078         * gtk/gtk-win32.rc.in: New file.
6079         * gtk/Makefile.am: Corresponding changes.
6080
6081         * configure.in: Corresponding changes.
6082
6083         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6084         has a built gtkcompat.h. Developers using CVS code on Win32 can
6085         hand-edit it from gtkcompat.h.in.
6086
6087         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6088         gtkcompat.h from gtkcompat.h.win32.
6089
6090 2000-11-14  Havoc Pennington  <hp@redhat.com>
6091
6092         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6093         to default to GDK_ACTION_MOVE if the drag is within a single
6094         widget. Defaults to GDK_ACTION_COPY between widgets.
6095
6096 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6097
6098         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6099
6100         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6101
6102         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6103         srcdir != builddir
6104
6105         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6106
6107         * configure.in (GTK_VERSION): Up to 1.3.2
6108
6109         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6110         gtkimcontextxim.h
6111
6112         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6113         missing doc comment.
6114
6115 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6116
6117         * modules/linux-fb/basic.c:
6118         Use the glib iconv wrappers.
6119
6120 2000-11-13  Havoc Pennington  <hp@pobox.com>
6121
6122         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6123         still more bugs.
6124
6125         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6126         scroll the GdkWindows before realization.
6127
6128 2000-11-13  Havoc Pennington  <hp@redhat.com>
6129
6130         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6131         where GC didn't always get updated properly
6132
6133         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6134         of fonts instead of setting the entire font
6135
6136         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6137         setting entire font
6138
6139         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6140
6141         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6142         a bunch of individually-settable font attributes. You can still 
6143         use the "font" and "font_desc" args, they just set all the font
6144         attributes at once.
6145
6146 2000-11-13 Elliot Lee <sopwith@redhat.com>
6147
6148         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6149
6150 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6151
6152         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6153         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6154
6155         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6156         work better.
6157
6158 2000-11-13  Havoc Pennington  <hp@redhat.com>
6159
6160         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6161         the module file.
6162
6163         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6164         dest->language
6165
6166         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6167         settings
6168
6169         * gtk/gtktextview.c: Implement object args and setters/getters for
6170         all the aspects of the GtkTextAttributes that are not set from
6171         GtkWidget attributes. This is spacing, justification, margins,
6172         etc.
6173
6174         (gtk_text_view_set_arg)
6175         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6176         args
6177         (gtk_text_view_class_init): Add args for justify, left_margin,
6178         right_margin, indent, and tabs
6179         
6180
6181         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6182         attribute properly
6183
6184         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6185         replace with indent attribute
6186
6187         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6188         PANGO_SCALE
6189
6190         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6191         rearranging code to do that
6192         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6193         i.e. don't subtract the top_margin first, just to keep
6194         all margin-futzing in one place.
6195
6196         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6197
6198         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6199         special case of last line, Pango now handles this itself.
6200         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6201         Y coordinate
6202         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6203         (find_display_line_above): wasn't moving the byte index as it
6204         iterated over lines, so always returned byte 0. Also, port to use
6205         PangoLayoutIter.
6206         (find_display_line_below): same problem as
6207         find_display_line_above. Also, port to use PangoLayoutIter.
6208
6209 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6210
6211         * gdk/linux-fb/*.[ch]:
6212         Massive reindent to gtk+ standard. My hands hurt.
6213
6214         * gdk/linux-fb/gdkcolor-fb.c:
6215         Move GdkColorPrivateFB from inherited to windowing_data
6216
6217         * gdk/linux-fb/gdkcursor-fb.c:
6218         _gdk_cursor_new_from_pixmap made static
6219
6220         * gdk/linux-fb/gdkdnd-fb.c:
6221         GdkDragContextPrivate moved to windowing_data
6222
6223         * gdk/linux-fb/gdkdrawable-fb2.c:
6224         Removed endian.h, use glib endianness macros instead
6225         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6226         and GDK_DRAWABLE_IMPL_FBDATA
6227
6228         * gdk/linux-fb/gdkfont-fb.c:
6229         Add empty gdk_font_load(). Needed for linking of Gtk+.
6230
6231         * gdk/linux-fb/gdkimage-fb.c:
6232         Removed endian.h, use glib endianness macros instead
6233         Moved GdkImagePrivateFB to windowing_data
6234         gdk_image_new_bitmap didn't always allocate enough
6235         memory.
6236
6237         * gdk/linux-fb/gdkinput-ps2.c:
6238         Added semi-working support for MS serial mice.
6239
6240         * gdk/linux-fb/gdkprivate-fb.h:
6241         s/GdkWindowPrivate/GdkWindowObject/
6242         Removed GdkWindowPrivate typedef
6243         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6244         Removed GDK_DRAWABLE_P
6245         Move GdkColorPrivateFB from inherited to windowing_data
6246         Moved GdkImagePrivateFB to windowing_data
6247
6248         * gdk/linux-fb/gdkvisual-fb.c:
6249         Removed some unused debug code.
6250
6251         * gdk/linux-fb/gdkwindow-fb.c:
6252         Use stock cursors instead of including X headers.
6253         s/GdkWindowPrivate/GdkWindowObject/
6254
6255         * gdk/linux-fb/mitypes.h:
6256         Removed unused types.
6257
6258         * modules/linux-fb/basic.c:
6259         Use the pango fribidi wrappers.
6260
6261 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6262
6263         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6264         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6265         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6266         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6267         GEqualFunc where applicable.
6268         
6269         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6270         pango_font_description_equal as changed in pango.
6271         
6272         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6273
6274         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6275
6276         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6277
6278         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6279
6280         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6281
6282         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6283
6284         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6285         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6286
6287         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6288         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6289
6290 2000-11-12  Havoc Pennington  <hp@pobox.com>
6291
6292         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6293         dir to datadir/gtk+-2.0/demo
6294
6295         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6296         sorts of text widget and Pango font bugs. Urgh.
6297
6298         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6299
6300         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6301         tree that you should double click to see the demo. Fix 
6302         types of variables to reflect changed return values from 
6303         GtkTreeStore and GtkTreeViewColumn constructors.
6304
6305         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6306         newly-created buffer to prepare for GObject semantics
6307
6308         * gtk/testtext.c: don't leak the buffer with GObject semantics
6309
6310         * gtk/testtextbuffer.c: ditto
6311         
6312 2000-11-12  Havoc Pennington  <hp@pobox.com>
6313
6314         Rename this testgtk to gtk-demo to avoid confusion, and 
6315         install it so people can use it as a supplement to 
6316         the documentation.
6317         
6318         * demos/gtk-demo: Moved from demos/testgtk
6319
6320         * demos/testgtk: Removed
6321
6322         * configure.in: make Makefile in gtk-demo
6323         
6324         * demos/gtk-demo/Makefile.am: Install sample source to 
6325         datadir/gtk-demo (maybe there's a better place?), and 
6326         rename the binary to gtk-demo
6327         
6328         * demos/gtk-demo/main.c (load_file): Load installed sample
6329         source if source isn't found in pwd.
6330
6331 2000-11-09  Havoc Pennington  <hp@pobox.com>
6332
6333         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6334         argument to set the char displayed when visibility == FALSE
6335         (gtk_entry_create_layout): If !entry->visible, replace 
6336         all chars with the "invisible char"
6337
6338         * gtk/testgtk.c: Test the invisible_char deal
6339         
6340 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6341
6342         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6343         can't get a native font in the right encoding.
6344
6345 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6346
6347         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6348         respectively.
6349
6350 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6351
6352         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6353         Fix warning when moving between paragraphs.
6354
6355         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6356         delete => delete_from_cursor, insert => insert_at_cursor
6357
6358 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6359
6360         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6361
6362         * modules/input/imthai-broken.c: A Thai input method for use if
6363         Thai keys are really generating Latin1 keysyms.
6364
6365         * modules/input/Makefile.am: Build these.
6366
6367 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6368
6369         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6370         g_filename_{to,from}_utf8 now takes an extra parameter.
6371
6372         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6373         strftime into UTF-8.
6374
6375         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6376         calendars.
6377
6378         (gtk_calendar_paint_day_names): Draw day names in the right 
6379         place.
6380         
6381 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6382
6383         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6384         problem with using result of g_get_charset() backwards -
6385         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6386
6387         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6388         negative min_width/height and max_width/height to
6389         mean "requisition"; this allows setting a window
6390         to be user-resizable in only one direction easily.
6391
6392         * gtk/testgtk.c (create_main_window): Remove hard-coded
6393         usize - set a default size in the vertical direction.
6394
6395 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6396
6397         * gtk/gtkrange.c: Add some missing casts. Support 
6398         2 and 3 button clicks on the arrows to mean 
6399         "move by pages" and "jump to end". (Like gtkspinbutton)
6400
6401 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6402
6403         * gdk/win32/makefile.msc : reflect build module changes
6404
6405         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6406         from GdkPixmap*, cast implementation member instead.
6407
6408         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6409         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6410         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6411         more Gdi functions return value checking. 
6412         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6413         GdkImagePrivateWin32 *.
6414
6415         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6416         menus useable again. Add #pragma message to keep reminded on this issue.
6417         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6418         windows. This allows to enable backing store on Win32!
6419
6420         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6421         in drawable is of impl type. Correct specific type checks appropriate.
6422  
6423         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6424         GDK_WINDOW_DESTROYED before allocating new resources.
6425
6426         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6427
6428         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6429         (gdk_window_foreign_new) initialize parent handle.
6430         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6431
6432         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6433         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6434         problems (e.g. main buttons in testgtk). 
6435
6436 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6437
6438         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6439         gtk_widget_activate for GDK_Return.
6440
6441         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6442         of preedit cursor position.
6443
6444 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6445
6446         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6447         static.
6448
6449 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6450
6451         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6452         out support for multiple locales; that simple doesn't
6453         work reliably with current Xlib
6454
6455         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6456         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6457         Add support for positioning the cursor within the preedit string.
6458
6459 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6460
6461         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6462         at XIM input method module.
6463
6464         * gtk/gtktextview.c: Check for bindings after passing
6465         events to im context filter.
6466
6467 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6468
6469         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6470         empty attribute lists properly.
6471
6472 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6473
6474         * gtk/queryimmodules.c (main): Return non-zero exit
6475         status if errors were encountered querying any
6476         modules.
6477
6478         * modules/input/Makefile.am (moduledir): remove
6479         leftover bin program target.
6480
6481         * docs/make-todo: Fix typo in error message.
6482
6483 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6484
6485         * configure.in: Add modules/input/Makefile
6486
6487 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6488
6489         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6490         don't include gtkthemes.h.
6491
6492         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6493         to point
6494
6495         * gtk/Makefile.am: Add new .c and .h files, build 
6496         gtk-query-immodules and use it to create a gtk.immodules
6497         file for use of test programs.
6498
6499         * gtk/gtkpreview.c: remove extra blank line.
6500
6501 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6502
6503         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6504         Add the ability to add extra tables beyond the default
6505         one, and also the ability to have compose sequences 
6506         that are prefixes of other compose sequences. 
6507
6508         * gtk/gtkimcontextsimple.c: Export a preedit string which
6509         consists of possible candidates for keystrokes that have
6510         been entered but not yet committed.
6511
6512         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6513         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6514
6515         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6516         Add a function to add input-method switching menu items
6517         to a menu.
6518
6519         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6520         when switching input methods.
6521
6522         * gtk/gtkimcontextsimple.[ch]: Change the format of
6523         the compose table to allow compose tables of different
6524         lengths / sequence.
6525
6526 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6527
6528         * gtk/gtkimmodule.[ch]: Support routines for loading
6529         GtkIMContext implementations dynamically at runtime.
6530
6531         * modules/input/imcyrillic-translit.c: A sample input
6532         method (based on GtkIMContextSimple with an extra table),
6533         which demonstrates preedit strings and the module
6534         system for input modules
6535
6536         * gtk/queryimmodules.c: Program to query the available
6537         input modules and write the results into a file.
6538          
6539         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6540         extra config options "im_module_file" (cache file for
6541         input method modules), and "im_module_path" - path
6542         to look for modules when generating cache file.
6543
6544         This doesn't scale.
6545
6546 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6547
6548         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6549         generic code from gtkthemes into a new abstraction
6550         GtkModule which has the logic for implementing
6551         a loadable module which implements a number of 
6552         GObject types.
6553
6554 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6555
6556         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6557         a class into an interface  
6558         
6559         * gtk/gtkoldeditable.[ch]: Move the old editable
6560         implementation into here, so legacy widgets can
6561         still rely on the implemenation. GtkOldEditable
6562         exports GtkEditable. Make selection handling
6563         code use new text conversion functions (and
6564         handle UTF-8 as a side-effect). Use GtkClipboard
6565         for CLIPBOARD.
6566
6567         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6568         Adopt to match above changes.
6569
6570         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6571         avoid GtkOldEditable implementation. Restructure
6572         to reduce number of places that modify state directly.
6573         Move to GtkBindingSet. Display the preedit string.
6574         Queue recomputation of PangoLayout and scroll position
6575         to improve effiency of doing complex changes naively.
6576         Add a menu with cut/copy/paste and input method selection.
6577
6578 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6579
6580         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6581         to set preedit string and attributes; display preedit string by
6582         inserting string and attributes at cursor when creating the
6583         GtkTextLineDisplay.
6584
6585         * gtk/gtktextlayout.c: Move all conversions between byte
6586         positions in PangoLayout and GtkTextIter into new functions
6587         line_display_iter_to_index/index_to_iter that properly
6588         handle the preedit string.
6589
6590         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6591         it to return const char * (eventually will end up
6592         as GCONST char *, most likely.)
6593
6594         * gtk/gtktextview.[ch]: Handle the preedit string, call
6595         gtk_im_context_reset() as necessary, add a menu to switch
6596         input methods.
6597         
6598         * gtk/gtktextlayout.[ch]: Remove useless
6599         gtk_text_layout_get_log_attrs() function.
6600
6601 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6602
6603         * gdk/gdk.def
6604         * gtk/gtk.def: Update.
6605
6606         * gdk/win32/*.c: Add last argument to g_type_register_static()
6607         calls.
6608
6609         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6610
6611         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6612         generated by older wheel mouse drivers. Get the correct y
6613         coordinate from WM_MOUSEWHEEL messages.
6614
6615         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6616         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6617         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6618         Debugging functions.
6619
6620         * gdk/win32/gdkprivate-win32.h: Declare them.
6621
6622         * gdk/win32/gdkinput-win32.h: Add declaration for
6623         gdk_input_window_destroy().
6624
6625         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6626
6627 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6628
6629         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6630         function to help handle keeping things in sync.
6631
6632 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6633
6634         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6635         BOXED marshallers.
6636
6637         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6638         (gtk_list_store_class_init): use the new BOXED marshallers.
6639
6640         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6641         new_with_values to new_with_types.
6642         (gtk_tree_store_get_column_type): add this.
6643         (gtk_tree_store_class_init): use the new BOXED marshallers.
6644
6645         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6646         mirror some POINTER marshallers.
6647
6648 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6649
6650         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6651         allow more interesting iterators.  Also, made the lifecycle of
6652         iterators more explicit.
6653
6654         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6655
6656         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6657         types.
6658
6659 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6660
6661         * demos/testgtk/menus.c:
6662         Changes to make the new testgtk compile after
6663         gtk_menu_append was removed.
6664
6665         * gdk/linux-fb/gdkdrawable-fb2.c
6666         (gdk_fb_get_depth, gdk_fb_get_visual,
6667         gdk_drawable_impl_fb_class_init): Implement
6668         these drawable functions. Now GtkImages work again.
6669
6670         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6671
6672         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6673         
6674         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6675         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6676         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6677         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6678
6679 2000-11-08  Havoc Pennington  <hp@pobox.com>
6680
6681         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6682         visible_set args, don't know where these had gone, I thought they
6683         used to be there
6684
6685         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6686         now we can test the feature and see that it's totally broken.
6687
6688 2000-11-08  Havoc Pennington  <hp@pobox.com>
6689
6690         Make DND copy pixbufs and tags when source and target share a 
6691         tag table.
6692         
6693         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6694         in-process GTK_TEXT_BUFFER_CONTENTS target
6695         (gtk_text_view_drag_data_received): Paste from
6696         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6697
6698 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6699
6700         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6701         API changes.
6702
6703         * gtk/gtkmenu.c: Add support for scrolling menus.
6704         Remove gtk_menu_append/prepend/insert, these have been moved to
6705         gtkcompat.h as #defines.
6706
6707         * gtk/gtkcompat.h.in:
6708         Add compatibility #defines for gtk_menu_append/prepend/insert
6709
6710         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6711         GtkMenuPositionFunc gets an extra argument push_in.
6712         gtk_menu_append/prepend/insert removed.
6713         
6714         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6715         positioning behaviour to fit to scrolling menus.
6716
6717         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6718         into menuitem->submeny. That is wrong, and broke torn
6719         off submenus of torn off menus, since they were unrealized
6720         when the first menu was unrealized.
6721
6722         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6723         gtk_menu_shell_select_item() since these need to be overridden in
6724         GtkMenu.
6725
6726         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6727         positioning behaviour to fit to scrolling menus.
6728         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6729         the current item so that it is prelighted when the menu pops up.
6730         This is a workaround to the fact that the menu doesn't get the
6731         initial enter event (due to grabs).
6732
6733         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6734         s/gtk_menu_append/gtk_menu_shell_append/
6735
6736         * gtk/gtknotebook.c:
6737         s/gtk_menu_insert/gtk_menu_shell_insert/
6738
6739         * gtk/testgtk.c (create_menu, create_menus):
6740         Create the first menu with 50 items so that menu scrolling
6741         can be tested.
6742         
6743         
6744         Patch from Jonathan Blandford  <jrb@redhat.com>
6745
6746         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6747         system to handle size requests.  First, we ask what the size of
6748         the toggle is.  Then, when allocating the size, we allocate the
6749         toggle_size first.  This way we can have multiple menu-item
6750         classes w/o needing a seperate class for each.
6751
6752         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6753         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6754
6755         * gtk/gtkcheckmenuitem.c
6756         (gtk_check_menu_item_toggle_size_request): New function to handle
6757         the toggle size-request.
6758
6759 2000-11-07  Havoc Pennington  <hp@redhat.com>
6760
6761         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6762         Half-ass somewhat fix this function, so that scrolling to the
6763         insertion point works. Pango hacking is in the future to really
6764         fix it.
6765
6766         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6767         length of data, no longer used.
6768
6769         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6770         method contents in here, get rid of destroy method
6771         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6772         that were backward. Remove debug spew.
6773         (cut_or_copy): Make the clipboard work with insert_range to
6774         preserve tags and pixbufs, not just the primary selection.
6775
6776 2000-11-07  Havoc Pennington  <hp@redhat.com>
6777
6778         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6779         to gtk_text_mark_get_visible
6780
6781         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6782         bug that was generating an invalid iterator
6783
6784         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6785         ensure_char_offsets() in front of code placing the iter in an
6786         invalid state.
6787
6788         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6789         make override_location arg const
6790         (paste): Replace the selection if we paste into the 
6791         current selection
6792
6793         * gtk/gtkselection.h: Remove "GtkSelectioData"
6794         (struct _GtkSelectionData): move the definition here.
6795
6796         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6797         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6798
6799         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6800
6801         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6802         (gtk_text_buffer_insert_range_interactive): implement
6803         (gtk_text_buffer_get_tags): Remove, replaced by
6804         gtk_text_iter_get_tags()
6805
6806         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6807         limit parameter, to avoid infinite linear scan.
6808         (gtk_text_iter_backward_search): Add search limit
6809         (gtk_text_iter_forward_find_char): Add search limit
6810         (gtk_text_iter_backward_find_char): Add search limit
6811
6812 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6813
6814         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6815         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6816         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6817         gdk/linux-fb/gdkwindow-fb.c:
6818         use g_object_new() instead of g_type_create_instance() which
6819         is a private function for fundamental type implementations.
6820
6821         * gdk/linux-fb/gdkinput-ps2.c:
6822         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
6823         instead just store the current modifier state. Add a (somewhat broken)
6824         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
6825         Rename exported function gdk_input_ps2_get_mouseinfo to
6826         gdk_input_get_mouseinfo.
6827
6828         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
6829         gdk/linux-fb/gdkwindow-fb.c:
6830         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
6831         
6832
6833 2000-11-02  Havoc Pennington  <hp@redhat.com>
6834
6835         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
6836         use stock buttons. Should be 100% source compatible, appropriate
6837         filesel fields now point to dialog->vbox and dialog->action_area.
6838         On the bizarre side, dialog->action_area and filesel->action_area
6839         are not the same widget.
6840         (gtk_file_selection_init): Put some padding around the selection
6841         entry, so it isn't touching the GtkDialog separator.    
6842
6843         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6844         use stock buttons, etc. Should also be source compatible.
6845         Set the dialog default title in _init not _new().
6846         
6847         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6848         Use stock buttons; don't put a button box inside the existing
6849         dialog button box. Don't bother with push/pop colormap anymore.
6850
6851         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6852         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6853         for message dialog, and necessary for the font selection and color
6854         selection with help and apply buttons.
6855         
6856         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6857         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6858         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6859         between buttons, put less padding around the action area.
6860         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6861         This will also exit the loop if the widget is hidden.
6862         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6863         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6864         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6865         special-case delete event.
6866
6867         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6868         formatting
6869         
6870 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6871
6872         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6873         button to temporarily disable position recording in the
6874         "saved position" test.
6875
6876 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6877
6878         * gtk/gtkthemes.c: added compat code that temporarily implements
6879         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6880         going to be revamped by owen's upcoming GtkModule patches, but
6881         untill then people want gtk to build, right? ;)
6882
6883 2000-11-04  Havoc Pennington  <hp@pobox.com>
6884
6885         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6886         list
6887
6888         * docs/Changes-2.0.txt: Add note about
6889         gtk_container_get_toplevels()
6890
6891         * gtk/gtktextview.h: formatting
6892         
6893         * gtk/gtktextview.c: don't start descriptions with "Returns",
6894         confuses gtk-doc
6895
6896 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6897
6898         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6899         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6900
6901 2000-11-03  Havoc Pennington  <hp@redhat.com>
6902
6903         * gtk/gtktexttagtable.c: Docs
6904         (gtk_text_tag_table_size): return a signed int
6905
6906         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6907         (gtk_text_tag_event): make the event_object a GObject
6908
6909         * gtk/gtktextview.c: Write API docs for all functions.
6910
6911         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6912         for gtk_text_view_get_window_type() called on one of the private
6913         windows.
6914
6915         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6916         directly, call get_buffer() which demand-creates a default
6917         buffer. So gtk_text_view_new() can be used to create a view with a
6918         default buffer in it, if you just want an empty text box users can
6919         put data in. Useful for GUI builders also.
6920
6921 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6922
6923         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6924         the charset encodign portion MUST be in lowercase.
6925         * gtk/gtkrc.az: added file for Azeri language
6926
6927 2000-11-03  Havoc Pennington  <hp@redhat.com>
6928
6929         Get widgets working on the btree/buffer side. Display of them 
6930         still doesn't work.
6931         
6932         * gtk/gtktextview.c: start implementing child widget stuff
6933
6934         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6935
6936         * gtk/gtktextlayout.c: handle embedded widgets
6937
6938         * gtk/gtktextdisplay.c: handle embedded widgets
6939
6940         * gtk/gtktextchild.c: Implement all the child anchor goo
6941
6942         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6943         function
6944
6945         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6946         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6947         creating a child anchor or a pixbuf segment.
6948         (gtk_text_btree_create_child_anchor): new function
6949         (gtk_text_btree_unregister_child_anchor): new function
6950
6951         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6952         allocate_child signal on GtkTextLayout
6953
6954         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6955         values
6956         (gtk_text_iter_get_child_anchor): new function
6957
6958         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6959         default handler for the changed signal, which calls
6960         gtk_text_buffer_set_modified(), instead of just always emitting
6961         changed then calling set_modified() manually. I guess this is
6962         maybe more flexible. It seems logical.
6963
6964 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6965
6966         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6967         now.
6968
6969         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6970
6971 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6972
6973         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6974         been marked static.
6975
6976 2000-11-02  Havoc Pennington  <hp@redhat.com>
6977
6978         * gtk/testgtk.c (create_labels): had a test backward
6979
6980         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6981         fields, so the dest GC ends up with the correct clip origin, 
6982         etc. Fixes a bug where colored labels didn't redraw 
6983         properly.
6984
6985 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6986
6987         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6988         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6989         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6990         Add last argument to t_type_register_static call.
6991         
6992         * gdk/linux-fb/gdkdrawable-fb2.c:
6993         Add last argument to t_type_register_static call.
6994         export the get_image drawable virtual function.
6995
6996         * gdk/linux-fb/gdkimage-fb.c:
6997         Add last argument to t_type_register_static call.
6998         rename gtk_image_get to _gdk_fb_get_image and
6999         export it for use by gdkdrawable-fb2.
7000
7001         * gdk/linux-fb/gdkprivate-fb.h:
7002         export _gdk_fb_get_image.
7003
7004         * gdk/linux-fb/gdkselection-fb.c:
7005         Add new api call stubs.
7006
7007         * gtk/Makefile.am:
7008         Missing ( in linux-fb part.
7009
7010         * modules/linux-fb/Makefile.am:
7011         Must link with gdk_pixbuf or get unresolved symbol.
7012
7013 2000-11-01  Havoc Pennington  <hp@pobox.com>
7014
7015         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7016         GTK_TYPE_TEXT_ITER and BOXED marshallers
7017
7018         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7019
7020         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7021         
7022         * gtk/gtk-boxed.defs: add GtkTextIter
7023
7024         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7025         properly use OBJECT and BOXED
7026
7027 2000-11-01  Havoc Pennington  <hp@redhat.com>
7028
7029         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7030
7031         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7032         before returning it. 
7033         
7034 2000-11-01  Havoc Pennington  <hp@redhat.com>
7035
7036         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7037         Clip the rectangle to be rendered to the drawable, since
7038         get_from_drawable() requires a region within the drawable
7039
7040 2000-11-01  Havoc Pennington  <hp@redhat.com>
7041
7042         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7043         from coordinates.
7044
7045 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7046
7047         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7048         it isn't NULL.
7049
7050 2000-11-01  Havoc Pennington  <hp@pobox.com>
7051
7052         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7053         on a label
7054         (gtk_label_finalize): unref the attr list if any.
7055
7056         * gtk/testgtk.c (create_get_image): close test on second click
7057         (make_message_dialog): close dialog if it exists
7058
7059         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7060
7061         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7062         gdk-pixbuf
7063
7064         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7065         from Pango markup format
7066         (gtk_label_set_markup_with_accel): ditto but with accelerator
7067         parsing
7068
7069         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7070
7071         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7072         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7073         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7074         call gdk_window_get_origin().
7075
7076         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7077         implement GDK_PIXBUF_ALPHA_FULL
7078         
7079 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7080
7081         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7082         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7083         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7084         multiple handlers respectively, instead of only treating the
7085         first handler found (bug reported by owen).
7086
7087 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7088
7089         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7090
7091         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7092
7093         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7094         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7095         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7096
7097         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7098         widget.  Needs writing someday.
7099
7100         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7101         the docs.
7102
7103 2000-10-30  Havoc Pennington  <hp@redhat.com>
7104
7105         * gtk/gtktextview.h, gtk/gtktextview.c:
7106         Rename delete_at_cursor delete_from_cursor, and 
7107         move to move_cursor.
7108
7109 2000-10-30  Havoc Pennington  <hp@redhat.com>
7110
7111         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7112         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7113         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7114         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7115         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7116         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7117         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7118         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7119         gtktexttypes.h, gtktextview.c, gtktextview.h:
7120
7121         Massive reindentation and reformatting. Arg alignment and comments
7122         still need fixing in various places.
7123
7124 2000-10-30  Havoc Pennington  <hp@redhat.com>
7125
7126         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7127         to be named insert_at_cursor and delete_at_cursor so C++ can
7128         handle them.
7129
7130 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7131
7132         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7133         to get a double directory separator in case the home directory
7134         ends with one. This would cause trouble especially on Windows,
7135         where the path will be confused with the syntax for an an UNC
7136         (network share) path \\server\share\path.
7137         (gtk_rc_add_initial_default_files): Ditto.
7138
7139 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7140
7141         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7142
7143         * gtk/gtktextview.c: Use correct marshallers.
7144
7145 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7146
7147         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7148         use new iter stuff, and added all the appropriate signals et al.
7149
7150         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7151         code is internal to gtk only.
7152
7153 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7154
7155         * gtk/gtk.def
7156         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7157         glib-genmarshal etc.
7158
7159 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7160
7161         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7162         parallel builds.
7163
7164 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7165
7166         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7167
7168 2000-10-27  Robert Brady  <robert@suse.co.uk>
7169
7170         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7171         en_GB (British), ia (Interlingua).
7172
7173 2000-10-26  Havoc Pennington  <hp@redhat.com>
7174
7175         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7176
7177         Fixed output of:
7178         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7179         
7180         * gtk/gtktextsegment.c (char_segment_new): rename
7181         (_char_segment_new_from_two_strings): rename
7182         (_toggle_segment_new): rename
7183         
7184         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7185         (make_clipboard_widget): make it static
7186         (text_get_func): static
7187         (text_clear_func): static
7188
7189         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7190         static
7191         (hex_changed): make it static
7192         (hsv_changed): make it static
7193         (opacity_entry_changed): make it static
7194
7195         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7196         (toggle_segment_check_func): rename with _gtk
7197
7198         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7199         (_widget_segment_new): rename
7200         (_widget_segment_add): rename
7201         (_widget_segment_remove): rename
7202         (_widget_segment_ref): rename
7203         (_widget_segment_unref): rename
7204
7205         * gtk/gtktextmark.c (_mark_segment_new): Rename
7206         _gtk_mark_segment_new   
7207
7208 2000-10-26  Havoc Pennington  <hp@redhat.com>
7209
7210         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7211         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7212         types
7213
7214         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7215         marshaller types
7216
7217         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7218         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7219         license on these files.
7220
7221         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7222         work.
7223
7224         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7225         runtime random number different for each tree, instead of 
7226         a constant I made up.
7227
7228 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7229
7230         * gtk/Makefile.am: buncha cleanups, kludged build sources
7231         dependencies with a Makefile: oldest-source-stamp dependancy
7232         for the moment. automake is really fighting us here, with
7233         intentionally not allowing user-defined rules or dependancies
7234         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7235
7236         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7237         to public headers. tehy have a comment stating that they are
7238         "semi-public" aren't included by gtk.h and if enums popup there,
7239         they can be /*< skip >*/-ed.
7240
7241         * gtk/gtktextlayout.h: 
7242         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7243         added LGPL... <SIGH>
7244
7245 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7246
7247         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7248         GtkTreeIter.  Added iterators everywhere.
7249
7250         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7251
7252         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7253
7254         * gtk/gtktreestore.c: Changed to use the iterators.
7255
7256         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7257         iterators tomorrow.
7258
7259         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7260         iterators tomorrow.
7261
7262         * gtk/treestoretest.c: Changed to use iterators.
7263
7264         * demos/testgtk/main.c: Moved to use the new iterator system.
7265
7266 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7267
7268         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7269         localization misbehaviour.
7270
7271         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7272         a useless type without copy/free.
7273
7274         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7275         of GTK_TYPE_CTREE_NODE.
7276
7277 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7278
7279         * gtk/gtksignal.c:
7280         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7281         applicable.
7282
7283         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7284         gtk_selection_data_copy and gtk_selection_data_free
7285         do GtkSelectionData work as params in signals.
7286
7287 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7288
7289         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7290         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7291         couldn't they at least give it a non-standard name?
7292         
7293         * gtk/gtktextlayout.c: arg! yet another implementation of
7294         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7295
7296         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7297         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7298         home. now i know this _is_ a conspiracy.
7299
7300         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7301         ::state-changed.
7302
7303         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7304         (gtk_accel_group_create_add): marshaller signature fixups.
7305
7306         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7307         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7308
7309         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7310         anymore.
7311
7312 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7313
7314         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7315         due to the signal system changes, it wouldn't build currently. to
7316         be fixed soon.
7317
7318         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7319
7320         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7321         so it needs gtk_marshal_VOID__ENUM() instead of
7322         gtk_marshal_NONE__UINT().
7323
7324         * gdk/gdk*.c: adapted type registration functions.
7325
7326         * gtk/gtkbindings.c:
7327         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7328         gone.
7329
7330         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7331
7332         * gtk/gtkobject.c:
7333         (gtk_object_destroy):
7334         (gtk_object_shutdown): fixed recursion guards. basically we have to
7335         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7336         is called during ::destroy, and avoid recursion there.
7337
7338         * gtk/gtktypeutils.c:
7339         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7340         boxed_copy/boxed_free. this needs a more general solution based on a
7341         publically installed code-generator utility.
7342
7343         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7344         glib's gobject has support for that now.
7345         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7346
7347 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7348
7349         * gtk/gtksignal.[hc]:
7350         * gtk/gtkmarshal.[hc]:
7351         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7352         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7353         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7354         care of that.
7355
7356         * *.c: marshaller name fixups.
7357
7358         * gtk/gtkmarshal.list: added a comment briefing the format.
7359
7360 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7361
7362         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7363         compatibility macros here now. more specifically, most of
7364         the API is preserved (yes, _most_, nonwithstanding the
7365         following exceptions listed, the API is stil lHUGE ;)
7366         things that got removed completely:
7367         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7368         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7369         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7370         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7371         gtk_signal_remove_emission_hook().
7372         non-functional functions variants:
7373         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7374         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7375         not supported anymore.
7376         (gtk_signal_compat_matched): new internal function to aid
7377         implementation of the compatibility macros, it  provides
7378         functionality to block/unblock/disconnect handlers based
7379         on func/data.
7380
7381         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7382
7383         * *.c: adaptions to new type registration API signatures.
7384
7385 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7386
7387         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7388
7389 2000-10-25  Robert Brady  <robert@suse.co.uk>
7390
7391         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7392         gdk_property_delete): If window == NULL, assume the root window.
7393         (restoring the behaviour that was in 1.2).
7394         
7395         * gtk/testtext.c (save_buffer): Allow creation of new files when
7396         saving.
7397
7398         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7399         calls to read().
7400
7401 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7402
7403         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7404
7405         * gdk/win32/gdkdrawable-win32.c
7406         * gdk/win32/gdkimage-win32.c
7407         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7408         X11 backend.
7409
7410         * gdk/win32/gdkcc-win32.c
7411         * gdk/win32/gdkcolor-win32.c
7412         * gdk/win32/gdkfont-win32.c
7413         * gdk/win32/gdkinput-win32.c
7414         * gdk/win32/gdkmain-win32.c
7415         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7416
7417 2000-10-24  Havoc Pennington  <hp@redhat.com>
7418
7419         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7420         it a static function
7421
7422         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7423         redraw text when a tag is applied to it.
7424
7425         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7426         (gtk_text_tag_affects_nonsize_appearance): private functions to
7427         see if a tag requires various kinds of redraw/layout to be queued
7428         up.
7429
7430         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7431
7432         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7433         at the start of the buffer, so search works by default
7434
7435         * gtk/gtktextiter.c (lines_match): init match_start always
7436
7437         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7438         function, get iter at a line + a byte index
7439
7440         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7441         to set byte position within a line
7442         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7443
7444 2000-10-23  Havoc Pennington  <hp@redhat.com>
7445
7446         * gtk/testtext.c: Re-enable the "find" dialog
7447
7448         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7449         
7450         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7451         the arguments to gdk_draw_drawable were in the wrong order
7452         (gdk_window_paint_init_bg): This function was ignoring the
7453         init_region, instead of clipping to it, so the entire backing
7454         pixmap was cleared on every begin_paint()
7455         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7456         was in here again, the loop kept using the same GtkWindowPaint
7457         over and over.
7458         (gdk_window_begin_paint_region): Fix a bug where we had two
7459         x_offset instead of x_offset and y_offset
7460
7461         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7462         before we get the image.
7463         (gdk_draw_drawable): get the composite before we draw the drawable.
7464         (gdk_drawable_real_get_composite_drawable): default
7465         get_composite_drawable implementation that returns the drawable 
7466         itself
7467
7468         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7469         get_composite_drawable virtual function
7470
7471         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7472         list-walking bug
7473
7474         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7475         make this work if the source drawable is a GdkDrawableImplX11
7476         instead of a public drawable type. This is really broken; the
7477         problem is that GdkDrawable needs a virtual method get_xid(), but
7478         of course that doesn't work in practice. Enter RTTI.
7479
7480         Also, improve mismatched depth message.
7481
7482         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7483         GdkPixmap
7484
7485         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7486         install _gdk_x11_get_image as our implementation of get_image
7487         
7488         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7489         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7490
7491         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7492         gdk_drawable_get_image
7493
7494         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7495
7496         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7497         get_image
7498
7499         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7500         trailing semicolon after for loop
7501
7502 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7503
7504         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7505         where font_desc for widget's context lagged widget's font_desc by
7506         one step.
7507
7508 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7509
7510         * gdk/win32/gdkgc-win32.c
7511         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7512
7513         * gtk/makefile.mingw.in
7514         * gtk/gtk.def: Updates.
7515
7516         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7517         library.
7518
7519         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7520
7521         * gtk/makefile.msc: Remove
7522
7523         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7524
7525         * gtk/Makefile.am: Add it.
7526
7527         * configure.in: Generate it.
7528
7529         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7530         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7531         something even if not implemented, to satisfy picky MSVC.
7532
7533         Patches by Hans Breuer:
7534         
7535         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7536         SetBkMode() and SetTextAlign() before calling
7537         pango_win32_render().
7538
7539         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7540         Set hcliprgn to NULL after destroying it.
7541         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7542
7543         * gdk/win32/gdkgeometry-win32.c
7544         (_gdk_windowing_window_queue_antiexpose): More effective
7545         implementation.
7546
7547         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7548         depth as default, not the visual's.
7549
7550         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7551         against empty title.
7552
7553         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7554         IMAGE_PRIVATE_DATA.
7555
7556         * gdk/win32/gdkimage-win32.c: Use it.
7557
7558 2000-10-22  Robert Brady  <robert@suse.co.uk>
7559
7560         * configure.in: Check for bind_textdomain_codeset
7561
7562         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7563         present, make use of it.
7564
7565         Add a translatable string "default:LTR" which, if translated
7566         to "default:RTL", will cause the default direction to be
7567         Right-to-Left.
7568
7569         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7570         direction if marked as flippable.
7571
7572         * gtk/gtkhscale.c: Mark widget as flippable.
7573         
7574 2000-10-04  Havoc Pennington  <hp@redhat.com>
7575
7576         * gtk/testgtk.c (create_buttons): create some stock buttons
7577         with the default accel group
7578         (create_image): test some new GtkImage features
7579         (make_message_dialog): test GtkMessageDialog
7580         (create_modal_window): fix someone's bizzarro indentation
7581
7582         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7583         GTK_WIN_POS_CENTER_ON_PARENT. 
7584         Add "destroy with parent" setting, which means the window goes
7585         away with its transient parent.
7586         (gtk_window_get_default_accel_group): get the default accel group
7587         for the window.
7588         (gtk_window_set_destroy_with_parent): set/unset destroy with
7589         parent flag
7590         (gtk_window_read_rcfiles): invalidate icon set caches
7591         after reloading rcfiles 
7592
7593         * gtk/gtkenums.h (GtkWindowPosition): add
7594         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7595         on its parent window when the dialog is mapped for the first time.
7596
7597         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7598         a simple message dialog class
7599         
7600         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7601         handler to emit response signal, and maybe later it would
7602         honor a hide_on_delete flag - though that isn't there yet.
7603         Set border width on the vbox to 2, so we get some padding.      
7604         Use a button box for the action area.
7605         (gtk_dialog_key_press): synthesize a delete event if Esc
7606         is pressed and the GtkWidget key press handler didn't 
7607         handle the escape key.
7608         (gtk_dialog_new_with_buttons): new function creates a dialog
7609         with some default buttons in it.
7610         (gtk_dialog_add_action_widget): add an activatable widget
7611         as a button in the dialog - you can also add a non-activatable
7612         widget by accessing the action area directly.
7613         (gtk_dialog_add_button): add a simple button - stock ID or 
7614         label - to the action area
7615         (gtk_dialog_response): emit response signal
7616         (gtk_dialog_run): block waiting for the dialog, return 
7617         the response. Override normal delete_event behavior, so that 
7618         delete_event does nothing inside gtk_dialog_run().
7619
7620         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7621         emitted when an action widget is clicked or the dialog gets
7622         delete_event
7623
7624         * gtk/gtk.h: add gtkmessagedialog.h
7625
7626         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7627
7628 2000-10-18  Havoc Pennington  <hp@redhat.com>
7629
7630         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7631         where any number of empty lines would get skipped
7632
7633         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7634         edge.
7635
7636         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7637         warning about invalid iterators (explain more thoroughly)
7638         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7639
7640         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7641         big
7642
7643         * demos/*.c: Add error handling
7644
7645         * gtk/gtktextbuffer.c: don't modify const iterators
7646
7647         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7648
7649         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7650         on file load
7651
7652         * gtk/gtkiconfactory.c: Update to reflect addition of error
7653         handling to gdk-pixbuf loaders
7654
7655 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7656
7657         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7658         move to new modularized testgtk.
7659
7660 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7661
7662         * gtk/gtktreeview.c: Draw the arrows correctly.
7663
7664         * gtk/gtktreemodel.c: Added user docs.
7665
7666         * gtk/gtk.h: remove gtktreedatalist.h.
7667
7668         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7669         parent when generating my type.
7670
7671         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7672         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7673
7674 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7675
7676         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7677         GtkTreeModel from object to interface.
7678
7679 2000-10-16  Havoc Pennington  <hp@redhat.com>
7680
7681         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7682         compilation
7683
7684 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7685
7686         * gtk/gtktreeselection.c: Add API documentation to all public
7687         functions.
7688
7689         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7690         functions.
7691
7692 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7693
7694         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7695         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7696         docs to all public functions.
7697
7698         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7699         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7700         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7701         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7702         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7703         issue.
7704
7705 2000-10-14  Robert Brady  <robert@suse.co.uk>
7706
7707         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7708
7709 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7710
7711         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7712         values other then G_TYPE_STRING.
7713         * gtk/gtktreeselection.c: Minor commenting updates.
7714         * gtk/gtktreeview.c: Format updates.
7715
7716 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7717
7718         * README.win32: Update.
7719
7720         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7721         lines that had been deleted by mistake (?).
7722
7723         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7724         also the case fg==white and bg==black (but still not randomly
7725         coloured cursors). Thanks to Wolfgang Sourdeau.
7726
7727         * gdk/win32/*.c: Silence gcc -Wall.
7728
7729         * gtk/gtk.def: Add missing entry points.
7730
7731         Fixes by Hans Breuer:
7732
7733         * gdk/makefile.msc
7734         * gdk/win32/makefile.msc: Update.
7735
7736         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7737         some MSVC thing, presumably), cause breakpoint on failures. Add
7738         GDK_NOR case. Call g_log_set_always_fatal.
7739
7740         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7741         should be pased by reference.
7742         
7743         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7744         
7745         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7746
7747         * gdk/win32/gdkevents-win32.c
7748         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7749
7750         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7751         implementation object.
7752
7753         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7754         not just windows.
7755         
7756         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7757         Use the wrapper object.
7758         
7759 2000-10-06  Havoc Pennington  <hp@redhat.com>
7760
7761         * Makefile.am (SRC_SUBDIRS): contrib subdir
7762
7763         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7764         so it can be used in Xlib version
7765
7766         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7767         tree
7768
7769         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7770         change from 1.0 tree that returns first frame of animation
7771         if the loaded file is an animation.
7772
7773         * contrib: add new directory to hold stuff that comes with GTK+
7774         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7775         
7776         * configure.in: add contrib/*
7777
7778 2000-10-05  Havoc Pennington  <hp@redhat.com>
7779
7780         * demos/testpixbuf-save.c: add pixbuf save test
7781
7782         * demos/Makefile.am: add testpixbuf-save.c
7783
7784 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7785
7786         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7787         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7788         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7789         * gtk/gtktreeselection.[ch]: Replaced
7790         "node_selected"/"node_unselected" signal with "selection_changed"
7791         signal.
7792
7793 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7794
7795         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7796         tree widget.
7797
7798 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7799
7800         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7801         drawing.
7802
7803 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7804
7805         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7806         Move list pointer forwards before removing item from
7807         list. (Crash reported by Salmaso Raffaele)
7808
7809         * gdk/gdkwindow.h: Remove spurious trailing ,
7810
7811         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7812         dependencies on uninstalled libraries, sorry folks.
7813
7814 2000-10-04  Havoc Pennington  <hp@redhat.com>
7815
7816         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7817         gtk/gtkiconfactory.c: Fix copyrights    
7818
7819         * demos/testpixbuf.c: add inline pixbuf test
7820         
7821 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
7822
7823         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
7824         Add gdk_window_iconify.
7825
7826         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
7827         (gdk_window_set_geometry_hints): Add win_gravity
7828         to geometry structure.
7829
7830         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
7831         Implement _NET_WM_PING.
7832
7833         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
7834         Set _NET_WM_PID on the client leader.
7835
7836         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
7837         Handle UTF-8 better.
7838
7839         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
7840         UTF-8 better, set _NET_WM_NAME as well. Only set
7841         icon name if it hasn't previously been explicitely 
7842         set.
7843
7844 2000-10-03  Havoc Pennington  <hp@redhat.com>
7845
7846         * gtk/testtextbuffer.c: clean up trailing whitespace,
7847         add extensive tests for tag toggle iteration.
7848         
7849         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7850         distance
7851
7852         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7853         optimize case where the tag root is on level 1
7854         (gtk_text_line_previous_could_contain_tag): attempt to implement
7855         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7856         functionality
7857
7858         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7859         Implement this, though not very efficiently.
7860
7861         * gtk/gtktextiterprivate.h: reformat
7862
7863         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7864         iterator
7865
7866         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7867         this to properly revalidate the iterators.
7868
7869         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7870         properly at the end of the line (and therefore on empty lines)
7871
7872         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7873         maybe we should return a value...
7874
7875 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7876
7877         * config.h.win32: Guard definition of alloca(). glib.h now handles
7878         that.
7879
7880         * gdk/gdk.def
7881         * gtk/gtk.def: Add new entry points.
7882
7883         Changes just to make GTK+ build without errors on Win32. No hope
7884         of it working in its current state, though...:
7885         
7886         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7887         some functions from the X11 backend, just to make GTK+ build.
7888
7889         * gdk/makefile.mingw.in
7890         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7891         number. Add new object files.
7892
7893         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7894         GetMessageTime to get timestamp (where on X11 uses
7895         gdk_x11_get_server_time()).
7896
7897 2000-10-02  Havoc Pennington  <hp@pobox.com>
7898
7899         * gtk/gtktextview.c: text_window_* weren't static and should have
7900         been.
7901         Start work on child widgets; not yet complete, syncing to 
7902         office computer.
7903
7904         * gtk/gtktextchild.h: change this to contain a public interface,
7905         starting work on child interfaces.
7906         * gtk/gtktextchildprivate.h: move private interfaces here
7907
7908         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7909
7910         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7911         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7912         gtk/gtktextmark.c: copyright notices
7913
7914         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7915         internal functions      
7916
7917         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7918         internal function
7919
7920         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7921         Reformatting    
7922
7923 2000-09-30  Havoc Pennington  <hp@pobox.com>
7924
7925         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7926         NULL start/end pointers
7927
7928         * gtk/gtktextbuffer.c: Write some docs
7929         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7930         NULL, so you can just check whether there's a selection.        
7931
7932         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7933         cleanup_line or segments_changed ourselves, it gets done 
7934         in unlink_segment
7935
7936         * gtk/gtktextmark.h:
7937         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7938         
7939         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7940
7941         * gtk/gtktextmark.c: delete some more old Tk cruft
7942
7943         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7944         mark before removing it, so we can emit MARK_DELETED with a valid
7945         pointer.
7946         (gtk_text_buffer_mark_set): hold ref across signal emission
7947
7948         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7949         whining about attempts to delete special marks
7950
7951         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7952         underscore, since it's internal.
7953
7954         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7955         now implemented in terms of iterators in gtktextiter.h
7956
7957         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7958         New function, destructively sets contents of buffer. Also 
7959         a convenient way to clear the buffer by setting text to ""
7960
7961         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7962         multiline string literal
7963
7964         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7965         text changes.
7966
7967         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7968         is not dereferenceable
7969         (gtk_text_iter_forward_lines): fix return value
7970
7971 2000-09-29  Havoc Pennington  <hp@redhat.com>
7972
7973         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7974
7975         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7976         that set border window size to have nicer name
7977         (gtk_text_view_mark_set_handler):  Fix this to have the 
7978         right signature.
7979
7980         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7981
7982         * gtk/testtext.c: Update with API changes, put line numbers on 
7983         both sides.
7984         
7985         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7986         with this
7987
7988         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7989         pixbuf; delete a big block of #if 0 Tk code
7990
7991         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7992         insert_pixmap with insert_pixbuf
7993
7994 2000-09-29  Martin Baulig  <baulig@suse.de>
7995
7996         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7997         confusion with the GdkPixbuf of the GNOME 1.x platform.
7998
7999 2000-09-29  Havoc Pennington  <hp@pobox.com>
8000
8001         * gtk/gtktextview.c: Implement the side windows.
8002
8003         * gtk/testtext.c: Implement simple line numbering in the 
8004         left side window; seems to make scrolling sloooow. Oops.
8005         Also, cursor blink is for some reason causing redraws
8006         of the line numbers. Should investigate...
8007
8008 2000-09-28  Havoc Pennington  <hp@redhat.com>
8009
8010         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8011         scrolling child windows, and draw focus rectangle properly.
8012         
8013         (gtk_text_view_buffer_to_window_coords):
8014         Coordinate transformation to deal with all these freaking windows
8015         and offsets
8016         (gtk_text_view_window_to_buffer_coords): transform the other way
8017
8018         * gtk/testtext.c (create_buffer): Update to match Pango API change
8019
8020         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8021         anonymous tags
8022         (foreach_unref): don't emit remove signal from finalize, just
8023         set tag's parent to NULL
8024
8025 2000-09-26  Havoc Pennington  <hp@redhat.com>
8026
8027         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8028         Fix some warnings       
8029
8030 2000-09-26  Havoc Pennington  <hp@redhat.com>
8031
8032         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8033         headers into the private header list
8034
8035         * Makefile.am (pkgconfig_DATA): install pkg-config files
8036
8037         * configure.in: add pkg-config files
8038
8039         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8040
8041         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8042         outstanding icon caches on theme change.
8043
8044         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8045         important types:
8046
8047         (GtkIconSource): Specification for creating a pixbuf 
8048         appropriate for a direction/state/size triplet from 
8049         a source pixbuf or filename
8050
8051         (GtkIconSet): List of GtkIconSource objects that are used to
8052         create the "same" icon (e.g. an OK button icon), and cache for
8053         rendered icons
8054
8055         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8056         up the icon set for a given stock ID.  GTK maintains a stack of
8057         GtkIconFactory to search, and applications or libraries can add
8058         additional icon factories on top of the stack
8059         
8060         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8061         the set of GtkIconSource specified for a given stock ID into 
8062         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8063         RcStyle, under the specified stock ID.
8064
8065         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8066         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8067         This allows people to theme how prelight, insensitive, etc. are
8068         done.
8069
8070         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8071         icon factories for a style, and return the resulting 
8072         icon set if any.
8073
8074         (gtk_style_render_icon): Render an icon using the render_icon 
8075         method in the GtkStyleClass.
8076
8077         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8078         Use the style for a given widget to look up a stock ID, get the
8079         icon set, and render an icon using the render_icon method 
8080         of the style
8081
8082         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8083         (contains information about a stock item), the built-in stock item
8084         IDs, and functions to add/lookup stock items.
8085
8086         * gtk/stock-icons/*: Stock icons that come with GTK
8087
8088         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8089         a button based on a GtkStockItem
8090         (gtk_button_new_accel): Takes a uline string and accel group, and
8091         installs the accelerator.
8092
8093         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8094         image-display widget.
8095
8096 2000-09-25  Havoc Pennington  <hp@redhat.com>
8097
8098         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8099
8100         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8101         Fix a bug when removing node data, we didn't properly 
8102         re-splice the linked list after removing the data.
8103
8104         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8105         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8106
8107         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8108
8109         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8110         for the layout from the GtkTextTag.
8111
8112         * gtk/gtktexttypes.h: delete tab and search cruft, 
8113         remove g_convert() in favor of GLib version
8114
8115         * gtk/gtktexttypes.c: remove tab implementation from here,
8116         move to Pango
8117
8118         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8119         tab stuff using new PangoTabArray from Pango
8120
8121         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8122         unused border_width stuff
8123
8124 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8125
8126         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8127         glib) and now useless utf_to_latin1() latin1_to_utf()
8128
8129         * gtk/gtktextview.[ch]: Change ::move_insert and
8130         ::delete_text action signals to ::move and ::delete;
8131         create the signals with the right enumeration type,
8132         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8133         C-v bindings, change Home, End to move to beginning/end
8134         of line, Add C-Home C-End to move to beginning/end
8135         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8136         combine ::scroll_text into ::move; use new GtkSelectionData
8137         functions to simplify DND text handling.
8138         
8139         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8140         deletion enumerations here, rename enumeration values to 
8141         be consistently plural.
8142
8143         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8144         for cut/copy/paste and primary selection.
8145
8146         * gtk/gtktextbuffer.[ch]: Remove excess time and
8147         'interactive' arguments from cut/copy/paste;
8148         rename cut to cut_clipboard, etc; remove
8149         gtk_text_buffer_get_clipboard_contents().
8150
8151         * gtk/gtktextlayout.[ch]: Add 
8152         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8153         line ends.
8154
8155         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8156         Functions to set or get a UTF-8 string on the selection
8157         data.
8158
8159         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8160         interfaces.
8161
8162         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8163         created widgets - one of these is useless if we don't.
8164
8165         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8166         a public function clear all targets registered for the
8167         widget.
8168
8169         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8170         Never call gtk_widget_realize() - that was just asking
8171         for bizarre side-effects.
8172
8173         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8174         gdk_selection_owner_set even if the widget is the
8175         same so that we reliably update the timestamp on
8176         the server.
8177
8178         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8179         gdk_x11_get_server_time() function.
8180         
8181         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8182         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8183         Add some tricky filtering on serial numbers for
8184         selection clear events to fix up long-standard
8185         race condition FIXME's in gtkselection.c.
8186
8187         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8188         routines to convert from utf8 to compound text or
8189         STRING and from a text property to UTF-8.
8190
8191         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8192         a convenience function gdk_get_current_event_time().
8193
8194         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8195         and free selection_data->data properly
8196
8197 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8198
8199         * gtk/gtkthemes.c: Remove some unecessary includes.
8200
8201 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8202
8203         * gtk/gtktextdisplay.c
8204         * gtk/gtktextlayout.c
8205         * gtk/gtktexttag.c
8206         * gtk/gtktexttag.h
8207         * gtk/testtext.c: Change the overstrike property to strikethrough,
8208         to closer match pango.
8209
8210 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8211
8212         * gtk/gtktextview.c: Fix up visibility so that focus,
8213         cursor_visible and blink interact properly.  Reenable cursor blink
8214         which had been roughly disabled. Make blink and focus
8215         properly per-view.
8216
8217         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8218         Add a flag for whether to display insertion cursor and
8219         a function to set the flag.
8220
8221         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8222         get_line_y() to get_line_yrange(), to be a bit more generally
8223         useful.
8224
8225 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8226
8227         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8228           do stop_navigating_submenu, to clear last timeout properly.
8229           Also in gtk_menu_motion_notify move ignore_enter above
8230           the conditional to make it always happen as suggested by Owen
8231
8232 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8233
8234         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8235
8236         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8237         w32api headers.
8238
8239         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8240         declarations.
8241
8242         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8243         (gdk_win32_get_colormap): A line had been deleted by mistake.
8244
8245         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8246         (gdk_event_translate): Handle more virtual keycodes to be able to
8247         generate GDK events for Control-comma, Control-period, etc.
8248
8249         * gtk/gtk.def: Add some missing entry points.
8250
8251 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8252
8253         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8254         Doc comment fixing. (Mostly non-matching parameter names.)
8255
8256         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8257         comments a little to avoid looking like a doc comment.
8258
8259         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8260         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8261         conversions be changed to GError?)
8262
8263         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8264         Move private #defines into .c file.
8265
8266         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8267         order of argument addition, remove duplicates.
8268
8269         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8270         parent class is FrameClass, not BinClass.
8271
8272         * gtk/gtk.h: Add gtkinvisible, which was missing.
8273         (It's occasionalyl useful for client apps, if seldom.)
8274
8275         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8276         #define.
8277
8278 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8279
8280         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8281         coordinates when creating window, instead of GDK-space
8282         coordinates. (Avoid BadValue on too large windows.)
8283
8284 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8285
8286         * configure.in (use_mmx_asm): Remove conftest* after use along the
8287         lines of AC_TRY_COMPILE.        
8288         
8289         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8290         of g_dirname, which is deprecated.
8291         (gtk_rc_parse_any): Removed calls to
8292         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8293
8294         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8295         Removed calls to g_hash_table_{freeze,thaw}, as they are
8296         deprecated now.
8297
8298         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8299         instead of g_basename.
8300         
8301 2000-09-04 Elliot Lee <sopwith@redhat.com>
8302         
8303         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8304         ANSI warning.
8305
8306 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8307
8308         * gtk/gtkwidget.h:  Add some documenting comments about 
8309           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8310           just as owen said on irc.
8311
8312         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8313           set HAS_DEFAULT.  Only set it if there isn't another window
8314           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8315           it if the widget is not the focused window with RECEIVES_DEFAULT.
8316           This fixes weird double default bugs in dialogs which has things
8317           call gtk_window_set_default at times.
8318
8319 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8320
8321         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8322         Nils Barth and David Santiago to improve submenu
8323         navigation. The patch does this by creating a triangular
8324         region from the point where the pointer leaves the
8325         menu to the submenu.  While the pointer is in
8326         that region and a timeout has not expired, events 
8327         that would cause the active submenu to change are
8328         ignored.
8329
8330 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8331
8332         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8333         moving a toplevel window immediately after sizing it would
8334         result in it being sized back to the old size since 
8335         impl->width, impl->height aren't updated until we hear
8336         back from the server. There is still a (longstanding) bug
8337         here that gdk_window_get_size() will give the wrong size
8338         until we do hear back.
8339
8340 2000-08-31  Havoc Pennington  <hp@redhat.com>
8341
8342         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8343         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8344         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8345         Rename GtkTextStyleValues to GtkTextAttributes
8346
8347 2000-08-31  Havoc Pennington  <hp@pobox.com>
8348
8349         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8350         for rapid testing whether an iterator is the end iterator
8351         (gtk_text_btree_new): init end line cache
8352         (gtk_text_line_is_last): use fast cached line to 
8353         see if we're the last line.
8354         (get_last_line): use cached line here too, should 
8355         speed up some random unrelated code.
8356         
8357 2000-08-30  Havoc Pennington  <hp@pobox.com>
8358
8359         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8360         signals.
8361
8362         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8363         delete_text signals. This allows the signals to be used for
8364         implementing undo.
8365
8366         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8367         provide "interactive" argument when emitting insert_text or
8368         delete_text signal.
8369         
8370 2000-08-30  Havoc Pennington  <hp@pobox.com>
8371
8372         * gtk/gtktextbuffer.c: Docs
8373
8374 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8375
8376         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8377         from switch statements, since Tor removed the enumeration
8378         value.
8379         
8380         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8381         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8382
8383 2000-08-29 Elliot Lee <sopwith@redhat.com>
8384         * */*.h: Use G_GNUC_CONST.
8385
8386 2000-08-27  Havoc Pennington  <hp@pobox.com>
8387
8388         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8389         minor indentation fixes, inserted some FIXME about stuff I
8390         realized was broken while documenting it.
8391         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8392         GTK convention  
8393
8394 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8395
8396         * gtk/testgtk.c (create_styles): Fix double free of
8397         font desc.
8398
8399 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8400
8401         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8402         
8403         * gtk/testgtk.c (create_styles): Add a test for modifying
8404         the style through gtk_widget_modify_*.
8405
8406         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8407         a function to get the current modifier style.
8408
8409         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8410         of the passed in GtkRcStyle instead of ref'ing it.
8411
8412         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8413
8414 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8415
8416         * gdk/gdkimage.h
8417         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8418         shared memory image+pixmap GdkImage type, or
8419         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8420         I am dropping that.
8421
8422         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8423         actually call gtk_init_abi_check(), passing also
8424         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8425
8426         * gtk/gtk.def
8427         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8428         New functions, used to check that the GTK+-using code has been
8429         compiled using the correct compiler and switches. In particular,
8430         with gcc one has to use the -fnative-struct switch as GTK+ is
8431         compiled with that.
8432
8433 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8434
8435         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8436         ->prev fields when merging lists. (Found simultaneously
8437         by Pawel Salek and Jakub Jelinek)
8438
8439 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8440
8441         * gdk/gdk.def
8442         * gtk/gtk.def: Add missing entries.
8443
8444         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8445         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8446
8447         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8448         function. Dummy implementation at this point.
8449
8450         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8451         rules. Undefine GTK_COMPILATION when compiling the test programs.
8452         
8453         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8454
8455 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8456
8457         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8458         to convert back and forth from UTF-8 and the "system" (or "current
8459         locale") charset when necessary. Indentation/spacing cleanup.
8460
8461 2000-08-10  Havoc Pennington  <hp@redhat.com>
8462
8463         * Makefile.am (snapshot): Change the format of the snapshot
8464         version to match glib
8465
8466         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8467         from EXTRA_DIST since it doesn't seem to exist
8468
8469 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8470
8471         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8472         version of the directory name (not the UTF-8 one) when building
8473         the path name to stat().
8474
8475 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8476
8477         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8478         PANGO_ATTR_SHAPE set.
8479
8480 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8481
8482         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8483         Peter Osterlund to simplify the code while keeping the
8484         functionality the same.
8485
8486 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8487
8488         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8489         is_viewable() test further inside the function, since removing the 
8490         window from the redraw list without clearing ->update_area
8491         was also very broken.
8492
8493 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8494
8495         * configure.in: Check for <unistd.h>.
8496
8497 2000-08-01  Martin Baulig  <baulig@suse.de>
8498
8499         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8500         to display the message that this is a development version of GTK+.
8501
8502 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8503
8504         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8505         was depending on widget->allocation instead of the width of text_area,
8506         which was incorrect for subclasses like GtkSpinButton.
8507
8508         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8509         with width == 1 tests that should be width == -1.
8510
8511 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8512
8513         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8514         (broken, Elliot, every single window blank on X) custom code with call
8515         to gdk_window_is_viewable() which a) prevents code duplicate and
8516         b) works. 
8517
8518 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8519
8520         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8521         to get the GDK_PARENT_ROOT() macro to work.
8522         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8523         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8524         of, windows that aren't shown.
8525         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8526         pointer grab stuff.
8527
8528 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8529
8530         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8531           s/gtk_main_iteration/g_main_iteration/
8532
8533           Did this already in change:
8534                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8535           don't know how it got reverted.
8536
8537 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8538
8539         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8540         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8541
8542         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8543         not gdk_pixbuf.
8544
8545 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8546
8547         * configure.in,po/{sp,sr}.po: Added Serbian files
8548
8549 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8550
8551         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8552
8553         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8554         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8555         GIOChannel implementation.
8556
8557         * gdk/win32/gdkinput.c
8558         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8559
8560         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8561         definition to match prototype.
8562
8563         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8564
8565 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8566
8567         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8568         function, to allow handling image formats that cannot be detected
8569         by looking at content alone.
8570
8571 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8572
8573         * docs/tutorial/*.gif *.jpg *.eps
8574           Update these to the same look-n-feel.
8575           Why does including images in DocBook suck so badly?
8576
8577 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8578
8579         * gtk/gtktable.c: applied patch from Phil Thompson
8580         <phil@river-bank.demon.co.uk> that enables space settings for
8581         the last row/columns as well.
8582
8583 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8584
8585         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8586         updates the license headers to the GNU Lesser General Public License,
8587         as well as updating the copyright year to 2000.
8588
8589 2000-07-26  Robert Brady  <rwb197@zepler.org>
8590
8591         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8592           and po/Makefile, was installing and looking for them under gtk20
8593           and gtk2 respectively.
8594
8595 2000-07-25  Havoc Pennington  <hp@redhat.com>
8596
8597         * gtk/testtext.c: Comment out some stuff that depends on the rest
8598         of my patches.
8599
8600 2000-07-25  Havoc Pennington  <hp@redhat.com>
8601
8602         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8603         buffer
8604
8605 2000-07-25  Havoc Pennington  <hp@redhat.com>
8606
8607         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8608         widget changes.
8609
8610         * gtk/gtktextview.h: To be consistent with usage of "line"
8611         throughout the API to mean "newline-terminated thingy", change
8612         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8613         to MOVEMENT_LINE.
8614
8615         (GtkTextView): Add flags for default editability, and whether to
8616         show the cursor. Add functions to get/set that. Add 
8617
8618         (gtk_text_view_get_iter_location): new function
8619
8620         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8621         gtktextlayout.h
8622         (g_convert): Add g_convert temporarily, will go in glib in a bit
8623         
8624         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8625         GtkTextTagTableForeach instead of brokenly using GHFunc.
8626         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8627
8628         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8629         moved to public header.
8630
8631         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8632         "invisible", since "elide" was a bad name.
8633         (gtk_text_tag_get_priority): Added
8634
8635         (GtkTextStyleValues): put this in public header, along with
8636         functions to use it.
8637
8638         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8639         longer include gtktextbtree.h.
8640
8641         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8642         gtk_text_mark_deleted
8643
8644         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8645         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8646         to make this possible. Now we only need to install
8647         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8648         (However the Makefile.am isn't changed yet because of the
8649         logistics of merging gtk-hp-patches piecemeal)
8650
8651         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8652         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8653         gtk_text_iter_get_line is now used in the public API for a
8654         different purpose.
8655
8656         * gtk/gtktextiter.h: Clean up function names to be more
8657         consistent. Always call char offset "offset" and byte index
8658         "index". A "line" is always a line number. 
8659
8660         (gtk_text_iter_is_last): new function, more efficient than 
8661         the existing way to check
8662         (gtk_text_iter_is_first): new function, also more efficient
8663
8664         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8665
8666         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8667         gtk_text_iter_forward_char, etc.
8668
8669         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8670         forward_find_tag_toggle, since this isn't a linear search
8671
8672         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8673
8674         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8675         New functions, search for a buffer substring.
8676
8677         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8678         interactive and default editable (since we need to store that info
8679         until we receive the selection data).
8680
8681         Remove all the _at_char and at_line etc. versions of functions;
8682         only have iterator versions.
8683
8684         Add _interactive() versions of functions, that consider the
8685         editability of text. (FIXME add interactive flag to the 
8686         insert/delete signals per Darin's suggestion)
8687
8688         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8689         tag table if necessary
8690
8691         Remove declaration of gtk_text_buffer_get_iter_from_string
8692
8693         (_gtk_text_buffer_get_btree): private/internal function, added.
8694         
8695
8696         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8697         (gtk_text_line_is_last): new function
8698
8699 2000-07-25  Havoc Pennington  <hp@redhat.com>
8700
8701         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8702         using GtkProgressBar. See Changes-2.0.txt for details.
8703
8704         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8705         "pulse_step" which are the equivalent of
8706         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8707         Implement new API.
8708         
8709         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8710         (use_text_format) to mark whether text set on the progress bar is
8711         a format string. Deprecate entire GtkProgress interface.
8712
8713         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8714         (gtk_progress_build_string): make this a no-op if use_text_format
8715         is FALSE
8716
8717         * docs/Changes-2.0.txt: Describe progress bar changes.
8718
8719 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8720
8721         * Makefile.am: Include the build directory.
8722
8723         * configure.in: Generate build/Makefile, build/win32/Makefile,
8724         gdk/, gdk/win32/, and gtk/makefile.mingw.
8725
8726         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8727         Add GETTEXT_PACKAGE.
8728         
8729         * gdk/gdk.def
8730         * gtk/gtk.def: Updates.
8731
8732         * gdk/gdkfont.h
8733         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8734         need them any longer.
8735
8736         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8737
8738         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8739         PANGOWIN32_LIBS and gdk_pixbuf.
8740
8741         * gdk/win32: Compiles, but no doubt doesn't work at all.
8742
8743         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8744
8745         * gdk/win32/gdkinput.c: New file, temporarily.
8746         
8747         * gdk/win32/gdkinput-win32.h: New file
8748
8749         * gdk/win32/gdkinputprivate.h: Remove.
8750
8751         * gdk/win32/gdkpango-win32.c: New file.
8752
8753         * gtk/makefile.mingw.in: New file
8754
8755         * gtk/makefile.cygwin: Removed
8756         
8757         * gtk/Makefile.am: Update accordingly.
8758
8759         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8760         made externally visible.
8761
8762         * gtk/gtkmain.c: Use it.
8763         
8764         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8765         is enough.
8766
8767         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8768
8769 2000-07-24 Elliot Lee <sopwith@redhat.com>
8770         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8771         individual backends already.
8772         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8773         again. Yes, there really is a good reason for this, if you are using the gdkregion
8774         internals, and if you're not, why do you care?
8775         * gdk/gdkwindow.c: Fix inverted condition
8776         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8777         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8778         * gtk/gtkrange.c: Redraw trough when moving.
8779         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8780         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8781
8782 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8783
8784         * configure.in: Check for mkstemp and sigsetjmp. Output
8785         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8786
8787         More work on GDK for Win32. Still in an intermediate state.
8788
8789         * gdk/makefile.cygwin
8790         * gdk/win32/makefile.cygwin: Removed.
8791         
8792         * gdk/makefile.mingw.in
8793         * gdk/win32/makefile.mingw.in: New files.
8794
8795         * gdk/Makefile.am
8796         * gdk/win32/Makefile.am: Generate and distribute them.
8797
8798         * gdk/win32/gdkwindow-win32.h
8799         * gdk/win32/gdkdrawable-win32.h
8800         * gdk/win32/gdkpixmap-win32.h: New files.
8801
8802         * gdk/win32/gdkcolor-win32.c
8803         * gdk/win32/gdkcursor-win32.c
8804         * gdk/win32/gdkdrawable-win32.c
8805         * gdk/win32/gdkgc-win32.c
8806         * gdk/win32/gdkimage-win32.c
8807         * gdk/win32/gdkprivate-win32.h
8808         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8809         Rename fields and variables called xcursor, xid, etc (these names
8810         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8811
8812 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8813
8814         * gtk/gtkentry.[ch]: Fix some problems with vertical
8815         alignment.
8816
8817         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8818         char/byte confusion.
8819
8820 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
8821
8822         * gtk/gtktextview.c (changed_handler): Fix bug where
8823         redraw wasn't being done properly when height of
8824         dirty region changed.
8825
8826         * demos/Makefile.am: Remove various references to
8827         -lgmodule
8828
8829 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
8830
8831         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
8832         PangoAttrShape to reserve space for pixmaps, add 
8833         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
8834         in the display functions.
8835         
8836         * gtk/testgtk.c (create_layout): Set some more exotic
8837         scrolled window options
8838
8839         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
8840         Add function to set the shadow type of a window, to allow
8841         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8842         which don't draw their own frame.
8843
8844 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8845
8846         * docs/tutorial/package-db-tutorial.sh: New file for
8847           packaging DocBook format tutorial
8848
8849 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8850
8851         * docs/tutorial/gtk-tut.sgml: Minor updates
8852
8853         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8854
8855 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8856
8857         * gtk/gtksignal.c: Fix C++ comment.
8858
8859         * gtk/gtkimmulticontext.c
8860         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8861         don't return value from void functions.
8862
8863         * gtk/gtk.def: Add gtk_rc_style_unref.
8864
8865 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8866
8867         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8868         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8869         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8870         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8871         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8872         gtk/gtktypeutils.h: Include files outside of the extern "C"
8873         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8874         <vakatov@peony.nlm.nih.gov>.
8875
8876 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8877
8878         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8879           Completes first pass. Hurrah!
8880
8881 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8882
8883         * docs/tutorial/gtk-tut.sgml: More clean ups.
8884
8885 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8886
8887         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8888         paint the background of the text area which was accidentally
8889         removed at some point.
8890
8891         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8892           
8893          - Move most of the functionality from the theme vtable
8894            into GtkRcStyleClass and GtkStyleClass. The moved
8895            vtable functions were changed a bit in the move to
8896            work better in their new home.
8897
8898          - Get rid of the engine and engine_data fields from
8899            GtkRcStyle and GtkStyle; instead the theme
8900            engine derives theme-specific subclasses of GtkRcStyle
8901            and GtkStyle
8902
8903          - Add extra dlsym() found entry point to themes,
8904            theme_create_rc_style().
8905
8906         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8907         in gtk_style_real_copy.
8908
8909         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8910         to register a type associated with an engine. (The engine
8911         won't be unloaded as there is an instance of the type.)
8912
8913
8914 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8915
8916         * docs/tutorial/gtk-tut.sgml: Clean ups.
8917
8918 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8919
8920         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8921           of cleaning up to do.
8922
8923 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8924
8925         * gdk/testgdk.c: New file, quick hack to test backends for
8926         pixel-by-pixel correctness of the most simple graphic operations.
8927
8928 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8929
8930         * Really release 1.3.1
8931         
8932         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8933         include structure.
8934
8935 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8936
8937         * Released 1.3.1
8938
8939 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8940
8941         * gtk/gtktextlayout.c: use FALSE for size_only most
8942         of the time when calling gtk_text_layout_get_line_display()
8943         to avoid causing double reshapes when a redraw follows
8944         immediately after.
8945
8946 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8947
8948         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8949         appropriate region and gdk_window_process_updates() so trough
8950         updating doesn't lag behind the window being scrolled.
8951
8952         * gdk/gdkgc.c: Make parent_class pointer static.
8953          
8954 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8955
8956         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8957         include <string.h>.
8958          
8959         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8960         cut-and-paste error in computing memory offset for 4 channels.
8961
8962 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8963
8964         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8965         gtk_rc_append_default_pixmap_path(), since it wasn't
8966         adding an interesting path and we don't have a meaningful
8967         default for this value.
8968
8969 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8970
8971         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8972         gtk-config to gtk-config-2.0 move gtk_.m4 to
8973         gtk-2.0.m4
8974
8975         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8976         gdk/Makefile.am demos/Makefile.am: Change 
8977         library names to libgtk-1.3.la, etc, so that we
8978         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8979
8980         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8981         gdk/Makefile.am gdk/x11/Makfile.am
8982         Move include files into /usr/include/gtk-2.0, 
8983         /usr/lib/gtk-2.0/include/
8984          
8985         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8986         gtk/gtkintl.h: Change package for gettext from 
8987         gtk+ to gtk20. Put hack in autogen.sh to modify
8988         po/Makefile.in.in after gettextize to make this
8989         possible.
8990
8991         * gtk+.spec: Some updates, not tested.
8992
8993         * gdk-pixbuf/Makefile.am: Move loaders into
8994         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8995
8996         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8997         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8998         to THEMENAME/gtk-2.0/. Move engine directory  to
8999         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9000         
9001 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9002
9003         Win32 changes, still doesn't build though.
9004
9005         * gdk/makefile.cygwin
9006         * gdk/win32/makefile.cygwin
9007         * gtk/makefile.cygwin: Updates.
9008
9009         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9010         default values for fg and bg pixel as X11 does (0 and 1), not
9011         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9012         Use 0 for pen width by default (treated as 1 anyway later, but for
9013         apps that might check the value in the GdkGC).
9014         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9015         interface to gdk_gc_predraw and _postdraw.
9016
9017         * gdk/win32/gdkwin32.h
9018         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9019
9020         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9021         extraneous semicolon.
9022
9023         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9024
9025         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9026         not the Win32 bitspixel value.
9027
9028         * gdk/win32/gdkcc-win32.c:
9029         * gdk/win32/gdkcolor-win32.c 
9030         * gdk/win32/gdkprivate-win32.h
9031         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9032         GDK object structure.
9033
9034 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9035
9036         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9037         * docs/tutorial/gtk_tut_it.sgml (name): 
9038         * docs/tutorial/gtk_tut_fr.sgml (name): 
9039         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9040         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9041
9042 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9043
9044         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9045           small changes.
9046
9047 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9048
9049         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9050         a bug here, never been here and never fixed anything ;(
9051         (don't segfault if tree->root_tree is NULL, which happens prior
9052         to widget realization, but puke instead).
9053
9054 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9055
9056         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9057         add the necessary tokens.
9058
9059         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9060         (gtk_rc_style_to_style): copy thicknesses.
9061         (gtk_rc_init_style): apply thicknesses.
9062         (gtk_rc_parse_style): parse xthickness and ythickness.
9063
9064         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9065
9066         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9067         (gdk_window_new): 
9068         (_gdk_windowing_window_init): 
9069         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9070         (gdk_pixmap_create_from_data): 
9071         (gdk_bitmap_create_from_data): 
9072         (gdk_pixmap_new): 
9073         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9074         (gdk_image_new): 
9075         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9076         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9077         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9078         (gdk_colormap_get_system): 
9079         (gdk_colormap_new): 
9080         * gdk/gdkwindow.c (gdk_window_init): 
9081         * gtk/gtkstyle.c (gtk_style_new):
9082         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9083         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9084         * gtk/gtkrc.c (gtk_rc_style_new):
9085         use g_object_new() instead of g_type_create_instance() which
9086         is a private function for fundamental type implementations.
9087
9088 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9089
9090         * configure.in: Add check for db2html
9091
9092 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9093
9094         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9095         hack to set glib_debug_objects based on gtk_debug_flags.
9096
9097 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9098
9099         * INSTALL.in: Update the Prerequisites section.
9100
9101         * Makefile.am demos/Makefile.am docs/Makefile.am
9102         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9103         gdk/linux-fb/Makefile.am: Dist fixes
9104
9105 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9106
9107         * NEWS: 10,000 foot view of 1.3.1 changes.
9108
9109 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9110
9111         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9112         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9113         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9114         gdk/x11/gdkmain-x11.c: 
9115
9116         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9117         as a return value of gdk_*_grab(). Previously, we just
9118         returned the X11 values directly.
9119
9120 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9121
9122         * gdk/x11/Makefile.am: Patch from George Lebl to 
9123         install all the headers in the right place.
9124
9125 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9126
9127         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9128           initial conversion to DocBook.
9129
9130 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9131
9132         * README.win32: Improve a bit.
9133
9134         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9135         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9136         Alt+0nnn on the numpad (used to enter characters by numeric code
9137         from current DOS or ANSI codepage) working correctly, as in other
9138         Windows apps.
9139
9140         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9141         same argument validity tests as in X11 version.
9142         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9143
9144         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9145         definitions in case missing from headers.
9146
9147         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9148         destroy the window-specific cursor.
9149         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9150         calling GetModuleHandle(NULL).
9151         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9152         with CopyCursor before setting it as the window-specific
9153         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9154         also its Windows cursor) after calling this function. Destroy any
9155         previous window-specific cursor.
9156
9157 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9158
9159         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9160         font charset is iso8859-1, not iso-8859-1.
9161
9162 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9163
9164         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9165         Use g_get_charset() instead of g_get_codeset().
9166
9167         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9168         Comment out some strdup'ing functions to keep timj
9169         happy until we finish fighting this out.
9170
9171 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9172
9173         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9174         <= width or height.
9175
9176         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9177         from 1.2 for parent/child states.
9178
9179         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9180         of typos.
9181
9182         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9183         event structures, replace with a generic axes field. Replace 
9184         deviceid/sourec with GdkDevice *device.
9185
9186         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9187         to extract particular axis use value from event. (Also
9188         can be used for normal X/Y.)
9189
9190         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9191         allow for arbitrary number of axes, namespace everything
9192         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9193         everywhere.
9194
9195         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9196         Get rid of the gdk_input_vtable setup if favor of simply
9197         defining the functions in gdkinput-none/gxi/xfree.c in
9198         a similar fashion to the way that the port structure is 
9199         done.
9200
9201         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9202         for new event structures. 
9203
9204         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9205         new device interfaces.
9206
9207 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9208
9209         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9210         set the initial text.
9211
9212         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9213         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9214         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9215         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9216
9217         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9218         pango_layout_set_font_description to simplify.
9219
9220 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9221
9222         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9223         pango_layout_set_font_description to simplify.
9224
9225 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9226
9227         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9228         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9229         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9230
9231         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9232         PANGO_PIXELS() macro.
9233
9234 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9235
9236         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9237         that returns a PangoContext owned by the widget and updated to
9238         match future changes in the widget. Also, make 
9239         gtk_widget_create_pango_layout() use this context. If we ever
9240         add a ::changed signal to PangoContext, this will make things
9241         much more convenient. 
9242
9243         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9244         in the appropriate places instead of destroying the layouts and
9245         creating new ones.
9246
9247         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9248         in a few strategic places.
9249
9250 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9251
9252         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9253         gtk_widget_size_request() on reparented child, if one. Otherwise,
9254         queue_resize() on the child never results in it getting size-requested
9255         at all.
9256
9257         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9258         in option menus, so that (with luck) people won't copy it into
9259         their apps in the future.
9260
9261         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9262         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9263         a lot of problems with changing the size of the menu's menu
9264         items after adding it to the option menu.
9265
9266         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9267
9268         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9269         the text direction for a widget changes.
9270
9271         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9272         ::direction_changed to get rid of various hacks.
9273
9274 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9275
9276         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9277         name.
9278
9279 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9280
9281         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9282         flag to the structure. Do not call XFreePixmap on pixmaps created
9283         by gdk_pixmap_foreign_new().
9284
9285 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9286
9287         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9288         value using GdkRGB functionality given GdkColormap and GdkColor.
9289         (name not final, waiting for inspiration.)
9290         
9291         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9292         set the foreground/background of a GC using the GC's colormap
9293         and GdkRGB. (name not final, waiting for inspiration.)
9294
9295         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9296         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9297
9298         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9299         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9300         purely a function of the corresponding colormap. Make
9301         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9302
9303         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9304         gdk_pixbuf_*create_from_xpm_* in terms of
9305         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9306         code.
9307
9308         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9309         advantage of the new draw_rgb_32_image_dithalign.
9310
9311         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9312
9313         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9314         on each created GC.
9315
9316         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9317
9318         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9319         which we initialize from the drawable when the GC is created,
9320         if the drawable has a colormap.
9321
9322         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9323
9324         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9325
9326         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9327
9328 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9329
9330         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9331         actually returning expose events, make sure to set
9332         the count field properly.
9333
9334         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9335         accidentally reintroced bug which always cleared
9336         the graphics_exposures value. 
9337
9338 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9339
9340         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9341
9342 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9343
9344         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9345
9346 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9347
9348         * docs/faq/gtk-faq.sgml: Start of Section 6.
9349
9350 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9351
9352         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9353         
9354         (Fixes problem with drawing childless frames. Pointed out
9355         by and a first patch from Anders)
9356         
9357         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9358         compute a child_allocation, even if we don't have a child.
9359
9360         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9361         Always chain to the parent's impl, even if we don't have a child.
9362
9363 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9364
9365         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9366         use multiple parts of it instead of creating a bunch of separate
9367         segments, since the maximum number of segments per system is not
9368         large. (This might be worth backporting to GTK+-1.2.x if we make a
9369         new release )
9370
9371         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9372         structure in preparation for per-colormap GdkRGB.
9373
9374         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9375         to False when we get EINVAL from shmget so that the caller of
9376         gdk_image_new can retry with a smaller segment size.
9377
9378 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9379
9380         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9381
9382 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9383
9384         * configure.in: make the current version number 1.3.1 (binary age 0,
9385         interface age 0).
9386         
9387         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9388         gtkcompat.h is all we want.
9389
9390         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9391         GLib primitive types. fixed g_type_register_fundamental() argument
9392         ordering.
9393
9394         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9395         compiles.
9396
9397         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9398         object code cleanup, comment trigraph fixes, etc...
9399
9400 2000-06-23  Havoc Pennington  <hp@redhat.com>
9401
9402         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9403         instead of making up a bogus name for first_para_mark
9404
9405         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9406         0 as a context ID
9407
9408 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9409
9410         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9411
9412 2000-06-21  Havoc Pennington  <hp@pobox.com>
9413
9414         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9415         we didn't check window->bg_pixmap != GDK_NO_BG.
9416
9417         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9418         gdk-pixbuf
9419
9420 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9421
9422         * docs/faq/gtk-faq.sgm: Move file to here.
9423           TODO: Update Makfile.am 
9424
9425 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9426
9427         * docs/gtk-faq.sgm: Add Section 2
9428
9429 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9430
9431         * docs/gtk-faq.sgm: New file. Start of DocBook
9432           version of the FAQ.
9433
9434 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9435
9436         * configure.in (GDK_PIXBUF_MAJOR): Define version
9437         numbers for GDK_PIXBUF_*, as they get substituted
9438         into a header file. Need to consider versioning
9439         for gdk-pixbuf more carefully later.
9440
9441 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9442
9443         Work with srcdir != builddir.   
9444         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9445         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9446         * demos/testpixbuf.c: Likewise.
9447         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9448         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9449         <gdk/x11/gdkx.h>.
9450         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9451         "gdk-pixbuf.h".
9452         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9453
9454 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9455
9456         * TODO.xml: Change 1.4 version numbers to 2.0.
9457
9458 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9459
9460         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9461         fixups to GTK+ standard.
9462
9463 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9464
9465         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9466         gdk-pixbuf.
9467
9468         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9469         fixups for GObject.
9470
9471         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9472         gdk-pixbuf with GDK dependencies moved into GDK.
9473         
9474         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9475         move gdk-pixbuf-loader here until GObject has signals.
9476
9477         * demos/: New directory of demos. Move demos from
9478         gdk-pixbuf here.
9479
9480         * demos/pixbuf-init.c: Small bit of code to check for
9481         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9482         set GDK_PIXBUF_MODULEDIR appropriately.
9483
9484         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9485         define which no longer makes sense.
9486
9487 2000-06-21  Havoc Pennington  <hp@redhat.com>
9488
9489         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9490         gtk_get_default_language
9491
9492         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9493         new function to get the default language
9494
9495         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9496         s/gtk_text_view_style_values/gtk_text_style_values/
9497
9498         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9499         Add a "language" field to tags.
9500
9501         (gtk_text_tag_set_arg): Fix bug in setting
9502         "bg_full_height_set" tag.
9503
9504 2000-06-21  Havoc Pennington  <hp@redhat.com>
9505
9506         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9507         in the interfaces
9508
9509         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9510         stuff instead when possible.
9511
9512         * gtk/gtktexttypes.h: Delete some unused constants
9513
9514         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9515         testtextbuffer.c: use glib instead of custom unicode routines
9516
9517 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9518
9519         * docs/es/: Removed mistakenly added generated sgml
9520
9521         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9522         Remove outdated info files.
9523
9524         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9525         Moved tutorial files into subdir
9526
9527         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9528         subdir.
9529
9530         * docs/man/gtk_button.pod: Remove. (contents will be
9531         integrated into gtk-reference button page.)
9532
9533         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9534         docs/faq/Makefile.am: Adjust for new organization
9535
9536 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9537
9538         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9539         not $(MKINSTALLDIRS)
9540
9541 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9542
9543         * gtk/testgtk.c (create_text): Finish the job Elliot started
9544         of removing font setting test for text widget. (Since text widget
9545         and GdkFont are not deprecated, and cause portability problems.)
9546
9547 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9548
9549         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9550         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9551         Remove use of libunicode in favor of new GLib functions.
9552
9553         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9554         nano-x, framebuffer. The X11 include is just a hack until we get
9555         the necessary functions in gdkcolor.h, so there is no reason to
9556         add other includes of platforms.
9557
9558         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9559         window bigger than the screen change.
9560
9561         * gtk/testgtk.c: Revert some random changes from Elliot
9562         that had no particular point and were causing testgtkrc
9563         not to function correctly.
9564         
9565         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9566         because GdkSegment and GdkRegionBox have the same fields,
9567         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9568         results in clearer code.
9569
9570         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9571         gdk_input_translate_coordinates): Fix missed GdkObjectification
9572
9573 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9574
9575         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9576         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9577
9578 2000-06-20  Havoc Pennington  <hp@redhat.com>
9579
9580         * modules/linux-fb/Makefile.am: Make this compile
9581         without framebuffer enabled
9582
9583         * gdk/linux-fb/Makefile.am: Add conditional to not build
9584         framebuffer unless specified in configure
9585
9586         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9587         the size of the target instead of source if -1 was passed for
9588         width/height
9589
9590         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9591         width/height confusion.
9592
9593 2000-06-19  Havoc Pennington  <hp@redhat.com>
9594
9595         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9596         GDK_DRAWABLE_XID. In the future, we probably want to make it
9597         faster with G_DISABLE_CHECKS turned on.
9598
9599 2000-06-14  Havoc Pennington  <hp@redhat.com>
9600
9601         * gdk/Makefile.am: add gdkpixmap.c
9602
9603         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9604         s/gdk_image_init/_gdk_windowing_image_init
9605
9606         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9607         ref/unref
9608
9609         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9610
9611         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9612         GdkWindowType is now non-deprecated; 
9613         change gdk_window_get_type() compat to be
9614         gdk_window_get_window_type().
9615
9616         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9617
9618         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9619         virtual GObject. Make all functions call into the vtable.
9620         Move gdk_image_put() guts in here. Remove GdkDrawableType
9621         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9622         draw_image, get_depth, get_size, set_colormap, get_colormap,
9623         get_visual added to the vtable.
9624         
9625         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9626         GObject. Virtualize everything. 
9627         (gdk_gc_new_with_values): remove check for destroyed window,
9628         because now GdkWindow::create_gc will check this.
9629         (gdk_gc_set_values): New function to set GC values, this 
9630         was already implemented but wasn't in the header
9631
9632         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9633
9634         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9635         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9636         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9637         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9638         _gdk_windowing_window_init, rename gdk_image_init to
9639         _gdk_windowing_image_init.
9640         
9641         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9642         (gdk_draw_layout): Remove check for destroyed window, 
9643         because all the drawable methods already check it.
9644         
9645         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9646         Add gdkpixmap.c which contains implementation of GdkDrawable
9647         virtual table (by chaining to a platform-specific implementation
9648         object).
9649         
9650         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9651         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9652         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9653         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9654         GdkColormapPrivate. 
9655
9656         * gdk/gdktypes.h: #include <glib-object.h>
9657
9658         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9659         Move most functionality to platform-specific implementation
9660         object. GdkWindow itself now handles the backing store, then
9661         chains to the platform-specific implementation.
9662         (gdk_window_get_window_type): return GdkWindowType of the window.
9663         (gdk_window_peek_children): New routine, returns the children of 
9664         a GdkWindow
9665         (gdk_window_get_children): Was in X11-specific code and did 
9666         XQueryTree. Changed to simply return a copy of window->children; 
9667         so it can go in cross-platform code.
9668         
9669         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9670
9671         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9672         GdkColormap; just changed to use the new private data instead
9673         of casting to GdkColormapPrivate.
9674
9675         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9676         gdk_cursor_new().
9677
9678         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9679         (private data member in the GObject). 
9680         (xdnd_manager_source_filter): Function had broken 
9681         error handling, fix it (use gdk_error_trap_push).
9682
9683         * gdk/x11/gdkdrawable-x11.c: This file now implements
9684         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9685         base class is purely for the convenience of the X port,
9686         and not part of the interface to cross-platform GDK.
9687
9688         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9689         
9690         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9691         specific to X, and returned by the create_gc virtual method
9692         of GdkDrawableImplX11. 
9693         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9694         rather than gchar, this was also changed in the GdkGC vtable.
9695         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9696         mask is 0, return immediately, instead of checking every flag.
9697         This is faster, and keeps us from segfaulting if values is NULL
9698         and the mask contains some nonzero flags.
9699
9700         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9701         GdkWindow.
9702
9703         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9704         GdkWindowPrivate is gone.
9705
9706         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9707
9708         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9709         remove the image_put stuff that got transferred to GdkDrawable.
9710         
9711         * gdk/x11/gdkinput.c: renamings
9712
9713         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9714
9715         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9716
9717         * gdk/x11/gdkprivate-x11.h: indentation fixes
9718
9719         * gdk/x11/gdkproperty-x11.c: renamings
9720
9721         * gdk/x11/gdkselection-x11.c: renamings
9722
9723         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9724         implements the platform-specific "impl" object.
9725         Moved gdk_window_get_children to gdk/gdkwindow.c
9726
9727         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9728         that no longer exist. Add declaration of GdkGCX11 object here.
9729         Fix all the macros to still work. 
9730
9731         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9732         GdkDragContext from the boxed types since they are now GObjects.
9733
9734         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9735         moved xthickness/ythickness into the instance. GtkStyleClass
9736         functions are now in the standard vtable for GtkStyle, so you have
9737         to create a GObject subclass to write a theme engine.
9738         (gtk_style_copy): fixed a leaked PangoFontDescription
9739         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9740         can be the standard GObject function.
9741         
9742         * Throughout GTK:
9743         s/style->klass->[xy]thickness/style->[xy]thickness
9744         s/pango_layout_unref/g_object_unref/
9745
9746         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9747         
9748         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9749         accessing GDK internals.
9750
9751         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9752         accessing GDK internals.
9753
9754 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9755
9756         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9757
9758         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9759         problem by calculating event position relative to the trough
9760         rather than the slider.
9761         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9762
9763         * gdk/gdkgc.h: Add GDK_NOR.
9764
9765         * configure.in, Makefile.am: Add modules top level dir
9766         * configure.in: Only use pangox library if building x11 target.
9767         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9768
9769 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9770
9771         * gtk/gtkcolorsel.c: Change private class member to be named
9772         private_data throughout the file.
9773
9774         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9775         private_data to avoid clashing with keyword.
9776
9777 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9778
9779         * gdk/gdkdnd.h: Add comment to remove warning.
9780
9781 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9782
9783         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9784         Byelorussian language; changed the Makefile and file names 
9785         to reflect that.
9786
9787 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9788
9789         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9790         rather than gdk_window_hide; this makes things work
9791         correctly if the window is programmatically hidden while
9792         iconified.
9793
9794 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9795
9796         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9797         cut and paste typo where wrong pixmap was being
9798         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9799
9800 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9801
9802         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9803         Add helper function to compute format / bytes 
9804         relationship. Use in a couple places to fix up
9805         errors which assume 8 * format.
9806
9807         * gtk/gtkselection.c (gtk_selection_request): Use 32
9808         rather than 8 * sizeof (GdkAtom), to work correctly
9809         on Alpha.
9810
9811 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9812
9813         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9814         libgtk.la
9815         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9816         versions
9817
9818         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
9819         checking macros return NULL since the function has a return value.
9820
9821 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
9822
9823         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
9824         GTK+ from building at all.
9825
9826         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
9827
9828 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
9829
9830         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
9831         gtk/Makefile.am: make it possible to configure gtk for different
9832         targets on the same platform. The library name is now 
9833         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
9834         flag. Only the x11 target compiles right now.
9835         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
9836         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
9837         * gdk/nanox/gdk*generic*: delete generic region code.
9838         * gdk/linux-fb/gdk*generic*: delete generic region code.
9839         * README.nanox: update information.
9840         
9841 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9842
9843         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9844         prepend not append. (Pointed out by Brett Hall.)
9845
9846 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9847
9848         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9849
9850 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9851
9852         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9853         need this later, and this makes sure that the atexit for
9854         glib gets called after that for GDK, so atexits are
9855         properly ordered for object leak checking.
9856
9857         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9858
9859         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9860         pango_x_shutdown_display()
9861
9862         * gtk/simple.c (main): Close window on destroy.
9863
9864 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9865
9866         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9867         to treat initial creation different from setting with 
9868         regards to the graphics-exposures parameter, so add a parameter
9869         indicating whether this is initial or not.
9870
9871 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9872
9873         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9874         to sort of work by adding an extra return_exposes arg
9875         to gdk_event_translate() - it might be better to simply
9876         deprecate the function altogether and force people to rewrite
9877         without it. gdk_window_scroll() handles most of it, and where
9878         gdk_window_scroll() doesn't work, simply redrawing more does.
9879
9880         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9881         assertion.
9882
9883         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9884
9885         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9886         bunch of pretty much useless /* Print debugging info */ comments 
9887         which had drifted away from the code they were commenting.
9888
9889 2000-06-02  Havoc Pennington  <hp@pobox.com>
9890
9891         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9892         is in working order.
9893         
9894         * gtk/testtext.c: Change to reflect anonymous mark API
9895
9896         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9897
9898         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9899         field, which was unused.
9900
9901         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9902         saves some typing.
9903
9904         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9905
9906         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9907         flag on the insertion point and selection bound
9908
9909         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9910         make mark-manipulation functions take a GtkTextMark* instead of a
9911         mark name.
9912         
9913         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9914         GtkTextMarkBody; will be used to detect attempts to delete
9915         the permanent marks (insert and selection bound)
9916
9917         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9918
9919 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9920
9921         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9922         flag to on.
9923
9924         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9925         Honor DOUBLE_BUFFRED_FLAG
9926
9927         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9928         function to set the DOUBLE_BUFFERED flag.
9929
9930         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9931         or not exposes done on the widget should be double-buffered.
9932
9933         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9934         to be what would be expected. (Fixes problem with a
9935         g_return_if_fail() validating a TextDirection enumeration)
9936
9937 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9938
9939         * gtk/gtkwidget.c: Remove all references to 
9940         offscreen flag which was no longer used.
9941
9942         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9943
9944         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9945         for non-null label_widget->parent.
9946
9947         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9948         which no longer was used.
9949
9950         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9951
9952         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9953         for null arguments.
9954
9955         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9956         check for destroyed windows.
9957
9958 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9959
9960         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9961         the slave context there.
9962
9963         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9964         identical to GtkWindow.
9965
9966 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9967
9968         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9969         pangox to here, so we can write them independent of rendering
9970         system, using GDK primitives.
9971
9972         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9973         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9974         since we have a rendering-system independent implementation in
9975         terms of draw_glyphs().
9976         
9977         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9978         function to render a single line.
9979
9980         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9981         into ../gdkpango.c, which simplifies things, since we
9982         don't have to deal with raw X gc's.
9983
9984 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9985
9986         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9987         get the logical attributes for a given GtkTextLine.
9988
9989 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9990
9991         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9992         g_locale_get_codeset() to g_get_codeset() change.
9993
9994 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9995
9996         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9997         descriptions.
9998
9999         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10000         the entry.
10001
10002         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10003         redoing (vastly simplifying) for Pango. Still needs quite
10004         a bit of work. (Size selection is currently poor. List of 
10005         predefined sizes is not a good idea, since all of these
10006         sizes won't necessarily be distinct.)
10007
10008 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10009
10010         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10011         CODESET results for LANG=C.
10012
10013 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10014
10015         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10016         which takes a stringized pango font description;
10017         ignore the older 'font' and 'fontset' declarations.
10018
10019         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10020         field with a GdkFont derived via gdk_font_from_description(),
10021         for compatibility. (Should we just remove it entirely?
10022         Probably too much compatibility breakage, but people
10023         should be migrating to the new Pango stuff as quickly
10024         as possible.)
10025
10026 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10027
10028         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10029
10030 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10031
10032         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10033         redoing; there are some bugs in size allocation right
10034         now, the semi-existant distinction between header / day
10035         fonts was removed, but, with Pango, could actually
10036         be made functional in a nice way.
10037         
10038         * gtk/testcalender: Move calender from examples into this
10039         directory as a test program. (We really need to restrcture
10040         testgtk into a whole directory full of tests for every
10041         widget or functionality group, separated into multiple .c
10042         files.)
10043
10044 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10045
10046         * gtk/testgtk.c (file_exists): Fix stupid typo that
10047         was keeping RC file from being loaded.
10048
10049         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10050         RC file font code.
10051
10052 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10053
10054         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10055         Add function to load a GdkFont from a PangoFontDescription.
10056
10057 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10058
10059         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10060         variable should be of type GdkEventPrivate.
10061
10062 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10063
10064         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10065         to have any widget for the label, use a GtkLabel widget
10066         to display the text. (Based partially on a patch from
10067         Anders Carlson.)
10068
10069         (Quite a bit of code reorganization - strip 90% of the
10070         guts out of gtkaspectframe and add a single virtual
10071         func to GtkFrameClass - compute_child_allocation.)
10072
10073 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10074
10075         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10076         (Removed clist->row_center_offset field because caching
10077         it wasn't saving time or code, added private function
10078         _gtk_clist_create_cell_layout()).
10079
10080 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10081
10082         * gtk/gtkaccellabel.c: Pangoized.
10083
10084         * gtk/[hv]ruler.c: Pangoized
10085
10086 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10087
10088         * gtk/gtkfilesel.c (gtk_file_selection_init):
10089         Use gtk_clist_set_column_auto_resize() to remove need
10090         need for manual column width computations.
10091
10092 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10093
10094         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10095         ensuring Pango correctness, and considerably simplifying the
10096         code.
10097         
10098         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10099
10100         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10101         getting of numbers of lines.
10102
10103         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10104         to the actual requested width of the lable, not to the wrap
10105         width we set.
10106
10107         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10108
10109         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10110           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10111
10112         * gtk/gtktextview.c: Fix structure inheritance.
10113
10114         * gtk/gtkprogressbar.c: Pangoize.
10115
10116 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10117
10118         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10119         in a function.
10120
10121         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10122         bug with computing line tops.
10123
10124         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10125
10126 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10127
10128         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10129         and y_offset coordinates to do what we need now. (The offset between
10130         buffer and layout coordinates has been reintroduced, but is a 
10131         bit different than before.)
10132
10133         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10134         handle the adjustments ourselves, and scroll as necessary using
10135         the new gdk_window_scroll().
10136         
10137         The advantage of this is that when we are incrementally revalidating,
10138         we are essentially rearranging things around the visible portion
10139         of the screen. With the old setup, the visible portion of the
10140         screen was moved around in the layout, so scrolling and redrawing
10141         to track that caused jumping of the display. Since we now
10142         control the scrolling ourselves, we can suppress this and
10143         only redraw when things actually change.
10144
10145 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10146
10147         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10148         the region not just redisplay it after-all, since we store the
10149         cursors in the LineDisplay. (Ugly interactions here between
10150         GtkLayout and GtkTextBTree here.)
10151         
10152         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10153
10154 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10155
10156         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10157         Added function to scroll contents of a window while keeping the
10158         window constant. Works by XCopyArea or guffaw-scrolling depending
10159         on the details of how the window is set up. (guffaw-scrolling
10160         still needs to be filled in.)
10161
10162 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10163
10164         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10165         move the debugging that was tied to a global variable
10166         to that.
10167
10168         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10169
10170         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10171         validated flag, in line data instead of setting height/width to
10172         -1. This allows us to perform operations with partially invalid
10173         buffer (using the old size for invalid lines) and thus to do
10174         incremental vaidation. Keep height/width aggregates up to date
10175         when deleting text and rebalancing the tree.
10176
10177         * gtk/gtktextbtree.[ch]: Add functions validate a line
10178         (gtk_text_btree_validate_line), and to validate up
10179         to a number of pixels (gtk_text_btree_validate).
10180
10181         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10182         that indicates that something is changed and a revalidation
10183         pass is needed. Change ::need_repaint to ::changed, and
10184         make it take old and new yranges instead of a rectangle.
10185
10186         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10187         the line_data_destroy() function from 
10188         gtk_text_btree_add_view() to a virtual function in 
10189         GtkTextLayout
10190
10191         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10192         since we are handling partial repaints in a different fashion
10193         now.
10194
10195         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10196         of the selection instead of queueing a repaint on the
10197         entire widget.
10198
10199         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10200         get_selection_bounds() down to btree, make the function
10201         in buffer a wrapper around the btree function.
10202
10203         * gtk/gtktextlayout.[ch]: Add functions to check if the
10204         layout is valid and to recompute either a range of pixels
10205         aroudn a line or a certain total number of pixels.
10206
10207         * gtk/gtktextlayout.[ch]: Cache a single line display;
10208         now that we only redraw the needed portions, the hit rate
10209         for this cache is quite high.
10210         
10211         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10212         on the screen so that when re-laying-out the buffer, we can
10213         keep the same place. This requires connecting to ::value_changed
10214         on the adjustments
10215
10216         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10217         the buffer after we receive an ::invalidated signal.
10218         
10219 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10220
10221         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10222         to max of allocation and layout size, not just to the
10223         layout size.
10224
10225         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10226         Invalidate window so it gets redrawn properly.
10227
10228         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10229         to mean the entire window.
10230
10231         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10232         into public header.
10233
10234 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10235
10236         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10237         to get the name of a mark.
10238
10239         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10240         to find the paragraph from a y position.
10241
10242 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10243
10244         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10245         nodes have width/height >= 0, not > 0.
10246
10247 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10248
10249         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10250         Add a size_only flag, so when we only need the size, we don't create
10251         useless appearance attributes.
10252
10253         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10254         duplicate setting of font description.
10255
10256         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10257
10258 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10259
10260         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10261         EXTRA_DIST. It does not work well when the file that
10262         everything depends on is not in the tarball.
10263
10264 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10265
10266         * gtk/testgtk.c: Some hacks and fixes so that it basically
10267         works when not sitting in the GTK+ build tree.
10268
10269 2000-05-03  Havoc Pennington  <hp@redhat.com>
10270
10271         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10272         Properly determine the ordering of the tag root and the current
10273         line within the tree. Previous algorithm only worked if the tag
10274         root's immediate parent was the common root of both the current
10275         line and the tag root.
10276
10277 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10278
10279         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10280         alignment.
10281
10282         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10283         the widget text directional dynamically.
10284
10285         * gtk/gtktextview.[ch]: Added functions to get and set default
10286         wrap mode.
10287
10288 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10289
10290         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10291         in cursor location computation.
10292
10293 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10294
10295         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10296         vadjusment values properly when layout gets smaller.
10297
10298         * gtk/gtktextview.c (need_repaint_handler): Areas being
10299         passed in are far completely inaccurate, and sometimes
10300         too small, so, for now, just queue a redraw on the
10301         whole visible region.
10302
10303 2000-04-25  Havoc Pennington  <hp@redhat.com>
10304
10305         * gtk/gtktextbtree.c (summary_destroy): new function to 
10306         destroy tag summary nodes
10307         (gtk_text_line_next_could_contain_tag): this function was 
10308         totally broken if the line passed in wasn't below the tag
10309         root. Fix it.
10310         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10311         "wildcard" case, we have to do a linear scan. Blah.
10312         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10313         we have to do the linear scan
10314         (tag_removed_cb): When a tag is removed from the tag table, 
10315         remove the GtkTextTagInfo node from the btree.
10316         (gtk_text_btree_spew): Implement the spew function, for 
10317         our debugging pleasure.
10318
10319 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10320
10321         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10322         a problem with referring to the wrong buffer.
10323
10324         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10325
10326         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10327         font description to gtk_style_new() - otherwise things
10328         don't work without a .gtkrc file.
10329
10330         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10331         tags table if we create it ourself, too.
10332
10333         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10334         it was conflicting with XKB modifiers.
10335
10336         * gtk/gtktextview.[ch]: Add simple support for 
10337         GtkIMContext.
10338
10339 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10340
10341         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10342         with deletion from last commit.
10343
10344 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10345
10346         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10347         in the context from the current locale.
10348         
10349         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10350         context, not hardcoded value.
10351
10352         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10353         not logical.
10354
10355 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10356
10357         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10358         attributes - that doesn't handle partial-glyph selection
10359         properly. Instead use new pango_layout_line_get_x_ranges()
10360         functionality to draw the selection.
10361
10362         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10363         now properly handles out-of-range coordinates.
10364
10365         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10366
10367         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10368         public.
10369
10370         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10371         for paragraphs opposite to the base direction of the widget.
10372
10373         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10374
10375         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10376         causes Arabic words to reshape as you cursor through.
10377
10378         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10379         cursor position when moving vertically with the arrow keys and
10380         scrolling with page-up/page-down. (Arrow keys save only the X,
10381         scrolling saves both X and Y.)
10382
10383         This means you can line-up / line-down or page-up / page-down
10384         without losing your place, and also that moving vertically
10385         with the cursor keys keeps the same X position, not the same
10386         character count:
10387
10388         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10389         arrow keys move by display lines, not paragraphs.
10390
10391 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10392
10393         * gtk/gtklayout.c: Make sure that the bin window is at least
10394         as big as the allocation. (Should we also make sure that the
10395         bin window is big enough to completely cover widget->window?)
10396
10397         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10398         function to get the onscreen rectangle.
10399
10400         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10401         for offsets in window coordinates.
10402
10403 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10404
10405         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10406         confusion.
10407
10408         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10409         from the widget direction.
10410
10411         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10412         Add a "direction" attribute.
10413
10414         * gtk/gtktextview.c: global s/tkxt/text_view/.
10415
10416         * gtk/testtext.c: Added long block of text in Arabic, to test out
10417         the direction attributes. (Some problems with the shaping system
10418         for arabic become obvious - like the fact the cursor splits words
10419         into unjoined pieces.)
10420
10421 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10422
10423         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10424
10425         * gtk/gtktextlayout.c: Fix up alignment.
10426
10427         * gtk/testtext.c: Add some tests for centering, wrapping.
10428
10429 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10430
10431         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10432         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10433         If we wrote GTK+-specific layout-render function this could just replace
10434         the draw_layout() operation in the vtable.
10435
10436         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10437         pango_layout_get_cursor_pos() and use that function.
10438
10439         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10440         is a non-static symbol.
10441
10442         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10443         with gtk_text_btree_find_line_by_y()
10444
10445         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10446         renderer that handles GtkTextAppearance attributes.
10447
10448         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10449
10450           - Move the values in the style that don't affect geometry into a
10451             GtkTextAppearance structure.
10452           - Change underline to take a PangoUnderline and "font" a string
10453             representation of a font description
10454           - Add a "font_desc" attribute which takes a FontDescription structure.
10455
10456         * gtk/gtktextlayout.[ch]:
10457
10458           - Get rid of the display-line list per each line. Instead, we
10459             generate, on demand, a GtkTextLineDisplay structure which]
10460             contains a PangoLayout * and other necesary information
10461             (offsets, cursor locations) for displaying a paragraph.
10462           - Get rid of the code to wrap lines, create display chunks,
10463             etc. Instead, we just go through a paragraph and convert
10464             it into the necessary inputs to a PangoLayout.
10465           - Implement a new attribute type, GtkTextAttrAppearance. This
10466             holds a GtkTextAppearance, and is used to pass colors, 
10467             stipple, etc, through from the layout to the display without
10468             having to use lots and lots of individual attributes.
10469           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10470             in terms of PangoLayout functions.
10471         
10472         * gtk/gtktextview.c: 
10473          
10474           - Handle passing the necessary PangoContext to the layout
10475           - Some fixups in painting to deal with the automatic backing store
10476             and offsetting of GTK+-1.4
10477           - Add a style_set handler so that the default style reacts
10478             properly to theme changes.
10479         
10480         * gtk/gtktext?*.[ch]: Random code-style fixes.
10481
10482         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10483
10484 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10485
10486         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10487         in original form preparatory to Pango-ization and gdkimcontext-ization.
10488
10489 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10490
10491         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10492         so that we can derive from gtkimcontext in language bindings properly.
10493
10494 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10495
10496         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10497         Add a compose table including (almost) all the compose combinations
10498         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10499         data in the XIM implementation.
10500
10501         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10502         Moved functions to convert keyvalues from and to unicode here from
10503         the win32 port and made them public.
10504
10505 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10506
10507         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10508
10509 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10510
10511         * gtk/gtkimcontext.[ch]: Base class for new input context system
10512
10513         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10514         the real input context implementation to be loaded from modules
10515         and switched on the fly.
10516
10517         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10518         context that just does direct keysymbol => unicode translation.
10519
10520         * gtk/gtkentry.[ch]: Start switching editing over to using
10521         GtkInputContext. (No handling of preedit yet.)
10522
10523 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10524
10525         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10526         many substitutions. (klass should not be subsituted.)
10527
10528 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10529
10530         * configure.in: Add checks for Pango
10531
10532         * configure.in docs/Makefile.am: Add test for sgml2html
10533         and allow 'make dist' without building html, but print out
10534         warnings in that case. (For making snapshots)
10535
10536         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10537         Add Pango libraries and C flags
10538
10539         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10540         Add function (gdk_draw_layout) to draw a pango layout.
10541
10542         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10543         for getting Pango contexts for GDK.
10544
10545         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10546
10547         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10548         editing.
10549
10550         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10551         keysym => unicode translations. More languages can be added
10552         here, but real input-method support is needed.
10553
10554         * docs/Changes-1.4.txt: Added note about entry behavior.
10555         
10556         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10557         to set the reading direction for a widget and the global direction.
10558         Add test which allows toggling the global direction. Two private
10559         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10560
10561         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10562           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10563
10564         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10565
10566         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10567         underlining now handled by Pango.
10568
10569         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10570         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10571         is temporary.)
10572
10573         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10574         convenience functions for creating contexts and layouts for widgets.
10575
10576         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10577
10578 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10579
10580         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10581         titles to be active, even if they aren't visible.
10582         (gtk_clist_column_titles_passive):  Ditto.
10583
10584 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10585
10586         * gtkmenu.c:
10587         * gtkmenu.h:
10588         * gtktypeutils.h: Spelling/grammar fixes in comments.
10589
10590 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10591
10592         * gdk/nanox/*.h: add missing header files.
10593
10594 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10595
10596         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10597         send_event to TRUE.
10598         (gtk_drawing_area_size): queue a resize.
10599
10600 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10601
10602         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10603         the handlers, also invalidate them. bug nailed down by Karl Nelson
10604         <kenelson@ece.ucdavis.edu>.
10605
10606 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10607
10608         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10609         "(nil)" foundries, patch from Grigorios Magklis.
10610
10611         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10612         on non-available fonts, based on a patch by Grigorios Magklis
10613         <maglis@cs.rochester.edu>.
10614
10615 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10616
10617         * gdk/x11/gdkregion-generic.c: If a region does not have any
10618         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10619         instead of GDK_OVERLAP_RECTANGLE_IN.
10620
10621 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10622
10623         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10624         OFFSCREEN, as it is no longer necessary.
10625
10626 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10627
10628         * gtk/gtkcolorsel.c: Patch from David Santiago
10629         <mrcooger@cyberverse.com> to change things so that the 
10630         indicator of the active palette entry is done independently,
10631         not via the focus, since it should always be visible.
10632
10633 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10634
10635         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10636         refcount leaks as in the X11 backend.
10637
10638         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10639         cosmetics.
10640
10641         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10642         backend. Add _gdk_windowing_window_destroy().
10643
10644         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10645         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10646         either, but these probably do exist on nanox?)
10647         
10648         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10649         which isn't necessarily defined by <math.h>.
10650
10651         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10652         ancestry past GtkObject.
10653
10654         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10655         from DLL on Win32.
10656
10657         * gtk/gtk.def: Update corresponding to recent changes.
10658
10659         * gtk/makefile.{cygwin,msc}: Updates.
10660
10661 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10662
10663         * docs/Changes-1.4.txt: A bit of editing.
10664
10665         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10666         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10667         to clear the update area for the window, and clear it
10668         when hiding a window.
10669
10670         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10671         if window destroyed.
10672
10673         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10674
10675         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10676         gdk_window_destroy() to the generic code, since there was a lot of 
10677         window-system-independent logic it in. Add a function:
10678         
10679          _gdk_window_destroy() 
10680
10681         to the internal API to destroy a window without unreferencing it.
10682         Add a function:
10683
10684          _gdk_windowing_window_destroy()
10685
10686         That does the windowing-system-dependent part of destroying 
10687         the window.
10688
10689 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10690
10691         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10692
10693 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10694
10695         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10696         Make gtk_widget_shape_combine_mask() keep a reference count on
10697         the pixmap since it keeps it around.
10698
10699 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10700
10701         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10702         leak.
10703
10704         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10705         leak with event filters.
10706
10707 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10708
10709         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10710         signal handlers with the right data arguments. (Fixes
10711         some warnings when a widget was repeatedly set as a drag
10712         destination.)
10713
10714         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10715         window so we can avoid avoid setting the DND properties on the
10716         toplevel window repeatedly.
10717
10718 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10719
10720         * gdk/win32/gdkwin32.h: Define more message types missing from
10721         mingw headers.
10722
10723         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10724         call gdk_window_destroy_notify(). It was never called. This
10725         probably meant that the GdkWindow was never freed. Thanks Owen for
10726         noticing (!).
10727
10728         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10729         window as destroyed before calling DestroyWindow(). DestroyWindow()
10730         causes a call to the window procedure (gdk_WindowProc), which
10731         calls gdk_event_translate(), which calls
10732         gdk_window_destroy_notify(), which gets confused unless the window
10733         is set as destroyed.
10734
10735         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10736         this function to indicate it's win32 only. Put inside #ifdef
10737         G_ENABLE_DEBUG.
10738
10739         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10740         debugging function. (gdk_event_translate:) Add a default branch
10741         that uses the above function to print debug messages with all
10742         Windows messages symbolically.
10743
10744         * gdk/win32/gdkprivate-win32.h: Declare it, and
10745         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10746
10747 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10748
10749         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10750         public header file.
10751
10752 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10753
10754         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10755
10756         * gtk/gtktext.c: made the adjustments no-construct args, simply
10757         provide default adjustments.
10758         (gtk_text_destroy): release adjustments.
10759
10760         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10761         adjustment argument non-construct.
10762
10763         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10764         instead of in finalize.
10765         (gtk_progress_get_text_from_value): 
10766         (gtk_progress_get_current_text): 
10767         (gtk_progress_set_value): 
10768         (gtk_progress_get_percentage_from_value): 
10769         (gtk_progress_get_current_percentage): 
10770         (gtk_progress_set_percentage): 
10771         (gtk_progress_configure): ensure an adjustment is present.
10772
10773 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10774
10775         * gtk/gtkcolorsel.[hc]:
10776         * gtk/gtkcolorseldialog.[hc]:
10777         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10778         their parent implementation, use bit fields for boolean values, don't
10779         create unused widgets, usage of glib types, braces go on their own
10780         lines, function argument alignment, #include directives etc. etc. etc..
10781
10782         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10783
10784 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10785
10786         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10787
10788         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10789         of NULL.
10790
10791         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10792         to freed data.
10793         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10794
10795         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10796         to NULL when the toplevel is getting destroyed.
10797         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10798         (gtk_menu_destroy): 
10799         (gtk_menu_init): store the information of whether we have to
10800         readd the initial child ref_count during destruction in a new
10801         GtkMenu field needs_destruction_ref_count.
10802
10803         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10804         here, those reading: learn from my mistake! ;)
10805         in order for set_?adjustment to support a default adjustemnt if
10806         invoked with an adjustment pointer of NULL, the code read (pseudo):
10807         if (v->adjustment) unref (v->adjustment);
10808         if (!adjustment) adjustment = adjustment_new ();
10809         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10810         now imagine the first unref to actually free the old adjustment and
10811         adjustment_new() creating a new adjustment from the very same memory
10812         portion. here, the latter comparision will unintendedly fail, and
10813         all hell breaks loose.
10814         (gtk_viewport_set_hadjustment):
10815         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10816         after unreferencing it.
10817
10818         * gtk/gtkcontainer.[hc]: removed toplevel registration
10819         functions: gtk_container_register_toplevel(),
10820         gtk_container_unregister_toplevel() and
10821         gtk_container_get_toplevels() which had wrong semantics
10822         anyways: it didn't reference and copy the list.
10823
10824         * gtk/gtkwindow.c: we take over the container toplevel registration
10825         bussiness now. windows are registered across multiple destructions,
10826         untill they are finalized. the initial implicit reference count
10827         users are holding on windows is removed with the first destruction
10828         though.
10829         (gtk_window_init): ref & sink and set has_user_ref_count, got
10830         rid of gtk_container_register_toplevel() call. add window to
10831         toplevel_list.
10832         (gtk_window_destroy): unref the window if has_user_ref_count
10833         is still set, got rid of call to
10834         gtk_container_unregister_toplevel().
10835         (gtk_window_finalize): remove window from toplevel list.
10836         (gtk_window_list_toplevels): new function to return a newly
10837         created list with referenced toplevels.
10838         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
10839
10840         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10841         adjustment a non-construct arg.
10842         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10843         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10844         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10845
10846         * gtk/gtkrange.c: added some realized checks.
10847         (gtk_range_destroy): get rid of the h/v adjustments in the
10848         destroy handler instead of finalize. remove timer.
10849         (gtk_range_get_adjustment): demand create adjustment.
10850
10851         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10852         we simply create them on demand now and get rid of them in
10853         the destroy handler.
10854         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10855         destroy handler instead of finalize.
10856         (gtk_viewport_get_hadjustment): 
10857         (gtk_viewport_get_vadjustment): 
10858         (gtk_viewport_size_allocate): demand create h/v adjustment
10859         if required.
10860
10861         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10862         gtk_widget_real_destroy () functionality.
10863         (gtk_widget_real_destroy): reinitialize with a new style, instead
10864         of setting widget->style to NULL.
10865
10866 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10867
10868         * gtk/gtkcalendar.c:
10869         * gtk/gtkbutton.c: ported _get_type() implementation over to
10870         GType, either to preserve memchunks allocation facilities,
10871         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10872
10873         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10874         over. prepare for ::destroy to be emitted multiple times.
10875         removed reference tracer magic. chain into GObjectClass.shutdown()
10876         to emit ::destroy signal.
10877
10878         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10879         fundamental.
10880
10881         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10882         cludge.
10883
10884         * gtk/gtksocket.c:
10885         * gtk/gtkplug.c:
10886         * gtk/gtklayout.c:
10887         * gtk/gtklabel.c:
10888         * gtk/gtkargcollector.c:
10889         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10890         not being a fundamental anymore, and to work with the new
10891         type system (nuked fundamental type varargs clutter).
10892
10893         * gtk/*.c: install finalize handlers in the GObjectClass
10894         part of the class structure.
10895         changed direct GTK_OBJECT()->klass accesses to
10896         GTK_*_GET_CLASS().
10897         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10898
10899         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10900         GType. made most of the GTK_*() type macros and Gtk* typedefs
10901         simple wrappers around macros and types provided by GType.
10902         most notably, a significant portion of the old API vanished:
10903         GTK_TYPE_MAKE(),
10904         GTK_TYPE_SEQNO(),
10905         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10906         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10907         GTK_TYPE_ARGS,
10908         GTK_TYPE_CALLBACK,
10909         GTK_TYPE_C_CALLBACK,
10910         GTK_TYPE_FOREIGN,
10911         GtkTypeQuery,
10912         gtk_type_query(),
10913         gtk_type_set_varargs_type(),
10914         gtk_type_get_varargs_type(),
10915         gtk_type_check_object_cast(),
10916         gtk_type_check_class_cast(),
10917         gtk_type_describe_tree(),
10918         gtk_type_describe_heritage(),
10919         gtk_type_free(),
10920         gtk_type_children_types(),
10921         gtk_type_set_chunk_alloc(),
10922         gtk_type_register_enum(),
10923         gtk_type_register_flags(),
10924         gtk_type_parent_class().
10925         replacements, where available are described in ../docs/Changes-1.4.txt.
10926         implemented compatibility functions for the remaining API.
10927
10928         * configure.in: depend on glib 1.3.1, use gobject module.
10929
10930 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10931
10932         * TODO.xml: Various updates to current status.
10933
10934 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10935
10936         * gtk.m4: Print out version when test succeeds.
10937
10938 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10939
10940         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10941         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10942         
10943         (Original triangle color selector from Simon Budig
10944         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10945         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10946         Santiago <mrcooger@cyberverse.com>)
10947
10948         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10949         out into a separate widget.
10950
10951         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10952         and opacity controls.
10953
10954 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10955
10956         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10957         snuck in prematurely.
10958
10959 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10960
10961         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10962         had deleted a ! operator by mistake, which caused
10963         GDK_SELECTION_CLEAR events never to be generated, which caused
10964         only the first copy to the clipboard from an gtkeditable to
10965         actually cause a copy to the Windows clipboard.
10966
10967 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10968
10969         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10970         compilation, too. Current mingw gcc distributions include the
10971         necessary headers. Also the necessary IIDs are now in mingw
10972         headers/libraries, and own definitions unnecessary.
10973
10974         More hacking on OLE2 DND, still doesn't work though, and thus
10975         ifdeffed out.
10976
10977         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10978         here, too.
10979
10980 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10981
10982         * gdk/nanox/*: nano-X port work in progress.
10983         * gdk/simple.c: simple test for Gdk.
10984         * README.nanox: notes about the port: read this first!
10985         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10986         with nano-X.
10987
10988 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10989
10990         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10991         gdk_window_clear() into common code, implement in terms of
10992         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10993         not redirected to the backing rectangle.
10994
10995 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10996
10997         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10998         EXTRA_DIST. It does not work well when the file that
10999         everything depends on is not in the tarball.
11000
11001 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11002
11003         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11004         with recursion where process_updates() is called from
11005         an expose handler. (GtkTextView is highly broken in
11006         doing this, but it should work, so it is a nice test
11007         case.)
11008
11009 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11010
11011         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11012         handle the case where updates are queued during processing of
11013         updates.
11014
11015 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11016
11017         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11018         window is on gdk_display - use that instead of segfaulting.
11019
11020 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11021
11022         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11023         broken and require an empty arg, give it to them.
11024
11025 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11026
11027         * gtk/gtklabel.h: indentation fixes.
11028
11029 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11030
11031         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11032         draw too narrow or too low arcs, they seem to fail, at least with
11033         some display drivers.
11034
11035         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11036
11037         Large changes to the Win32 backend, partially made necessary by
11038         the changes to the backend-independent internal
11039         structures. Attempts to implement similar backing store stuff as
11040         on X11. The current (CVS) version of the Win32 backend is *not* as
11041         stable as it was before the no-flicker branch was merged. A
11042         zipfile with that version is available from
11043         http://www.gimp.org/win32/. That should be use by "production"
11044         code until this CVS version is usable. (But note, the Win32
11045         backend has never been claimed to be "production quality".)
11046
11047         * README.win32: Add the above comment about versions.
11048
11049         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11050
11051         * gdk/gdk.def: Update.
11052
11053         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11054         presumably be replaced by some more better mechanism as 1.4 gets
11055         closer to release shape.
11056
11057         * gdk/makefile.{cygwin,msc}: Update.
11058
11059         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11060         internal headers. Change code according to changes in these. Use
11061         gdk_drawable_*, not gdk_window_* where necessary.
11062
11063         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11064         our old DND.
11065
11066         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11067         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11068         Use correct function name in warning messages.
11069
11070         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11071         GSourceFuncs gdk_event_prepare and gdk_event_check.
11072         (gdk_event_get_graphics_expose): Do implement, use
11073         PeekMessage. Thanks to Hans Breuer.
11074         (event_mask_string): Debugging function to print an GdkEventMask.
11075         (gdk_pointer_grab): Use it.
11076
11077         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11078         (old) book I used claimed was Hangul actually is CJK Unified
11079         Ideographs Extension A. Also, Hangul Syllables were missing.
11080         Improve logging.
11081
11082         * gdk/win32/gdkgc-win32.c: Largish changes.
11083
11084         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11085         g_win32_getlocale() from GLib, and not setlocale() to get current
11086         locale name.
11087
11088         * gdk/win32/gdkprivate-win32.h
11089         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11090         gdkwin32.h, similarily as in the X11 backend.
11091
11092         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11093         assignment was used instead of equals in if test. Thanks to Hans
11094         Breuer.
11095
11096         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11097         the X11 version.
11098
11099         * gdk/win32/makefile.{cygwin,msc}
11100         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11101         path to the Win32 headers that works also with the mingw compiler.
11102
11103         * gtk/gtkstyle.c: Include <string.h>.
11104
11105 2000-04-26  Havoc Pennington  <hp@redhat.com>
11106
11107         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11108         replacing the broken gtk_label_get ()
11109
11110 2000-04-15  Havoc Pennington  <hp@pobox.com>
11111
11112         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11113         this keeps scanner scripts from getting confused.
11114
11115         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11116         data, rather than void
11117
11118 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11119
11120         * gtk/gtkclist.c (gtk_clist_motion)
11121         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11122         with is_hint FALSE, get x and y from the event. They used to be
11123         used uninitialised. The Win32 backend never sends motion events
11124         marked as hints. This for instance fixes the annoying file and
11125         font selector behaviour in the Win32 version.
11126
11127 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11128
11129         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11130         gtk_private_n_signals variables, they are used by some software,
11131         sigh.
11132
11133         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11134         installation directory from the Registry, where the installer
11135         should have put it.
11136
11137 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11138
11139         * gdk/x11/Makefile.am: Fix problem with installation directory for
11140         gdkx.h
11141
11142         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11143         <mrcooger@cyberverse.com> so that when selecting menus with the
11144         mouse, the first item will not be selected, but when selecting
11145         with an accelerator, or navigating left-right on a menubar with
11146         the menus popped up, the first item will be selected.
11147
11148 2000-04-05  Dan Damian  <dand@dnttm.ro>
11149
11150         * configure.in: Added "ro" to ALL_LINGUAS.
11151
11152 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11153
11154         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11155         indentation.
11156
11157         * Makefile.am (EXTRA_DIST): Fix typo.
11158
11159         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11160         to catch gdkconfig.h
11161
11162         * gtk/gtkitemfactory.c: Added FIXME.
11163
11164 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11165
11166         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11167         s/return_if_fail/return_val_if_fail/g and add a return value.
11168
11169 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11170
11171         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11172         merge slipup.
11173
11174         * gdk/gdkinput.h: Fix missing line from merge.
11175
11176 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11177
11178         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11179         instead of gdkprivate.h.
11180
11181 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11182
11183         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11184         parent class to correctly be GtkDialogClass.
11185
11186 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11187
11188         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11189         toplevel windows and their immediate children by their parents,
11190         since the size of toplevel windows is out of our immediate
11191         control and we don't get any real benefit from trying to track
11192         this size for clipping.
11193
11194         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11195         for input_only windows.
11196
11197         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11198         to fix some hacks and make sure that we don't try to set the
11199         background of input only windows.
11200
11201 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11202
11203         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11204         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11205         stuff that we've traditionally exposed.
11206
11207         * gdk/**.c: Use gdkinternals.h where appropriate.
11208
11209         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11210         not include gdkprivate-x11.h, move all stuff of conceivable public
11211         interest into gdkx.h; keep all really private stuff in
11212         uninstalled header gdkprivate-x11.h.
11213
11214         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11215         image->image_put on windows through a new function _gdk_window_draw_image()
11216         to allow us to do backing store for images. (Sort of ugly)
11217
11218         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11219         contexts locally so that we can offset them properly when drawing 
11220         onto backing pixmaps.
11221
11222         * gdk/gdkinput.h: Reindented
11223
11224         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11225         pixmap or color for the window, so we can properly initialize
11226         our double-buffer pixmaps, and also so that we temporarily set
11227         a background of None while scrolling.
11228
11229         * gdk/gdkregion.h: Revise region boolean operators to have an
11230         interface that is actually convenient - switch from creating new
11231         regions on every op, to "methods" that modify existing regions
11232         (A = A OP B). 3 argument forms which allow dest == src, would also
11233         be possible, but the current interfaces seem to map nicely
11234         onto what needs to be done. (There is quite a lot of region
11235         code in GDK now.)
11236
11237         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11238         operator.
11239
11240         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11241         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11242         to 32 bit coordinates, modify it to be mostly GTK+ style
11243         and to have interfaces that match gdkregion.h.
11244
11245         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11246         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11247         create a backing pixmap and redirect all drawing to
11248         that backing pixmap until a matching gdk_window_end_paint().
11249
11250         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11251         Create a special drawable class for GtkWindow's that 
11252         redirects the drawing to the backing pixmap as necessary
11253         and then calls the real operations in _gdk_windowing_window_class.
11254
11255         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11256         Store invalid region for each window. Generate expose events for invalid
11257         region in an idle. This replaces both the expose compression
11258         and the redrawing queuing in GTK+. It is both more efficient and
11259         simpler than either one individually and far more so then the
11260         combination.
11261
11262         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11263         Emulate 32 bit coordinates for windows with 16 bit coordinates
11264         by offsetting drawing, guffaw scrolling techniques and
11265         mapping/unmapping child windows as necessary.
11266
11267         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11268         where, when invalid regions are processed, the region is stored,
11269         and if expose events come in that are detectably duplicate
11270         the processed exposes (by comparison of event serial numbers),
11271         the stored region is subtracted out of those exposes.
11272
11273         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11274         regions newly exposed when scrolling or resizing windows.
11275         This, combined with forcing processesing of queued invalidated
11276         regions, gives nice flicker-free scrolling.
11277
11278         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11279         invalidated regions after every scroll.
11280
11281         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11282         emulation in GDK. Its, for all practical purposes just a
11283         GtkViewport/GtkFixed hybrid now.
11284
11285         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11286         (16-bit) structures as necessary instead of just casting.
11287
11288         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11289         in terms of the structures from gdkregion-generic.c, using appropriate
11290         offsets from GDK to X11 coordinates. Cache clip mask and
11291         origin and ts origin locally and only flush to the server
11292         when drawing, to avoid constantly setting and resetting these
11293         values when offsetting GC's for scrolling and backing pixmaps.
11294
11295         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11296
11297         * gtk/gtkcontainer.c: Call process_all_updates at end
11298         of resizing to reduce flicker. (Avoids having redraw
11299         lag arbitrarily behind resize under some circumstances)
11300
11301         * gtk/gtkentry.c: Remove old backing store code, and simply take
11302         advantage of the new backing store capabilities of GDK.
11303
11304         * gtk/gtkmain.c: Simple implementation of widget backing
11305         store - simply push a paint while handling each expose.
11306         (Should really be configurable widget for widget.)
11307         
11308         * gtk/gtkwidget.c: Remove all the old complicated redraw
11309         code, and simply invalidate the GDK windows from
11310         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11311         debugged complexity ... gone to the winds.)
11312
11313         Remove all the code for suppressing expose events while
11314         resizes are pending; this isn't needed since the invalid
11315         areas won't be processed until after the resizes are
11316         processed, since they are in a lower priority idle.
11317
11318 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11319
11320         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11321         and height of dest rectangle for non-intersecting rectangles.
11322
11323 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11324
11325         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11326         for GdkRectangle.
11327
11328 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11329
11330         * gdk/gdk{events,image,private,types,window}.h
11331          gdk/x11/gdkinputprivate.h: Change all coordinates
11332          from int16 to int. Also, Change width and height from
11333          unsigned to signed to avoid all the stupid C 
11334          signedness bugs.
11335
11336 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11337
11338         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11339         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11340         Add some more detailed checking.
11341
11342         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11343         New function to retrieve the depth of a drawable.
11344
11345         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11346         field, reorder fields to save memory. 
11347
11348 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11349
11350         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11351         of the background image instead of scaling the background down to
11352         a line.
11353
11354         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11355         which temporarily set slider to wrong size.
11356
11357         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11358         queue_clear().
11359
11360 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11361
11362 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11363
11364         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11365
11366 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11367
11368         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11369         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11370
11371         * gdk/win32/gdkfont-win32.c
11372         * gdk/win32/gdkproperty-win32.c
11373         * gdk/win32/gdkselection-win32.c
11374         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11375         now declared such.
11376
11377 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11378
11379         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11380
11381 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11382
11383         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11384         is called without trapping X errors.
11385
11386 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11387
11388         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11389         way into the fontset lists.
11390
11391 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11392
11393         * gtk/gtkthemes.h: add extern "C" scope.
11394
11395 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11396
11397         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11398         to make appends to the list constant. (gtk-guy-990901-0.patch)
11399
11400 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11401
11402         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11403         for the typename hash table.
11404
11405 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11406
11407         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11408         to make sure we never divide by zero. 
11409         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11410
11411 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11412
11413         * gtk/gtkfontsel.c: Apply patch from
11414         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11415         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11416
11417         Also, some cleanups in atom handling.
11418
11419 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11420
11421         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11422         not GtkWidget.
11423
11424 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11425
11426         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11427         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11428         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11429         more guint wrap-around bugs before going to bed.
11430
11431 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11432
11433         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11434         guint wrap arounds in allocation.width.
11435
11436         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11437         process untill we fit the allocation given.
11438
11439 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11440
11441         * gtk/gtkwidget.c:
11442         (gtk_widget_unrealize): guard widget access with ref/unref
11443         around signal emission.
11444         (gtk_widget_hide): same here, but also check its destroyed
11445         state before queueing a resize.
11446
11447 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11448
11449         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11450         of gtk_default_insensitive_bg as insensitive base color.
11451
11452         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11453         to the widget's state.
11454         (gtk_text_realize): same here.
11455         (gtk_text_state_changed): same here.
11456         (draw_bg_rect): compare background color against base[] from
11457         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11458
11459 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11460
11461         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11462         grabs are active, unless a delete event is send to the toplevel
11463         of the currently grab holding widget.
11464
11465 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11466
11467         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11468         debugging g_print's.
11469
11470 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11471
11472         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11473         ever make the scrolled-window requisition ever depend on the 
11474         visibility state of the scrollbars for the AUTOMATIC policy. 
11475         This breaks the GTK+ requisition model, and causes loops.
11476
11477 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11478
11479         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11480         the default font to avoid problems with XFree86-4.0 where the
11481         default charset is iso10646-1, not iso8859-1.
11482
11483 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11484
11485         * acinclude.m4
11486         * config.guess
11487         * config.sub
11488         * ltconfig
11489         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11490
11491         * gtk/Makefile.am: minor cosmetic consistency tweak
11492
11493 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11494
11495         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11496         the activate_time to 0, so that we handle a quick
11497         press/release press/release properly and don't suppress
11498         the second release. (Red Hat bug #7545)
11499
11500 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11501
11502         * gtk/gtkctree.c (row_delete):
11503         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11504         bugs with destruction notifier, *always* update internal
11505         structures *before* calling user code.
11506
11507 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11508
11509         A few more fixes for bug #5487, #2051, #2677.
11510         * gtk/gtkclist.c : 
11511         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11512         not GDK_BUTTON_PRESS.
11513         (resync_selection): resync only if selection_mode is
11514         GTK_SELECTION_EXTENDED
11515         * gtk/gtkctree.c (resync_selection): same here
11516
11517 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11518
11519         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11520         gdk_drag_get_selection() and gtk_menu_detach().
11521
11522         [ From Jeroen Ruigrok/Asmodai ]
11523
11524 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11525
11526         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11527         page->tab_label can be NULL.
11528
11529 2000-01-25  Havoc Pennington  <hp@pobox.com>
11530         
11531         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11532         arg is boolean
11533
11534         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11535
11536         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11537
11538         * gdk/gdkproperty.c (gdk_property_get): return boolean
11539
11540         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11541
11542         * gdk/gdkim.c (gdk_im_ready): return boolean
11543
11544         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11545
11546         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11547         glib clash, should fix glib)
11548
11549         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11550         (gdk_get_show_events): return gboolean, and canonicalize 
11551         to TRUE/FALSE
11552
11553         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11554         colormap is private
11555         (gdk_colors_alloc): gboolean whether to be contiguous
11556         (gdk_color_equal): return gboolean since we are a predicate
11557         and not a qsort() (this looks semi-wrong due to glib breakage,
11558         IMO glib should be fixed)
11559         
11560         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11561         (gdk_get_use_xshm): return gboolean
11562         (gdk_pointer_is_grabbed): return gboolean
11563
11564         * gdk/gdk.h: Change prototypes to match all the above changes,
11565         and re-run egtk-format-protos as required.
11566
11567 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11568
11569         * gtk/gtkctree.c (resync_selection): 
11570         * gtk/gtkclist.c (resync_selection):
11571
11572         Return immediately if clist->drag_pos < 0. This is a workaround
11573         for the corrupt state that the clist gets into when a
11574         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11575
11576         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11577         
11578         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11579         variable from recent commit.
11580
11581 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11582
11583         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11584
11585 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11586
11587         * gtk/Makefile.am: prefix all autogenerated source that get build in
11588         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11589         in builddir. since we subsequently cd into srcdir for autogeneration,
11590         the paths have to be stripped from the target file names, thusly we
11591         use $(@F) as target names now.
11592         put a comment about configure.in's --disable-rebuilds option,
11593         which can be used for non-writable source directories, for development
11594         setups though, srcdir has to be *writable*.
11595
11596 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11597
11598         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11599           Finish the job of allowing event to be NULL.
11600           (Fixes bug #4283, reported by Chris Blizzard)
11601
11602         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11603           things so that the cursor appears on screen, properly
11604           take into account INNER_BORDER.
11605           (Fixes bug #4754, reported by Antonio Campos)
11606
11607 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11608
11609         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11610           show the tab_label unless it itself is visible.
11611
11612           gtk/gtknotebook.c (gtk_notebook_size_request):
11613           Do a better job of making sure that the visibility
11614           of the tab label corresponds to whether it should
11615           be mapped or not.
11616
11617 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11618
11619         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11620           Use the requisition, not the allocation, since the
11621           allocation has not necessarily been computed yet.
11622           (Pointed out by Eugene Osintsev)
11623
11624 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11625
11626         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11627           style/base[GTK_STATE_INSENSITIVE] both to
11628           gtk_default_insensitive_bg!
11629           (Bug #2187, reported by Jonathan Blandford)
11630
11631         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11632           Add Alt_L, Alt_R to list of invalid accelerators.
11633           (Bug #3736, reported by Vlad Harchev)
11634
11635 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11636
11637         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11638         bugs which occured after an attempt to open 
11639         invalid home directory left cmpl_state->reference_dir == NULL.
11640
11641          - completion on files in home directory didn't work
11642          - completion on an empty string caused  segfault
11643
11644          (Bug #3678, reported by Steve Ratcliffe)
11645
11646         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11647         cut and paste error that was causing scales to
11648         be incorrectly positioned.
11649         (Bug #2956,
11650          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11651
11652 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11653
11654         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11655         when checking for dcgettext, if we've found we needed
11656         it for dgettext.
11657 +
11658 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11659
11660         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11661         queue_clear on NO_WINDOW widgets during a reparent,
11662         since at that point the window and widget heirarchies
11663         are out of sync. This stops crashing in some cases
11664         (the scrolled window reparent test, for instance), and
11665         _probably_ won't cause drawing errors.
11666
11667         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11668         test do what it was supposed to do and be robust against
11669         window closings, etc. (Bug #2443)
11670
11671 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11672
11673         * gtk/gtkentry.c: Fix return values on mouse events.
11674         (Bug #2686, Sky <seb_sky@yahoo.com>)
11675
11676         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11677         (pointed out by George Lebl)
11678
11679         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11680         (From Ettore Perazzoli  <ettore@helixcode.com>)
11681  
11682 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11683
11684         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11685         clicks between rows or outside calender area correctly.
11686         (Patch from Damon Chaplin)
11687
11688         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11689         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11690           Call destroy function when overwriting existing data. 
11691           (Pointed out by Damon Chaplin)
11692
11693 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11694
11695         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11696           which was causing problems on various systems with Xmu.
11697           This hasn't been needed for a very long time.
11698           (Fixes #1185 3167)
11699
11700 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11701
11702         * gdk/gdki18n.h: Include <ctype.h> when defining
11703           gdk_isw* in terms of is* as a fallback.
11704           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11705
11706 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11707
11708         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11709           realize the widget when it is size allocated!
11710           (old, old bug)
11711
11712         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11713           Removed unused call to gdk_window_get_size() that
11714           showed up when the above was fixed.
11715
11716 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11717
11718         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11719           fix up widget->window when the widget is a
11720           NO_WINDOW container widget.
11721
11722 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11723
11724         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11725           to account for the fact that feof() does _not_ 
11726           return TRUE on errors, and thus avoid infinite loops
11727           when trying to use gdk_pixmap_create_from_xpm()
11728           on unreadable values.
11729
11730 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11731
11732         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11733
11734 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11735
11736         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11737           gdk_gc_set_dashes to take gint8 instead of gchar to
11738           make it clearer that it is _not_ a NULL terminated string.
11739
11740         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11741           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11742           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11743           arguments.
11744
11745 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11746
11747         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11748         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11749         background size relative to our allocation, guard against small
11750         allocations, we may have not yet been size allocated.
11751
11752 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11753
11754         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11755         not just version == 3. We implement all 3 + most of 4 - 
11756         (we don't support matching text/plain;charset=iso-8859-1
11757         to a dest that expects text/plain). We'll still advertise
11758         3 to be safe, but any client implementing version >= 3
11759         must interoperate with 3.
11760         
11761 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11762
11763         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11764         background and gc members, add a warning in gtk_tooltips_set_color()
11765         indicating that this function is deprecated.
11766
11767 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11768
11769         * docs/gtkfaq.sgml: FAQ Update:
11770           - Minor cleanups (Emmanuel, me)
11771           - New questions:
11772                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11773                 How can I retrieve the text from a GtkMenuItem? (timj)
11774                 How do I validate/limit/filter the input to a GtkEntry? (me)
11775                 Memory does not seem to be released when I free the list
11776                         nodes I've allocated (timj)
11777
11778 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11779
11780         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11781         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11782         for which it is no use to call GetLastError onWin9x.
11783         (gdk_other_api_failed) New function, for general error
11784         reporting without calling GetLastError.
11785         (gdk_win32_api_failed) OTOH, this function always calls
11786         GetLastError. (gdk_win32_last_error_string) Remove this function,
11787         GLib has the equivalent now.
11788
11789         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11790         call them with function name, file name and line number in the
11791         arguments.
11792
11793         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11794         functions.
11795         
11796         * gtk/gtk.def: Add some missing entry points.
11797
11798         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11799         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11800         
11801         Fixes by Hans Breuer:
11802
11803         * gdk/makefile.msc: Update for debugging.
11804
11805         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11806         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11807         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11808         in the dash_list.
11809
11810         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11811         the x11 backend.
11812
11813         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11814
11815         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11816
11817 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11818
11819         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
11820         just pixel value of background colour.
11821
11822         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
11823         containing code snippet previously duplicated in a couple of
11824         places.
11825         
11826         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
11827         gdk_colormap_color.
11828
11829         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
11830         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
11831         events for autorepeated Shift, Control and Alt keys. Use
11832         gdk_colormap_color.
11833
11834         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
11835         pointer is inside the window the cursor of which we are setting,
11836         call SetCursor immediately.
11837
11838         * gdk/win32/makefile.cygwin
11839         * gtk/makefile.cygwin: If we don't have the build number stamp
11840         file, use zero.
11841
11842         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11843         gtk_paned_set_gutter_size as empty.
11844
11845         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11846         
11847 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11848
11849         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11850           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11851           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11852           docs/gtk_tut.sgml docs/gtk.texi TODO:
11853
11854           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11855
11856 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11857
11858         * gtk/gtkcalendar.c: Implement num_marked_dates,
11859           and don't emit mutiple day_selected signals on
11860           month_prev.
11861
11862 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11863
11864         * docs/make-todo (lineno): let title and logo be configurable so
11865         that GNOME can use this script too.
11866
11867         * TODO.xml: added logourl and a title
11868
11869 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11870
11871         * TODO.xml: Added some UI items, and an explanatory
11872         comment at the top of the file.
11873
11874 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11875
11876         * TODO.xml: some updates, added abunch of new entries.
11877         a note for those fiddeling with this file, when done
11878         with it, invoke:
11879         $ ./docs/make-todo TODO.xml >/dev/null
11880         and correct output errors before comitting changes.
11881
11882 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11883
11884         * TODO.xml: Added XML-structured TODO file.
11885         * docs/make-todo: python script to turn TODO.xml into
11886           pretty XML output. 
11887
11888 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11889
11890         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11891         the function to let it draw the seven dots, instead of the old,
11892         much maligned, method.
11893         (draw_dot): New function to draw a dot.
11894
11895         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11896         to draw the handle inside the border width as opposed to outside.
11897         Use paint function instead of gdk_draw_point.
11898
11899         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11900         to draw the handle inside the border width as opposed to outside.
11901         Use paint function instead of gdk_draw_point.
11902
11903         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11904         Change indenting to be more GTK like.
11905
11906 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11907
11908         * docs/gtk_tut.sgml: New section on GtkCalendar
11909         * examples/calendar: Update example code
11910
11911 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11912
11913         * docs/gtkfaq.sgml: FAQ Update
11914
11915 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11916
11917         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11918         to prevent the scroll event to be propagated upwards.
11919
11920 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11921
11922         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11923         OwnerGrabButtonMask from button entries for
11924         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11925
11926         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11927         to the event mask (which will result in button/press release
11928         being added to the event mask on Unix) so scrolling works
11929         for layouts in scroll windows.
11930
11931         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11932
11933         Patch from Anders Carlsson  <andersca@gnu.org> to add
11934         a scroll event.
11935
11936         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11937         scrolling to the "Test Scrolling" part of testgtk.
11938  
11939         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11940  
11941         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11942         it against GDK_SCROLL.
11943  
11944         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11945         way of mouse wheel scrolling.
11946  
11947         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11948  
11949         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11950  
11951         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11952  
11953         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11954         gdk_event_mask_table.
11955  
11956         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11957         GdkEventScroll handler.
11958  
11959         * gdk/gdkevents.h: Added GdkEventScroll structure.
11960  
11961 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11962
11963         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11964         and Anders Carlsson to change the Paned widgets so that they
11965         can be dragged from anywhere along the length. Also change
11966         the way that this is drawn to make this apparent.
11967
11968         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11969         from George Lebl to check that option_menu->menu is present
11970         before getting history.
11971
11972 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11973
11974         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11975         before the assertion for non-NULL segment list.
11976
11977         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11978         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11979         machine, but it might be display driver dependent. Sigh, so make
11980         sure the stipple is that size. Does Windows suck or what?
11981
11982         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11983         places.
11984
11985 2000-02-13  Havoc Pennington  <hp@pobox.com>
11986
11987         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11988         refcount to 1
11989         (gdk_cursor_new): init refcount to 1
11990
11991         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11992
11993 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11994
11995         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11996         so that we don't have to do unnecessary settings to the HDC.
11997
11998         * gdk/win32/gdkdrawable-win32.c
11999         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12000         gdk_gc_predraw.
12001
12002         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12003         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12004         GDI paths, call WidenPath to get the outline of the stroken path,
12005         and then fill the outline (with the brush that was built from the
12006         stipple).
12007
12008         * gdk/win32/gdkgc-win32.c: Factor out common code from
12009         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12010         gdk_win32_gc_values_to_win32values. Use correct colour for
12011         SetBkColor() (Until now the code actually used a random colour in
12012         the call to SetBkColor()... but that didn't show up as not many
12013         GDI APIs use the background colour. Pattern (opaque stippled)
12014         brushes do.)
12015
12016         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12017         gdk_win32_api_failed): New functions for error logging.
12018
12019         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12020         WIN32_API_FAILED to call them, passing function or file name and
12021         line number.
12022
12023         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12024
12025         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12026         GdkColor for foreground and background in GdkGCWin32Data.
12027
12028         * gdk/makefile.cygwin: Link in the resource object separately.
12029
12030         * gdk/win32/rc/gdk.rc
12031         * gtk/gtk.rc (New file)
12032         * gdk/win32/makefile.cygwin
12033         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12034         as in GLib.
12035
12036 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12037
12038         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12039         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12040         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12041         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12042         parameters given and cursor->ref_count. coding style fixups.
12043
12044         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12045         not GtkWidget.
12046         
12047         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12048         fix up widget macros and add _GET_CLASS() variant.
12049         
12050         * gtk/*.c: some GtkType fixups.
12051
12052 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12053
12054         * gdk/win32/gdkproperty-win32.c
12055         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12056         were reversed.
12057
12058 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12059
12060         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12061         g_filename_to_utf8 to convert the font names Windows gives us from
12062         whatever is the default codepage to UTF-8.
12063         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12064         in the other direction.
12065
12066         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12067         error in debugging output.
12068
12069 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12070
12071         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12072         and height parameters to gdk_window_clear_area(). Not minus one.
12073
12074 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12075
12076         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12077         checks if the widget passed to gtk_drag_get_data() was not the
12078         dest widget.
12079
12080 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12081
12082         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12083         g_filename_from_utf8 functions (which were added a moment ago to
12084         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12085         size buffers.
12086
12087         gtk_file_selection_get_filename returns the filename in the C
12088         runtime encoding. It calls g_filename_from_utf8, but copies the
12089         returned string to a static buffer, which is returned. I think
12090         this is better than returning the result from g_filename_from_utf8
12091         directly, which would mean all apps that use it would have to free
12092         the return value. Or should this function care about this issue at
12093         all? Maybe a new function with clearly defined semantics.
12094
12095         * gtk/gtkfilesel.h: Add comment about
12096         gtk_file_selection_get_filename returning the filename in the C
12097         runtime's encoding.
12098
12099         * README.win32
12100         * gdk/gdk.def
12101         * gdk/makefile.{cygwin,msc}
12102         * gtk/gtk.def: Updates.
12103
12104         * gdk/gdkcursor-win32.c: Initialise refcount.
12105
12106 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12107
12108         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12109
12110 2000-01-30  Havoc Pennington  <hp@pobox.com>
12111
12112         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12113         destroy
12114
12115         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12116
12117         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12118         implemented in platform-specific code
12119
12120         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12121
12122         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12123         underscore in front
12124
12125         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12126         put an underscore in front
12127
12128         * gdk/gdkcursor.c: new file, implements
12129         gdk_cursor_ref/gdk_cursor_unref
12130
12131         * gdk/gdkcursor.h: Refcount GdkCursor
12132
12133         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12134
12135 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12136
12137         * gdk/gdkwindow.h
12138         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12139
12140 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12141
12142         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12143         structures to properly inherit from GtkWidget not GtkBin.
12144
12145 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12146
12147         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12148         (bug #5178 - Peter Wainright)
12149         
12150         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12151         so that it will be installed.
12152         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12153
12154 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12155
12156         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12157         for the GtkStyleClass vtable const.
12158
12159         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12160         take a const string argument like GtkTranslateFunc. This will
12161         require changes in use code.
12162
12163 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12164
12165         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12166         semantics (to mimic the X11 backend, which just calls XClearArea)
12167         is to check for zero width (and height), and in that case use the
12168         window's width minus x (height minus y). This fixes for instance
12169         some redraw problems with gtkclist, which were easily noticeable
12170         in the gtk file selection widget.
12171
12172         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12173         windows.
12174
12175 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12176
12177         * configure.in
12178         * gdk/Makefile.am
12179         * gdk/x11/Makefile.am
12180         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12181         (bug #5177).
12182         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12183         out later.
12184
12185 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12186
12187         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12188         WM_MOVE for iconified or invisible windows. This fixes various
12189         problems when minimising windows. Thanks to Bernd Herd.
12190
12191 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12192
12193         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12194         backend's draw_lines method, not draw_points.
12195
12196 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12197
12198         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12199         before Owen's reorganisation: Don't have queued_events and
12200         queued_tail statics in this file, but use gdk_queued_events and
12201         gdk_queued_tail. This makes exposure event compression work again.
12202
12203         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12204         seem to be needed?
12205
12206 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12207
12208         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12209         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12210         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12211         doesn't do anything.
12212
12213         * gdk/gdk.def: Add gdk_xid_table_insert.
12214
12215         * gdk/win32/gdkprivate-win32.h
12216         * gdk/win32/gdkevents-win32.c
12217         * gdk/win32/gdkinput-win32.c
12218         
12219         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12220         extension_events field in the GdkWindowWin32Data struct. Use only
12221         the extension_events field in GdkWindowPrivate. Previously one was
12222         set, and the other one tested, which broke tablet
12223         functionality. Thanks to Keishi Suenaga for pointing this out.
12224
12225 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12226
12227         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12228         When handling a single character (text length == 1), don't handle
12229         it as if it was UTF-8.
12230
12231 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12232
12233         * Makefile.am: Distribute README.win32.
12234         
12235         * gdk/Makefile.am
12236         * gdk/win32/Makefile.am: Distribute Win32 files.
12237
12238         * gdk/makefile.msc: New file.
12239
12240         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12241         after label).
12242
12243         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12244         gdk_error_code as GDKVAR, as they are referred outside GDK.
12245
12246         * gdk/win32/makefile.msc: Update.
12247
12248         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12249         tweaks. Check only if at least one of those Unicode subrange bits
12250         we care for is set. If no code page bits are set, guess (wildly)
12251         based on the charset.
12252
12253         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12254
12255         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12256         non-NULL.
12257
12258         * gtk/gtkdnd.c
12259         * gtk/gtklayout.c
12260         * gtk/gtkplug.c
12261         * gtk/gtkselection.c
12262         * gtk/gtksocket.c
12263         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12264         appropriate. There must be a cleaner way to handle this?
12265
12266         * gtk/gtkrc.c: Must include windows.h on Win32.
12267
12268         * gtk/testgtk.c: No need to include gdkx.h.
12269
12270         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12271
12272 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12273
12274         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12275         the rbearing is set to the same as the width, but this should be
12276         fixed.
12277
12278 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12279
12280         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12281         function. If Windows doesn't tell us what Unicode subranges a font
12282         covers, guesstimate based on the codepages it covers. This will
12283         hopefully help those Windows versions or fonts that don't give us
12284         any useful Unicode subrange information with GetTextCharsetInfo.
12285         Call this function in gdk_font_load_internal.
12286
12287         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12288         minor changes.
12289
12290 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12291
12292         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12293         New function, long needed.
12294
12295 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12296
12297         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12298         only_if_exists argument of gdk_atom_intern to
12299         bool.
12300
12301 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12302
12303         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12304         Fix two copy&paste errors.
12305
12306         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12307         win32 has changed.
12308
12309         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12310         GdkWin32SingleFont struct.
12311
12312         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12313         subranges of loaded fonts. Clear font signature first, in case
12314         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12315         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12316
12317         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12318         Unoffset clip region.
12319
12320 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12321
12322         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12323         event->any.window before calling filter functions.
12324
12325 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12326
12327         * gtk/gtkgamma.h: Adapt cast macros to standard.
12328
12329 [ Merges from 1.2 ]
12330
12331 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12332
12333         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12334         If translation does not include a '/', use entire
12335         translation instead of crashing.
12336
12337 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12338
12339         * docs/gtk_tut.sgml:
12340         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12341
12342 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12343
12344         * gtk/gtkselection.c (gtk_target_list_remove): Use
12345         g_list_remove_link, not g_list_remove.
12346
12347         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12348         
12349 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12350
12351         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12352         statement upon unselection (how the heck did that slip in?).
12353
12354 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12355
12356         * gtk/gtktext.c (gtk_text_freeze): 
12357         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12358         in frozen state (and aparently crashes). patch provided by Anders
12359         Melchiorsen <and@kampsax.dtu.dk>.
12360
12361 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12362
12363         * fix insensitive default/focus widget activation,
12364         reported by Matt Goodall <mgg@isotek.co.uk>.
12365
12366         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12367         (gtk_window_activate_default):
12368         (gtk_window_activate_focus):
12369         return handled=FALSE for actiavtion of insensitive default
12370         widgets. return handled=TRUE for activation of insensitive
12371         focus widgets. don't activate in either case.
12372
12373 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12374
12375         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12376         and $glib_cflags to match library order and in the
12377         theory that an old version of GLib is more likely to
12378         be in the include directory for X then vice-versa.
12379         (Bug #2776)
12380
12381 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12382
12383         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12384         to determine the locale for fontsets, not LC_MESSAGES;
12385         the user may want English messages with a handling
12386         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12387         will still be broken) (Bug #2891)
12388
12389 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12390
12391         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12392
12393 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12394
12395         * gtk/gtkrc.ko: Changed the Korean default fontset.
12396
12397 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12398
12399         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12400         where when scrolling to the left or top double exposes
12401         were done, causing major slowdowns.
12402
12403 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12404
12405         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12406         names to lowercase and alphanumeric, before looking
12407         them up.
12408
12409         * gtk/Makefile.am: Install codeset variant gtkrc files
12410         with normalized names.
12411
12412 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12413
12414         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12415         popup menus when the menu is already visible, but its parent
12416         is still hidden, (happens after tornoff window got hidden).
12417
12418 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12419
12420         * gtk/Makefile.am (install-data-local): Fix
12421         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12422         deleted, causing error messages on install.
12423
12424 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12425
12426         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12427         the handle as well, since we now sometimes ignore
12428         exposes on the handle while resizing.
12429
12430 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12431
12432         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12433         extra g_free introduced in one of the last one or two 
12434         commits.
12435
12436 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12437
12438         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12439         consistent, put each style that a gtkrc.* file creates
12440         in a unique namespace, remove old files before installing.
12441
12442 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12443
12444         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12445         gtk_rc_init is called multiple times. (Yes, people who
12446         do that have bugs in their code.)
12447
12448 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12449
12450         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12451         Remove it since it's generated by the Makefile anyway
12452
12453 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12454
12455         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12456         device->info.axes for core pointer.
12457
12458 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12459
12460         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12461         idle_id, to deal with obsolete, broken C libraries.
12462
12463 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12464
12465         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12466         allocation->x/y twice!
12467
12468         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12469         consistent with gtk_vscale_pos_trough().
12470
12471 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12472
12473         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12474         be queueing a resize on a toplevel container between
12475         the time we show it and when we map it. So, we need
12476         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12477         use GTK_WIDGET_DRAWABLE() for child windows.
12478
12479 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12480
12481         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12482         (fixes bug #2144)
12483
12484 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12485
12486         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12487         container DRAWABLE (instead of VISIBLE), so we don't queue
12488         resizes on non-toplevel containers.
12489
12490 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12491
12492         * gtk/gtkselection.[ch]: Make the data argument
12493         const guchar *.
12494
12495 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12496
12497         * gtk/gtkwindow.c: Try to behave sensibly if 
12498         the focus widget is the window itself. (Should
12499         we allow this at all?)
12500
12501 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12502
12503         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12504         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12505         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12506         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12507         in prototypes and implementations consistent (Tomas Ogren).
12508
12509         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12510         before the widget is unparented (reported by damon).
12511
12512         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12513         since we provide unsigned data anyways.
12514
12515 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12516
12517         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12518         the call to gtk_tooltips_layout_text() until later.
12519
12520         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12521         Call gtk_widget_ensure_style() before using the style.
12522
12523 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12524
12525         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12526         for old widgets that don't propagate draws to all
12527         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12528
12529 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12530
12531         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12532         for a redraw but just the widget that requested the resize.
12533
12534 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12535
12536         * gtk/gtkcontainer.c: added new widget level method
12537         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12538         reallocate_redraws : 1 to reflect the setting, exported this through
12539         the argument system as a boolean ::reallocate_redraws.
12540
12541         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12542         on the widget because the allocation changes, do so as well for
12543         widget->parent if the parent has reallocate_redraws set to TRUE.
12544         with that containers requesting reallocation redraws get automatically
12545         redrawn if their children changed allocation (this unfortunately
12546         affects also other children that didn't change allocation, but we
12547         cannot work around that before 1.3).
12548
12549 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12550
12551         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12552         _and_ height are >0 (not _or_).
12553
12554         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12555         instead of gtk_container_queue_resize(), which is a core gtk internal
12556         function (must have been on crack when i queued that).
12557
12558         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12559         we can check more reliably if we want to discard expose events.
12560         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12561         flag.
12562         
12563         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12564         we simply trust these events. for deciding whether to discard exposes,
12565         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12566         
12567 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12568
12569         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12570         queues of areas that are completely off screen.
12571
12572         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12573         logic for handleboxes.
12574
12575         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12576         check on width/height.
12577
12578 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12579
12580         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12581         we are fine with using $@ the way we do (if we actually encounter
12582         brokeness with $@ in VPATH builds because of additional path prefixes,
12583         we need to use $(@F) actually).
12584
12585 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12586
12587         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12588         short lived bugs, that would allow language bindings to do surgeries
12589         to our guts.
12590
12591 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12592
12593         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12594         where comparison was being done against an uninitialized
12595         value causing intermittant results depending on
12596         compiler flags. Also make it clearer that we aren't
12597         ever initializing the child as 0x0 (though this will
12598         be caught in gtk_widget_size_allocate())
12599
12600 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12601
12602         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12603         gtk_window_unset_transient_for() call after we do checks
12604         involving the old transient parent.
12605         [ From Lance Capser <lmc@cyberhighway.net> ]
12606
12607 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12608
12609         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12610         an empty file.
12611
12612 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12613
12614         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12615         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12616
12617 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12618
12619         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12620         `$@' is valid only in the build dir, not after we've done 
12621         `cd $srcdir'.  Also use `test -f' instead of less portable
12622         `test -e'.
12623
12624 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12625
12626         * gtk/gtktext.c (correct_cache_insert): Rewrite
12627          for simplicity, and hopefully correctness.
12628          (Fixes bug #1322, which was a segfault when
12629           on some insertions with the properties around
12630           the insertion set up just wrong.)
12631
12632         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12633          a "changed" signal, clamp the new value to the adjustment
12634          bounds to avoid segfaulting if someone tries to change
12635          the adjustment to a bogus value. (Bug #1795)
12636
12637 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12638
12639         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12640         for children, for toplevel windows handle them
12641         like delete_event.
12642
12643         * gtk/gtkplug.c: Add an unrealize handler so that
12644         we unref plug->socket_window when we are done
12645         with it.
12646
12647 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12648
12649         * gtk/gtktext.c (clear_area): Fix stupid signedness
12650          problem that was causing background to sometimes
12651          be misaligned.
12652
12653 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12654
12655         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12656         
12657         * gtk/gtkmenu.c (gtk_menu_position): Make
12658          sure we never position menus with negative x, y,
12659          since gtk_widget_set_uposition() can't handle that.
12660
12661         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12662          Modify the positioning code a bit so that we always
12663          put the top-left corner onscreen. (This is for
12664          UI reasons, gtk_menu_position() now takes care of
12665          gtk_widet_set_uposition() brokeness.)
12666
12667 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12668
12669         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12670
12671 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12672
12673         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12674           RC style that is passed in. The lack of the ref
12675           before was a bug. If people worked around this
12676           bug, this will introduce a slight memory leak
12677           in their code. The code should typically look like:
12678
12679             rc_style = gtk_rc_style_new ();
12680             [...]
12681             gtk_widget_modify_style (widget, rc_style);
12682             gtk_rc_style_unref (rc_style);
12683
12684         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12685           the style if it was already set.
12686
12687         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12688           style if it was set before.
12689
12690 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12691
12692         * gtk/testgtk.c (main): Add a check to see if we
12693           are being run from the correct directory and
12694           to quit nicely if we are not.
12695
12696         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12697           static.
12698
12699 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12700
12701         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12702
12703         * gtk/gtkwindow.c:
12704         queue resizes unconditionally (gtk_widget_queue_resize will figure
12705         what to do if the window is not realized).
12706         (gtk_window_move_resize): only recenter the window
12707         for GTK_WIN_POS_CENTER_ALWAYS.
12708         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12709         the same way as GTK_WIN_POS_CENTER.
12710
12711 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12712
12713         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12714         with (!(info->last_flags & GDK_HINT_POS)) instead of
12715         (!info->last_flags & GDK_HINT_POS).
12716
12717         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12718         new_height unconditionally, because we use these values even if
12719         !default_size_changed && !hints_changed.
12720         comented the (default_size_changed || hints_changed) case with
12721         respect to resize rejects from the window manager.
12722
12723         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12724         in the zvt condition hack, since this includes the window hints, set
12725         the hints after the handling_resize case.
12726
12727         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12728         window is initially shown with to the geometry.
12729
12730 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12731
12732         * gtk/gtkwindow.c (gtk_window_move_resize):
12733         s/size_changed/default_size_changed/g so i know what's
12734         really going on (frying brain on smaller flame now).
12735
12736 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12737
12738         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12739         we have size_changed upon handling_resize. this is a gross
12740         workaround for the broken zvt widget and should be removed in
12741         1.3 again (search for FIXME).
12742         Owen provided an accurate comment for this:
12743
12744         /* We could be here for two reasons
12745          *  1) We coincidentally got a resize while handling
12746          *     another resize.
12747          *  2) Our computation of size_changed was completely
12748          *     screwed up, probably because one of our children
12749          *     is broken. It's probably a zvt widget.
12750          *
12751          * For 1), we could just go ahead and ask for the
12752          * new size right now, but doing that for 2)
12753          * might well be fighting the user (and can even
12754          * trigger a loop). Since we really don't want to
12755          * do that, we requeue a resize in hopes that
12756          * by the time it gets handled, the child has seen
12757          * the light and is willing to go along with the
12758          * new size. (this happens for the zvt widget, since
12759          * the size_allocate() above will have stored the
12760          * requisition corresponding to the new size in the
12761          * zvt widget)
12762          *
12763          * This doesn't buy us anything for 1), but it shouldn't
12764          * hurt us too badly, since it is what would have
12765          * happened if we had gotten the configure event before
12766          * the new size had been set.
12767          */
12768
12769 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12770
12771         * gtk/gtkrc.c: deal properly with the fact that RC
12772           style lists may include rc styles more than once.
12773
12774         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12775           unused static function.
12776
12777         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12778           stack of directories of RC files currently being
12779           parsed and implicitely add them to pixmap path.
12780           
12781           This fixes a bug where the directory would get
12782           appended then overwritten by pixmap_path declarations.
12783
12784           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12785
12786         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12787           theme's exit function. (Patch from Peter Wainwright,
12788           bug #1454)
12789
12790         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12791           Add a destroy() handler to take care of removing
12792           group for menu item. (Fixes bug #1197)
12793
12794         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12795           in warning message.
12796
12797 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12798
12799         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12800         roundtrip to figure window's width and height, since we know that
12801         anyways from widget->allocation.
12802
12803 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12804
12805         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12806           the hints after we request the new size.
12807
12808 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12809
12810         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12811           GTK_WIDGET_REALIZED() assertion - we can compute the
12812           hints before we are realized.
12813
12814         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12815           hint changing so that we have a value of hints_changed
12816           when we decide whether to constrain the window size.
12817
12818         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
12819
12820         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
12821         change back to G_MAXINT.
12822
12823 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
12824
12825         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
12826         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
12827         contain uncluttered values.
12828         (gtk_window_compute_hints): simply assert that window is realized
12829         and that geometry_info is valid, since we rely on this anyways.
12830         (gtk_window_constrain_size): major cleanups to the code.
12831         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
12832         for the base size, instead of the minimums. use 32767 as max width
12833         and height (like in gtkwindow.c) instead of G_MAXINT.
12834
12835 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
12836
12837         * cleaned up the GtkContainer.need_resize flag handling mess, we
12838         only need to force resize requests when we were prematurely
12839         realized, or our widget tree was modified when we were temporarily
12840         hidden. handling these cases directly upon showing the window (i.e.
12841         while the GdkWindow is still unmapped) avoids the need to wait for
12842         a configure event response and therefore makes the GUI more snappier
12843         and avoids blank windows during the roundtrip.
12844
12845         * gtk/gtkwidget.c:
12846         (gtk_widget_hide): 
12847         (gtk_widget_show): don't queue resizes on toplevels, they know how
12848         to deal with matters.
12849
12850         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12851         flag directly for not visible resize containers and spare us unecessary
12852         signal emissions.
12853
12854         * gtk/gtkwindow.c:
12855         (gtk_window_realize): if we need to enforce premature size allocation,
12856         queue a container resize so we are correctly resized later on.
12857         (gtk_window_init):
12858         (gtk_window_size_request):
12859         don't freak around with the ->need_resize flag,
12860         gtk_container_queue_resize() will care about that.
12861         (gtk_window_show):
12862         handle initial resizing issues here, we can handle matters better in
12863         this place, especially since we know that our GdkWindow is still
12864         unmapped.
12865         (gtk_window_move_resize):
12866         don't care about ->need_resize at all.
12867         handle size changes properly that occoured while we waited for a
12868         configure event.
12869
12870 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12871
12872         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12873         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12874         Move the hint setting code from gtk_widget_set_uposition
12875         to here; set the hints so that we respect any previously
12876         set geometry hints.
12877
12878         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12879         change the window hints here or move the window here,
12880         let that happen in gtk_window_move_resize().
12881
12882 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12883
12884         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12885         to already queued resizes (and therefore redraws) on a widget, check
12886         its anchestry as well.
12887
12888         * gtk/gtkcontainer.c:
12889         (gtk_container_queue_resize): clear resize widgets for resize
12890         containers before aborting prematurely. this is especially important
12891         for toplevels which may need imemdiate processing or their resize
12892         handler to be queued.
12893         (gtk_container_dequeue_resize_handler): added new internal function for
12894         gtkwindow.c.
12895
12896         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12897         configure event, take possible changes in window position into account
12898         as well.
12899         if we request a new window size, queue up a resize handler that will
12900         last until the configure event response arrives.
12901         combined the ->need_resize case (initial show) with the general size
12902         (hints) changed case and added even more comments.
12903         if !auto_shrink, only revert to the old allocation if the new size
12904         is smaller than the current allocation.
12905
12906 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12907
12908         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12909                            gtk_window_set_geometry_hints
12910                            gtk_window_set_default_size):
12911         When hints are set, queue a resize so that the hints will
12912         be eventually reset on the toplevel.
12913
12914         * gtk/gtkwindow.c (gtk_window_show): Use
12915         gtk_window_compute_default_size(). Clear the need_resize flag
12916         on the initail map so that we don't unnecessarily trigger the
12917         resize code.
12918
12919         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12920         into separate functions. Compare the hints we are setting
12921         with what we set last time so that we can accurately
12922         tell when we need to reset the hints.
12923
12924         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12925         function to figure out the size from requisition
12926         and default_size.
12927
12928         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12929         from fvwm to constrain a size to the geometry hints.
12930
12931         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12932         to compare two sets of geometry hints.
12933
12934         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12935         from gtk_window_set_hints(), just compute the hints,
12936         don't set them.
12937
12938         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12939         code from gtk_window_move_resize() to separate function,
12940         rationalize a bit.
12941
12942 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12943
12944         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12945         structure into a new private structure.
12946
12947         * gtkrc.c: Split GtkRcStyle into public/private.
12948         In the private part, add a list of pointers to the
12949         RcStyle lists this RcStyle participates in.
12950
12951         * gtkrc.c: When a RcStyle is free, remove all
12952         lists referencing it from the 
12953         realized_style_ht hash, and free those lists.
12954         
12955         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12956         gtk_rc_init(), since that adds the default styles
12957         to the list of parsed RC files again.
12958
12959         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12960         
12961 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12962
12963         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12964         checks that ensure that a widget's allocation is at least 1 in width
12965         and height. (GNOME note: this doesn't affect old panel code anymore,
12966         because GtkSocket will request width and height of at least 1 since
12967         Fri Jul 23).
12968
12969         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12970         allocated yet (happens if the user realizes the window prematurely),
12971         size request and allocate it.
12972         (gtk_window_size_allocate): guard against guint underflows.
12973
12974 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12975
12976         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12977         in gtk_built_sources, so gtk.defs gets built prior to all other
12978         sources.
12979
12980 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12981
12982         * gtk/Makefile.am:
12983         invoke indent on gtkmarshal.*. 
12984         rewrote source generation rules, use COPYING as oldest source tag for
12985         a piggyback rule to generate all sources from (don't touch it ;).
12986         major cleanups, strip spaces on build rules for GNU Make.
12987
12988         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12989         source and target files from commandline arguments. don't invoke indent.
12990
12991 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12992
12993         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12994         notebook after switch to avoid drawing problems.
12995         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12996         
12997         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12998         show them instead. 
12999         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13000
13001 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13002
13003         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13004         notebook after switch to avoid drawing problems.
13005         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13006         
13007         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13008         show them instead. 
13009         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13010
13011 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13012
13013         * gtk/gtkwindow.c:
13014         we use window->need_resize from configure_event now, to indicate that
13015         the gtkwindow should keep its allocation (e.g. because the user resized
13016         the window through window manager handles). resize_count is now reliably
13017         used to figure whether we got the allocation we requested from the
13018         window manager.
13019         configure events get queued as resizes now, the real stuff (size
13020         computation and allocation) now only goes on in gtk_window_move_resize().
13021         GtkWindow's requisition now contains its *real* requisition (like all
13022         other widgets), *not* taking usize into account.
13023         geometry_info->last_{width|height} is now updated from set_hints() only
13024         so it always contains the last hints we set for the window manager.
13025         made some event handlers return TRUE instead of FALSE.
13026         the overall code should be much more straight forward now, and the
13027         significant code portions are accompanied by comments now.
13028         (gtk_window_set_hints):
13029         removed requisition argument and made it
13030         fetch the requisition through gtk_widget_get_child_requisition.
13031         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13032         does that now.
13033         (gtk_window_show):
13034         ensure that the widget is realized before calling 
13035         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13036         ensure that we got properly size requested and allocated before
13037         realization.
13038         (gtk_window_configure_event):
13039         ignore plain window moves, or reallocate the widget tree through the
13040         resize queue otherwise.
13041         (gtk_window_move_resize):
13042         mostly rewrote this function to figure window manager hints more
13043         reliably, coalesce window moves and resizes to reduce configure events
13044         and do actuall size allocations.
13045
13046 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13047
13048         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13049         that have a resize pending, because a redraw is already queued for them.
13050
13051         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13052         hack to clear resize_widgets.
13053
13054         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13055         for resize containers prior to size allocation. (this is also a bit
13056         ugly, but avoids side effects for stopped emissions and is thus more
13057         reliable).
13058         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13059
13060         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13061         function from gtk_tooltips_expose, as we connect to ::expose_event
13062         *and* ::draw now.
13063
13064 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13065
13066         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13067         checks.
13068         (gtk_target_list_unref): Likewise.
13069
13070         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13071
13072 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13073
13074         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13075         guard against division by zero. (Fixes bug #1339)
13076
13077 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13078
13079         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13080         Prevent the trivial leak of information of allowing
13081         word motion when the entry is not visible.
13082
13083 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13084
13085         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13086         modality to error dialog as well as confirmation dialogs.
13087         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13088
13089 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13090
13091         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13092         tree->view_lines.
13093         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13094
13095         * gtk/Makefile.am (install-data-local): Solaris apparently
13096         has various troubles with ln -f; use rm first instead.
13097         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13098
13099 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13100
13101         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13102         use `cp' followed by `rm' (the `rm' was already there).
13103
13104 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13105         
13106         * configure.in: Fix autoconf warnings about cross compilation by
13107         trying to provide sane defaults for AC_TRY_RUN.
13108         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13109         put them into $(srcdir) when generated. Also add a dependency of
13110         gtksignal.h on gtkmarshal.h for -j builds. 
13111         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13112
13113 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13114
13115         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13116         GDK_THREADS_{LEAVE,ENTER} pair.
13117         (From Paul Fisher <pnfisher@redhat.com>)
13118
13119 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13120
13121         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13122         width and height are always >0 (owen).
13123
13124 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13125
13126         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13127         change that assured that a widget's allocated with and height are
13128         always >1, since this breaks *buggy* panel code. unfortunately this
13129         back-breaks the gimp's color selector.
13130
13131         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13132         allocation is always >0 in width and height, before sending the
13133         configure event; this is a *gross* hack to get the gimp back to work.
13134         
13135         * marked both cases with TODO-1.3
13136
13137 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13138
13139         * gtk/gtktext.c: Don't display wrap indicators when
13140         text is not editable and word wrap is on.
13141
13142 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13143
13144         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13145         option menus here as they are not derived from menu shell, assure that
13146         the option menu has a menu we can add items to.
13147
13148 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13149
13150         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13151         width/height to (gint) before calculations and check against < 0 to
13152         avoid guint wraparounds.
13153
13154 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13155
13156         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13157         width and height is never zero. sanity check both dimensions against
13158         32767 and issue a warning if the allocation is greater than that.
13159
13160 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13161
13162         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13163         to g_main_pending() as well.
13164
13165 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13166
13167         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13168         call to g_main_iteration() - since that will regrab
13169         GTK+ lock to process events.
13170
13171 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gtk/gtkwindow.c
13174         - Regularize with the rest of GTK+ by making widget->requisition
13175           not reflect the set_usize()
13176         - Always recompute geometry hints, then check if they
13177           changed before sending them to the X server. The
13178           previous checks for changes would fail in a number
13179           of circumstances. 
13180
13181 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13182
13183         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13184
13185 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13186
13187         * gtk/gtkdnd.c:
13188         - Code cleanups
13189         - Instantaneously update on modifier key presses
13190         - Allow cancellation of the drag with Escape.
13191
13192 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13193
13194         * gtk/testgtk.c (create_handle_box): Set the policy
13195         to auto_shrink - otherwise the appearance is rather
13196         strange when flipping between horizontal and vertical.
13197
13198 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13199
13200         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13201         (gtk_window_set_default_size): don't change a value if it's < 0.
13202         queue a resize.
13203
13204 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13205
13206         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13207
13208 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13209
13210         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13211         add an extra "/" when concating "/" + filename.
13212         (From Matt Grossman <mattg@oz.net>)
13213
13214 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13215
13216         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13217         for fg_gc if we set it for drawing pixmap.
13218
13219 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13220
13221         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13222         
13223         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13224         already set, call old engine's destroy function and
13225         unref the old engine.
13226
13227 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13228
13229         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13230
13231 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13232
13233         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13234
13235 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13236
13237         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13238         expand behaviour changed.
13239
13240         * gtk/gtklabel.c (gtk_label_set_pattern):
13241         (gtk_label_set_justify):
13242         (gtk_label_set_line_wrap):
13243         don't bother invoking queue_clear, the reallocation does
13244         that for us, always free_words so the upcoming resize will
13245         relayout the label's contents.
13246
13247 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13248
13249         * applied argument implementation patches from Elena Devdariani
13250         <elena@cogent.ca>.
13251
13252         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13253         ::space_style, ::relief
13254         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13255         * gtk/gtkpreview.c: ::expand
13256         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13257         * gtk/gtknotebook.c: ::homogeneous
13258         * gtk/gtklabel.c: ::wrap
13259         * gtk/gtklist.c: ::selection_mode
13260         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13261         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13262         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13263         * gtk/gtkclist.c: ::sort_type
13264         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13265         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13266
13267 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13268
13269         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13270         comment.
13271
13272 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13273
13274         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13275         counting right when we have to attach a new style
13276         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13277
13278         * gtk/gtkstyle.c: Documented the refcounting
13279         peculularities of gtk_style_attach.
13280
13281 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13282
13283         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13284         window types.
13285
13286         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13287         of GTK_TOPLEVEL for creating the window.
13288
13289 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13290
13291         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13292         the last argument (reported by Per Winkvist).
13293         
13294 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13295
13296         Fixes for invisible XOR lines (Frank Loemker
13297         <floemker@TechFak.Uni-Bielefeld.DE>)
13298         
13299         * gtk/gtkclist.c (gtk_clist_realize): Always use
13300         a non-zero pixel for GDK_XOR.
13301
13302         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13303         Use GDK_INVERT instead of GDK_XOR.
13304
13305 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13306
13307         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13308         signals if h/voffsets differ from adjustment values.
13309         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13310
13311 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13312
13313         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13314         ::selection-done emissions up to the topmost menu shell.
13315
13316 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13317
13318         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13319         the user data on the window before destroying it.
13320
13321         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13322         unrealize handler to take care of destroying 
13323         notebook->panel properly. 
13324         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13325
13326         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13327         of g_new and g_realloc to stop memory leak. (Actually,
13328         we could just use g_realloc(), but I'm not 100% sure
13329         that is portable).
13330         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13331
13332 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13333
13334         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13335
13336         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13337         for fontsets.
13338
13339         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13340         with bin/button confusion.
13341
13342 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13343
13344         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13345         and show how preselection of radio items is done.
13346
13347 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13348
13349         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13350         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13351         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13352         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13353         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13354         * gtk/gtktable.c (gtk_table_attach): 
13355         * gtk/gtklist.c (gtk_list_insert_items): 
13356         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13357         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13358         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13359         * gtk/gtkbin.c (gtk_bin_add): 
13360         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13361         * gtk/gtkfixed.c (gtk_fixed_put): 
13362         * gtk/gtklayout.c (gtk_layout_put):
13363         general fixups to container_add logic. always realize child if
13364         child->parent is realized, only map the child and queue a resize
13365         if child and child->parent are both visible.
13366
13367 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13368
13369         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13370         instead of gtk_container_foreach to walk and unrealize children, so
13371         composite children get also unrealized.
13372         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13373         (gtk_widget_map): assert that the widget is visible (basic constrain).
13374         (gtk_widget_real_map): assert that the widget is realized (basic
13375         constrain).
13376
13377 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13378
13379         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13380
13381 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13382
13383         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13384         file for iso-8859-2 locales.
13385
13386         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13387
13388 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13389
13390         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13391          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13392          Remove some suspicious and useless lines. 
13393
13394 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13395
13396         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13397         width,height = 0, 0 to mean - here to edge of window,
13398         instead of -1, -1, since the former is all we support.
13399
13400 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13401
13402         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13403         when removing from quit_functions list.
13404
13405 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13406
13407         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13408
13409 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13410
13411         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13412          When redrawing characters on non-visible entry, use appropriate
13413          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13414
13415 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13416
13417         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13418         from drag coordinates.
13419         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13420         use drag_dest_cell.
13421
13422         * gtk/gtktree (drag_dest_cell)
13423         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13424         (Bug #1129)
13425
13426 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13427
13428         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13429         translate_* fields.
13430         (gtk_item_factory_finalize): invoke translate_notify independant from
13431         translate_data.
13432         (gtk_item_factory_set_translate_func): likewise.
13433         (gtk_item_factory_destroy): only remove ifactory pointer from those
13434         widgets that belong to us (stupid me).
13435
13436 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13437
13438         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13439         rc_style list when lookup succeeeds.
13440
13441 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13442
13443         * gtk/gtkctree.c (resync_selection): 
13444         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13445         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13446         bug.
13447
13448 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13449
13450         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13451         Add some missing GDK_THREADS_ENTER()/LEAVE around
13452         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13453
13454 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13455
13456         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13457         rather than emit_by_name.
13458
13459         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13460         on the widget across multiple signal emissions.
13461         (gtk_editable_delete_text): same here.
13462         (gtk_editable_class_init): set widget_class->activate_signal after
13463         editable_signals[ACTIVATE] has been created.
13464
13465 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13466
13467         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13468         position here prematurely -- we might not have the
13469         right ->min_position and ->max_position yet.
13470
13471 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13472
13473         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13474         Add error traps so if the other end of the connection
13475         dies, we survive.
13476
13477         * gtk/gtkselection.c (gtk_selection_notify): Clean
13478         up properly when selection property retrieval fails.
13479         
13480         * gtk/gtkselection.c (gtk_selection_request): Correctly
13481         reject SelectionRequest notifies where the handler
13482         returns no data.
13483
13484 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13485
13486         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13487         when we've previously highlighted.
13488
13489         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13490         emit two "drag_leave" signals for Motif drops.
13491
13492         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13493         back the correct status messages when dropping from
13494         Motif onto a proxy window that is rejecting the
13495         drop.
13496
13497 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13498
13499         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13500         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13501         to compare two argument values. added gtk_arg_to_valueloc() to set a
13502         variable from an arg through its location (pointer).
13503
13504         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13505         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13506         as gfloat*, uchars are collected as guchar*, ints are collected as
13507         gint*, etc...
13508
13509 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13510
13511         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13512         Include <string.h> instead of <strings.h>.
13513
13514         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13515         (actually, a lot more duplicate includes occur if
13516          you trace through the sequence of #include's)
13517         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13518         
13519 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13520
13521         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13522         gtk-a-higuti-990322-[0-3]
13523
13524         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13525         that was causing -DX_LOCALE not to work.
13526
13527         * gtk/gtkrc.c (gtk_rc_init):
13528         X_LOCALE will never have LC_MESSAGES defined
13529
13530 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13531
13532         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13533         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13534
13535         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13536         left/right as well (gtk-michael-980726-0.patch.gz).
13537
13538         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13539         for pointer values, use gchar instead of char. fixed uline allocation
13540         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13541         chunks instead of G_ALLOC_ONLY.
13542         (gtk_label_size_request): always alter requisition as passed and leave
13543         widget->requisition alone.
13544         (gtk_label_set_text): allow NULL strings.
13545         (gtk_label_new): likewise.
13546
13547 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13548
13549         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13550
13551 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13552
13553         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13554         *and* mapped (i.e. drawable).
13555         (gtk_bin_expose): only send exposes to drawable children.
13556
13557         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13558         (gtk_box_expose): only send exposes to drawable children.
13559
13560         * gtk/gtkhscale.c (gtk_hscale_draw): 
13561         * gtk/gtkvscale.c (gtk_vscale_draw):
13562         hm, this is an ugly one. we first compute the size of our trough area
13563         here (window relative) and then check intersection with the draw_area
13564         which is parent relative because we're a NO_WINDOW widget, so we need
13565         to offset the trough area by allocation.x and allocation.y before the
13566         check. (this must not be done for the background area though, since
13567         that's already computed parent relative).
13568
13569 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13570
13571         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13572         unrealize title buttons.
13573
13574 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13575
13576         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13577         (gtk_clist_column_title_active): 
13578         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13579
13580         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13581         zero initialize event, removed superfluous gdk_window_get_pointer call
13582
13583         * gtk/gtklist.c (gtk_list_vertical_timeout)
13584         (gtk_list_horizontal_timeout): removed superfluous
13585         gdk_window_get_pointer call
13586
13587 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13588
13589         * plugging problems reported by "Bruce Mitchener, Jr."
13590         <bruce@puremagic.com> due to a purify session.
13591
13592         * gtk/gtkstyle.c:
13593         (gtk_style_ref): 
13594         (gtk_style_unref): assert ref_count to be > 0.
13595
13596         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13597         the requisition.
13598         (gtk_clist_set_shift): likewise.
13599
13600         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13601         adjustments.
13602
13603         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13604         event before sending it and set send_event to TRUE (which needs to
13605         be done for *all* synthesized events).
13606         (gtk_list_vertical_timeout): likewise.
13607
13608         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13609         leaks.
13610
13611         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13612         to TRUE when synthesizing events.
13613
13614 [ *** end of merges from 1.2 *** ]      
13615         
13616 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13617
13618         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13619         (or copied from gdkconfig.h.win32 on Win32, sigh).
13620
13621         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13622
13623         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13624
13625         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13626
13627         * gdk/gdkconfig.h.win32: New file.
13628
13629         * gdk/win32/makefile.cygwin: Build just a static archive here.
13630
13631         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13632         for the DLL from the static archive built above.
13633
13634         * gdk/gdk.def: Moved here from the win32 subdirectory.
13635
13636         * gdk/win32/*: Adapt for the changed private struct organisation.
13637
13638         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13639
13640 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13641
13642         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13643         for wheel mice (buttons 4 and 5).
13644
13645 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13646
13647         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13648         drawables use just the pixel field in the foreground and
13649         background GdkColor of the GdkGC.
13650
13651         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13652         GdkColors containing uninitialized (red,green,blue) fields, and
13653         just the pixel field filled in, and furthermore in the
13654         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13655         It thus turns out that we really don't need to have the full
13656         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13657         it later to have just the pixel values.
13658
13659 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13660
13661         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13662
13663 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13664
13665         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13666         New question on GtkLabel background colors.
13667
13668         * docs/gtk_tut.sgml:
13669           - Correct the example code callback
13670             function definitions.
13671           - Update the gtkdial example code, from Frans van Schaik.
13672           - Update setselection.c to current API.
13673
13674         * examples/Makefile examples/*/*.c: Update to code
13675         listed in tutorial.
13676
13677 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13678
13679         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13680         subrange table (from the "Developing International Software for
13681         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13682         block... Get the loaded font's charset correctly.
13683
13684         (Note that this, and the other *-win32.c files, still really are
13685         the old ones, the win32 subdirectory is not ready for compilation
13686         yet after the reorg.)
13687
13688 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13689
13690         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13691         check.
13692
13693 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13694
13695         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13696         on results of XQueryDeviceState().
13697
13698 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13699
13700         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13701         we need to accesss only ->children. We need an accessor
13702         for the children.
13703
13704         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13705         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13706         to get rid of gdkx.h include.
13707         
13708         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13709         and random references to 'None'.
13710
13711         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13712         Get rid of unused #include <gdk/gdkx.h>
13713
13714         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13715         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13716         gdkconfig.h.
13717
13718 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13719
13720         * gdk/win32/gdkdraw.c
13721         * gdk/win32/gdkfont.c
13722         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13723         following yesterday's changes. (Unrelated to Owen's reorg.)
13724
13725 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13726
13727         * gdk/x11/gdkinput-gxi.c: Add missing include,
13728           fix GdkWindowPrivate => GdkDrawablePrivate.
13729
13730         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13731
13732         * gdk/x11/Makefile.am (xinput_sources): Add missing
13733         backslash to fix building with --with-xinput=none
13734
13735 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13736
13737         Move all X specific code into the x11/ directory.
13738         Aside from shuffling things around, did the following:
13739
13740        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13741          gdk_arg_context_* - a simple argument parsing system
13742          in the style of popt.
13743
13744        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13745          gdk/x11/gdkprivate-x11.h:
13746          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13747          add ->klass and ->klass_data fields. The klass_data
13748          field points to an auxilliary structure that is
13749          windowing system dependent.
13750
13751        * gdk/gdkfont.c: Make most of the measurement functions
13752          simply wrappers around gdk_text_extents().
13753
13754        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13755          _gdk_font_strlen() function that hides the weird
13756          behavior in gtk+-1.[02] where a string is interpreted
13757          differently for 8-bit and 16-bit fonts.
13758
13759        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13760          to store common code for synthesizing double/triple
13761          press events.
13762         
13763        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13764          Make all the function that modify an existing GC
13765          simply wrappers around gdk_gc_set_values().
13766          
13767        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13768          for throwing out later.
13769
13770        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13771          GdkImagePrivate and GdkColormapPrivate to have a
13772          windowing system dependent part (GdkFontPrivateX etc.)
13773          that "derives" from the system-independent part.
13774
13775        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13776          Got rid of the included-source-files for XInput in
13777          favor of automake conditionals. (Which didn't exist
13778          when XInput support was originally added.)
13779
13780        * gdk/gdkrgb.c: Remove the visual id from the debugging
13781          statements since that is X11 specific; print out
13782          type/depth info instead.
13783          
13784
13785 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13786
13787         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13788         loading duplicates of hashed fonts.
13789
13790         * gdk/gdk.c (gdk_keysym_convert_case): rename
13791         gdk_XConvertCase to gdk_keysym_convert_case, allow
13792         results to be NULL in the GTK+ style.
13793
13794         * gdk/gdkcompat.h: Started compatibility header
13795         for renames.
13796
13797 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13798
13799         * gdk/win32/gdkprivate.h: New font private structures, related to
13800         fontsets.
13801
13802         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13803         gdk_font_list_free(). On X11, will just be wrappers to
13804         XListFonts() and XFreeFontNames(). On Win32, the code previously
13805         in gtkfontsel.c is now here.
13806
13807         New function gdk_font_xlfd_create(). On X11 will get the FONT
13808         property of the font (for GDK_FONT_FONTs), or call
13809         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13810         builds a XLFD style name from the font information in the LOGFONT
13811         struct(s).
13812
13813         New function gdk_font_xlfd_free(), which correspondingly frees the
13814         string returned by gdk_font_xlfd_create().
13815
13816         Implement fontsets on Win32. Add a function that iterates over a
13817         wide char string and calls a callback function for each substring
13818         of wide chars from the same Unicode subrange (and thus probably
13819         available in the same real font).
13820
13821         Improve the XLFD emulation a bit.
13822
13823         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
13824
13825         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
13826         Beta3, WM_IME_CHAR messages don't seem to contain the composed
13827         multi-byte char as with the Active IMM on Win9x. Oh well, handle
13828         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
13829         ImmGetCompositionStringW() to get the composed Unicode chars.
13830
13831         * gdk/win32/gdkgc.c
13832         * gdk/win32/gdkdraw.c: Changes needed because of the font private
13833         struct changes.
13834
13835         * gdk/win32/gdk.def: Add the new functions.
13836
13837 1999-11-04  Tor Lillqvist  <tml@iki.fi>
13838
13839         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
13840         get the Platform SDK to get <dimm.h>.
13841
13842         * gdk/win32/gdkevents.c: More event handling fixes and
13843         simplification. Never generate motion events with is_hint true. We
13844         used to do that on bogus grounds earlier. Windows sends
13845         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13846         moved, ignore these.
13847
13848         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13849
13850         * gdk/win32/gdkglobals.c
13851         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13852         the TrackMouseEvent function, and use it.
13853
13854         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13855         char before calling WideCharToMultiByte in order to get a string
13856         for the window title.
13857
13858         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13859
13860         * gdk/win32/gdk.def: Remove obsolete functions.
13861
13862         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13863         /nodefaultlib and /defaultlib switches.
13864
13865         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13866
13867 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13868
13869         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13870         EuroSign).
13871
13872         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13873         same type as GdkWChar, especially on Win32.
13874
13875         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13876
13877         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13878         before passing to Windows GDI for drawing etc. Convert to the
13879         system default codepage before passing to Windows as window
13880         titles.
13881
13882         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13883         support changing input locale on the fly.
13884
13885         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13886         on-the-fly changes. Convert incoming characters from the current
13887         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13888         on the current input language. Use keysym<->Unicode mapping tables
13889         and functions borrowed from xterm sources.
13890
13891         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13892         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13893         Manager) if available. IMEs and the Active IMM are available under
13894         the disguise of Chinese, Korean and Japanese support for IE and
13895         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13896         support is present in all editions (as long as you install it).
13897
13898         Call DispatchMessage from gdk_events_queue() (and thus
13899         gdk_WindowProc()), instead of duplicating the code in
13900         gdk_WindowProc().
13901
13902         Reworked the grab handling and propagation code, factored out
13903         duplicated code snippets into separate functions. Other cleanups,
13904         too.
13905
13906         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13907         the <dimm.h> header describing the Active IMM.
13908
13909         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13910         just do the same as for "single" fonts.
13911
13912         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13913         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13914         the new keysyms from gdkkeysyms.h.
13915
13916         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13917         fontset, so that gtkentry uses wide characters.
13918
13919         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13920         GTk+'s system directory "gtk+", not "gtk".
13921
13922 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13923
13924         * docs/gtkfaq.sgml: FAQ update
13925
13926 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13927
13928         * gdk/win32/gdkprivate.h: Add more font private data.
13929
13930         * gdk/win32/gdkfont.c
13931         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13932         fonts and strings. Now works much better. You still have to
13933         have a correct font selected, though. No fontset emulation yet.
13934
13935 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13936
13937         * gtk/maketypes.awk: Use G_OS_WIN32.
13938
13939         * gtk/gtk.def: Add some missing entry points. Also some non-public
13940         ones, but PyGTK porter claims to need them.
13941
13942         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13943         built-in type generation.
13944
13945 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13946
13947         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13948         GDK_FONT_FONT fonts (which is all we have for now, we don't
13949         emulate fontsets). The X11 version uses plain XDrawString in that
13950         case, too. The string passed to gdk_draw_text_wc seems to be in
13951         fact (at least, when used by gtkentry and gtktext) either in a
13952         single-byte charset, or a DBCS. Not Unicode.
13953
13954         This fixes the problem in gtkfontsel, where even if you had
13955         selected a font with a non-Latin1 charset (windows-greek, for
13956         instance), the preview still used Latin-1 glyphs.
13957
13958         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13959         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13960         (gdk_font_load): Recognize the demibold etc weights, even if we
13961         don't have the corresponding constants in the headers.
13962         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13963         version. Should save font resources a bit, when we don't have
13964         multiple HFONTs for the same font.
13965
13966         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13967         version.
13968
13969 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13970
13971         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13972         X values
13973
13974 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13975
13976         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13977         layout support (as mentioned on
13978         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13979
13980 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13981
13982         * gtk/fnmatch.c
13983         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13984
13985 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13986
13987         * configure.in (ALL_LINGUAS): Added Galician (gl)
13988
13989 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13990
13991         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13992
13993         * gdk/win32/gdkcompat.c: New file, actually provide an
13994         implementation for the deprecated functions. (Just temporarily.)
13995
13996         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13997
13998         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13999
14000         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14001
14002 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14003
14004         * configure.in: Added "uk" to ALL_LINGUAS.
14005         
14006 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14007
14008         * configure.in: correct checking for BeOS check
14009
14010         * gdk/gdktypes.h
14011         * gtk/fnmatch.c
14012         * gtk/gtkfilesel.c
14013         * gtk/gtkitemfactory.c
14014         * gtk/gtkmain.[ch]
14015         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14016
14017 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14018
14019         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14020         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14021         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14022         by Bulgarian). 
14023
14024 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14025
14026         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14027         Fix a reference to window_private->destroyed.   
14028
14029         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14030         (ugly) setting of an internal GdkWindow member to use
14031         a _slightly_ cleaner macro.
14032
14033         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14034         GdkDrawablePrivate and GdkWindowPrivate.
14035         Add extra macros for accessing GDK_DRAWABLE_ components.
14036
14037         * *.[ch]: Massive adjustments for the above, use the
14038         new macros in a lot of places.
14039
14040 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14041
14042         * gdk/gdktypes.h: Make GdkDrawable the base type,
14043         not GdkWindow.
14044
14045 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14046
14047         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14048
14049 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14050
14051         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14052
14053 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14054
14055         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14056         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14057
14058         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14059
14060         * docs/gtk-config.1: Now autogenerated.
14061         * docs/Changes-1.4.txt: started
14062         
14063 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14064
14065         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14066         to #ifdef also here.
14067
14068         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14069         Owen did to the X11 backend.
14070
14071         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14072         ScrollWindowEx when blitting inside a window, it can't be correct
14073         in the general case.
14074
14075         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14076         WM_GETMINMAXINFO is easier.
14077
14078         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14079         depth equal to the bitspixel value, not the visual's depth.
14080
14081         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14082         to 24 even if the bitspixel value is 32.
14083
14084         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14085         need to check for depth==32 when bpp==32, depth will always be 24.
14086
14087 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14088
14089         * docs/Changes-1.4.txt: Started
14090         
14091         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14092
14093         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14094         
14095         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14096         into C file.
14097         
14098         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14099         header to gdkinputprivate.h.
14100
14101         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14102         unused since before 1.2.
14103
14104 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14105
14106         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14107         expand possible hex escapes in the font family (put there by
14108         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14109         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14110         On Win32, add hex escapes here, too.
14111
14112 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14113
14114         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14115         to #ifdef GDK_WINDOWING_X11.
14116
14117 [ Merges from gtk-1-2 ]
14118
14119 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14120
14121         * configure.in: fixed "GNU Make" check to pass with new make version
14122         3.77.95.
14123
14124 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14125
14126         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14127         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14128         AM_PATH_GTK() macros don't get confused by the -pre1.
14129
14130 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14131
14132         * configure.in (REBUILD): Change check for perl5
14133           to check explicitely for v >= 5.002. (5.001
14134           does not work with our scripts.)
14135
14136 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14137
14138         * configure.in: evaluate $PERL for the perl version check. added
14139         --disable-rebuilds to give the user an option to completely disable
14140         any source autogeneration rules.
14141
14142 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14143
14144         * configure.in: evaluate $ac_make when checking for GNU Make.
14145
14146 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14147
14148         * docs/Makefile.am: added generation.txt.
14149
14150         * Makefile.am: require automake 1.4, build README from README.in and
14151         INSTALL from INSTALL.in in dist-hook.
14152         
14153         * README.in:
14154         * INSTALL.in: new files to autogenerate README and INSTALL from.
14155
14156         * configure.in: figure whether we have GNU Make
14157
14158         * docs/generation.txt: minor additions/corrections.
14159
14160 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14161
14162         * docs/gtkfaq.sgml: FAQ Update
14163
14164 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14165         
14166         * configure.in: Fix autoconf warnings about cross compilation by
14167         trying to provide sane defaults for AC_TRY_RUN.
14168
14169 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14170
14171         * ltconfig
14172         * ltmain.sh: upgrade to libtool 1.3.3
14173
14174 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14175
14176         * INSTALL: Indicate that the --with-glib= configure
14177         time flag is unsupported.
14178
14179 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14180
14181         * docs/generation.txt: Added a file that gives
14182         documenation about the autogeneration process for
14183         various autogenerated files.
14184         
14185 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14186
14187         * configure.in (LIBS): Look for libgmodule in the
14188         right location.
14189
14190 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14191
14192         * docs/gtk_tut.sgml: Removed references to
14193         code examples in my directory on gtk.org as
14194         they should all be in the tutorial now.
14195
14196         * docs/gtk_tut.sgml: Added sources for dial-test
14197         and scribble-xinput programs that were previously
14198         missing.
14199
14200 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14201
14202         * TODO: Added entry about menu keyboard navigation, removed
14203         some finished items.
14204
14205 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14206
14207         * acinclude.m4: Standardize on func_dgettext
14208         not func_gettext, so that the checks for dgettext
14209         actually are paid attention to.
14210
14211 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14212
14213         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14214         directly, rather than repeating the checks for
14215         gettext.
14216
14217         * INSTALL: Added information about gettext and
14218         NLS support.
14219
14220         * acinclude.m4 (LIBM): Check for dgettext, not
14221         just gettext. This should hopefully fix things wrt
14222         systems with old versions of GNU gettext installed.
14223
14224 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14225
14226         * configure.in (LIBS): Look for libgmodule in the
14227         right location.
14228
14229 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14230
14231         * autogen.sh: add --enable-maintainer-mode
14232
14233         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14234
14235 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14236
14237         * docs/gtk-config.1.in:
14238           docs/Makefile.am:
14239           configure.in: gtk-config is now generated.
14240
14241         * docs/gtk-config.1: Removed, now generated.
14242
14243 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14244
14245         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14246         handle CreateNotify itself, still put out a debuging message for
14247         --gdk-debug=events. made the ReparentNotify debugging message more
14248         verbose.
14249         wrap xcoords translation for ConfigureEvents into an error trap,
14250         a destroy event may already be pending, and in that case, the
14251         actuall coordinate values are not at all critical.
14252
14253 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14254
14255         * gdk/gdkcc.c: Stop leaking the color_hash all over
14256         the place. Simplify and improve the logic.
14257
14258 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14259
14260         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14261         for prototypes and function implementations consistent (reported
14262         by Tomas Ogren).
14263
14264 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14265
14266         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14267         send_event set in debugging output.
14268         (gdk_compress_exposures): default initialize the event so we don't
14269         operate on bogus values (namely send_event).
14270
14271 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14272
14273         * gdk/gdkwindow.c: When we receive an unexpected
14274         destroy notify on one of our windows, don't just
14275         warn about it, also mark our windows as destroyed.
14276
14277 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14278
14279         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14280           name => font and name => fontset hashes. The 
14281           name => fontset hash is a _big_ win since we
14282           weren't previously caching fontsets at all and loading
14283           fontsets is expensive. The name => font hash
14284           is less of a win, but it does save us from doing
14285           repeated XQueryFont calls on the same font.
14286
14287         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14288           list so we can remove font/fontset from hash.
14289
14290 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14291
14292         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14293           and slightly confusing test. [ XInternAtom (,,TRUE)
14294           will never return None ].
14295
14296 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14297
14298         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14299           gdk/gdkwindow.c (gdk_window_set_hints):
14300
14301         Don't omit setting the properties if flags == 0 -
14302         there may be an existing set of properties there
14303         already. (Very old bug. Would it be better to
14304         delete the property instead?)
14305
14306         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14307           spelling error in comment.
14308
14309 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14310
14311         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14312           to avoid stomping over gdk_error_warnings.
14313
14314         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14315           as (bits_per_pixel + 7) / 8. This gives the same
14316           result as before for multiples of 8, but actually
14317           a "reasonable" value for 1bit or 4bit displays.
14318
14319 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14320
14321         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14322         GNU Make.
14323
14324 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14325
14326         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14327         discarding configure events.
14328
14329 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14330
14331         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14332         refcount is greater than zero.
14333
14334         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14335
14336         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14337
14338         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14339
14340         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14341
14342 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14343
14344         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14345         that format 32 => sizeof(item) == 4. It really is
14346         sizeof(long).
14347
14348 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14349
14350         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14351         core dump at all on X IO errors, only core dump
14352         if --enable-debug for X errors.
14353
14354 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14355
14356         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14357         unknown window:" message. disabled ConfigureNotify discarding code,
14358         because it led to events being processed out of order.
14359
14360 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14361
14362         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14363
14364         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14365         we export this function, supress error warnings and don't reset the
14366         error code in the first half of this function.
14367
14368         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14369         code (instead of just -1) so gdk_error_trap_pop() reveals something
14370         actually informative about the error that happened.
14371
14372         * gdk/*.c:
14373         don't rely on gdk_error_code being -1 if an error occoured, but just
14374         gdk_error_code != 0.
14375
14376 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14377
14378         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14379         pointer *before* invoking the filter function, so we at least don't
14380         crash if a filter is removed that is currently executed. window filters
14381         *really* need to be made truely reentrant at some point.
14382
14383 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14384
14385         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14386         PropertyNotify debug messages.
14387
14388 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14389         
14390         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14391         
14392         * gdk/gdkim.c: Fix cut-and-paste errors for 
14393         x/y and PreeditAttributes/StatusAttributes.
14394
14395 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14396
14397         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14398         G_MAXINT to 2^16 to alleviate overflow problems in
14399         various window managers.
14400
14401 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14402
14403         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14404         for fontsets.
14405
14406 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14407
14408         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14409         Initialize size_hints.x and size_hints.y because kwm
14410         brokenly pays attention to them.
14411         (Bug #1181 -  Lars Heete <hel@admin.de>)
14412
14413 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14414
14415         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14416         return value of gdk_list_visuals(). 
14417         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14418
14419 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14420
14421         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14422         XSetIMValues to (void *) when comparing to NULL, to workaround
14423         the problem of some compilers barfing since older X headers don't
14424         have the prototype for it.
14425
14426 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14427
14428         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14429         for pseudocolor where colormap->colors was double
14430         allocated.
14431
14432         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14433         color value in the hash table with the pixel filled
14434         in so when we do later hash table lookups, the color
14435         value is correct.
14436         
14437 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14438
14439         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14440         making the call
14441
14442 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14443
14444         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14445         pointed out by Morten Welinder <terra@diku.dk>.
14446
14447 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14448
14449         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14450           default filter from the list
14451
14452 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14453
14454         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14455           default filter from the list
14456
14457 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14458
14459         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14460
14461         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14462         g_strdup_printf instead of calcing the length separately
14463
14464 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14465
14466         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14467         that we don't do in many other places. (Fixing duplicate 
14468         #include of config.h)
14469
14470         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14471         Otherwise, #ifndef XINPUT_NONE check in the latter
14472         doesn't work. (Bug #546)
14473
14474 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14475
14476         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14477         "None" case insensitive.
14478
14479 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14480
14481         * gdk/gdkselection.c: 
14482         Add error traps so if the other end of the connection
14483         dies, we survive.
14484
14485 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14486
14487         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14488         dest_xid field into two fields - one for the window
14489         to send in messages, one to indicate the last looked
14490         up window for caching purposes. This is needed, so
14491         that Leave messages get the correct window.
14492
14493 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14494
14495         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14496         Fix warning created by people mucking around
14497         with the gsource API.
14498
14499         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14500         Change mapping between GIOCondition and GdkInputCondition
14501         to match the way the Linux kernel does it. This should
14502         fix problems where closed pipes were no longer signalling
14503         GDK_INPUT_READ on systems with a native poll().
14504
14505 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14506
14507         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14508         explicitly for the string "None" - it is in the XPM
14509         spec and some servers treat unknown colors in odd ways
14510         (like asking the user!)
14511
14512 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14513
14514         * gdk/gdkevents.c: made "->" into a "." of previous change so
14515         it compiles
14516
14517 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14518
14519         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14520         window field of the event structure before calling
14521         user filters.
14522
14523 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14524
14525         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14526         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14527
14528 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14529
14530         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14531         intermediate text property - prevents major memory
14532         leak when gdk_use_mb.
14533         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14534
14535 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14536
14537         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14538         gtk-a-higuti-990322-[0-3]
14539
14540         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14541         sizeof(wchar_t) != sizeof (GdkWChar)
14542
14543         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14544         that was causing -DX_LOCALE not to work.
14545
14546         * gtk/gtkrc.c (gtk_rc_init):
14547         X_LOCALE will never have LC_MESSAGES defined
14548
14549         * gdk/gdk.c (gdk_init_check):
14550         Remove --xim-preedit and --xim-status from argv properly.
14551
14552         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14553         that the client window is present on the X server
14554         before we pass it to the input method.
14555
14556 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14557
14558         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14559         if --display is specified on the command line, than
14560         the drag window will not be created on that display.
14561         
14562 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14563
14564         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14565         lookups with only_if_exists == TRUE were inserting
14566         bogus values into the atom cache.
14567
14568 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14569
14570         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14571         then reset it to NULL.
14572
14573         * gdk/gdkcolor.c:
14574         (gdk_colors_free): 
14575         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14576         key for g_hash_table_remove() in both functions, this prevents us
14577         from accessing possibly uninitialized portions of a GdkColor structure
14578         where we are only interested in its pixel value.
14579
14580 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14581
14582         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14583         font hash table, if we have a GdkFontPrivate entry for this font
14584         already, simply increment its reference count, provided by Olaf Dietsche
14585         <olaf.dietsche+list.gtk@netcologne.de>.
14586
14587 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14588
14589         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14590         just to be sure.
14591
14592         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14593         unused variables, leftovers from the X11 version.
14594
14595         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14596
14597         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14598         downcase fields on X11.
14599
14600 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14601         
14602         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14603         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14604
14605 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14606
14607         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14608
14609         * gtk/makefile.msc: Correct path to libintl.
14610
14611         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14612         use of gint vs. int, and gint vs. gboolean in headers and
14613         definitions. Use GtkType for the *_get_type functions. Note that
14614         these changes preserve binary compatibility.
14615
14616         * gdk/gdk.c
14617         * gdk/win32/gdk.c
14618         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14619
14620         * gtk/gtkmain.c
14621         * gtk/gtkclist.c
14622         * gtk/gtkmenufactory.c
14623         * gtk/gtknotebook.c
14624         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14625         vs. gboolean.
14626
14627         * gtk/gtkcolorsel.[ch]
14628         * gtk/gtkcombo.[ch]
14629         * gtk/gtkdrawingarea.[ch]
14630         * gtk/gtkgamma.[ch]
14631         * gtk/gtkhandlebox.[ch]
14632         * gtk/gtkhpaned.[ch]
14633         * gtk/gtkhruler.[ch]
14634         * gtk/gtkplug.[ch]
14635         * gtk/gtkpreview.[ch]
14636         * gtk/gtkruler.[ch]
14637         * gtk/gtksocket.[ch]
14638         * gtk/gtkstatusbar.[ch]
14639         * gtk/gtktoolbar.[ch]
14640         * gtk/gtkvbbox.[ch]
14641         * gtk/gtkvpaned.[ch]
14642         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14643         functions.
14644
14645         * gtk/gtkgamma.h: Fix bug, missing () in call of
14646         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14647
14648 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14649
14650         * gdk/gdkcolor.c (gdk_colormap_new)
14651         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14652         colormap->colors was allocated twice.
14653
14654         * gdk/win32/gdk.c: Remove some unused stuff.
14655
14656         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14657         colormap.
14658
14659         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14660         * gtk/gtklabel.h (gtk_label_get_type)
14661         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14662         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14663         in a couple of places, not guint.
14664
14665 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14666
14667         * configure.in,po/et.po: added Estonian language file
14668
14669 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14670
14671         * configure.in,po/da.po: added Danish file
14672
14673 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14674
14675         * docs/gtkfaq.sgml: Minor FAQ Update
14676
14677 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14678
14679         * docs/gtkfaq.sgml: FAQ update
14680
14681 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14682
14683         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14684         way to get window contents continually refreshed while resizing. I
14685         didn't like the effects myself, so it's not on by default.
14686
14687         * gdk/win32/gdkprivate.h: New flag variable
14688         gdk_event_func_from_window_proc, FALSE by default.
14689
14690         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14691         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14692         are passed --gdk-event-func-from-window-proc.
14693
14694         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14695         and we have am event_func, call it instead of enqueing the event.
14696
14697 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14698
14699         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14700         Kelley: Set expose_count in GdkEventExposes correctly.
14701
14702         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14703         MULTIPLE_WINDOW_CLASSES).
14704
14705         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14706         for bug in NT, apparently NT *does* draw the end pixel, too, in
14707         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14708
14709 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14710
14711         Improvements by Hans Breuer: 
14712
14713         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14714
14715         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14716         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14717         window contents while dragging" is turned on. Allocate at least
14718         one unique class for every GdkWindowType. If support for single
14719         window-specific icons is ever needed (eg. Dialog specific), every
14720         such window should get its own class.
14721
14722 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14723
14724         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14725         error that caused crashes.
14726
14727 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14728
14729         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14730         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14731         bugs when for instance part of the window was outside the
14732         display. Thanks to Philippe Colantoni for finding and fixing this.
14733
14734 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14735
14736         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14737         endpoint calculations which were totally wrong. (A little RTFMing
14738         helps a lot ;-)
14739
14740         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14741         from a separate directory, not from gettext, because of licensing
14742         issues (we want to use the LGPL version).
14743
14744         * README.win32: Mention the intl from glibc vs from gettext issue.
14745
14746 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14747
14748         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14749         in the key event handling: Now AltGr chars work again. Also,
14750         now Alt-digits are passed up as well as Control-digits.
14751         Pass keypad plus and minus as normal plus and minus.
14752
14753 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14754
14755         * docs/gtkfaq.sgml: FAQ Update
14756
14757 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14758
14759         * README.win32
14760         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14761         the Wintab SDK.
14762
14763         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14764         OK, but getting closer. Guard against bogus tilt data from Wacom
14765         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14766         enable easier building without Wintab.
14767
14768         * gdk/win32/gdkinput.h
14769         * gdk/win32/gdkevents.c 
14770         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14771         
14772         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14773         code. As we have just one visual on Win32, no sense to have it in a
14774         table, and no need for the hash table.
14775
14776         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14777         better on white background.
14778
14779 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14780
14781         * README.win32: Update gcc build instructions. Mention gettext is
14782         GPL.
14783
14784         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14785         supported cursor size with GetSystemMetrics.
14786
14787         * gdk/win32/gdkfont.c
14788         * gtk/gtkfontsel.c: Guard against some font weight and charset
14789         symbols being undefined (in mingw32 headers).
14790
14791         * gdk/win32/makefile.cygwin
14792         * gtk/makefile.cygwin
14793         * gtk/gtkthemes.c: No longer need to have differently named
14794         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14795
14796 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14797
14798         * docs/gtkfaq.sgml: Long awaited FAQ update.
14799
14800 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14801
14802         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14803         it. Obscure bit manipulation needed.
14804
14805         * gdk/win32/gdkevents.c: Logging.
14806         
14807         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14808         style (file name include compiler name) for theme engines.
14809
14810 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14811
14812         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14813
14814         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14815         events. The key.string wasn't zero-terminated, still we strdup'ed
14816         it in gdk_event_copy(). Synthesize crossing events for button
14817         events before possible propagation.
14818
14819         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
14820
14821         * gdk/win32/makefile.cygwin
14822         * gtk/makefile.cygwin: Use new DLL naming style for the
14823         GCC-compiled ones.
14824
14825         * gdk/win32/makefile.msc
14826         * gtk/makefile.msc: Cosmetics mostly.
14827
14828         * gtk/gtk.def: Add missing entry points.
14829
14830         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
14831
14832 1999-07-09  Tor Lillqvist  <tml@iki.fi>
14833
14834         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
14835         or height is zero. Don't print a warning if Pie or Arc fails, they
14836         always fail (?) for very narrow ellipses.
14837
14838         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
14839         the part or the destination window corresponding to source area
14840         outside of the source drawable's boundary.
14841
14842         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14843         anything if less than two points.
14844
14845         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14846         return NULL. Gtk cut-and-paste inside a single program works
14847         better this way. (It always gets the clipboard contents from
14848         Windows, not from its own copy, which is cleared anyway. I can't
14849         say I fully understand what happens... Emulating the X selection
14850         and property stuff is a bit of a mess.)
14851
14852         * gdk/win32/gdkevents.c
14853         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14854
14855         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14856         that never got deleted). Revamp gdk_region_shrink.
14857
14858         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14859         after use.
14860
14861         * gtk/gtk.def: Add some missing entry points.
14862
14863         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14864         component.
14865
14866 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14867
14868         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14869         Control-digits specially.
14870
14871 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14872
14873         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14874
14875 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14876
14877         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14878         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14879         finding this.)
14880
14881 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14882
14883         * gtk+.spec.in: Corrected some typos in files section.
14884         
14885 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14886
14887         * README.win32: Mention using GNU gettext.
14888         * config.h.win32: Enable NLS stuff.
14889         * gtk/makefile.msc: Use GNU gettext.
14890         * gdk/win32/gdkdnd.c: Minor header reorg.
14891         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14892         cosmetics.
14893         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14894         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14895
14896 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14897
14898         * acinclude.m4
14899         * config.guess
14900         * config.status
14901         * ltconfig
14902         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14903
14904 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14905
14906         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14907         SafeAdjustWindowRectEx. Don't override all calls to
14908         AdjustWindowRectEx by it, but use it only in two places: When
14909         creating a new top-level window and when moving a top-level
14910         window.
14911
14912         Use screen coordinate rectangle, not client rectangle, in
14913         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14914         when we try to place a window so that the decoration (mainly,
14915         title bar) isn't visible.
14916
14917         These changes fix the bug that showed up for instance as the
14918         GIMP's saved top-level windows moving right and down (by an amount
14919         equal to the window decoration) for each session. This bug showed
14920         up also in testgtk's "Saved Position".
14921
14922         gdk_window_resize also redone a bit.
14923
14924 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14925
14926         * gtk/testgtkrc: Add (commented out) Windows-style theme
14927         include line.
14928
14929         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14930
14931 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14932
14933         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14934         gdkx.h to a gdk subdirectory, so that applications can include
14935         these with <gdk/*.h> without trouble.
14936
14937         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14938         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14939         have their bitmap destroyed.
14940
14941         * gdk/win32/gdk.def: Add gdk_root_parent.
14942
14943 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14944
14945         * configure.in
14946           gtk-config.in
14947           ltconfig
14948           ltmain.sh     
14949           gtk/Makefile.am: changes to compile nicely (with xlib) 
14950           on BeOS
14951
14952 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14953
14954         * acinclude.m4
14955         * config.guess
14956         * config.sub
14957         * ltconfig
14958         * ltmain.sh: upgrade to libtool 1.3
14959
14960 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14961
14962         * gtk/gtkclist.c:
14963         * gtk/gtkctree.c: merges from gtk-1-2
14964
14965 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14966
14967         Support added for building using a GNU toolchain on Win32,
14968         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14969
14970         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14971         * config.h.win32: Changes for gcc.
14972         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14973         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14974         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14975         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14976         Protect shl stuff unavaiilable with mingw32 headers.
14977         * gdk/win32/gdkevents.c: Fix typo.
14978         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14979         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14980         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14981         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14982         the mingw32 headers.
14983         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14984         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14985         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14986         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14987         Test for NATIVE_WIN32, not _MSC_VER.
14988         * gtk/gtkmain.c: No use warning about developer version on Win32,
14989         there aren't any non-developer versions anyhow.
14990         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14991         * gtk/makefile.msc: Use pthread from another directory. Minor other
14992         changes. 
14993
14994 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14995
14996         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14997           default filter from the list
14998
14999 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15000
15001         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15002          when gtk_widget_grab_default() is called for a widget that
15003          is not within a GtkWindow.
15004
15005 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15006
15007         * docs/gtk_tut.sgml, examples/clist.c: use a
15008           scrolled window in the clist example. Minor
15009           tutorial fixes.
15010
15011 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15012
15013         * docs/gtk_tut.sgml: Style check from David King
15014           <dking@youvegotmail.net>
15015
15016 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15017
15018         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15019         compile with unknown value of GDK_WINDOWING
15020
15021 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15022
15023         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15024         after the rule is fired.
15025         (install-exec-local): Install gdkconfig.h only if the contents are
15026         different from the currently installed gdkconfig.h.
15027
15028 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15029
15030         * gdk/Makefile.am (configexecincludedir): Rename from 
15031         configincludedir so that gdkconfig.h will be installed 
15032         as part of `make install-exec'. 
15033
15034 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15035
15036         * acinclude.m4
15037         * config.guess
15038         * config.sub
15039         * ltconfig
15040         * ltmain.sh: upgrade to libtool 1.2f
15041
15042         * autogen.sh: libtool is not required to autogen gtk+
15043
15044         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15045         needed)
15046
15047 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15048
15049         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15050         declaring gdk variables exported/imported from the DLL. New image
15051         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15052         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15053         GDK_DRAG_PROTO_OLE2.
15054
15055         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15056         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15057         declared only for the Win32 version, but could be in the X11
15058         version as well. (Needed for a Xlib-less gdk_imlib.)
15059         gdk_color_hash should have only one parameter. Declare
15060         gdk_threads_mutex with GDKVAR.
15061         
15062         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15063         just one parameter.
15064
15065         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15066         per pixel, not bits.
15067
15068         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15069         Fetch bpp (which means bits-per-pixel here) from another place on
15070         Win32. Accept also depth==32 (which we might get on Win32) with
15071         bpp==32.
15072
15073         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15074         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15075         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15076         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15077         in the backend-dependent directory, not in the common gdk
15078         directory.
15079
15080         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15081         headers.
15082
15083 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15084
15085         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15086         want to use the Gtk+ devel version (which is true, and yes - even i am
15087         currently working with the 1.2.x branch). so everyone reading this, you
15088         probably want to issue
15089         cvs checkout -r glib-1-2 glib
15090         and
15091         cvs checkout -r gtk-1-2 gtk+
15092         as your next two comands.
15093
15094 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15095
15096         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15097         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15098
15099         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15100         file. strongly deprecated the GTK_HAVE_* macros, we provide
15101         GTK_CHECK_VERSION() for people that need to check for certain
15102         Gtk+ versions.
15103
15104         * gtk/gtkcompat.h: removed this from CVS.
15105         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15106         idea right from the start, it just didn't seem like that back then.
15107
15108 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15109
15110         * merges from gtk-1-2:
15111
15112 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15113
15114         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15115         item factory class has been created.
15116         (gtk_item_factory_parse_rc): likewise.
15117
15118         * gtk/gtkmenu.c:
15119         keep proper references for old_active_menu_item.
15120         (gtk_menu_reparent): unset the usize of the new parent,
15121         so the menu can sanely be size requested and we don't get nasty screen
15122         artefacts upon next reparentation.
15123         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15124         enter notify. only synthesize enter notifies if the pointer really is
15125         inside the event window.
15126         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15127         (gtk_menu_popup): move the background setting stuff into
15128         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15129
15130         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15131         gtk_menu_shell_select_item() to select the new item.
15132         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15133         do the right thing for deselection as well.
15134
15135 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15136
15137         * gtk/gtkwidget.[hc]:
15138         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15139         are locked.
15140
15141         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15142         existing accelerators if the widget's accelerators are locked.
15143
15144 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15145
15146         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15147
15148         * gtk/gtkmenu.c: truely forward key press and key release events to
15149         the menu widget from the toplevel or tearoff window. we can't simply
15150         connect to that, we need to stop further processing of the events as
15151         well.
15152
15153 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15154
15155         * gtk/gtkmenu.c:
15156         (gtk_menu_key_press): pass event->keyval, event->state to
15157         gtk_accelerator_valid, instead of event->keyval twice.
15158         refuse to install single letter accelerators for menus that use
15159         single letter shortcuts.
15160
15161         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15162         gtk_menu_ensure_uline_accel_group().
15163
15164         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15165         which will always return an uline accel group, made
15166         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15167         yet created.
15168
15169 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15170
15171         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15172
15173         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15174         Leave button sensitive, trap  button_press, button_release,
15175         motion_notify, enter_notify and leave_notify events instead.
15176         (gtk_clist_column_title_active): disconnect event handler.
15177         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15178         Guillaume Laurent <glaurent@worldnet.fr>
15179
15180 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15181
15182         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15183         width/height mixups.
15184
15185         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15186         if needed.
15187
15188 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15189
15190         * gtk/testgtk.c (create_item_factory): unref the item factory after
15191         window's destruction.
15192
15193         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15194         count on the menu shell around the menu item's activation, since the
15195         signal emission may cause menu shell destruction.
15196
15197         * gtk/gtkitemfactory.c:
15198         the previous code leaked one accel group per menu. we use
15199         gtk_menu_get_uline_accel_group() now to fix that, and with that
15200         also create the underline accelerator group of the menus only if
15201         required (i.e. an underline accelerator has been specified).
15202         (gtk_item_factory_construct):
15203         (gtk_item_factory_create_item): removed code that would create an
15204         extra accel group for the menu (and leak references).
15205         (gtk_item_factory_create_item): adapted the underline accelerator
15206         installation code to properly feature gtk_menu_get_uline_accel_group().
15207
15208         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15209         menu->accel_group, this may return NULL if the accelerator group
15210         hasn't been set yet.
15211         added gtk_menu_get_uline_accel_group() to retrive the underline
15212         accelerator group of the menu, this will be created on demand
15213         and proper care is taken about its reference count.
15214
15215         * gtk/gtkitemfactory.h:
15216         * gtk/gtkitemfactory.c:
15217         dumped the approach of keeping a widgets by action list on the
15218         factory since the factory<->widget destroy negotiation didn't work
15219         and would be hard to get going at all. instead we keep a list of
15220         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15221         persistant throughout a program's life time).
15222         also, i removed the static const gchar *key_* variables, and made
15223         them inline strings (they weren't actually used anyways).
15224         (gtk_item_factory_add_item): update ifactory->items.
15225         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15226         the item factory pointer from the remaining ifactory widgets).
15227         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15228         list to find the widget.
15229         (gtk_item_factory_get_item): new function that works around
15230         gtk_item_factory_get_widget() limitations, this function will only
15231         return menu items, even for <Branch> entries.
15232
15233 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15234
15235         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15236         font hash table, if we have a GdkFontPrivate entry for this font
15237         already, simply increment its reference count, provided by Olaf Dietsche
15238         <olaf.dietsche+list.gtk@netcologne.de>.
15239
15240         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15241         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15242
15243 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15244
15245         * gtk/gtkcontainer.c:
15246         (gtk_container_add_with_args):
15247         (gtk_container_addv):
15248         (gtk_container_add): before adding a child to a conatiner, make sure
15249         it is (default) constructed, this is neccessary because under certain
15250         circumstances the child will get relized and mapped immediatedly, in
15251         which case it has to be constructed already.
15252
15253 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15254
15255         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15256         values > 1 as TRUE also.
15257
15258 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15259
15260         * README.win32: New file.
15261                 
15262         * configure.in: Check for lstat.
15263
15264         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15265         completeness.
15266
15267         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15268
15269         * gtk/gtk.def: Removed CRs.
15270
15271         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15272         ..\gdk\win32).
15273
15274         * gdk/win32/makefile.msc: Correct upwards relative paths.
15275         
15276 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15277
15278         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15279           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15280           it was connecting a void function to expose_event and the int
15281           returning function to the draw signal
15282
15283 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15284
15285         * configure.in:
15286         Use correct path to libgmodule.la when ref'ing uninstalled copy
15287         of glib.  (Already in stable branch, Bug #417)
15288
15289 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15290
15291         Win32 merge and general portability stuff:
15292                 
15293         * acconfig.h,configure.in: Check for <sys/time.h>.
15294
15295         * gdk/win32: New directory (actually, been there for a while).
15296         
15297         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15298         NATIVE_WIN32, and use these. Always case fold on Win32. No
15299         backslashed escapes on native Win32.
15300
15301         * gtk/{gtk.def,makefile.msc}: New files.
15302
15303         * gtk/Makefile.am: Add above new files.
15304         
15305         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15306         instead of <strings.h>.
15307
15308         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15309         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15310         <unistd.h> appropriately.
15311
15312         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15313         Use ABS() (from <glib.h>) instead of abs().
15314         
15315         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15316         of gtk (and thus glib) headers, so that WIN32 will be
15317         defined. With MS C, include <direct.h> for mkdir prototype.
15318
15319         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15320         some casts, needed by MS C.
15321
15322         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15323         implemented).
15324
15325         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15326         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15327         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15328
15329         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15330                 
15331         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15332         the event is not a hint, or its window is not the slider. Needed
15333         on Win32, at least.
15334
15335         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15336         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15337         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15338         a subdirectory of the Windows directory as gtk system
15339         configuration directory.
15340
15341         * gtk/gtkselection.c: No chunks on Win32.
15342
15343         * gtk/gtksocket.c: Not implemented on Win32.
15344
15345         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15346
15347         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15348
15349         * gtk/maketypes.awk: Declare variables with a macro that expands to
15350         necessary export/import magic in the case of Win32.
15351                 
15352         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15353
15354 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15355
15356         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15357         since those were meant only for gdki18n.h.  
15358         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15359         for widechar tests.
15360         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15361
15362 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15363
15364         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15365         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15366
15367         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15368         installed) to CFLAGS.
15369
15370         * gdk/Makefile.am: Add rules for gdkconfig.h.
15371
15372         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15373         APIs.
15374
15375         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15376         gdkx.h anyway when compiling for X11.
15377         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15378         general): Merge in Win32 version.
15379         
15380         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15381         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15382         expansion (if we don't have HAVE_PWD_H), allow for drive
15383         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15384         included code from Craig Setera's port to Win32 (the one that uses
15385         X11, and the cygwin dll), even if it probably will be abandoned.
15386
15387         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15388         the user entered one herself.  This way one can complete *.h and
15389         don't get matches on any .help files, for instance.
15390         
15391 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15392
15393         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15394         font hash table, if we have a GdkFontPrivate entry for this font
15395         already, simply increment its reference count, provided by Olaf Dietsche
15396         <olaf.dietsche+list.gtk@netcologne.de>.
15397
15398         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15399         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15400
15401 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15402
15403         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15404         the number of calls to gdk_draw_point() (and thus to X) by
15405         clipping the points by hand.
15406
15407         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15408         the clip parameter.
15409         (gtk_handle_box_paint): Only paint the handle if the expose area
15410         intersects it.
15411
15412 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15413
15414         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15415
15416 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15417
15418         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15419         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15420
15421 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15422
15423         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15424          textmode (O_TEXT) for OS/2 version.
15425
15426 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15427
15428         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15429         GtkSpinButton, "input" and "output", to make the output more flexible.
15430         The user has to provide a mapping between adjustment->value and the
15431         output string (and vice versa, if the spin button is editable). 
15432         See testgtk for examples.
15433
15434 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15435
15436         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15437         new one.
15438         
15439         * configure.in: set gtk+ version to 1.3.0.