]> Pileus Git - ~andy/gtk/blob - ChangeLog
Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
[~andy/gtk] / ChangeLog
1 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
4
5         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
6         names to compatibility #defines so docs work.
7
8         * gtk/gtkenums.h: Remove GtkMenuFactoryType
9
10         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
11
12         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
13
14         * tests/testgtkrc: No magenta cursors, please.
15
16         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
17
18         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
19         
20 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
21
22         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
23         grabs, since they are no longer necessary.
24
25         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
26         by signal_connect() and call gtk_button_pressed() rather
27         than signal_connect_after().
28
29         * tests/testgtk.c: Restore radio menu items to combos 
30         since they'll look OK with Raleigh, and it is easier
31         than finishing the process of removing them that was
32         started earlier.
33
34 2001-04-16  Hans Breuer  <hans@breuer.org>
35
36         * gdk/gdk.def :
37         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
38
39         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
40         we are interested in the functions return value not the function address
41         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
42
43         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
44
45 2001-04-14  Hans Breuer  <hans@breuer.org>
46
47         * gdk/gdk.def :
48         * gdk/makefile.msc : updated
49
50         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
51         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
52         (the testgtk::text backgound pixmap is drawn again)
53         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
54         Win32 Pango change
55         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
56
57         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
58         Not sure if the returned settings have the right unit, because I couldn't
59         find any docs for the X version ...
60
61         * gtk/gtk.def :
62         * gtk/makefile.msc.in : updated
63
64 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
65
66         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
67         wording problems. (Compared to version from Johannes Stezenbach to
68         check correctness.)
69
70 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
71
72         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
73         this to compile.
74
75 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
76
77         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
78         not pixbufpos.
79
80         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
81
82         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
83         are unsigned insts, therefore use g_value_set_uint.
84         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
85
86 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
87
88         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
89
90         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
91         GTK_TYPE_STRING.
92
93         * gtk/gtktreeview.c: New functions to allow initial column
94         dragging work.
95
96         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
97
98         * tests/testtreefocus.c: give dave some love.
99
100         * tests/testtreesort.c: Modify test to check really long samples.
101
102 2001-04-11  Alexander Larsson  <alexl@redhat.com>
103
104         * gtk-2.0.m4: Pass pkg-config options
105         before the other args so it works even if
106         POSIXLY_CORRECT is set.
107
108 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
109
110         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
111         0, interface 0).
112
113 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
114
115         * gtk/gtkcalendar.c (gtk_calendar_button_press):
116         check for action_func != NULL
117
118 2001-04-04  Sven Neumann  <sven@gimp.org>
119
120         * tests/testgtk.c (test_init): corrected path to gtk.immodules
121
122 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
123
124         * Released Gtk+-1.3.3.
125
126 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
127
128         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
129
130 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
131
132         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
133         files to/from source dir. (if we don't stay in builddir, we
134         can't reach make-inline-pixbuf.
135
136         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
137         deps.
138
139         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
140         ages 0).
141
142 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
143
144         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
145         moved to the GtkTreeSortable interface.
146
147         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
148         Make more efficient (fixes #50262).
149
150 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
151
152         * NEWS: Updated.
153
154         * configure.in: Remove support for uninstalled glib.
155
156         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
157         so as not to stop emission.
158
159         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
160         is no longer supported.
161
162         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
163         into tests, change build order to build modules before
164         gtk/.
165
166         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
167         to here.
168
169 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
170
171         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
172         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
173         GPatternSpec. this is actually unlikely to cause breakage in
174         third-party apps since except for gle, pretty much ever caller
175         passes NULL here.
176
177         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
178
179         * *.c: use g_pattern_*() API.
180
181         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
182
183         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
184         directions aren't passed in.
185
186         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
187         functionality to be usable from gtkstyle.c as well, give precedence
188         for conversion to user-supplied parsers.
189         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
190
191         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
192         _gtk_settings_parse_convert() for rcporperty value conversion.
193
194 2001-04-03  Alexander Larsson  <alexl@redhat.com>
195
196         * gdk/linux-fb/gdkevents-fb.c:
197         Add empty gdk_setting_get().
198
199 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
200
201         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
202         variable names.
203         
204         * gtk/makeenums.pl: touch this so enum files get remade.
205
206 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
207
208         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
209         work again when not sorted.
210
211         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
212         and "expand_row" signal, closing bug 52578.
213
214         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
215         support.
216
217         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
218         support.
219
220 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
221
222         * gdk/gdkevents.h: Add GdkEventSetting event for notification
223         of changes to system settings, gdk_setting_get() to retrieve
224         a single system setting.
225
226         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
227         to the draft XSETTINGS mechanism.
228
229         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
230         XSETTINGS.
231
232         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
233         of GDK settings changes to the GtkSettings object.
234
235         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
236         double-click-timeout property to GDK.
237
238         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
239         Define GDK boxed types here.
240
241         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
242         gdk/gdkenumtypes.[ch] for enum definitions.
243
244         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
245         * gtk/gtk-boxed.defs: Comment out GDK types
246         * gtk/gtktypeutils.h: Remove GDK types
247         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
248
249 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
250
251         * Applied patch from Ron Steinke to add signal accumulators
252         so that signals with the convention 'TRUE return means
253         handled' stop emission on a TRUE return.
254
255         * gtk/gtkmain.[ch]: Add private accumulator 
256         _gtk_boolean_handled_accumulator, used throughout GTK+.
257         
258         * gtk/gtkspinbutton.c: Add accumulator for ::output.
259
260         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
261         
262         * gtk/gtkwidget.c: Add accumulators for event signals,
263         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
264         for ::mnemonic-activate.
265
266         * gtk/gtkwindow.c: Add accumulator for ::frame_event
267
268 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
269
270         * gtk/gtkwidget.c: Add missing include.
271
272 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
273
274         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
275         marshaller.
276
277         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
278         "changed" signal to "range_changed".
279
280         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
281         removing a tree from one model would remove all trees from that
282         model.
283         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
284         changed signal instead.
285
286 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
287
288         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
289         chaining up to parent impl, since we have a INPUT_ONLY
290         window.
291
292         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
293         foreground color for the cursor.
294
295 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
296
297         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
298         param spec when caching property values, since we unref it
299         later when we free the style.
300
301         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
302         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
303
304 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
305
306         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
307         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
308         stupidity.
309
310 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
311
312         [ First pass at adding style properties. Still needs some definite
313         fine-tuning. ]
314
315         * gtk/gtkbutton.c: Add ::default_spacing style property.
316          
317         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
318         ::indicator_spacing style properties.
319
320         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
321         style properties.
322
323         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
324         rather than a normal property.
325
326         * gtk/gtkwidget.c: Add an ::interior_focus style property to
327         draw focus inside buttons, in the Windows/Java Metal/etc. style.
328
329         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
330         Honor ::interior_focus.
331         
332         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
333         TRUE.
334
335         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
336         Add ::slider_width, ::trough_border, ::stepper_size,
337         ::stepper_spacing style properties.
338
339         * gtk/gtkscale.[ch] Add ::slider-length style property.
340
341 2001-04-02 Alexander Larsson   <alexl@redhat.com>
342
343         * gdk/linux-fb/gdkwindow-fb.c:
344         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
345         warnings that were spewed on startup.
346
347         * gtk/gtkwindow-decorate.c:
348         gtk_window_reposition -> _gtk_window_reposition
349
350 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
351
352         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
353         Add boxed type for GtkRequistion. Use it for ::size-request.
354
355         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
356         Add a new GtkBorder structure useful for geometry properties
357         for widgets. Add corresponding GTK_TYPE_BORDER.
358         
359         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
360         Support automatic parser selection like
361         gtk_settings_install_property_parser().
362
363         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
364         functionality for use by gtk_widget_class_install_style_property.
365         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
366
367 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
368
369         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
370         g_param_spec_unichar(). 
371
372 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
373
374         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
375         _NET window managers.
376
377         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
378
379 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
380
381         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
382         bad needs to be nuked, not just deprecated.
383
384         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
385         gtk_widget_popup().
386
387         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
388         
389         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
390         widget.
391         
392         * docs/Changes-2.0.txt: updates.
393         
394 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
395
396         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
397         for (i = 0; i < 100; i ++)
398           g_print ("I will confirm it compile before committing\n");
399
400 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
401
402         * gtk/gtktreestore.c: Initial work on implementing the
403         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
404
405 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
406
407         * gtk/gtkwidget.c: fixed a bunch of notifications, added
408         reference counts around emissions where the widget is used afterwards.
409         added freeze/thaws around multiple properties being notified.
410         (_gtk_widget_get_aux_info): cleanups.
411         
412         * gtk/gtksettings.c (gtk_settings_install_property): provide
413         default parsing functions for gdkcolor, enums and flags.
414
415         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
416         applied by owen.
417         backed out gtk_window_get_location(), gtk_window_set_location(),
418         gtk_window_get_size() and gtk_window_set_size(), these
419         have to be sorted out wrg x/y/width/height/default_with/default_height
420         properties.
421         kept a flag in GtkWindowGeometryInfo to handle user
422         resetting default sizes.
423         cleaned up ZVT comments.
424         bunch of assorted bug fixes, notification fixes.
425         (_gtk_window_reposition): make this a really internal function.
426         
427         * gtk/testgtk.c: fixups.
428         
429 2001-03-31  Hans Breuer  <hans@breuer.org>
430
431         * config.h.win32.in : disable USE_MMX for msvc build cause
432         the assembler doesn't fit and is out of my scope. Disable
433         USE_GMODULE for msvc build as wel. The right way to share
434         binaries on win32 would be to use libtiff.dll etc. To reduce
435         installation hassles IMO it's better to include all fileformats
436         builtin to gdk-pixbuf
437
438         * gdk-pixbuf/makefile.msc : new file
439
440         * gdk/gdk.def : updated
441
442         * gdk/win32/gdkevents-win32.c : don't erase the background if
443         .no_bg is set. It improves the scrolling (e.g. of testgtk main
444         buttons
445         * gdk/win32/gdkgeometry-win32.c : added comment about the above
446
447         * gdk/win32/gdkwindow-win32.c : added three new functions like
448         the X version. Only one is implemented, because the other two
449         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
450         be default behaviour on win32 anyway ...
451
452         * gtk/gtk.def : updated
453
454         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
455         from where it was built and add an additional rule to automagically
456         build gtkmarshal.[hc]
457
458         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
459         before array access for the current entry isn't finished
460
461         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
462         use g_return_val_if_fail
463
464         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
465         for the static array, but let the compiler calculate it. It
466         makes me wonder if gcc isn't capable to catch bugs like this ...
467
468 2001-03-31  James Henstridge  <james@daa.com.au>
469
470         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
471         constant "-1" in the aux info structure.
472
473 2001-03-30  Alexander Larsson  <alexl@redhat.com>
474
475         * gtk/gtkbutton.c (gtk_button_get_property):
476         * gtk/gtklabel.c:
477         Remove leaks.
478         
479         * gtk/gtkcontainer.c:
480         * gtk/gtkhscale.c:
481         * gtk/gtkhscrollbar.c:
482         * gtk/gtklayout.c:
483         * gtk/gtkmisc.c:
484         * gtk/gtkprogress.c:
485         * gtk/gtkprogressbar.c:
486         * gtk/gtkrange.c:
487         * gtk/gtktable.c:
488         * gtk/gtkviewport.c:
489         * gtk/gtkvscale.c:
490         * gtk/gtkvscrollbar.c:
491         * gtk/gtkwidget.c:
492         Property patches, based on patches from John Margaglione and Lee Mallabone.
493
494 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
495
496         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
497         adjustment. Cleaned redundant preconditions (spin != NULL). Added
498         inline API function docs.
499         (gtk_spin_button_new_with_range): New convenience constructor.
500         (gtk_spin_button_set_increments): New adjustment helper.
501         (gtk_spin_button_set_range): New adjustment helper.
502
503         * gtk/testgtk.c : added test of the new convenince constructor and
504         value_changed signals.
505
506 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
507
508         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
509         listen to the reorder signal.
510
511 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
512
513         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
514         to get the aux info structure fo the widget.
515
516         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
517         above function.
518
519         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
520
521         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
522         to get the size of the window manager frame, basically the same
523         code that gdk_window_get_root_origin() had
524         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
525
526         * gtk/gtkwindow.c (gtk_window_set_default_size): use
527         gdk_window_resize() if the window is realized and resizeable
528
529         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
530         typo so that setting gravity works
531
532         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
533         allocation if auto_shrink is on, even if the default size
534         has not changed.
535
536         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
537         g_return_if_fail
538
539 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
540
541         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
542         reordering/sorting work.  Now pretty much works.
543
544         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
545         reorder mostly work.  Still need to get the parity correct.
546
547         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
548         signal, so I can listen for the sort_column_changed signal so I
549         can change my "sort_indicator" property.  Cool.
550
551 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
552
553         [ Patch from Havoc Pennington, hp@redhat.com ]
554
555         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
556         Add functions gdk_window_begin_resize_drag/begin_move_drag
557         to start resizing or moving a toplevel window. This
558         is done either using the _NET_WM_MOVERESIZE protocol,
559         or, if that isn't present, by emulation.
560
561         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
562         to export the above to GTK+-land.
563
564         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
565         
566         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
567         Move this function into gdkwindow, since we need it
568         when implementing fallback resizing.
569
570         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
571         Fix typo when setting gravity.
572
573         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
574         Add an optional (but on by default) resize grip for resizing 
575         the parent window.
576
577 01-03-29  Alexander Larsson  <alexl@redhat.com>
578
579         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
580         Don't return TRUE from the event handler, that blocks all
581         event signals on the tooltip widget. Now you can press buttons
582         in toolbars again.
583
584 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
585
586         * gtk/testtext.c (create_buffer): Add missing NULL on
587         valist.
588
589         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
590         c-n-p problem with INCONSISTENT property.
591
592         [ Patch from Havoc Pennington  <hp@redhat.com> ]
593
594         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
595         hook.
596
597         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
598         signal as a hook for extending the default popup menu
599
600         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
601         use radio menu items for the input method menuitems
602
603         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
604         inserted unicode from Ctrl-Shift-hex input method
605
606         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
607         validatation here, already done at GtkTextBuffer level.
608
609         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
610         popup_menu run action signal and Shift+F10 and Menu keybindings.
611
612         * gtk/gtkentry.c: implement a default handler for popup_menu
613
614         * gtk/gtktextview.c: implement a default handler for popup_menu
615
616         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
617         from a key event
618         
619         * gtk/gtklabel.c: remove "trailer" cruft
620
621 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
622
623         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
624         handle reordering of trees.  Seems to mostly work w/ the exception
625         of the parity flag.
626
627         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
628         signal.
629
630 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
631
632         * gtk/gtkwidget.h: c++ fixes.
633
634 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
635
636         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
637         memory.
638
639 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
640
641         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
642         Nils Barth fixing event return values. (#51041)
643
644         * gtk/gtkwidget.c: Fix some return values for default
645         functions.
646
647         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
648         return values for trough_keys functions.
649
650         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
651         value for add_accelerator (shoudl have been a void
652         return.)
653
654         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
655         Fix return type of EVENT.
656
657         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
658         signal return a boolean.
659
660 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
661
662         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
663         reordered signal.
664
665         * tests/testtreesort.c (main): fix spelling.
666
667 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
668
669         * gtk/gtkliststore.c: More work on implementing sortable
670         interface.
671
672 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
673
674         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
675         reference the widgets in the resulting list. (#11821)
676         This makes this consistent with gtk_container_children.
677
678         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
679         uses of gtk_window_list_toplevels.
680
681 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
682
683         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
684         a virtual function to set whether the IM context should use 
685         the preedit string. (#51922)
686         
687 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
688
689         * gdk/gdkpango.h: Remove stale FIXME comment.
690
691 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
692
693         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
694         Fixed bug that returned NULL if a filename was selected.
695
696 2001-03-24  Havoc Pennington  <hp@pobox.com>
697
698         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
699         to contain the word "theme"
700
701 2001-03-24  Havoc Pennington  <hp@pobox.com>
702
703         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
704         slower but finer-grained
705         (gtk_hsv_focus): get initial focus on the ring or triangle 
706         according to tab direction
707
708         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
709
710 2001-03-23  Havoc Pennington  <hp@pobox.com>
711
712         * gtk/gtkhsv.c: make this somewhat key-navigable
713
714         * gtk/gtkfontsel.c: mnemonics
715
716         * gtk/gtkgamma.c: mnemonics
717
718         * gtk/gtkcolorsel.c: add mnemonics to labels
719
720 2001-03-22  Havoc Pennington  <hp@pobox.com>
721
722         Applied big patch from Seth Lytle to fix event handler return
723         values, slightly modified.
724
725         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
726         handled.
727         (gtk_calendar_key_press): return TRUE for GDK_space triggers
728         select_day
729
730         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
731         (gtk_clist_button_release): return TRUE if handled
732
733         * gtk/gtkcolorsel.c (mouse_release):
734         (palette_activate): 
735         (palette_press): 
736         (palette_new): 
737         (mouse_press): 
738         (get_screen_color): 
739         fixed return type (void to gboolean), return TRUE,
740         added GTK_SIGNAL_FUNC cast
741
742         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
743         (void to gboolean), and return TRUE
744         (gtk_combo_button_release): changed return value to TRUE after
745         gtk_grab_add on combo->popwin
746
747         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
748         collapse or expand
749
750         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
751         button/motion
752
753         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
754         press/release and motion that trigger act
755
756         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
757
758         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
759         for GDK_Return
760         
761         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
762         (gtk_list_button_release): return TRUE if selection
763
764         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
765         press
766
767         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
768         (gtk_menu_shell_button_release): chain parent_menu_shell retval
769
770         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
771         nothing triggered
772         (gtk_notebook_button_release): return TRUE if we do anything
773
774         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
775         (gtk_spin_button_button_release): return TRUE or chained retval
776
777         * gtk/gtktext.c (gtk_text_button_press): 
778         (gtk_text_button_release): return TRUE
779         (gtk_text_key_press): remove redundant retval code
780         
781         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
782         and sensitive
783         (gtk_tree_item_subtree_button_click): changed type to gint, and return
784         TRUE if sensitive
785
786         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
787         return TRUE
788
789 2001-03-23  Havoc Pennington  <hp@redhat.com>
790
791         * gtk/testgtk.c: fix warnings
792
793         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
794
795         * gtk/gtktextview.c: fix warnings
796
797         * gtk/gtktext.c (find_cursor_at_line): fix warning
798
799         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
800
801         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
802         of this function
803
804         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
805         fix warning
806
807         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
808
809         * gtk/gtkfontsel.c: fix warning
810
811         * gtk/gtkcolorsel.c: fix warnings
812
813 2001-03-23  Havoc Pennington  <hp@redhat.com>
814
815         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
816
817         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
818
819         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
820         and deprecated gtk_check_menu_item_set_show_toggle().
821         
822         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
823
824         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
825
826         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
827
828 2001-03-23  Havoc Pennington  <hp@redhat.com>
829
830         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
831         some docs
832
833 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
834
835         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
836         this.
837
838         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
839         set_cell to set_value
840
841         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
842         set_cell to set_value
843
844 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
845
846         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
847         fix braino.
848         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
849         support.
850
851         * gtk/gtktreeview.c: Addition of initial sortable support.
852
853         * gtk/gtktreestore.c: Addition of initial sortable support.
854
855         * gtk/gtkliststore.c: Addition of initial sortable support.
856
857         * gtk/gtkmarshal.list: yet another marshaller.
858
859         * gtk/gtktreedatallist.[ch]: shared code between the store models
860         for handling sorting headers.
861
862 2001-03-22  Havoc Pennington  <hp@redhat.com>
863
864         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
865         (gtk_container_unset_focus_chain): Add ability to override the 
866         focus chain for a container explicitly
867
868 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
869
870         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
871         added PROP_MNEMONIC_WIDGET.
872
873         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
874         (gtk_window_remove_mnemonic): 
875         (gtk_window_add_mnemonic): fixed assertions.
876         (gtk_window_activate_mnemonic): constrain modifier checks to those
877         permitted by gtk_accelerator_get_default_mod_mask().
878         got rid of gtk_window_get_default_accel_group().
879
880         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
881         activatable widgets either by focussing or a warning.
882         added a signal accumulator to ::activate_mnemonic which stops the
883         emission once a handler returned TRUE.
884
885 2001-03-22  Havoc Pennington  <hp@pobox.com>
886
887         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
888         the stock item label
889
890         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
891
892         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
893
894         * demos/gtk-demo/*.c: Add mnemonics all over the place
895
896         * gtk/gtklabel.h: mark parse_uline deprecated
897
898 2001-03-21  Alexander Larsson  <alexl@redhat.com>
899
900         * gtk/gtkitemfactory.[ch]:
901         Add support for stock and normal imagemenuitems.
902         
903         * gtk/testgtk.c:
904         Add some tests for mnemonics, stock toolbars, stock
905         and image menuitems in itemfactory and gdk_window_scroll.
906
907 2001-03-21  Alexander Larsson  <alexl@redhat.com>
908
909         * gtk/gtkbutton.[ch]:
910         * gtk/gtkdialog.c:
911         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
912         removed accel_group argument. Renamed gtk_button_new_accel() to
913         gtk_button_new_with_mnemonic() and removed accel_group argument.
914
915         * gtk/gtkcheckbutton.[ch]:
916         New function gtk_check_button_new_with_mnemonic().
917
918         * gtk/gtkentry.c:
919         Override activate_mnemonic and just grab focus.
920
921         * gtk/gtkitemfactory.c:
922         Don't add menu uline accel group, instead use mnemonics support.
923
924         * gtk/gtklabel.[ch]:
925         New support for mnemonics.
926
927         * gtk/gtkmarshal.list:
928         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
929
930         * gtk/gtkmenu.[c]:
931         * gtkmenushell.c:
932         Use mnemonics instead of accel groups for uline
933         support in menu items.
934         Removed gtk_menu_get_uline_accel_group() and
935         gtk_menu_ensure_uline_accel_group().
936
937         * gtk/gtkmenuitem.c:
938         Override activate_mnemonic to handle switching between
939         menu items if there are collisions.
940         
941         * gtk/gtknotebook.c:
942         Connect to activate_mnemonic on the tab_label, so that
943         activating it switches to that notebook page.
944
945         * gtk/gtkwidget.[ch]:
946         Add activate_mnemonic signal. New function
947         gtk_widget_activate_mnemonic() to emit it.
948         Default implementation does activate/grab_focus.
949
950         * gtk/gtkwindow.[ch]:
951         Add support for mnemonics in windows.
952         New functions:
953         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
954         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
955
956         * gtk/testgtk.c:
957         Update to function name changes.
958         
959 2001-03-21  Alexander Larsson  <alexl@redhat.com>
960
961         * gtk/gtkimagemenuitem.[c]:
962         Add gtk_image_menu_item_new_from_stock()
963
964 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
965
966         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
967         Fix buglet in meeting.
968
969 2001-03-19  Havoc Pennington  <hp@redhat.com>
970
971         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
972         add a bunch of accessor functions. This is because we have
973         reasonable expectations of extending what fields it contains in
974         the future.
975
976         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
977         changes
978
979         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
980         GtkIconSource   
981
982 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
983
984         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
985         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
986
987         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
988           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
989           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
990           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
991         Change float to double everywhere with the exception of 0<->1.0 alignment
992         and GtkCurve.
993
994 2001-03-19  Tor Lillqvist  <tml@iki.fi>
995
996         * gdk/win32/gdkdrawable-win32.c
997         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
998         output.
999
1000         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1001         gdkwin32.h.
1002
1003 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1004
1005         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1006         print_event_state, print_event): Use preprocessor macro to make
1007         code more compact. Print also GDK_WINDOW_STATE events.
1008         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1009         
1010         * gtk/gtk.def
1011         * gtk/makefile.mingw.in: Update.
1012
1013         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1014         to catch also Cygwin.
1015
1016 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1017
1018         * gtk/gtkspinbutton.[hc]: added rc-style argument
1019         GtkSpinButton::shadow_type.
1020         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1021         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1022         rc-style settings.
1023
1024         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1025
1026         * gtk/gtkwidget.c: quark cleanups.
1027
1028         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1029         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1030         to create_rc_style() (we don't do cloning in standard OO sense).
1031         added per rc style properties.
1032         
1033         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1034         property values and for caching those. some cleanups.
1035         
1036         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1037         
1038         * gtk/gtksettings.[hc]: new file for global rc-file properties
1039         (at least currently, should get extended to support X properties
1040         and other communication mechanisms).
1041         
1042         * gtk/gtkwidget.[hc]: added style property support:
1043         (gtk_widget_class_install_style_property_parser): install style
1044         property pspec with parser function for rc-file values other
1045         than LONG, DOUBLE or STRING.
1046         (gtk_widget_class_install_style_property): same as above without
1047         parser (parsers are going to be needed quite infrequently).
1048         (gtk_widget_style_get_property): retrive style property value.
1049         (gtk_widget_style_get_valist): same as above with varargs support,
1050         has NOCOPY semantics.
1051         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1052
1053 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1054
1055         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1056         "row_activated" signal.
1057
1058         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1059         stupidity.  Lets actually pass in the row with this signal...
1060
1061 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1062
1063         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1064
1065         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1066
1067         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1068         everything into the ::destroy function, and freed a lot more.
1069
1070 2001-03-16  Havoc Pennington  <hp@redhat.com>
1071
1072         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1073         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1074         are now allowed.
1075
1076 2001-03-16  Havoc Pennington  <hp@redhat.com>
1077
1078         * Applied patch from Nils Barth (bug # 51041) to 
1079         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1080         in various places.
1081
1082 2001-03-15  Havoc Pennington  <hp@redhat.com>
1083         
1084         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1085         for properties to set on the tag.
1086
1087         * gtk/testtext.c: fixups to reflect create_tag change
1088         
1089         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1090         background/foreground stipple are objects, not boxed.
1091
1092         * demos/gtk-demo/textview.c: intellihancing
1093
1094 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1095
1096         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1097         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1098
1099 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1100
1101         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1102         Fix sign error with queued region translations.
1103
1104 2001-03-15  HideToshi Tajima  <tajima@happy>
1105
1106         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1107         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1108         * gtk/gtkentry.c (update_im_cursor_location): 
1109         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1110         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1111         set_cursor_pos to set_cursor_location in GtkInputContext class
1112
1113 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1114
1115         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1116         the location of the cell relative to its area.
1117         * gtk/gtkcell*: modified for above change
1118         * gtk/gtktreeview.c: modified for above change.
1119
1120 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1121
1122         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1123          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1124         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1125
1126 2001-03-14  Havoc Pennington  <hp@redhat.com>
1127
1128         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1129         
1130         * gtk/gtk.h: remove gtkdata.h
1131
1132         * gtk/Makefile.am: remove gtkdata
1133         
1134         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1135         not "disconnect" on the adjustments.
1136         
1137         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1138         GtkData
1139
1140         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1141         not GtkData
1142
1143         * configure.in: handle case where X render exists, but Pango lacks
1144         Xft support.
1145
1146 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1147
1148         * gtk/gtktoolbar.[ch]:
1149         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1150         to add stock items to toolbars.
1151
1152         * gtk/Makefile.am:
1153         Remove ../gdk/gdkim.h from gdk_headers.
1154
1155 2001-03-15  Sven Neumann  <sven@gimp.org>
1156
1157         * gdk/gdkim.h: removed
1158         
1159         * gdk/gdkprivate.h
1160         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1161
1162 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1163
1164         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1165         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1166         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1167         set_cursor_pos() virtual method
1168
1169         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1170         (gtk_im_context_xim_set_cursor_pos): add implementation for
1171         set_cursor_pos() method
1172
1173         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1174         position to input methods
1175
1176 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1177
1178         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1179         code a lot.
1180
1181         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1182         g_mem_chunk.
1183         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1184         (_gtk_tree_data_list_node_to_value): Fix to switch on
1185         G_TYPE_FUNDAMENTAL.
1186         (_gtk_tree_data_list_value_to_node): Fix to switch on
1187         G_TYPE_FUNDAMENTAL.
1188         (_gtk_tree_data_list_node_copy): Fix to switch on
1189         G_TYPE_FUNDAMENTAL.
1190
1191 2001-03-12  Havoc Pennington  <hp@redhat.com>
1192
1193         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1194         to convert to new property API. Also, change default_width and
1195         default_height get_property to return 0 as the flag value for
1196         "unset"; -1 is not a valid value for these fields.
1197
1198 2001-03-12  Havoc Pennington  <hp@redhat.com>
1199
1200         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1201         enum with registration for icon sizes, instead of strings.
1202
1203         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1204         gtkwidget.c: Fix to reflect GtkIconSize
1205         
1206 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1207
1208         Make GtkFB compile and link.
1209         
1210         * gdk/linux-fb/gdkdrawable-fb2.c:
1211         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1212         
1213         * gdk/linux-fb/gdkwindow-fb.c:
1214         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1215         Added gdk_window_shape_combine_region.
1216         Added assorted placeholders for unimplemented new GdkWindow API calls.
1217
1218 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1219
1220         * gtk/gtkfilesel.c:
1221         Add more test when converting filenames from/to utf-8.
1222         Don't allow entering text in the filename entry which isn't allowed in
1223         a filename. Just beep instead.
1224
1225 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1226
1227         * gtk/gtkclist.c:
1228         Scroll using gdk_window_scroll(). Don't wait for exposes.
1229         Move the column headers in an order that makes them flash less.
1230
1231 2001-03-10  Hans Breuer  <hans@breuer.org>
1232
1233         * gdk/gdk.def : updated
1234
1235         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1236         to offseting the clip_mask at the right place
1237
1238         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1239         for all the gdkClasses, especially not for the input_only case.
1240         Otherwise flickering wont be avoidable, because we don't get
1241         WM_ERASEBKGND message for these windows.
1242
1243         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1244         and fixed massive redraw problems apparently triggered by Alexanders 
1245         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1246         but it seems to work quite well :-)
1247
1248         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1249         prototype
1250
1251 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1252
1253         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1254         (gtk_list_store_set_cell): Fix a stupid typo.
1255
1256 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1257
1258         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1259         select_all not work if you're in SINGLE mode (it doesn't make that
1260         much sense, anyway.)
1261
1262         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1263         handle types more sanely.
1264         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1265         (_gtk_tree_data_list_node_copy): handle types more sanely.
1266
1267         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1268         GValue better. Converts the type as well.
1269
1270         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1271         GValue better. Converts the type as well.
1272
1273 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1274
1275         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1276         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1277         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1278         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1279
1280         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1281         gdk_im/gdk_ic.
1282
1283 2001-03-09  Hans Breuer  <hans@breuer.org>
1284
1285         * gdk/gdk.def : updated
1286
1287         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1288         for their palette
1289
1290         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1291         removing
1292
1293         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1294         removing and implemented Havoc's GdkWindow state functions; 
1295         stick/unstick only as no-op, cause I don't know how to emulate 
1296         on win32 ...
1297
1298         * gtk/gtk.def : updated
1299
1300         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1301
1302         * gtk/gtktypeutils.c : #include <string.h>
1303
1304         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1305
1306 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1307
1308         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1309         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1310         not a boxed.
1311
1312 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1313
1314         * docs/Changes-2.0.txt:
1315         Document expose event->region change and that gtk_widget_event
1316         doesn't allow passing expose events.
1317
1318         * gdk/gdkevents.h:
1319         Add region to expose event.
1320         
1321         * gdk/gdkevents.c:
1322         Handle event->region in gdk_event_copy() and gdk_event_free().
1323
1324         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1325         Generate expose_event->region when creating expose events.
1326
1327         * gdk/x11/gdkevents-x11.c:
1328         Generate expose events with regions when translating X events.
1329
1330         * gtk/gtkcontainer.[ch]:
1331         Default expose handler that propagates expose events to NO_WINDOW
1332         children. New function gtk_container_propagate_expose()
1333
1334         * gtk/gtkwidget.[ch]:
1335         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1336         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1337         expose events. New function gtk_widget_send_expose() to send expose
1338         events. New function gtk_widget_region_intersect() to calculate
1339         window/region intersections.
1340         
1341         * gtk/gtkmain.c (gtk_main_do_event):
1342         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1343         Use gtk_widget_send_expose() to send expose events.
1344         
1345         * gtk/gtkbin.c:
1346         * gtk/gtkbox.c:
1347         * gtk/gtkfixed.c:
1348         * gtk/gtkimagemenuitem.c:
1349         * gtk/gtklist.c:
1350         * gtk/gtkpacker.c:
1351         * gtk/gtktable.c:
1352         * gtk/gtktree.c:
1353         Remove expose handler, using the default container implementation
1354         instead.
1355         
1356         * gtk/gtkbutton.c:
1357         * gtk/gtkcheckbutton.c:
1358         * gtk/gtkeventbox.c:
1359         * gtk/gtkfixed.c:
1360         * gtk/gtkhandlebox.c:
1361         * gtk/gtklayout.c:
1362         * gtk/gtklistitem.c:
1363         * gtk/gtkmenu.c:
1364         * gtk/gtkmenubar.c:
1365         * gtk/gtkmenuitem.c:
1366         * gtk/gtknotebook.c:
1367         * gtk/gtkoptionmenu.c:
1368         * gtk/gtkpaned.c:
1369         * gtk/gtkscrolledwindow.c:
1370         * gtk/gtktogglebutton.c:
1371         * gtk/gtktoolbar.c:
1372         * gtk/gtktreeitem.c:
1373         * gtk/gtkviewport.c:
1374         Chain expose handler to parent class handler. Use
1375         gtk_container_propagate_expose() to propagate exposes.
1376
1377         * gtk/gtkclist.c (check_exposures):
1378         * gtk/gtktext.c (process_exposes):
1379         Use gtk_widget_send_expose instead of gtk_widget_event.
1380
1381 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1382
1383         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1384
1385 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1386
1387         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1388         unref the nodes.   Fixes bug #50058.
1389
1390         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1391         "::ref_iter" to "::ref_node".
1392         (gtk_tree_model_unref_node): change "::unref_iter" to
1393         "::unref_node". Fixes bug #50064.
1394
1395 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1396
1397         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1398         support for invisible cells.
1399          (gtk_tree_view_bin_expose): ditto
1400
1401 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1402
1403         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1404         on gobjects.
1405
1406         * tests/testtreefocus.c (main): New test file.
1407
1408         * tests/testtreeview.c: update to latest glib changes.
1409
1410         * tests/testtreecolumns.c: update to latest glib changes.
1411
1412 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1413
1414         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1415
1416 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1417
1418         * *.c: added accumulator data argument to g_signal_newc()
1419         functions.
1420
1421         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1422         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1423         * gtk/treestoretest.c (make_window):
1424         s/g_signal_connect/g_signal_connectc/.
1425
1426         * gtk/gtktextbuffer.c: completed signal arg fixups,
1427         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1428
1429 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1430
1431         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1432         G_CONST_RETURN.
1433
1434         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1435         ::hierarchy-changed signal when a widget changes
1436         from anchored to unanchored or vice versa.
1437         (anchored means 
1438          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1439         Use a private flag to keep track of this efficiently.
1440
1441 2001-03-07  Havoc Pennington  <hp@redhat.com>
1442
1443         * gtk/testgtk.c (create_spins): uglify so that size request gets
1444         tested.
1445
1446         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1447         request on values for upper/lower, completes #6152
1448
1449 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1450
1451         * Makefile.am: Remove gtk-config-2.0 again.
1452         (Grrrr, pkg-config. And stops make loops.)
1453
1454 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1455
1456         * gtk/gtksignal.[hc]: removed old emission hook API.
1457         
1458         * docs/Changes-2.0.txt: fixed sections.
1459         
1460         * gtk/gtktextbuffer.c: signal arg fixups.
1461
1462 2001-03-07  Havoc Pennington  <hp@redhat.com>
1463
1464         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1465
1466         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1467         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1468         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1469         validation and the redraw which is higher priority than the
1470         validation.
1471
1472 2001-03-07  Havoc Pennington  <hp@redhat.com>
1473
1474         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1475         (gtk_entry_set_property): remove trailer
1476
1477         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1478         (gtk_entry_get_width_chars): new functions, to set size request to 
1479         a given number of characters
1480
1481         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1482
1483         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1484         (gtk_dialog_get_has_separator): new function
1485         (run_delete_handler): fix to not emit "response" signal
1486         because we already did in the delete event handler installed
1487         at dialog creation time.
1488         
1489         * gtk/gtkdialog.h: add a has_separator property,
1490         add GTK_DIALOG_NO_SEPARATOR flag
1491
1492 2001-03-07  Havoc Pennington  <hp@redhat.com>
1493
1494         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1495         off decorations for a window.
1496
1497         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1498         changes
1499
1500         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1501         to get location of PangoLayout inside the label, closes #51198
1502
1503         * gtk/testgtk.c (create_bbox): fix up button box usage
1504
1505         * gtk/testcalendar.c (create_calendar): fix up button box usage
1506
1507         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1508
1509         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1510
1511         * gtk/gtkhbbox.h: deprecations
1512
1513         * gtk/gtkvbbox.h: deprecations
1514
1515         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1516         emulate deprecated gtk_button_box_get_spacing
1517
1518         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1519         the "set global default" functions
1520         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1521         GtkBox base class
1522
1523         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1524
1525         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1526         render the icon, return the missing image icon.
1527
1528         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1529         image icon if the load fails.   
1530
1531         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1532         when no image is found; should be the Netscape "missing image"
1533         icon eventually but for now is a random image
1534
1535         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1536         role for the session manager
1537
1538         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1539
1540         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1541         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1542
1543         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1544
1545 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1546
1547         * gtk/*.c: marshaller fixes.
1548         
1549         * gtk/gtkmarshal.list: extreme cleanup.
1550
1551         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1552         param spec for now.
1553
1554         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1555         where appliable.
1556
1557         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1558         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1559         which are not reference counted:
1560         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1561         PangoFontDescription, GtkTreeIter and GtkTreePath.
1562
1563 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1564
1565         * gtk/gtktreeselection.h: 
1566         * gtk/gtktreemodel.c:
1567         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1568         file should be included directly, and gobject/gmarshal.h
1569         as well as gtk/gtkmarshal.h even can't be included directly.
1570
1571         * Makefile.am: grr, install gtk-config-2.0.
1572
1573         * gtk/testgtk.c:
1574         * gtk/simple.c:
1575         * gtk/gtkmenu.c:
1576         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1577         passing "*signal*::*" args to gtk_widget_set().
1578         
1579         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1580         
1581         * gtk/*.c: removed trailer arg from property setters and getters.
1582         macro fixups.
1583
1584 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1585
1586         * gtk/gtklabel.c (set_markup): Removed warning
1587
1588 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1589
1590         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1591         field to allow you to hide cell renderers.
1592
1593         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1594
1595         * gtk/gtktreeview.c: Add support for invisible cells.
1596
1597 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1598
1599         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1600         Add "clicked" signal back to columns.
1601
1602         * ChangeLog: remove conflict markers.
1603
1604 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1605
1606         * gtk/gtkbutton.c: Add animation of activation by, on 
1607         activate, pressing the button, and adding a timeout that 
1608         releases the button after 250ms or on key release and
1609         emits ::clicked. (#51501)
1610
1611         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1612         action area, we connect to ::clicked instead of ::activate
1613         so the dialog stays up through the animation.
1614
1615 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1616
1617         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1618         check the ignore_enter flag for the menu shell that
1619         the item is actually a child of, not for attached
1620         submenus. (#51536)
1621
1622 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1623
1624         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1625         special key-press grab handling for widgets within
1626         GtkWindows. Otherwise, fall through to normal case.
1627
1628         This prevents key events being sent twice to GtkInvisible
1629         widgets, which can cause all sorts of mischief.
1630
1631 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1632
1633         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1634         widget is in effect, give the grab widget a first
1635         crack at KEY_PRESS/RELEASE events. (#424)
1636
1637 2001-03-06  James Henstridge  <james@daa.com.au>
1638
1639         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1640         offset for the window_state_event to point at window_state_event
1641         rather than no_expose_event.
1642
1643 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1644
1645         * gtk/gtkimmodule.h: fix busted /* comment */
1646
1647 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1648
1649         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1650         object properties.
1651
1652 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1653
1654         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1655         add object properties.
1656
1657         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1658         to add object properties.
1659
1660         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1661         object properties.
1662
1663         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1664         add object properties.
1665
1666         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1667         object properties.
1668
1669 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1670
1671         * gtk/gtktreemodel.c: renamed "child_toggled" to
1672         "has_child_toggled".
1673
1674         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1675         handle new signal name.
1676
1677         * gtk/gtktreestore.c: Updated to handle new signal name.
1678         * gtk/gtklisttore.c: Updated to handle new signal name.
1679         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1680
1681 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1682
1683         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1684         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1685
1686 2001-03-05  Michael Natterer  <mitch@gimp.org>
1687
1688         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1689         pixbuf-engine coincidentially also failed to make one of it's
1690         parent_class pointers static, causing overwriting of GtkLabel's
1691         parent_class pointer in pixbuf_style_class_init().
1692         (Will commit the fix to the pixbuf-engine too).
1693
1694 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1695
1696         * gdk/gdkwindow.h:
1697         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1698         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1699         gdk_window_set_icon_list for net wmspec functionality.
1700
1701         * gdk/x11/gdkwindow-x11.c:
1702         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1703         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1704         gdk_window_set_icon_list.
1705         Added gdk_wmspec_change_state helper function and used it in the code.
1706         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1707
1708         * gtk/gtkdialog.c (gtk_dialog_init):
1709         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1710
1711         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1712         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1713
1714         * gtk/gtkwindow.c:
1715         new function gtk_window_set_type_hint.
1716         On realize, set type hint and modal hint.
1717
1718         * gtk/gtkwindow.h:
1719         Added type_hint field and gtk_window_set_type_hint.
1720
1721 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1722
1723         * gtk/gtklabel.[ch]:
1724         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1725         New function gtk_label_get_accel_keyval () to get the underline accelerator
1726         of the label. Setting the label pattern overrides other attributes.
1727
1728 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1729
1730         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1731         Added missing initializers to gtk_rc_style_init().
1732
1733 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1734
1735         * gtk/gtktextview.c: fixed bug #51097 about setting 
1736         gtk_text_view_set_border_window_size() if the widget is 
1737         already realized.
1738
1739 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1740
1741         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1742
1743         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1744         comment. Won't do to have duplicated doc comments between
1745         the platform subdirs.
1746
1747 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1748
1749         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1750           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1751
1752         Detectable auto-repeat - make a repeating key generate
1753         press/press/press/release instead of press/release pairs.
1754
1755         If we have Xkb and XkbSetDectableAutoRepeat supports
1756         that, we do it that way. Otherwise, when we get
1757         a release event, we check ahead with XPending to see
1758         if the next key is a KeyPress with the same keycode
1759         and timestamp. (Not 100% reliable, but pretty close.)
1760           
1761 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1762         
1763         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1764         special key-press grab handling for widgets within
1765         GtkWindows. Otherwise, fall through to normal case.
1766  
1767         This prevents key events being sent twice to GtkInvisible
1768         widgets, which can cause all sorts of mischief.
1769  
1770 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1771  
1772         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1773         widget is in effect, give the grab widget a first
1774         crack at KEY_PRESS/RELEASE events. (#424)
1775  
1776 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1777
1778         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1779         to extend the selection. (Roughly based on patch
1780         from Jay Cox, #50939)
1781
1782         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1783         to properly handle previous GDK_BUTTON_PRESS. 
1784         (Patch from Jay Cox, #50938)
1785
1786         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1787         '\0' back along with the deleted text. (#51148)
1788
1789 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1790
1791         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1792         the group when extracting it from the X keyboard event.
1793
1794         * modules/input/Makefile.am modules/input/imipa.c: 
1795         Simple module for entering IPA. (Do we need a 
1796         gtk-stupid-input-tricks CVS module?)
1797
1798 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1799
1800         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1801         const.
1802
1803         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1804
1805         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
1806         is no focus widget for the dialog currently, grab the focus as well
1807         as the default.
1808
1809         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
1810         the action area's children to iterate through, not the
1811         dialog's children.
1812
1813 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
1814
1815         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
1816         Add plug-socket tests. (Won't work worth a darn until I commit
1817         the rest of the plug-socket changes, but no reason these
1818         can't go into CVS now.)
1819
1820 2001-03-02  Havoc Pennington  <hp@redhat.com>
1821
1822         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
1823         _gdk_region_get_xrectangles()
1824
1825         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
1826
1827         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1828
1829         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1830         function, contributed by Ron Steinke    
1831
1832         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1833         gdk_net_wm_supports
1834
1835         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1836         New function, contributed by Ron Steinke
1837
1838         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1839         used to line up the text in the entry when using the entry for
1840         editable sheet cell hacks
1841
1842         * gtk/testgtk.c (create_entry): test the activate_default setting
1843         on GtkEntry
1844
1845         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1846         cause the entry to activate the default button for a dialog when 
1847         activated
1848         (gtk_entry_get_activates_default): new function
1849
1850 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1851
1852         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1853         Hwang to move call to sync_selection() up a few lines
1854         to before the row list is modified, to fix crash when
1855         removing rows in the undo_selection list.
1856
1857         (Test case provided by Daniel Elstner:
1858
1859         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1860
1861 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1862
1863         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1864         of tree->root_tree in parent_set rather than _map(), 
1865         fixing #50892 in a bit better manner.
1866
1867 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1868
1869         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1870
1871 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1872
1873         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1874         gtk_default_draw_shadow.
1875
1876 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1877
1878         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1879         warning, make warnings more verbose, treat a error
1880         in shmat as permanent, and don't try again.
1881         (#51163, Ed Randall.)
1882
1883 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1884
1885         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1886         delay for the first click before starting to scroll.
1887         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1888
1889         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1890         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1891
1892 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1893
1894         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1895         cleanup to remove some references to unused
1896         ->xoffset, ->yoffset.
1897
1898 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1899
1900         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1901         mask. (#51039, fix from Martin Maierhofer)
1902
1903 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1904
1905         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1906         for unshifted + and shifted = for non-us keyboards.
1907         Make <Control>+ and <Control>- work as well as 
1908         <Control>KP_Plus, <Control>KP_Minus for recursive
1909         open/close.  (#2682, René Seindal)
1910
1911 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1912
1913         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1914         the active menu item before deactivating the menu,
1915         so gtk_menu_popdown doesn't change the history. (#50964)
1916         
1917 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1918
1919         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1920         draw lines with text_gc rather than black_gc.
1921         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1922
1923 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1924
1925         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1926         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1927         less interrelated then it was, but it still requires the
1928         GtkTreeView to map it.
1929
1930         * test/testtreecolumn.c: Now I can add a column to one view,
1931         remove it, add it to the another view, remove it, then re-add it
1932         to the first.  Nifty.
1933
1934 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1935
1936         * docs/tutorial/gtk-tut.sgml: Minor corrections
1937
1938 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1939
1940         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1941         GtkRowReference.
1942
1943 2001-02-28  Havoc Pennington  <hp@redhat.com>
1944
1945         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1946         draw_default
1947         (gtk_widget_draw_focus): remove this function; we could instead
1948         make it just gtk_widget_draw(), but in most cases I think the
1949         result would be broken user code, so think it's better to have
1950         that code not compile and get fixed
1951         (gtk_widget_draw_default): ditto
1952
1953         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1954         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1955         
1956         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1957         widgets lose/get the default, instead of calling draw_default
1958         
1959         * docs/Changes-2.0.txt: note about all this
1960
1961         Then fixed every widget in GTK, I won't list all the filenames.
1962
1963 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1964
1965         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1966         _gtk_tree_row_reference_deleted.
1967         (inserted_callback): Proxy out to
1968         _gtk_tree_row_reference_inserted.
1969         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1970         get around signal emission ordering problem.
1971
1972         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1973         fix to work with SINGLE 
1974         (_gtk_tree_selection_internal_select_node): Major sanitization on
1975         selections.  SINGLE now seems to work.
1976
1977         * tests/Makefile.am: add testtreecolumn.c:
1978
1979         * tests/testtreecolumn.c: New test.  Mostly points out selection
1980         bugs currently, but will test columns later.
1981
1982         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1983         selection bug.  I hate touching this code -- it's scary.
1984
1985 2001-02-26  Havoc Pennington  <hp@redhat.com>
1986
1987         * gtk/testgtk.c: test the window state stuff
1988
1989         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1990         window come to the user's attention as if it were just created
1991         (gtk_window_iconify): new function
1992         (gtk_window_deiconify): new function
1993         (gtk_window_stick): new function
1994         (gtk_window_unstick): new function
1995         (gtk_window_maximize): new function
1996         (gtk_window_unmaximize): new function
1997
1998         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1999
2000         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2001
2002         * gdk/x11/gdkevents-x11.c: create window state events when
2003         appropriate
2004         (gdk_wmspec_supported): new function
2005
2006         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2007         iconification before showing the window
2008         (gdk_window_deiconify): new function
2009         (gdk_window_stick): new function
2010         (gdk_window_unstick): new function
2011         (gdk_window_maximize): new function
2012         (gdk_window_unmaximize): new function
2013
2014         * gdk/gdkwindow.c: store the window state in the window; 
2015         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2016         window->mapped.
2017         (gdk_window_get_state): return the current window state
2018
2019         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2020         (gdk_event_get_state): handle GDK_WINDOW_STATE
2021         (gdk_synthesize_window_state): function to create the window state
2022         events
2023
2024         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2025         event, for changes to "window state" such as maximized, sticky, 
2026         etc.
2027         
2028         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2029         focuses a window
2030
2031         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2032         finds out if we support a given WM spec hint
2033
2034 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2035
2036         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2037
2038 2001-02-25  Hans Breuer  <hans@breuer.org>
2039
2040         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2041         cause we want to loose those prototypes only in the latter case
2042
2043         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2044         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2045         impl member variable instead
2046
2047         * gtk/gtk.def : updated
2048
2049         * gtk/gtklist.c : 
2050         * gtk/gtkmenus.c : include <string.h> for memset ()
2051
2052         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2053         for everthing built here, but for gtk-x.x.dll only. This solves
2054         problem of indifferent gtk type definitions
2055
2056 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2057
2058         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2059
2060 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2061
2062         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2063         column that is exposed.
2064
2065         (_gtk_tree_view_update_size): Changed name from set_size, and
2066         changed function to do more work, and not force people calling it
2067         to figure out the size.  Simplifies a lot of code elsewhere.
2068
2069 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2070
2071         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2072         return solid masks for xpms that have no transparent color.
2073         This makes the ..._create_from_xpm... API backwards
2074         compatible.
2075
2076 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2077
2078         * README.win32: Update. Mention the gtk-1-3-win32-production
2079         branch.
2080
2081         * gdk/win32/bdfcursor.c: New file. A program that generates
2082         xcursors.h. Thanks to Stefan Ondrejicka.
2083
2084         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2085         compact format.
2086
2087         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2088
2089         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2090         function, uses xcursors.h.
2091         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2092         cursor from inline data instead of using LoadCursor() to generate
2093         it from a resource.
2094
2095         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2096         event, must check the Windows message for mouse button state, as
2097         the GDK event state might not have been built if it is
2098         undelivered. Remove one goto.
2099
2100         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2101         SetCursor() if the current cursor as returned by GetCursor() is
2102         the window's previous cursor. The ChildWindowFromPoint() test
2103         apparently didn't work correctly.
2104
2105         * gdk/win32/rc/*.cur: Remove.
2106
2107         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2108
2109         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2110
2111         * gtk/makefile.{mingw,msc}.in: Updates.
2112
2113 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2114
2115         * gtk/gtktreemodel.h: add functions for signal emission.
2116
2117         * gtk/gtktreestore.c: move to use above functions instead of
2118         g_signal_emit.
2119
2120         * gtk/gtkliststore.c: ditto
2121
2122 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2123
2124         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2125         GObject instead of GtkObject.
2126
2127         * gtk/gtkliststore.c: ditto.
2128
2129         * gtk/gtktreemodelsort.c: ditto.
2130
2131         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2132         GtkTreeModelIface, instead of in each model.
2133
2134 2001-02-21  Havoc Pennington  <hp@redhat.com>
2135
2136         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2137         unbreak this function
2138
2139         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2140         properties
2141
2142         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2143         properties
2144
2145         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2146         properties
2147
2148         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2149         mean unset the max length
2150
2151 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2152
2153         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2154         Changed name to be set_cell_data_func to make it clear what
2155         the functino does.  Close bug #51069.
2156
2157 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2158
2159         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2160         have memory actually freed.  Keeps box running longer.
2161
2162 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2163         
2164         * gtk/gtkseparatormenuitem.[ch]:
2165         Added new menu separator item. The drawing and size handling
2166         is still done in GtkMenuItem, but the API is a bit more sane.
2167         
2168         * gtk/Makefile.am:
2169         Add gtkseparatormenuitem.[ch].
2170
2171         * gtk/gtk.h:
2172         Add gtkseparatormenuitem.h.
2173         
2174         * gtk/gtkentry.c:
2175         * gtk/gtkmenufactory.c:
2176         * gtk/gtktextview.c:
2177         Use the new API for menu separators.
2178         
2179         * demos/gtk-demo/menus.c (create_menu):
2180         Add some GtkSeparatorMenuItem demo code.
2181
2182 2001-02-20  Havoc Pennington  <hp@redhat.com>
2183
2184         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2185         Lee Mallabone
2186
2187         * gtk/gtkarrow.c: Convert to new property API, patch from 
2188         Lee Mallabone
2189
2190 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2191
2192         * tests/testtreeview.c (toggled_callback): fix to reflect change
2193         in GtkTreeModelStore.
2194
2195 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2196
2197         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2198         function to create an icon set from a pixbuf.
2199
2200 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2201
2202         * gtk/gtkcellrenderertext.[ch]:
2203         Add a "markup" property.
2204
2205         * gtk/treestoretest.c:
2206         Use the markup property, remove some leftover stuff from
2207         GtkTreeModelMapping.
2208
2209 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2210
2211         * gtk/gtklabel.c (gtk_label_set_selectable):
2212         Queue a redraw if the selectable setting was changed.
2213
2214 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2215
2216         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2217         Actually copy the whole gc, not just the public parts.
2218         
2219         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2220         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2221         labels.
2222
2223 2001-02-19  Havoc Pennington  <hp@pobox.com>
2224
2225         * gdk/gdkwindow.c: docs
2226
2227         * gdk/gdkrgb.c: docs
2228
2229         * gdk/gdkregion-generic.c: docs
2230
2231         * gdk/gdkgc.c (gdk_gc_set_values): docs
2232
2233         * gdk/gdkdraw.c: docs
2234
2235         * gdk/gdkdrawable.h: deprecate drawable get/set data
2236
2237 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2238
2239         * demos/gtk-demo/dialog.c: Add simple new demo.
2240
2241 2001-02-19  Havoc Pennington  <hp@redhat.com>
2242
2243         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2244         insert_child_anchor signal, bug #50245
2245
2246         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2247         from create_child_anchor, so the anchor is passed in
2248
2249         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2250         (_gtk_widget_segment_new): have the child anchor object passed in, 
2251         instead of creating it.
2252
2253         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2254         to gtk_text_buffer_get_modified
2255
2256 2001-02-19  Havoc Pennington  <hp@redhat.com>
2257
2258         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2259         changed GLib without fixing GTK
2260
2261         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2262         functions to have an underscore in front. Most of them should 
2263         probably just go away, but for starters don't export them.
2264         Bug #50482
2265
2266 2001-02-19  Havoc Pennington  <hp@redhat.com>
2267
2268         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2269         excluded by default
2270
2271         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2272         clean up the old code a bit
2273
2274         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2275         inconsistent state
2276
2277         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2278         draw inconsistent state
2279
2280         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2281         (create_menu): add inconsistent test
2282
2283         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2284         new function
2285         (gtk_check_menu_item_get_inconsistent): new function
2286         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2287         state (using etched in for now)
2288
2289         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2290         draw inconsistent state
2291
2292         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2293         function, used when the user has selected a range of stuff in
2294         different states
2295         (gtk_toggle_button_get_inconsistent): accessor for that
2296         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2297         don't know what else to do)
2298
2299 2001-02-19  Hans Breuer <hans@breuer.org>
2300
2301         * gtk/gtk.def : updated exported symbols
2302
2303         * gtk/makefile.msc.in : updated
2304
2305         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2306         a colormap, when invoked from testgtk::entry. I'm not sure where
2307         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2308         avoids immediate crashing ...
2309
2310         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2311         any objections ?
2312
2313         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2314         0 parameter. At least msvc doesn't like macros with var args. 
2315         I simply removed the extra 0, was it a feature or a typo ?
2316
2317         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2318         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2319         because the value assignment to the internal struct wasn't working.
2320         I'm not absolutely sure. The problem could have been resolved by
2321         changing the "func" declartion in the struct, but was the pointer
2322         to the function pointer intended ?
2323
2324         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2325
2326         * gdk/gdk.def : updated exported symbols
2327
2328         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2329         only use SetDIBitsToDevice if there is a palette at the drawable
2330         and the image is GDK_VISUAL_PSEUDO_COLOR
2331
2332         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2333
2334         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2335
2336         * gdk/*/makefile.msc : updated
2337
2338 2001-02-19  Havoc Pennington  <hp@redhat.com>
2339
2340         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2341         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2342
2343         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2344         (gdk_key_repeat_restore): nuke
2345
2346         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2347         (gdk_init_check): no atexit func
2348
2349         * gdk/gdkrgb.h: mark some stuff deprecated
2350
2351         * gdk/gdkcolor.h: mark some stuff deprecated
2352         
2353         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2354
2355         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2356
2357 2001-02-16  Havoc Pennington  <hp@redhat.com>
2358
2359         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2360         scroll steps.
2361
2362         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2363         steps, and add Ctrl-arrow shortcuts for paging visually as with
2364         HScale, since Page Up and Page Down move logically.
2365
2366         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2367         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2368         
2369         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2370         steps
2371         (gtk_range_scroll): handle the visual steps
2372
2373         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2374         scroll steps
2375
2376         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2377         steps, not the logical ones.
2378
2379         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2380         (scroll_vertical): handle up/down steps
2381
2382 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2383
2384         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2385         Copy data and free data with free().
2386
2387         * gdk-pixbuf/gdk-pixbuf.c:
2388         * gdk-pixbuf/io-jpeg.c:
2389         * gdk-pixbuf/io-png.c:
2390         Use g_try_malloc/g_free instead malloc/free.
2391         
2392         * gdk-pixbuf/test-gdk-pixbuf.c:
2393         Must... initialize... gobject...
2394         
2395         * gdk-pixbuf/pixops/timescale.c:
2396         * gtk/gtkcalendar.c:
2397         Use g_malloc instead of malloc.
2398         
2399 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2400
2401         * gtk/testgtkrc:
2402         Comment out property assignments, these don't work yet.
2403
2404 2001-02-17  Havoc Pennington  <hp@pobox.com>
2405
2406         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2407         bit.
2408
2409 2001-02-17  Havoc Pennington  <hp@pobox.com>
2410
2411         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2412         shadowed variables that had broken size request in some cases,
2413         leading to bogus tooltips (#50996)
2414
2415 2001-02-06  Jon K Hellan  <hellan@acm.org>
2416
2417         Implement fast browsing of tooltips, bug #50619
2418         
2419         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2420         and last_popdown
2421         
2422         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2423         use_sticky_delay and last_popdown.
2424         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2425         time of popdown.
2426         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2427         is NULL.
2428         (gtk_tooltips_recently_shown): New static function.  Return true
2429         if < sticky_delay has elapsed since last popdown.
2430         (gtk_tooltips_event_handler): Display window after sticky_delay
2431         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2432         since last popdown.
2433         
2434 2001-02-17  Havoc Pennington  <hp@pobox.com>
2435
2436         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2437         instead of (). #6394
2438
2439         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2440         G_CONST_RETURN, make it return by reference, #50473
2441         
2442 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2443
2444         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2445         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2446         setup fields contain garbage (e.g. subwindow, breaking
2447         gdk_drawable_ref() upon event copy).
2448         (gtk_menu_stop_navigating_submenu_cb): same here.
2449
2450         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2451         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2452         * gtk/gtkclist.c (vertical_timeout): 
2453         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2454         default-zero-intialization for unions to memset(,0,), as unions are
2455         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2456         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2457
2458         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2459         g_closure_sink() warning.
2460
2461         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2462         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2463         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2464         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2465         
2466 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2467
2468         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2469         gtk_*_store_get, and moved to GtkTreeModel.
2470
2471         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2472
2473         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2474
2475         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2476
2477         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2478         set the func.
2479
2480         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2481         freeze/thaw notify between setting all the properties for a cell.
2482
2483         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2484
2485 2001-02-15  Havoc Pennington  <hp@redhat.com>
2486
2487         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2488         the X coordinates so they're with respect to the line, rather than 
2489         with respect to the layout.
2490
2491         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2492         Mallabone
2493
2494         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2495         and inverted test
2496
2497         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2498         #50806
2499
2500         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2501
2502         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2503         gtk_text_iter_is_end
2504
2505         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2506         rename gtk_text_buffer_get_end_iter
2507
2508         * gtk/testgtk.c (create_labels): Add test for selectable
2509
2510         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2511         the selection stuff. This code is kind of broken since it doesn't 
2512         use the theme engine.
2513
2514         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2515         fix infinite loop and y offset problem
2516         (gdk_draw_layout_line_with_colors): fix foreground color handling
2517
2518         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2519         that makes the label selectable.
2520         
2521         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2522         layout when the style is set, since fonts etc. could have changed.      
2523
2524 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2525
2526         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2527
2528         * gtk/gtktreemodelsimple.[ch]: removed.
2529
2530 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2531
2532         * gtk/gtktreemodelmapping.[ch]:
2533         New files. Implement GtkTreeModelMapping.
2534         
2535         * gtk/Makefile.am:
2536         Add gtktreemodelmapping.[ch].
2537         
2538         * gtk/gtk.h:
2539         Add gtktreemodelmapping.h
2540
2541         * gtk/treestoretest.c:
2542         Test the GtkTreeModelMapping
2543
2544 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2545
2546         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2547         have a demo, we might as well pass in real values.  Thanks to
2548         clahey for pointing this out.
2549
2550 2001-02-14  Havoc Pennington  <hp@pobox.com>
2551
2552         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2553         "static" to a private function
2554         (gtk_image_menu_item_class_init): remove destroy handler,
2555         add "image" object property
2556
2557 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2558
2559         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2560         Add a shortcut if the window and the current clip_region doesn't
2561         overlap. This is needed when there are a lot of windows in a
2562         window. The layout test in testgtk is a good test.
2563
2564         * gdk/linux-fb/gdkwindow-fb.c:
2565         Whitespace fix.
2566
2567 2001-02-13  Sven Neumann  <sven@convergence.de>
2568
2569         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2570
2571 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2572
2573         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2574         Don't reference last_cursor if it is null. Fixes crash when rotating
2575         the screen before having moved the mouse.
2576
2577         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2578
2579         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2580
2581         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2582         when using 90 or 270 degrees rotation.
2583
2584 2001-02-12  Havoc Pennington  <hp@pobox.com>
2585
2586         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2587         it always set the foreground, even if we were only using
2588         a stipple.
2589         (gdk_draw_layout_line_with_colors): new function, allow
2590         override colors
2591         (gdk_draw_layout_with_colors): new function, allow override
2592         colors
2593         (gdk_pango_layout_line_get_clip_region): function to get the clip
2594         region for a logical text range
2595         (gdk_pango_layout_get_clip_region): get the clip region for a
2596         logical text range
2597
2598         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2599         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2600         the right number of arguments.
2601
2602         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2603         enhance the function to check that node data corresponds to a 
2604         view still belonging to the tree.
2605
2606         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2607         GtkTreePath
2608         (gtk_tree_view_inserted): ditto
2609         (gtk_tree_view_child_toggled): ditto
2610
2611         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2612         simplify this code.
2613
2614         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2615         a PangoAttrList
2616
2617         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2618
2619         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2620
2621         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2622         size in the size request 
2623         (gtk_menu_bar_size_allocate): consider toggle size here
2624
2625         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2626         that displays a widget in the toggle slot
2627
2628         * gtk/testgtk.c: test GtkImageMenuItem
2629
2630         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2631         
2632         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2633         request and allocation
2634
2635         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2636
2637         * gtk/gtkcheckmenuitem.c
2638         (gtk_check_menu_item_toggle_size_request): ditto
2639         
2640 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2641
2642         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2643         reference.
2644
2645         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2646         and refuse to initialize GTK+ if they fail.
2647
2648 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2649
2650         * configure.in: Add check for gtk-doc version.
2651
2652 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2653
2654         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2655         where the xpad/ypad was only being used on one side!
2656
2657 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2658
2659         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2660         function, copied from X11 version.
2661
2662         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2663         DestroyCursor failures. The reason for the problem (despite the
2664         inconsistent messages from GetLastError()) was that
2665         DestroyCursor() cannot be called while a cursor is set in a
2666         window. Set the new cursor first and then destroy the old one.
2667         Thanks to jpe@archaeopteryx.com.
2668
2669         * gdk/win32/gdkcc-win32.c: Remove.
2670
2671         * gdk/win32/Makefile.am: Remove from here, too.
2672         
2673         * gdk/gdk.def
2674         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2675
2676         * gtk/gtk.def
2677         * gtk/makefile.mingw.in: Updates.
2678
2679 2001-02-08  Havoc Pennington  <hp@redhat.com>
2680
2681         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2682         add a widget to a bin that already has a child.
2683
2684         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2685
2686         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2687         
2688         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2689
2690         * gdk/gdk.h: remove gdkcc.h
2691
2692         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2693
2694         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2695         GdkPixbuf, since the previous implementation was GdkColorContext
2696         dependent.
2697
2698         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2699         
2700 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2701
2702         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2703         a sane value!
2704
2705 2001-02-08  Havoc Pennington  <hp@redhat.com>
2706
2707         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2708         lighten them.
2709
2710 2001-02-08  Havoc Pennington  <hp@redhat.com>
2711
2712         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2713         validation idle
2714
2715         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2716         cell renderer
2717
2718         * demos/pixbuf-demo.c (timeout): remove deprecated
2719         gtk_widget_draw
2720
2721         * demos/testpixbuf-save.c (main): remove deprecated
2722         gtk_drawing_area_size
2723
2724         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2725         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2726         at the start of the allocation.
2727         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2728         unsetup or NULL model.
2729
2730         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2731         even/odd/sorted cells in the tree view.
2732
2733         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2734         bugfixes
2735
2736         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2737         backgrounds with draw_flat_box using different detail for even/odd
2738         rows.
2739
2740         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2741         row, so we can draw the alternating colors thing
2742
2743         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2744         property from a synonym property, notify for the synonym.
2745         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2746         (gtk_text_tag_get_property): Always return the font, even if
2747         all its fields aren't set
2748
2749         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2750         store the attr list; it leaves us with no way to change attributes
2751         in _render according to the render flags, and no way to implement
2752         get_property. Instead store all the specific text attributes. 
2753         Separate whether an attribute is enabled from its value. Sync all
2754         properties with GtkTextTag, make them all consistent, etc.
2755
2756         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2757         renderers can highlight the sort row/column     
2758
2759         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2760         accessor functions to get values; this has the side effect of
2761         showing up which accessor functions were missing. Added those.
2762
2763         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2764         set_alignment, to be consistent with GtkLabel, GtkMisc
2765
2766         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2767         arrow.
2768
2769         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2770
2771         * gtk/gtktreesortable.h: updates in here
2772
2773 2001-02-07  Sven Neumann  <sven@convergence.de>
2774
2775         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2776         pango dimensions after painting the background. We used to draw
2777         gigantic flat boxes here.
2778
2779 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2780
2781         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2782         error introduced with earlier commit) (pointed out by
2783         Ollie Lho)
2784
2785 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2786
2787         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2788         which are no longer necessary.
2789
2790 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2791
2792         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2793
2794 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2795
2796         * gdk/gdk.def
2797         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2798         Provide dummy implementations.
2799
2800 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2801
2802         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2803
2804         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
2805         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
2806         deprecated this function.
2807
2808         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
2809         argument.
2810
2811 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
2812
2813         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
2814
2815 2001-02-03  Havoc Pennington  <hp@pobox.com>
2816
2817         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
2818         Mikael Hermansson with patch from Mikael (if there was a toggle
2819         start one after the first character in the range, this function
2820         was broken). Bug #50380
2821
2822 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
2823
2824         * configure.in: Remove confusing comment about X11.
2825
2826 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2827
2828         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2829         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2830         
2831 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2832
2833         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2834         it breaks things on BSD. If you want to compile GTK+ with
2835         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2836         when configuring, since GTK+ simply can't be "pure ANSI" 
2837         in the header files it uses. (#8170, Greg Hudson)
2838
2839 2001-02-02  Havoc Pennington  <hp@redhat.com>
2840
2841         * gtk/gtkwindow.c: docs
2842
2843         * gtk/gtkwidget.c: docs
2844         (gtk_widget_set_colormap): add a reference to the colormap
2845         (gtk_widget_get_default_colormap): add a reference to the colormap
2846
2847         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2848
2849         * gtk/gtktextiter.c: docs
2850
2851         * gtk/gtkmain.c (gtk_propagate_event): docs
2852
2853         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2854         (gtk_paned_set_position): docs
2855
2856         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2857         sort interface, no implementation yet.
2858
2859         * demos/testpixbuf.c (new_testrgb_window): replace
2860         gtk_drawing_area_size() with gtk_widget_set_usize()
2861
2862         * demos/testpixbuf-drawable.c (main): ditto
2863         
2864         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2865
2866         * gtk/gtktextbuffer.c: docs
2867
2868         * gtk/gtkstock.c: docs
2869
2870         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2871
2872         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2873
2874         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2875         
2876         * gtk/gtkimage.c: add some docs in here
2877         (gtk_image_size_request): change name of
2878         gtk_widget_render_stock_icon
2879         (gtk_image_get_icon_set): don't dup returned string
2880         (gtk_image_get_icon_set): don't dup returned string
2881
2882         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2883         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2884         and gtkiconfactory.h functions
2885
2886         * gtk/gtkiconfactory.c: add some docs in here
2887
2888         * gtk/gtkmain.c (gtk_get_default_language): document
2889         (gtk_get_current_event): document
2890         (gtk_get_current_event_state): document
2891         (gtk_get_event_widget): document
2892
2893         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2894
2895         * gtk/gtkcontainer.c: Add some documentation
2896         (gtk_container_add): give a more explanatory warning on adding an
2897         already-parented widget, this is kind of a FAQ and also a common
2898         typo that's easier to debug with a nice warning 
2899
2900         * gtk/gtkcellrenderertoggle.c
2901         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2902         adding this, it's useless
2903         (gtk_cell_renderer_toggle_set_active): remove
2904         (gtk_cell_renderer_toggle_get_radio): add
2905
2906         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2907         the NULL cell renderer, that doesn't make any sense to me. 
2908
2909         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2910         demo code should never use deprecated features.
2911
2912         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2913         code should never use deprecated features.
2914
2915         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2916         gtk_widget_queue_clear_area deprecated
2917
2918         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2919         deprecated
2920
2921         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2922
2923         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2924         a GdkImage deprecated, replaced by new consistently-named
2925         functions       
2926
2927         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2928
2929         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2930
2931         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2932         deprecated
2933
2934         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2935         so it won't appear in docs and confuse people.
2936
2937         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2938
2939         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2940         macros deprecated. (can't mark the type itself deprecated, since
2941         GtkProgressBar is not deprecated and we need the type decl to use
2942         GtkProgressBar)
2943
2944         * gtk/gtkpixmap.h: Mark deprecated
2945
2946         * gtk/gtkoldeditable.h: Mark deprecated
2947
2948         * gtk/gtklist.h: Mark deprecated
2949
2950         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2951         for anything anymore.
2952
2953         * gtk/gtkctree.h: Mark deprecated
2954
2955         * gtk/gtkclist.h: Mark deprecated
2956
2957         * gtk/gtkpreview.h: Mark deprecated
2958
2959         * gtk/gtkpacker.h: Mark deprecated
2960
2961         * gtk/gtktipsquery.h: Mark deprecated
2962
2963         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2964
2965         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2966
2967         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2968
2969         * gtk/gtkruler.h: Add comment that it will move out of GTK
2970
2971         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2972
2973         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2974
2975 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2976
2977         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2978         gdk_colormap_sync private since it was never exported
2979         in a header file.
2980
2981         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2982         colormap->colors[] for StaticGray, StaticColor colormaps.
2983
2984         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2985         was being used as if it was image->bits_per_pixel.
2986
2987         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2988         for the image in the GdkImage structure since it isn't
2989         reconstructable, and we need it to handle packed types
2990
2991         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2992         the assumption that on Win32 image->bits_per_pixel == image->depth,
2993         always.
2994
2995         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2996
2997         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2998         warning message if no converter can be found. 
2999
3000 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3001
3002         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3003         chars to isupper() / tolower(). (#567)
3004
3005         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3006         to clear up 64-bit warnings. (#567)
3007
3008 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3009
3010         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3011         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3012
3013         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3014         since some people set $(libdir) separately. (#1290, David Kaelbling)
3015
3016 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3017
3018         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3019         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3020         MAXPATHLEN, but the code here depends on a fixed value.)
3021         (#4524)
3022
3023 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3024
3025         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3026         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3027
3028 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3029
3030         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3031         viewable there is no way that moving the node will cause the 
3032         focus row to become not viewable, so omit check on the visibility
3033         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3034
3035 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3036
3037         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3038         selection before inserting new text.
3039
3040 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3041
3042         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3043         Make the sensitivity of the reparented child track that of
3044         the original parent menu item. (#34218, David Hodson)
3045
3046         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3047         the case where the current item is destroyed properly.
3048
3049         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3050         some edge cases with child-less menuitems.
3051         
3052 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3053
3054         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3055         key pop down window. (#12074, Jon K Hellan)
3056
3057 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3058
3059         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3060         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3061         The solution here isn't perfect - you get an extraneous
3062         emission of "toggle", which could conceivably confuse an app,
3063         but better than the current situation. LXR search seems to
3064         indicate that no apps in GNOME CVS connect to "toggle".
3065
3066 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3067
3068         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3069         gtk_public_h_sources to directly here to avoid warning when
3070         building srcdir != builddir. (#9656)
3071
3072 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3073
3074         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3075         handlers in gtkrange.c return the proper values (TRUE == handled)
3076         (#10316).
3077
3078         This is just the tip of the iceberg, but gtkrange.c is the
3079         most common place where the propagation is problematical,
3080         and also a place where it is almost certainly safe to change
3081         this in the stable branch.
3082
3083         (You don't want right click popups on a range control or anything...)
3084
3085 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3086
3087         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3088         area on focus out, even if a background pixmap isn't set.
3089         (#13941)
3090         
3091 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3092
3093         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3094         to deal with setting the shape properly when scrolling arrows are
3095         turned on, but not visible because there is sufficient space.
3096         (#13432)
3097
3098 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3099
3100         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3101         items with submenus, destroy the item along with the submenu.
3102         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3103         properly.
3104
3105         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3106         later.
3107
3108 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3109
3110         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3111         the focus widget sometimes wasn't drawn with the default if there
3112         was no default widget.
3113
3114         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3115         unreference pixmaps. 
3116
3117         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3118         for some extra safety.
3119
3120 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3121
3122         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3123         the text of a cell to the old pointer value better, by
3124         copying the new text before freeing the old text. Some code
3125         cleanup. (#8079, Karl Nelson)
3126
3127 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3128
3129         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3130         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3131
3132 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3133
3134         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3135         item from a menu, check to see if it matches 
3136         menu->old_active_menu_item, and if so, unref and clear
3137         old_active_menu_item (Patch from Pavel Cisler)
3138
3139         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3140         menu_shell->active_menu_item, if it is the child being
3141         removed. (Patch based on that of Gene Ragan, #50337)
3142
3143 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3144
3145         * gdk/linux-fb/gdkselection-fb.c: 
3146         * gdk/linux-fb/gdkcolor-fb.c: 
3147         * gdk/linux-fb/gdkdrawable-fb2.c: 
3148         * gdk/linux-fb/gdkfont-fb.c: 
3149         * gdk/linux-fb/gdkim-fb.c: 
3150         * gdk/linux-fb/gdkinput.c: 
3151         * gdk/linux-fb/gdkkeyboard-fb.c: 
3152         * gdk/linux-fb/gdkmain-fb.c: 
3153         * gdk/linux-fb/gdkrender-fb.c: 
3154         A bunch of whitespace cleanup.
3155         
3156 2001-01-30  Havoc Pennington  <hp@pobox.com>
3157
3158         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3159         #ifdef GTK_ENABLE_BROKEN.
3160
3161         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3162         GTK_ENABLE_BROKEN just before including the broken headers.
3163         
3164         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3165         deprecated types registered.
3166
3167         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3168         we have to test the broken stuff.
3169
3170         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3171         
3172 2001-01-30  Havoc Pennington  <hp@redhat.com>
3173
3174         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3175         here where prev pointer was set to the wrong thing
3176
3177         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3178         (gtk_tree_path_is_descendant): new function
3179
3180         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3181         cached length
3182         (gtk_list_store_get_iter): don't modify iter if we can't get the
3183         path.
3184
3185         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3186         
3187         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3188         GtkTreeDragDest
3189
3190         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3191         was causing segfault
3192
3193         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3194         pointer to NULL
3195
3196         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3197
3198         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3199         on returning FALSE
3200         (gtk_list_store_iter_children): ditto
3201         (gtk_list_store_iter_nth_child): ditto
3202         (gtk_list_store_iter_nth_child): ditto
3203         (gtk_list_store_iter_parent): ditto
3204
3205         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3206         on iter->user_data != NULL instead of silently accepting it.
3207         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3208         we are returning TRUE.
3209         (gtk_tree_store_iter_children): ditto
3210         (gtk_tree_store_iter_nth_child): ditto
3211         (gtk_tree_store_iter_parent): ditto
3212         (gtk_tree_store_insert): remove handling of parent->user_data ==
3213         NULL, replace with parent == NULL       
3214
3215         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3216         and a comment explaining things
3217
3218         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3219         interface support to GtkTreeStore.
3220
3221         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3222         FALSE if no prev, fix
3223
3224         * gtk/gtktreeview.c (set_source_row): use a row reference
3225         (set_dest_row): use a row reference
3226
3227 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3228
3229         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3230         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3231         (gtk_tree_selection_select_iter): The same as above.
3232
3233 2001-01-26  Havoc Pennington  <hp@redhat.com>
3234
3235         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3236         which holds a handle to a specific row (particular set of values
3237         in the model, i.e. pointer-identity row).
3238
3239         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3240         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3241         Still need to use it for the src/dest row saved on the drag context.
3242
3243 2001-01-26  Havoc Pennington  <hp@redhat.com>
3244
3245         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3246
3247         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3248         not offset by TREE_VIEW_HEADER_HEIGHT
3249         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3250         TREE_VIEW_HEADER_HEIGHT
3251
3252         * configure.in (included_loaders): for me, --with-included-loaders
3253         generates the error "the specified loader yes does not exist",
3254         i.e. the arg defaults to "yes", so change test for value ""
3255         to test for value "yes", and include all loaders in that case.
3256
3257         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3258
3259         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3260         handle TREE_VIEW_VERTICAL_SEPARATOR
3261         (gtk_tree_view_bin_expose): fix to consider the row offset as
3262         pointing halfway into vertical separator.       
3263         (gtk_tree_view_draw_node_focus_rect): ditto
3264
3265         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3266         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3267         (TRUE) to be called.
3268
3269         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3270         debug mode where the invalid region is colored in on invalidate,
3271         so you can see the flicker and know whether your redraw code is 
3272         doing a good job.
3273
3274         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3275         tree window coordinates (clip rect is in tree window coords)
3276
3277         * gtk/Makefile.am: add gtktreednd.[hc]
3278
3279         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3280
3281         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3282         drag-and-drop data operations on a model (so we can set up tree
3283         drag-and-drop automatically)
3284
3285         * gtk/testgtk.c: Add a window to change sensitivity in the
3286         GtkLabel test; add a way to change the entry frame in GtkEntry
3287         test
3288
3289         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3290         (gtk_entry_get_has_frame): new functions to remove the frame
3291         around an entry
3292         (gtk_entry_size_request): shrink requisition if no frame
3293         (gtk_entry_draw_focus): don't draw frame if no frame
3294
3295         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3296         checks inside a cell renderer
3297         (gtk_default_draw_option): ditto for options
3298
3299         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3300         children from the alignment, not the button
3301         (gtk_tree_view_column_init): ref/sink the column, to emulate
3302         GObject refcounting.
3303
3304         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3305         
3306         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3307         Use theme functions to draw the toggles 
3308
3309         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3310
3311         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3312         GdkPangoAttrEmbossed to use in rendering insensitive text
3313
3314         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3315
3316         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3317         using new GDK features
3318         
3319 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3320
3321         * gtk/gtkimage.c:
3322         Splitted gtk_image_clear into gtk_image_clear() and
3323         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3324         to avoid leaks.
3325
3326         * gtk/gtklabel.c (set_markup):
3327         Don't leak text.
3328
3329         * gtk/gtktextlayout.c:
3330         Always free display->shaped_objects.
3331
3332         * gtk/testgtk.c (create_clist):
3333         Don't leak custom style.
3334
3335 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3336
3337         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3338         Don't leak image. Simplify using gdk_colormap_query_color().
3339         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3340
3341         * linux-fb/gdkcolor-fb.c:
3342         Implemented gdk_colormap_query_color.
3343
3344 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3345
3346         * linux-fb/gdkcursor-fb.c:
3347         Don't leak built-in cursors.
3348
3349         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3350         Don't leak tmp_points.
3351
3352         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3353         Don't modify desc. Don't leak font if the PangoFont
3354         isn't found.
3355         
3356         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3357         Free dash_list.
3358
3359         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3360         Don't leak string.
3361         
3362 2001-01-20  Havoc Pennington  <hp@pobox.com>
3363
3364         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3365         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3366         me, matches Pango
3367
3368 2001-01-22  Havoc Pennington  <hp@redhat.com>
3369
3370         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3371
3372         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3373
3374         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3375         Remove, move back to gdk-pixbuf
3376
3377         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3378         to all the word functions
3379
3380         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3381         before doing anything on NULL layout or if we don't have the focus
3382
3383         * gtk/testtext.c (fill_example_buffer): "justification"
3384
3385         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3386         to be called "justification" not "justify"
3387
3388         * demos/gtk-demo/textview.c (create_tags): "justification"
3389         
3390         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3391
3392 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3393
3394         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3395         Don't leak visible_region. Use visible_region instead of region.
3396         
3397         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3398         Don't do extra gdk_drawable_ref(). This is not X.
3399         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3400         gdk_fb_focused_window is ref:ed.
3401         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3402         windows.
3403
3404 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3405
3406         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3407         Don't leak the PangoFontDescriptor.
3408
3409 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3410
3411         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3412         when not realized.
3413         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3414         (gtk_tree_view_realize): add scroll_to support
3415         (gtk_tree_view_finalize): add a finalize method.  Populate.
3416         (gtk_tree_view_insert_column): ref and sink the column.
3417         (gtk_tree_view_append_column): ref and sink the column.
3418         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3419         individual nodes.  Should make the code much more efficient, if
3420         actually used.
3421
3422 2001-01-19  Havoc Pennington  <hp@redhat.com>
3423
3424         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3425         byte_offset variable was being used to mean both "offset into
3426         layout" and "offset into buffer line" which was no longer true
3427         with addition of preedit string; fix
3428
3429 2001-01-19  Havoc Pennington  <hp@redhat.com>
3430
3431         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3432
3433         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3434         function
3435
3436         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3437         implement
3438
3439         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3440         scroll_to_cell, matches TextView scroll functions better
3441         (gtk_tree_view_tree_to_widget_coords): new function
3442         (gtk_tree_view_widget_to_tree_coords): new function
3443         (gtk_tree_view_get_visible_rect): new function
3444         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3445         (gtk_tree_view_draw_node_focus_rect): new function moved from
3446         draw_focus, also, use width of bin_window as width of the focus
3447         rect
3448         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3449         already-expanded rows
3450         (gtk_tree_view_get_cell_rect): new function
3451         (gtk_tree_view_get_path_at_pos): return the click position
3452         relative to the passed-in cell
3453         (gtk_tree_view_set_expander_column): new function
3454
3455         * configure.in: remove gtk-config-2.0 chmod
3456
3457         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3458         and properly handle drags with targets we don't understand
3459         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3460         scrolling anyway
3461         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3462         mark invisible
3463
3464         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3465         function
3466         (gtk_drag_dest_get_target_list): new function
3467         (gtk_drag_dest_set_target_list): new function
3468         
3469         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3470
3471         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3472         related to drag-and-drop
3473
3474 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3475
3476         * gdk/linux-fb/gdkprivate-fb.h:
3477         Define EMULATE_GDKFONT.
3478         Add extra pango_font stuff to GfkFontPrivate.
3479         
3480         * gdk/linux-fb/gdkdrawable-fb2.c:
3481         * gdk/linux-fb/gdkfont-fb.c:
3482         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3483         emulation using PangoFont.
3484
3485 2001-01-17  Havoc Pennington  <hp@pobox.com>
3486
3487         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3488         all the non-deprecated set_foo functions. Added missing object
3489         properties, and added g_object_notify() to setters. 
3490         Wrote docs.
3491         
3492 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3493
3494         * gtk/gtkmain.c
3495         * gtk/gtkrc.c: (Win32) Use the new
3496         g_win32_get_package_installation_(sub)directory() functions.
3497
3498         * config.h.win32.in: New file.
3499         
3500         * config.h.win32: Removed.
3501
3502         * configure.in: Output config.h.win32.
3503
3504         * Makefile.am: Add it to EXTRA_DIST.
3505
3506         * gtk/gtk.def: Update.
3507
3508 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3509
3510         * gtk/gtklabel.c (gtk_label_size_request): Set the
3511         attributes onto the PangoLayout even if they are newly
3512         created from label->pattern.
3513
3514 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3515
3516         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3517
3518         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3519         structures in functions. Fixes bug where gtk_dataset_*
3520         was accidentally still being used in one place, causing
3521         every dest side event to be treated independently.
3522
3523         * gtk/gtkdnd.c: Remove last vestages of handling
3524         ::draw (fixes warning)
3525         
3526         * gtk/gtkentry.[ch]: Add drag and drop support.
3527
3528         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3529         new function gtk_check_drag_threshhold() for checking
3530         to check if (dx,dy) has exceeded the threshhold for starting
3531         a drag and use it everywhere.
3532
3533 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3534
3535         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3536         add -I{includedir}/gtk-2.0.
3537
3538         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3539         gdk/gdk-pixbuf.h: Doc fixups.
3540         
3541         * gtk/gtkobject.h: Remove trailing , from enum
3542
3543 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3544
3545         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3546         Doh! Mixed up x and y.
3547
3548         * gdk/linux-fb/gdkglobals-fb.c:
3549         Removed gdk_fb_pointer_grab_window_events,
3550         added _gdk_fb_pointer_grab_owner_events and
3551         _gdk_fb_keyboard_grab_owner_events.
3552
3553         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3554         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3555         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3556         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3557         Send crossing events after ungrab finished.
3558         (gdk_keyboard_grab): Set ..._owner_events
3559         (type_masks): Move out of function.
3560         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3561         gdk_fb_keyboard_event_window): New functions, return the
3562         window an event should be targeted at. Handles grabs and
3563         event propagation. Can return NULL.
3564         (gdk_event_make): Remove event_mask checking. Now always
3565         returns an event.
3566                 
3567         * gdk/linux-fb/gdkkeyboard-fb.c:
3568         * gdk/linux-fb/gdkproperty-fb.c:
3569         * gdk/linux-fb/gdkselection-fb.c:
3570         Use new event_window/gdk_event_make() behaviour.
3571         
3572         * gdk/linux-fb/gdkmouse-fb.c:
3573         Use new event_window/gdk_event_make() behaviour.
3574         Only send motion events if in the same window.
3575         If grabbed, use cursor from window if sibling of grabbed
3576         window, and cursor from grabbed window otherwise.
3577
3578         * gdk/linux-fb/gdkprivate-fb.h:
3579         Update gdk_fb_window_send_crossing_events, gdk_event_make
3580         and grab varaible declarations. Add gdk_fb_*_event_window().
3581
3582         * gdk/linux-fb/gdkwindow-fb.c:
3583         Use new event_window/gdk_event_make() behaviour.
3584         Keep correct track of focus window.
3585         (gdk_window_set_events): Set all specific button motion masks
3586         if GDK_BUTTON_MOTION_MASK set.
3587
3588         * gtk/gtkdnd.c (gtk_drag_update):
3589         Free info->last_event if gdk_drag_motion returned FALSE.
3590
3591 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3592
3593         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3594         Eliminate redraws when input-only windows are shown or
3595         hidden. Thanks to jpe@archaeopteryx.com.
3596
3597 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3598
3599         * docs/faq/gtk-faq.sgml: FAQ update:
3600           - Update to bugzilla
3601           - Add GTK+ and security/SUID/SGID
3602           - Add DnD question
3603
3604 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3605
3606         * gdk/linux-fb/gdkdnd-fb.c:
3607         Some cleanups.
3608         
3609 2001-01-15  Havoc Pennington  <hp@pobox.com>
3610
3611         * tests/testtreeview.c: add test stuff for CellRendererToggle
3612
3613         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3614         accessor
3615
3616         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3617         only toggle on button press (would do release like GtkButton, but
3618         we'd need implicit grab code for treeview cells)
3619
3620 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3621
3622         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3623
3624         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3625         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3626
3627         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3628         to g_{locale,filename}_{to,from}_utf8 to match current API.
3629
3630         * gtk/makefile.msc.in (gtk_OBJECTS)
3631         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3632
3633         * gtk/gtk.def: Update.
3634
3635 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3636
3637         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3638         implementaion that more closely mimics the events that an X server
3639         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3640         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3641         with nested preview widgets, for instance, more responsive when
3642         you move the mouse quickly into them.
3643         (find_window_for_pointer_event): Make it actually compile.
3644         (gdk_event_translate): Set send_event to the value of
3645         InSendMessage (). This doesn't really mean the same as X11's
3646         send_event flag, but is close enough, says jpe@archaeopteryx.com
3647
3648 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3649
3650         * gdk/linux-fb/gdkdnd-fb.c:
3651         Implemented drag and drop.
3652         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3653         when it tries to free and then copy the same event (info->last_event).
3654         I am not sure about why this happens, but will continue looking.
3655
3656 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3657
3658         * gdk/linux-fb/gdkwindow-fb.c:
3659         Use gdk_window_invalidate_rect instead of
3660         gdk_window_invalidate_rect_clear to minimise flashing.
3661         When hiding windows you need to clear the root window though.
3662
3663 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3664
3665         * gdk/linux-fb/gdkdrawable-fb2.c:
3666         For optization, add an full_shapes argument to gdk_fb_clip_region.
3667         If this is false, only the cliprects of the shapes are used.
3668
3669         * gdk/linux-fb/gdkprivate-fb.h:
3670         Export gdk_fb_window_peek_shape.
3671         Add full_shapes to gdk_fb_clip_region.
3672
3673         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3674         When moving a window, don't clear everything under the it, just the
3675         root window. Makes stuff faster and flash less.
3676         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3677         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3678         offset of the shape.
3679         
3680
3681 2001-01-12  Havoc Pennington  <hp@redhat.com>
3682
3683         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3684         current invalid region, fixes redraw bug while scrolling the 
3685         text widget
3686
3687         * gtk/gtktextview.c, gtk/gtktextview.h:
3688         Rearrange the scrolling/validation/etc. code in a major way, 
3689         so it seems to make sense to me. Probably isn't genuinely that
3690         much better, but...
3691
3692         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3693         notifies
3694
3695         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3696
3697 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3698
3699         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3700         Hide mouse pointer while rotation. Show it afterwards.
3701
3702 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3703
3704         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3705         windows in consideration when generating clip region.
3706
3707         * gdk/linux-fb/gdkfb.h:
3708         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3709
3710         * gdk/linux-fb/gdkprivate-fb.h:
3711         Add shape to GdkWindowFBDatat.
3712         exported gdk_fb_window_get_abs_shape().
3713         removed gdk_fb_draw_lines declaration.
3714
3715         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3716         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3717         send focus changes when there is a grabbed window.
3718         (gdk_window_get_pointer): Handle shaped windows.
3719         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3720         (gdk_fb_window_peek_shape): Returns the shape for a window,
3721         handles GDK_FB_USE_CHILD_SHAPE.
3722         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3723         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3724         (gdk_window_shape_combine_mask): Implement.
3725
3726         * gtk/gtkwindow-decorate.c:
3727         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3728         setting the shape of a window makes the window transparent.
3729
3730 2001-01-11  Havoc Pennington  <hp@redhat.com>
3731
3732         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3733
3734 2001-01-10  Havoc Pennington  <hp@redhat.com>
3735
3736         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3737         add this function, bug 40251
3738
3739         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3740         of type macro   
3741
3742 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3743
3744         * acconfig.h:
3745         Added ENABLE_SHADOW_FB
3746
3747         * configure.in:
3748         Added --disable-shadowfb
3749
3750         * gdk/linux-fb/gdkcursor-fb.c:
3751         Update shadowfb when updating cursor
3752
3753         * gdk/linux-fb/gdkdrawable-fb2.c:
3754         Added wrappers for shadowfb that calls  the normal drawable
3755         methods, but calls gdk_shadow_fb_update(bounding box) when
3756         GdkWindows are drawed to.
3757         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3758         which also returns the bounding box.
3759
3760         * gdk/linux-fb/gdkfb.h:
3761         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3762
3763         * gdk/linux-fb/gdkgeometry-fb.c:
3764         Update shadowfb when scrolling window.
3765
3766         * gdk/linux-fb/gdkglobals-fb.c:
3767         Add _gdk_fb_screen_angle.
3768         
3769         * gdk/linux-fb/gdkkeyboard-fb.c:
3770         Test code for screen rotation. Shift-F2 in the xlate driver
3771         rotates the screen.
3772
3773         * gdk/linux-fb/gdkmain-fb.c:
3774         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3775
3776         * gdk/linux-fb/gdkmouse-fb.c:
3777         Use fb_width/height instead of modeinfo.xres/yres.
3778
3779         * gdk/linux-fb/gdkprivate-fb.h:
3780         Added fb_men, fb_width, fb_height & fb_stride. When using
3781         shadow fb these can differ from the framebuffer stuff.
3782         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3783         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3784         _gdk_fb_screen_angle. Removed CM, RP.
3785
3786         * gdk/linux-fb/gdkrender-fb.c:
3787         Added code for shadowfb handling and screen rotation using
3788         shadowfb.
3789
3790         * gdk/linux-fb/gdkwindow-fb.c:
3791         Use fb_mem, fb_stride, fb_width, fb_height.
3792         Added recompute_rowstride to reset the rowstride of all windows.
3793         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3794         window abs positions and window rowstrides. Usefull when the
3795         rotation has changed.
3796
3797 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3798
3799         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3800
3801 2001-01-10  Havoc Pennington  <hp@redhat.com>
3802
3803         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3804         where sibling == iter
3805         (gtk_tree_store_insert_after): handle sibling == iter
3806         (gtk_tree_store_prepend): remove stamp checks
3807         (gtk_tree_store_insert_before): ditto
3808         (gtk_tree_store_append): ditto
3809         (gtk_tree_store_get_path): ditto
3810         (gtk_tree_store_get_value): ditto
3811         (gtk_tree_store_iter_has_child): ditto
3812         (gtk_tree_store_iter_n_children): ditto
3813         (gtk_tree_store_iter_nth_child): ditto
3814         (gtk_tree_store_insert_after): ditto
3815         (gtk_tree_store_is_ancestor): ditto
3816         (gtk_tree_store_iter_depth): ditto
3817         (gtk_tree_store_insert_before): assert that sibling's parent is
3818         the same as the passed-in parent
3819         (gtk_tree_store_insert_after): assert that sibling's parent is
3820         the same as the passed-in parent
3821
3822         
3823         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
3824         function to get the first iterator in a model
3825         
3826         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3827         conventionally the "root" in this sense is just NULL afaict.
3828
3829         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3830         where sibling == iter
3831         (gtk_list_store_insert_after): handle case where sibling == iter
3832
3833         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3834         automated tests for ListStore, TreeStore
3835
3836         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3837         (gtk_list_store_insert): update tail pointer, and fix it to work
3838         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3839         (gtk_list_store_append): use tail to be faster
3840         (gtk_list_store_prepend): fix it, update tail pointer
3841         (gtk_list_store_insert_after): fix it, update tail pointer
3842
3843         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3844         the list
3845
3846 2001-01-09  Havoc Pennington  <hp@redhat.com>
3847
3848         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3849         is NULL due to a pending resize
3850
3851         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3852         column width to values less than 1
3853
3854         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3855         width to be between min/max width, and still set the width 
3856         even if autosize is turned on, so the tree view can use this 
3857         function in order to autosize.
3858         (gtk_tree_view_column_init): set initial width to 1 not 0
3859
3860         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3861         setter function to modify column width, so we get notification
3862         (gtk_tree_view_insert_iter_height): ditto
3863         (gtk_tree_view_calc_size): ditto
3864         (gtk_tree_view_check_dirty): ditto
3865
3866         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3867         properties to change all the interesting attributes of the tree
3868         view column.
3869         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3870         (gtk_tree_view_column_get_clickable): add
3871         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3872         attributes; assume a cell renderer with equivalent object
3873         properties has been swapped in. Do g_object_notify().
3874         (gtk_tree_view_column_set_visible): g_object_notify
3875         (gtk_tree_view_column_get_sizing): rename from get_col_type
3876         (gtk_tree_view_column_set_sizing): g_object_notify
3877         (gtk_tree_view_column_set_width): add g_object_notify
3878         (gtk_tree_view_column_set_min_width): ditto
3879         (gtk_tree_view_column_set_max_width): ditto
3880         (gtk_tree_view_column_set_title): ditto
3881         (gtk_tree_view_column_set_clickable): ditto
3882         (gtk_tree_view_column_set_widget): ditto
3883         (gtk_tree_view_column_set_justification): ditto
3884
3885 2001-01-09  Havoc Pennington  <hp@redhat.com>
3886
3887         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3888         there are no rows in the model
3889
3890         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3891         NULL, then return the start of the list
3892
3893         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3894         if we can't get any rows from an empty model 
3895
3896         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3897         extraneous * after function pointer typedef usage
3898
3899         * Makefile.am: don't specify full path to cp and rm
3900
3901         * gtk/gtkcellrenderertextpixbuf.c
3902         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3903         NULL before dereferencing, fixes a segfault that happened from
3904         time to time
3905
3906         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3907         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3908         and reindent the function
3909         (gtk_cell_renderer_pixbuf_get_size): indentation
3910
3911         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3912         we quit it
3913         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3914         (gtk_dialog_set_default_response): New function, to set default
3915         button
3916         (gtk_dialog_set_response_sensitive): New function, to set 
3917         sensitivity of buttons
3918
3919         * gtk/gtkcellrendererpixbuf.c
3920         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3921         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3922
3923         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3924         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3925         also boxed types.
3926         (_gtk_tree_data_list_value_to_node): ditto
3927
3928         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3929         --gtk-debug=tree
3930
3931         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3932
3933         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3934
3935 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3936
3937         * gdk/win32/gdkevents-win32.c: Implement better mouse
3938         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3939         (find_window_for_pointer_event): New function.
3940         (gdk_event_translate): Use it when handling mouse events.
3941
3942 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3943
3944         * configure.in:
3945         Added --with-included-loaders option
3946
3947         * gdk-pixbuf/Makefile.am:
3948         * gdk-pixbuf/gdk-pixbuf-io.c:
3949         Add support for including selected gdk-pixbuf loaders only.
3950
3951         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3952         gtk_window_set_has_frame):
3953         Added inline documentation.
3954
3955         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3956         * docs/reference/gdk/tmpl/windows.sgml:
3957         Added inline documentation.
3958
3959 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3960
3961         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3962         realizing buttons that have already been realized.
3963
3964 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3965
3966         * tests/testtreeview.c (main): Show menu items before adding to
3967         option menu.
3968
3969         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3970         around if we kill them.
3971
3972         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3973         Return if we pass in a NULL model.
3974
3975 2001-01-08  Havoc Pennington  <hp@redhat.com>
3976
3977         * tests/testtreeview.c: hack on this some
3978
3979         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3980         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3981         list
3982         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3983
3984         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3985         functions
3986
3987 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3988
3989         * gtk/gtkwindow-decorate.[hc]:
3990         * gtk/Makefile.am:
3991         New files. Contains an implementation of a minimal WM for
3992         linux-fb.
3993
3994         * gtk/gtkwindow.h:
3995         Add the possibility for GtkWindows to specify a frame. This
3996         is used for the window decoration code, but could concievably
3997         be used for X programs too (xmms style windows).
3998         GtkWindow->frame is the toplevel window if the window is framed.
3999         The signal frame_event gets all events that are targeted to
4000         GtkWindow->frame.
4001         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4002         
4003         * gtk/gtkwindow.c:
4004         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4005         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4006
4007 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4008
4009         * docs/README.linux-fb:
4010         Correct filename ~/.pangoft2_aliases
4011
4012         * gdk/gdkwindow.h:
4013         Added new function gdk_window_get_decorations.
4014
4015         * gdk/linux-fb/gdkfb.h:
4016         Removed _gdk_window_get_decorations declaration.
4017         Renamed _gdk_window_set_child_handler to
4018         gdk_fb_window_set_child_handler.
4019
4020         * gdk/linux-fb/gdkwindow-fb.c:
4021         Renamed _gdk_window_set_child_handler to
4022         gdk_fb_window_set_child_handler.
4023
4024         * gdk/x11/gdkwindow-x11.c:
4025         New function gdk_window_get_mwm_hints().
4026         Implemented gdk_window_get_decorations.
4027
4028         * docs/reference/gdk/tmpl/windows.sgml:
4029         * docs/reference/gdk/gdk-sections.txt:
4030         Added gdk_window_get_decorations docs.
4031         
4032 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4033
4034         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4035         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4036         gdk_fb_window_send_crossing_events):
4037         Possibly send focus events when the mouse moves from one
4038         window to another.
4039
4040 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4041
4042         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4043         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4044         to match current API.
4045
4046         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4047         environment variable is set, don't call g_error when on a
4048         palettized (PseudoColor) display. Some people want to use GTK+ 
4049         in 256-colour mode even though works only partially.
4050
4051         * gdk/gdk.def
4052         * gtk/gtk.def
4053         * gtk/makefile.mingw.in: Update.
4054
4055 2001-01-05  Havoc Pennington  <hp@redhat.com>
4056
4057         * tests/testtreeview.c: hack on this a bit
4058
4059         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4060         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4061
4062         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4063         was spelled incorrectly
4064         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4065
4066         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4067         from gtk_tree_view_set_headers_active   
4068
4069         * gtk/gtktexttag.c:
4070         (gtk_text_tag_get_property): handle PROP_DIRECTION
4071         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4072         properties, bug 40235
4073
4074         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4075         forward_to_line_end
4076
4077 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4078
4079         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4080         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4081         for unicode,locale,filename conversion functions.
4082
4083 2001-01-05  Havoc Pennington  <hp@redhat.com>
4084
4085         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4086         broken if called on the first position in the buffer.
4087
4088         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4089         forward_to_delimiters to be called only if we aren't already at
4090         the delimiters.
4091
4092 2001-01-05  Havoc Pennington  <hp@redhat.com>
4093
4094         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4095
4096 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4097
4098         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4099         colormap in here. Sync from X port.
4100         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4101         Sync from X port.
4102         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4103         This happens now and then, and i don't think it is a bug.
4104         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4105         != endpoint.
4106         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4107         GDK_LINE_SOLID.
4108
4109         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4110         some of the fields filled in at least.
4111
4112         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4113         miLineArcD is no more, remove it from the function definition.
4114
4115 2001-01-04  Havoc Pennington  <hp@redhat.com>
4116
4117         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4118         this
4119
4120         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4121         user_data instead of tree_node
4122
4123         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4124         TREE_VIEW_COLUMN_SIZE
4125
4126         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4127         "size" field to "width" finishes bug 40061
4128
4129         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4130         for bitfields, bug 40268
4131
4132 2001-01-04  Havoc Pennington  <hp@redhat.com>
4133
4134         Rename some stuff:
4135         
4136         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4137
4138         s/GtkModelSimple/GtkTreeModelSimple/g;
4139         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4140         s/gtk_model_simple/gtk_tree_model_simple/g;
4141         s/gtkmodelsimple/gtktreemodelsimple/g;
4142
4143         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4144
4145         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4146         s/column_set_col_type/column_set_sizing/g;
4147
4148         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4149         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4150
4151         s/GtkCellRendererType/GtkCellRendererState/g;
4152         
4153         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4154         (gtk_cell_renderer_toggle_class_init): change "state" property to
4155         "active", to match GtkToggleButton
4156         (gtk_cell_renderer_toggle_get_active): new function, bug
4157         40269
4158         (gtk_cell_renderer_toggle_set_active): new function
4159         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4160         state through gtk_cell_renderer_set_active
4161
4162 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4163
4164         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4165         temporarily until they work again.  Brought up to date with
4166         changes in the model.
4167         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4168         model.
4169
4170 2001-01-04  Havoc Pennington  <hp@redhat.com>
4171
4172         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4173         equal to the line length, then position iterator before paragraph 
4174         separators. Fixes crash reported by Mikael Hermansson when
4175         pressing left arrow from the start of a line.   
4176
4177         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4178         about byte indexes off the end
4179         (iter_set_from_char_offset): add g_error about char offsets
4180         off the end
4181
4182 2001-01-03  Havoc Pennington  <hp@redhat.com>
4183
4184         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4185
4186         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4187         of private functions; remove inclusion of private headers.
4188
4189         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4190         function, so we don't need private functions in gtktextdisplay.c
4191
4192         * gtk/gtktextiterprivate.h: underscore-ification
4193
4194         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4195         to instead say "only useful to implement widgets"
4196
4197         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4198         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4199         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4200
4201         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4202         This function was completely broken
4203
4204         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4205
4206         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4207
4208         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4209
4210         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4211
4212         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4213
4214         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4215
4216         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4217         gtk_paint_layout
4218
4219         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4220         gtk_paint_layout
4221
4222         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4223         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4224         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4225         which were not implemented.     
4226
4227         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4228         insert_pixbuf signal. Rename delete_text to delete_range since it
4229         also deletes pixbufs and child anchors. This almost closes bug
4230         40245 (still need to deal with child anchors)
4231
4232         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4233         insert_pixbuf, change signal names as appropriate, change types of
4234         signals taking marks/tags to have the specific type, not just
4235         G_TYPE_OBJECT
4236         
4237         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4238         closes bug 40051
4239
4240         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4241         unnecessary remove_contents() call
4242         (gtk_option_menu_class_init): add a "changed" signal, closes
4243         bug 40039
4244         (gtk_option_menu_update_contents): emit "changed" if the 
4245         active menu item changes
4246
4247         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4248         cast to GtkObject, reported by Jonas Borgstrom
4249         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4250         we can't do stuff with side effects in finalize. Instead, spew a
4251         warning if the loader isn't closed.
4252
4253         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4254         colormap in here, non-X ports probably need to sync to this change
4255
4256         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4257         assertion that colormap != NULL, you can set the colormap to NULL
4258         if you like.
4259         
4260         * Makefile.am: remove gtk-config-2.0
4261
4262         * configure.in: Use pkg-config to locate GLib. Remove
4263         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4264         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4265         Use pkg-config to locate Pango. Output correct Pango libs to
4266         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4267
4268         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4269         files
4270         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4271         X11 pc files
4272
4273         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4274         unref from here
4275
4276 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4277
4278         * configure.in:
4279         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4280
4281 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4282
4283         * gtk/gtktextlayout.c
4284         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4285         variable when moving back onto a single line.
4286
4287 2001-01-01  Havoc Pennington  <hp@redhat.com>
4288
4289         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4290
4291         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4292
4293         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4294         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4295
4296 2001-01-01  Havoc Pennington  <hp@redhat.com>
4297
4298         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4299
4300         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4301         GtkTextAttributes
4302
4303         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4304         #40246
4305         (gtk_text_attributes_copy_values): rename from 
4306         gtk_text_attributes_copy
4307         (gtk_text_attributes_copy): a more standard GTK copy function, 
4308         which returns a new object
4309
4310 2001-01-01  Havoc Pennington  <hp@redhat.com>
4311
4312         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4313         
4314         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4315         don't fill in tree_view->priv->selection, kind of an unexpected
4316         side effect
4317
4318         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4319         gtkintl.h
4320         
4321         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4322         gtkintl.h
4323         (gtk_cell_renderer_get_property): remove calls to g_value_init
4324
4325         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4326         gtkintl.h
4327
4328         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4329         and include gtkintl.h
4330         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4331         property names
4332
4333         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4334         GtkTreeSelection
4335         (_gtk_tree_selection_new_from_with_view): rename, return
4336         GtkTreeSelection
4337         (_gtk_tree_selection_set_tree_view): rename with uscore
4338         (gtk_tree_selection_get_selected): fill in the "model" out param
4339         first, so it gets filled in even if we return at the top of the 
4340         function
4341         (gtk_tree_selection_real_select_all): add a comment and an else{}
4342         to clarify this a bit
4343         (gtk_tree_selection_real_unselect_all): add the same else{}
4344
4345         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4346         set_tree_view to have underscore prefixes, move them to the
4347         private header, fix return type of new_with_tree_view
4348         (struct _GtkTreeSelection): mark struct
4349         fields private  
4350
4351         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4352         GtkTreeModelFlags, not a guint
4353         (gtk_tree_path_prev): return gboolean not gint
4354         (gtk_tree_path_up): return gboolean not gint
4355
4356         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4357         return GtkTreeModelFlags, not a guint
4358
4359         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4360         that child model is non-null before unrefing it
4361         (g_value_int_compare_func): make this a qsort compare func, not 
4362         a boolean predicate
4363
4364         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4365         (add -umn to the end), and mark it unimplemented
4366         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4367         I don't see what it's for - doesn't the model always sort itself?
4368         (gtk_tree_model_sort_set_compare): this had the wrong signature
4369
4370         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4371         Fix the docs to say that it destructively replaces existing
4372         attributes (previously said that it added attributes).
4373         (gtk_tree_view_column_set_visible): canonicalize bool before
4374         equality testing. Also, check for realization before
4375         hiding/showing the tree_column->window; if this window could exist
4376         before realization, then it's busted and needs fixing, we can't 
4377         create GDK resources pre-realization. Also, remove
4378         superfluous queue_resize(), since set_size() does that for us.
4379         (gtk_tree_view_column_set_col_type): check realization before 
4380         using tree_column->window
4381
4382         * gtk/gtktreedatalist.c: fix filename in copyright notice
4383
4384 2000-12-31  Havoc Pennington  <hp@pobox.com>
4385
4386         * gtk/gtktextview.c: Rearrange all the
4387         scroll-while-dragging-or-selecting code to be different, not
4388         necessarily better. ;-)
4389         (gtk_text_view_scroll_to_mark): Change this
4390         function to take within_margin as a fraction instead of a pixel
4391         value, and to take alignment arguments (indicating where to align 
4392         the mark inside the visible area)
4393         
4394         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4395         to GtkObject
4396
4397         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4398         behavior so that offsets past the end of the line are not 
4399         allowed, and an offset equal to the line length moves the iterator
4400         to the next line
4401         (gtk_text_iter_set_line_index): make parallel change
4402         (gtk_text_iter_get_bytes_in_line): add this function
4403         
4404         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4405         of byte indexes off the end of the line; byte index at the end of
4406         the line now returns FALSE and doesn't fill in the requested
4407         values, byte index past the end of the line is an error.  Also,
4408         don't allow -1 offset anymore, since its meaning is unclear.
4409
4410         This change exposes some bug in visual cursor motion, where we
4411         end up with a huge invalid byte index; needs fixing. Symptom of 
4412         bug is a crash when you hit up arrow.
4413         
4414         (_gtk_text_line_char_locate): match the change to byte_locate
4415
4416         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4417         from start of line properly. fixes bug reported by Mikael
4418         Hermansson where backspace would delete all text before the
4419         cursor.
4420
4421 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4422
4423         * gdk/win32/gdkwindow-win32.c
4424         (gdk_window_impl_win32_get_visible_region): New function, as in
4425         the X11 backend.
4426         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4427         instead of duplicating the same code here.
4428
4429         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4430         GDK_COLORMAP macro.
4431
4432         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4433         destroy function.
4434         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4435         access that.
4436
4437         * gtk/gtk.def: Update.
4438
4439         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4440
4441 2000-12-30  Havoc Pennington  <hp@pobox.com>
4442
4443         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4444         colormap on input only windows, to avoid special cases all over
4445         the code for these windows.
4446
4447 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4448
4449         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4450         we are on a palettized display ("PseudoColor" in X11), as the code
4451         for that doesn't work anyway, and never has.
4452
4453 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4454
4455         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4456         Don't use isprint() for chars > 255.
4457
4458 2000-12-21  Havoc Pennington  <hp@redhat.com>
4459
4460         * tests/testtreeview.c: more work
4461
4462 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4463
4464         * docs/README.linux-fb:
4465         Update the docs to the new pangoft2 way.
4466
4467 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4468
4469         * configure.in:
4470         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4471         pango version.
4472         Remove modules/linux-fb/Makefile.
4473
4474         * gdk/linux-fb/gdkdrawable-fb2.c:
4475         Render glyphs using freetype.
4476
4477         * gdk/linux-fb/gdkfb.h:
4478         Add new fb-specific functions needed for managing windows.
4479
4480         * gdk/linux-fb/gdkmain-fb.c:
4481         Remove gdk_font_init/fini() calls.
4482
4483         * gdk/linux-fb/gdkpango-fb.c:
4484         Remove old implementation. Use pangoft2 instead.
4485
4486         * gdk/linux-fb/gdkprivate-fb.h:
4487         Remove PangoFBFont and related stuff.
4488
4489         * gdk/linux-fb/gdkwindow-fb.c:
4490         Implement drawable->get_visible_region.
4491         Implement support for _gdk_window_set_child_handler () and
4492         _gdk_window_get_decorations().
4493
4494         * modules/Makefile.am:
4495         Remove linux-fb subdir.
4496
4497         * modules/linux-fb/*:
4498         Removed all.
4499         
4500 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4501
4502         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4503         calls, as they are no longer needed.
4504
4505         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4506         
4507         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4508         figure out how to emit a signal on an interface.
4509
4510 2000-12-20  Havoc Pennington  <hp@redhat.com>
4511
4512         * tests: new directory to contain tests, gtk/test* should move
4513         here sometime (with appropriate on-cvs-server hackery)
4514
4515         * tests/testtreeview.c, tests/Makefile.am: a test
4516         
4517         * configure.in (AC_OUTPUT): add tests/Makefile
4518
4519         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4520         and "invisible_set" which were missing
4521
4522         * gtk/gtkrbtree.h: some cheesy indentation fix
4523         
4524 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4525
4526         * gtk/gtkinvisible.c (gtk_invisible_realize):
4527         Attach the style to the window so that the style it is not
4528         leaked when unrealizing the window.
4529
4530 2000-12-18  Havoc Pennington  <hp@redhat.com>
4531
4532         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4533         begin/end user action where appropriate
4534         (gtk_text_view_commit_handler): add begin/end user action
4535
4536         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4537         bracket interactive operations with begin/end user action pair.
4538         
4539         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4540         "interactive" arg from insert_text and delete_text signals.
4541         Add begin_user_action, end_user_action signals
4542         (gtk_text_buffer_begin_user_action): 
4543         (gtk_text_buffer_end_user_action): New functions to delimit 
4544         a user-visible action
4545
4546         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4547         signals.
4548         
4549 2000-12-18  Havoc Pennington  <hp@redhat.com>
4550
4551         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4552         was pretty non-working.
4553
4554         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4555         by passing the length to g_utf8_validate().
4556
4557 2000-12-16  Havoc Pennington  <hp@pobox.com>
4558
4559         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4560         Port to GObject, can go back in gdk-pixbuf after setting up 
4561         a gdk-pixbuf-marshal.h header over there.
4562
4563         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4564         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4565         args
4566         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4567         set
4568         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4569         here, do it when we create the buttons later
4570         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4571         (gtk_tree_view_map): paranoia checks that column->button is shown 
4572         and unmapped
4573         (gtk_tree_view_size_request): only request visible children.
4574         Move header size calculation in here, for cleanliness, and 
4575         to maintain invariants for child widgets if we eventually 
4576         let users set different children inside the buttons
4577         (gtk_tree_view_map_buttons): factor out code to map buttons,
4578         since it was being called several times
4579         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4580         windows instead of just moving them; their height may change 
4581         if we allow random widgets in there, or the theme changes.
4582         (gtk_tree_view_size_allocate): move button size allocation 
4583         above emitting the scroll signals, to ensure a sane state when we
4584         hit user code
4585         (gtk_tree_view_button_release): remove queue_resize after
4586         tree_view_set_size(), set_size() will handle any resize queuing
4587         that's needed
4588         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4589         draw_focus goo
4590         (gtk_tree_view_focus): use gtk_get_current_event() and
4591         gdk_event_get_state()
4592         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4593         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4594         semicolon
4595         (gtk_tree_view_create_button): show the button here
4596         (gtk_tree_view_button_clicked): actually emit the clicked signal
4597         on the column
4598         (_gtk_tree_view_set_size): return right away if the size is
4599         unchanged, as a cheesy optimization
4600         (gtk_tree_view_setup_model): rename set_model_realized to 
4601         setup_model to match the flag that indicates whether we've 
4602         called it
4603         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4604         exist, because set_scroll_adjustment does that and it shouldn't
4605         matter what order you call these in
4606         (gtk_tree_view_get_vadjustment): ditto
4607         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4608         for paranoia
4609         (gtk_tree_view_set_headers_visible): call
4610         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4611         (gtk_tree_view_append_column): clarify whether the return value
4612         is the count of columns before or after, and do the increment 
4613         separately from the return statement so you can tell from the code.
4614         (gtk_tree_view_remove_column): ditto
4615         (gtk_tree_view_insert_column): ditto
4616         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4617         outside the existing range, the docs say that outside-range
4618         columns are allowed, so we handle them as documented. (Presumably
4619         this allows a nice loop with column != NULL as test.)
4620         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4621         mean (left/right/center etc.).
4622         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4623         (gtk_tree_view_expand_row): add docs
4624         (gtk_tree_view_collapse_row): add docs
4625
4626         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4627         function to emit the clicked signal on a column
4628         
4629         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4630         state of an event
4631         (gdk_event_get_time): don't treat GDK_SCROLL 
4632         as a button event, remove default case from switch so gcc 
4633         will whine if we don't explicitly handle all event types
4634
4635         * gtk/gtktreeselection.h: added some FIXME 
4636         
4637         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4638         "columns" to "n_columns" and "column" to "columns" for clarity
4639
4640 2000-12-16  Havoc Pennington  <hp@pobox.com>
4641         
4642         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4643         stuff. This should make e.g. the delete key work again in the
4644         text widget...
4645         (gtk_text_iter_forward_cursor_positions): handle negative count
4646         (gtk_text_iter_backward_cursor_positions): handle negative count
4647         (gtk_text_iter_forward_word_ends): handle negative count
4648         (gtk_text_iter_backward_word_starts): handle negative count
4649
4650         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4651         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4652         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4653         GObject. No doubt will cause breakage.
4654
4655         * demos/gtk-demo/textview.c: remove hacks around
4656         non-GObject-ification of the text objects
4657
4658         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4659         the text tag
4660         
4661 2000-12-14  Havoc Pennington  <hp@pobox.com>
4662
4663         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4664         that we have Xrender
4665
4666 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4667
4668         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4669         Add two virtualized functions gdk_drawable_get_clip_region - to
4670         get the clip region when drawing.
4671         
4672         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4673         use invalidate_region.
4674
4675         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4676         region.
4677
4678         * acconfig.h configure.in: Check for Xft. For now, assume
4679         that if Xft is found, Pango was compiled with Xft support
4680         as well.
4681
4682         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4683         gdk_colormap_query_color().
4684         
4685         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4686         with Xft if appropriate.
4687
4688         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4689         a pangoxft context if we have XFT and the environment
4690         variable GD_USE_XFT is set.
4691         
4692         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4693         and also possibly an XftDraw structure.
4694
4695         * gtk/gtkfontsel.c: Handle the case where the font from the
4696         style doesn't match any of the fonts a bit better.
4697         
4698         * gtk/testgtk.c: Add tabs between directional segments for
4699         hebrew/arabic test. (Not really necessary, just a little
4700         prettier.)
4701
4702 2000-12-14  Havoc Pennington  <hp@redhat.com>
4703
4704         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4705         reading a file
4706
4707 2000-12-14  Havoc Pennington  <hp@redhat.com>
4708
4709         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4710         unused call to get_last_line()
4711
4712         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4713         here until boxed is working (and maybe after that - we should
4714         really not gratuitously break old code)
4715
4716         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4717         specific types for font_desc and tabs args, move them to
4718         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4719         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4720
4721         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4722         use GTK_TYPE_POINTER for signal signatures as a hack-around
4723
4724         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4725         PangoTabArray
4726
4727         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4728         make static
4729         (line_display_index_to_iter): make static
4730
4731         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4732         to marshal a string not a boxed
4733
4734         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4735
4736         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4737         since the UTF-8 isn't validated yet
4738
4739         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4740         lines to end in '\n'
4741         
4742         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4743         forward_to_delimiters, and grapheme boundaries
4744         (gtk_text_view_delete_from_cursor): properly handle non-newline
4745         delimiters, and grapheme boundaries
4746
4747         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4748         to gtk_text_iter_forward_to_delimiters, and make it work properly
4749         if empty lines end with a character other than '\n'
4750
4751         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4752         position
4753
4754 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4755
4756         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4757
4758         * gtk/gtk.def
4759         * gdk/gdk.def: Update.
4760
4761         * gdk/win32/gdkmain-win32.c
4762         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4763         gdkmain-win32.c here.
4764
4765         * gdk/win32/makefile.mingw.in (all): No need to make
4766         gdk-win32res.o here, the makefile one step up will call us to make
4767         it.
4768
4769         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4770         gdkkeys-win32.
4771
4772         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4773
4774         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4775         call to g_source_add().
4776
4777         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4778         leak. Thanks to Andreas Kemnade.
4779
4780 2000-12-13  Havoc Pennington  <hp@pobox.com>
4781
4782         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4783
4784         * gtk/gtktext*.[hc]: update accordingly
4785         
4786 2000-12-13  Havoc Pennington  <hp@pobox.com>
4787
4788         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4789         header file
4790
4791         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4792
4793 2000-12-13  Alex Larsson  <alexl@redhat.com>
4794
4795         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4796         Add support for ps2 intellimouse.
4797
4798         * gdkkeyboard-fb.c:
4799         Move shift-F1 repaint handling to xlate handler only.
4800         
4801         * docs/README.linux-fb:
4802         Add imps2 to docs.
4803         Document the new refresh keys.
4804         
4805 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
4806
4807         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
4808
4809         * gtk/gtkbox.c: change property types from (u)long to (u)int for
4810         ::position and ::padding.
4811
4812         * gtk/gtkcontainer.c: make ::border_width an INT property.
4813
4814         * gtk/gtkpacker.c: make ::position an INT property.
4815
4816         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4817         guard against NULL h/v scrollbars, since this is used at construction
4818         time.
4819
4820         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
4821         internal gtk_clist_constructor().
4822
4823         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
4824         gtk_ctree_constructor().
4825
4826         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4827         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4828
4829         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4830         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4831
4832         * gtk/gtkwidget.[hc]:
4833         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4834         and gtk_widget_get().
4835         (gtk_widget_new): use g_object_new_valist().
4836         (gtk_widget_set): use g_object_set_valist().
4837
4838         * gtk/gtkobject.[hc]:
4839         removed gtk_object_arg_get_info(), gtk_object_getv(),
4840         gtk_object_query_args(), gtk_object_newv(),
4841         gtk_object_class_add_signals(),
4842         gtk_object_class_user_signal_new(),
4843         gtk_object_class_user_signal_newv(),
4844         gtk_object_arg_set(), gtk_object_arg_get(),
4845         gtk_object_args_collect(),
4846         gtk_object_default_construct(),
4847         gtk_object_constructed(),
4848         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4849         removed nsignals, signals and n_args members from GtkObjectClass.
4850         (gtk_object_new): use g_object_new_valist().
4851         (gtk_object_set): use g_object_set_valist().
4852         (gtk_object_get): use g_object_get_valist().
4853         
4854         * gtk/gtkcompat.h: define gtk_object_default_construct().
4855         
4856         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4857         g_object_new().
4858
4859         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4860         fucntions, cleaned up method assignments (make sure your structures
4861         are setup properly before calling out). removed all GTK_CONSTRUCTED
4862         hacks ;)
4863
4864 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4865
4866         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4867         off-by-one error in checks. (Dave Lambert)
4868
4869 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4870
4871         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4872         Don't free gdk_fb_keyboard twice.
4873
4874 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4875
4876         * gtk/testgtk.c:
4877         (create_tooltips): 
4878         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4879         use GObject swapped_signal:: properties instead.
4880
4881         * gtk/gtkcellrenderertoggle.c: 
4882         * gtk/gtkcellrenderertextpixbuf.c: 
4883         * gtk/gtkcellrenderertext.c: 
4884         * gtk/gtkcellrendererpixbuf.c: 
4885         * gtk/gtkcellrenderer.c:
4886         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4887         missing warnings for invalid property ids, install properties
4888         with g_object_class_install_property() now.
4889         
4890         * gtk/gtksignal.c:
4891         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4892         
4893 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4894         
4895         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4896         to determine if a window is the focus widget within
4897         its toplevel.
4898
4899         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4900         to be boolean.
4901
4902         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4903         of the case where the container CAN_FOCUS to here instead
4904         of having it in each individual move-the-focus place.
4905
4906         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4907         focusing to be geometric in a much more obvious sense. Arrowing
4908         around is still non-intuitive because it isn't perfect and
4909         because entries, etc, grab the arrow keys, but it at least
4910         usually will do what you expect now.
4911         
4912         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4913         file.
4914
4915         * gtk/gtknotebook.c: Change tabs to be a single item in
4916         the focus chain. Make movement of focus on tabs with arrow
4917         keys wrap around.
4918         
4919         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4920         CHECK_FIND_CHILD macro to give informative error messages
4921         instead of silent returns.
4922
4923         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4924         flag since we handle GdkReturn on the tabs.
4925
4926         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4927         windows rather than sending expose events directly.
4928
4929         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4930         definition for GtkNotebookPage into .c file, since it is private.
4931
4932         * gtk/testgtk.c (create_notebook): Add option for 
4933         testing borderless notebook.
4934
4935         * gtk/testgtk.c (page_switch): Removed egregious poking
4936         around in GTK+ internals.
4937
4938         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4939
4940         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4941         properly through gtk_clist_focus. Make the title headers a
4942         single item in the tab-focus chain, and make left-right wrap
4943         around.
4944
4945         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4946         focus method so that wrapping around works properly.
4947
4948         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4949         that is handled for the widget now. 
4950
4951 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4952
4953         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4954         widgets as TOPLEVEL.
4955
4956         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4957         TOPLEVEL widgets are containers.
4958
4959         * gtk/gtkinvisible.h: Remove useless include.
4960
4961 2000-12-11  Havoc Pennington  <hp@redhat.com>
4962
4963         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4964         Handle chopping off \r\n and 0x2029 in addition to \n before
4965         passing to PangoLayout
4966
4967         * gtk/gtkimcontextsimple.c
4968         (gtk_im_context_simple_get_preedit_string): 
4969         return an empty string if no match is pending
4970
4971         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4972         assertion that the returned preedit string was sane
4973
4974         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4975         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4976         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4977
4978 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4979
4980         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4981         Fix up finalizer to chain to its parent.
4982
4983 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4984
4985         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4986         Clearified the difference between the keyboard types. Wrote a note
4987         about the magic sysrq key to get out of raw mode.
4988
4989 2000-12-09  James Henstridge  <james@daa.com.au>
4990
4991         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4992         member to hold masks for detecting the start of a protocol packet.
4993         (mouse_devs): add packet start masks for ps2 and ms device types.
4994         Left the mask for fidmour blank, as I have no idea what it should
4995         be.
4996         (handle_mouse_io): skip bytes until we get to the start of a
4997         packet.  My Logitech mouse seems to be passing an extra NULL pad
4998         byte, and GPM does a similar thing here.
4999         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5000         this is the ms mouse driver.
5001         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5002         completely broken except for button1.  It was checking the wrong
5003         bit in the packet for the status of the right mouse button, and
5004         wrongly assuming right == button2 rather than 3.  I fixed that and
5005         also added support for middle button (button2).
5006
5007 2000-12-08  Havoc Pennington  <hp@redhat.com>
5008
5009         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5010         that cause a segfault on text insertion
5011
5012         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5013         warning
5014
5015         * gtk/gtktextiter.c (test_log_attrs): use
5016         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5017
5018         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5019         Get log attrs for a line, using a cache stored on the buffer
5020         
5021         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5022         reported by Jeff Franks
5023
5024 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5025
5026         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5027         /dev/ttyS0 -> /dev/mouse
5028
5029 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5030
5031         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5032         Added dummy gdk_fontset_load.
5033
5034 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5035
5036         * docs/README.linux-fb:
5037         * docs/Makefile.am:
5038         Initial GtkFB docs.
5039         
5040         * gdk/linux-fb/Makefile.am:
5041         Define GDK_DATA_PREFIX.
5042
5043         * gdk/linux-fb/gdkmain-fb.c:
5044         Fix typo.
5045         Change default display to /dev/fb0.
5046
5047         * gdk/linux-fb/gdkpango-fb.c:
5048         Add $(prefix)/share/fonts/ to font path.
5049         
5050 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5051
5052         * gdk/linux-fb/gdkkeyboard-fb.c:
5053         New file containing the abstracted keyboard driver. Most code
5054         taken from gdkinput-ps2.c
5055
5056         * gdk/linux-fb/gdkinput-ps2.c:
5057         Removed file.
5058         
5059         * gdk/linux-fb/Makefile.am:
5060         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5061
5062         * gdk/linux-fb/gdkcolor-fb.c:
5063         display->fb was renamed to display->fb_fd.
5064
5065         * gdk/linux-fb/gdkcursor-fb.c:
5066         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5067
5068         * gdk/linux-fb/gdkinput.c:
5069         Moved gdk_input_init here from gdkinput-ps2.c
5070
5071         * gdk/linux-fb/gdkmain-fb.c:
5072         display->fb was renamed to display->fb_fd.
5073         Now the tty and the console is opened here instead
5074         of in the keyboard driver. Also check GDK_VT to see what
5075         tty to open.
5076         Move gdk_beep () here from gdkinput-ps2.c
5077         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5078
5079         * gdk/linux-fb/gdkmouse-fb.c:
5080         Add header.
5081         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5082         Return correct keyboard modifiers.
5083         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5084
5085         * gdk/linux-fb/gdkprivate-fb.h:
5086         Add tty and vt info to display.
5087         Add orignal modeinfo storage to display
5088         Update global functions
5089
5090         * gdk/linux-fb/gdkwindow-fb.c:
5091         Added gdk_fb_window_find_focus().
5092         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5093
5094 2000-12-07  Havoc Pennington  <hp@pobox.com>
5095
5096         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5097         function, noticed by Alex
5098
5099 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5100
5101         * configure.in: Detect freetype properly
5102
5103         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5104         above.
5105
5106 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5107
5108         * gdk/linux-fb/Makefile.am:
5109         Add gdkmouse-fb.c
5110         
5111         * gdk/linux-fb/gdkmouse-fb.c:
5112         New file. Abstracted the mouse drivers a bit.
5113
5114         * gdk/linux-fb/gdkcursor-fb.c:
5115         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5116
5117         * gdk/linux-fb/gdkinput-ps2.c:
5118         Removed old mouse handling code. Moved cursor handling code
5119         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5120         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5121         gdk_mouse_get_info.
5122
5123         * gdk/linux-fb/gdkmain-fb.c:
5124         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5125
5126         * gdk/linux-fb/gdkprivate-fb.h:
5127         Removed public gdk_fb_find_common_ancestor, added and renamed
5128         functions for the new mouse handling code.
5129
5130         * gdk/linux-fb/gdkwindow-fb.c:
5131         Moved gdk_fb_window_send_crossing_events here. added global
5132         variable gdk_fb_window_containing_pointer. made
5133         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5134         renamed to gdk_mouse_get_info.
5135
5136 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5137
5138         * gdk/linux-fb/gdkevents-fb.c:
5139         Update to match latest gmain/gsource changes.
5140
5141         * gdk/linux-fb/gdkinput-ps2.c:
5142         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5143         it links. Will be implemented later.
5144
5145 2000-12-03  Havoc Pennington  <hp@pobox.com>
5146
5147         * gdk/Makefile.am: add gdkkeys.[hc]
5148
5149         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5150         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5151
5152         * acconfig.h, configure.in: add checks and command line options
5153         for XKB
5154
5155         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5156         
5157         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5158         and group in the key event
5159
5160         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5161         field with the low-level hardware key code, and a group
5162         field with the keyboard group
5163
5164         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5165         and declare a couple globals used for keymap handling
5166         
5167         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5168         hold down Shift-Control and type a hex number to get a Unicode 
5169         character corresponding to the hex number
5170         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5171         (return bytes not chars)
5172
5173 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5174
5175         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5176         to avoid waste on 64-bit platforms.
5177
5178 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5179
5180         * INSTALL: Fix link to PNG home, remove reference
5181         to fribidi.
5182
5183         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5184         
5185         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5186         tested.)
5187
5188         * gtk/gtkcheckmenuitem.c: Permanently turn on
5189         always_show_toggle.
5190
5191         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5192         be NULL. (Vladimir Klebanov, #26545)
5193
5194         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5195         some signed/unsigned comparison problems. (#6510,
5196         David Kaelbling)
5197
5198         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5199         return type to boolean (Oskar Liljeblad, #18648)
5200
5201 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5202
5203         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5204         Remove bogus colormap setting.
5205
5206 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5207
5208         * gdk/linux-fb/gdkcolor-fb.c:
5209         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5210
5211         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5212         Must set colormap.
5213         
5214 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5215
5216         * docs/tutorial/gtk-tut.sgml: DND updates
5217
5218 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5219
5220         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5221         Remove old debug g_warning().
5222         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5223         or an implementation, just pass the implementation to draw_drawable_2.
5224         
5225         * gdk/linux-fb/gdkprivate-fb.h:
5226         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5227
5228         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5229         clear and invalidate area when window is destroyed.
5230         (send_map_events): Remove old commented out code.
5231
5232 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5233
5234         * gdk/linux-fb/gdkpango-fb.c:
5235         Use italic instead of oblique in font aliases.
5236         
5237         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5238         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5239         other unsupported functions.
5240
5241 2000-12-04  Havoc Pennington  <hp@redhat.com>
5242
5243         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5244
5245         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5246
5247         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5248
5249         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5250         hack to avoid infinite loops (synthetic expose event) - 
5251         Owen has more appropriate fixes in a branch he'll check in later.
5252
5253         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5254         separator, CR, and CRLF as line ends
5255
5256         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5257         into lines using pango_find_paragraph_boundary(); other bits of
5258         the widget are still going to be broken if the boundary isn't '\n'
5259         though
5260
5261 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5262
5263         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5264         multiply.
5265
5266         * gdk/linux-fb/gdkpango-fb.c:
5267         Copied some 26.6 scaling macros from pango to clean up the rounding.
5268         (pango_fb_font_get_glyph_info): Correct sign on x value.
5269
5270         * gdk/linux-fb/gdkprivate-fb.h:
5271         Removed unreferenced external functions.
5272
5273         * modules/linux-fb/Makefile.am: Use ` instead of '.
5274
5275         * modules/linux-fb/basic.c:
5276         Remove dead code. In particular the dummy lang engine which broke all
5277         pango layouts in GtkFB. Don't include tables-big.i anymore.
5278
5279         * modules/linux-fb/tables-big.i:
5280         Upgrade to latest version from pango. Left for reference, basic_ranges
5281         moved to basic.c.
5282         
5283 2000-12-04  Havoc Pennington  <hp@redhat.com>
5284
5285         Fix bugs Alex found:
5286         
5287         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5288         to "draw"
5289
5290         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5291
5292         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5293
5294         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5295         implementation in here, apparently the expose() implementation was
5296         dead code.
5297
5298 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5299
5300         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5301         Return positive descent.
5302
5303 2000-12-02  Havoc Pennington  <hp@pobox.com>
5304
5305         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5306         method and signal
5307         
5308         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5309         calls gdk_window_process_updates() to push the exposes through
5310         (gtk_widget_class_init): No more draw signal, no
5311         gtk_widget_real_draw()  
5312         
5313         * gtk/gtkbin.c (gtk_bin_draw): remove
5314
5315         * gtk/gtkbox.c (gtk_box_draw): remove
5316
5317         * gtk/gtkbutton.c (gtk_button_draw): remove
5318
5319         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5320
5321         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5322
5323         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5324
5325         * gtk/gtkclist.c (gtk_clist_draw): remove
5326
5327         * gtk/gtkentry.c (gtk_entry_draw): remove
5328
5329         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5330
5331         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5332
5333         * gtk/gtkframe.c (gtk_frame_draw): remove
5334
5335         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5336
5337         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5338
5339         * gtk/gtklayout.c (gtk_layout_draw): remove
5340
5341         * gtk/gtklist.c (gtk_list_draw): remove
5342
5343         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5344
5345         * gtk/gtkmenu.c (gtk_menu_draw): remove
5346
5347         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5348
5349         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5350
5351         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5352
5353         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5354
5355         * gtk/gtkpacker.c (gtk_packer_draw): remove
5356
5357         * gtk/gtkrange.c (gtk_range_draw): remove
5358
5359         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5360
5361         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5362
5363         * gtk/gtktable.c (gtk_table_draw): remove
5364
5365         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5366
5367         * gtk/gtktext.c (gtk_text_draw): remove
5368
5369         * gtk/gtktextview.c (gtk_text_view_draw): remove
5370
5371         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5372
5373         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5374
5375         * gtk/gtktree.c (gtk_tree_draw): remove
5376
5377         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5378
5379         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5380
5381         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5382
5383         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5384
5385         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5386
5387         * gtk/gtkwindow.c (gtk_window_draw): remove
5388
5389 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5390
5391         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5392         a GtkToggleButton is both insensitive and active, it was being
5393         drawn by the GtkButton draw handler which doesn't check the
5394         state. Now it's calling gtk_toggle_button_paint instead.
5395         
5396 2000-12-01  Havoc Pennington  <hp@redhat.com>
5397
5398         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5399         dangling pointers to the appearance attributes from the 
5400         line display
5401
5402         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5403         width/height to mean "full width/height of drawable"
5404
5405         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5406         click to select word/line
5407         
5408         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5409         when getting log attrs. Get a slice, so that pixmaps and stuff
5410         are properly handled.
5411
5412         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5413         paste into the selection (replaces selection now, previously
5414         crashed or added to selection). Reveals longstanding btree bug -
5415         select multiple lines, middle-click on the selection, boom. This
5416         isn't related to my changes though.
5417
5418         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5419         PangoLogAttrs changes
5420         (gtk_entry_move_backward_word): ditto
5421
5422         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5423         functions return bool whether the iter moved onto a
5424         dereferenceable position.
5425  
5426         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5427         functions for motion in terms of display lines.
5428
5429         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5430         get the buffer a mark is inside
5431         
5432 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5433
5434         * gdk/linux-fb/Makefile.am:
5435         * modules/linux-fb/Makefile.am:
5436         Freetype 2 final uses freetype-config
5437
5438         * gdk/linux-fb/gdkpango-fb.c:
5439         Upgrade to use Freetype 2 final.
5440         More flexible support for font aliases, this also fixes a bug with
5441         GtkFontSelector, as the aliases must be visible in the font/family list,
5442         or GtkFontSelector reads uninitialized memory.
5443
5444 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5445
5446         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5447         XGetIMValues to properly terminate variable argument list, and do
5448         NULL return check for ic_values and xim_styles.
5449
5450         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5451         Restore preedit state after XmbResetIC().
5452         
5453         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5454         XvaCreateNestedList() should take XvaNestedList, but not
5455         XvaNestedList*.
5456
5457         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5458         preedit_draw_callback, preedit_caret_callback): Match
5459         "preedit-changed" signal name to "preedit_changed" to be
5460         consistent to the spec.
5461
5462         * gtk/gtkimcontextsimple.c (check_table):
5463         Match "preedit-changed" to "preedit_changed" to be consistent
5464         to the spec.
5465
5466 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5467
5468         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5469         gc->clip_region == NULL>
5470
5471 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5472
5473         Changes by Hans Breuer:
5474         
5475         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5476         Dont't use negative width and height as max_hints. This fixes
5477         Owen's recent testgtk changes for win32.
5478
5479         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5480         gdk_win32_hdc_release): These are exported and may be called with
5481         other drawable types than our GdkDrawableImplWin32 (?).
5482
5483         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5484         so always #define USE_BACKING_STORE.
5485
5486         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5487         of printf for debugging output.
5488
5489         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5490         
5491         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5492
5493         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5494         declaration.
5495
5496         * gtk/gtktexttypes.h: Ditto.
5497
5498         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5499         (GDK_VoidSymbol) also if in case of arg check failure.
5500
5501         * gtk/gtkimcontextsimple.c
5502         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5503         position to the pointer, but to the variable it points to.
5504
5505         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5506
5507         * gtk/gtk.def: Updates.
5508
5509 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5510
5511         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5512         GTK_TYPE_TREE_MODEL.
5513
5514 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5515
5516         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5517         Set the size of the font from the description.
5518         (gdk_text_width): Gross hack that calculates the width
5519         of text by text_length * size/2. This is necessary because
5520         GtkLabel does some ugly gtk_string_width call to calculate
5521         an good size.
5522         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5523
5524 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5525
5526         * docs/tutorial/gtk-tut.sgml: DND updates
5527
5528 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5529
5530         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5531         If you pass width or height == 0 to gdk_window_clear_area they
5532         should be calculated from the window size.
5533
5534 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5535
5536         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5537         a grab, but no grab-cursor, use the cursor from the grabbed
5538         window. (gdk_fb_window_send_crossing_events): Send normal
5539         enter/leave notifications if grab and owner_events == TRUE.
5540
5541 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5542
5543         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5544         Do implicit button grabs, even if the window doesn't
5545         want the event.
5546         (gdk_fb_window_send_crossing_events): If there is a
5547         grab, only the grabbed window gets normal enter/leave
5548         notifications. On ungrab go from grabbed window to current.
5549         Don't send any notification to b when propagating from c -> b.
5550         If setting a grab on window, don't set prev_window.
5551         (handle_mouse_input): Send enter/leave events to the window the
5552         mouse is over, not the grabbed one.
5553         
5554 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5555
5556         * gdk/gdkregion-generic.c: Zap warning.
5557         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5558         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5559
5560 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5561
5562         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5563         The cursor should be hidden if it is part of either the
5564         source or destination region. Not only if it is in both.
5565         (gdk_window_set_transient_for): Silence warnings.
5566
5567 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5568
5569         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5570         The default mode in X is Pie Arcs, therefore that is
5571         what Gtk+ uses.
5572
5573 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5574
5575         * gdk/linux-fb/gdkinput-ps2.c:
5576         Implement correct EnterNotify/LeaveNotify:
5577         (gdk_fb_window_send_crossing_events): New function that sends
5578         all GdkCrossingEvents from the last mouse-window to the specified
5579         destination.
5580         (gdk_fb_window_visibility_crossing): Removed function.
5581         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5582         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5583         instead of gdk_window_get_pointer() for better readability.
5584
5585         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5586         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5587
5588         * gdk/linux-fb/gdkprivate-fb.h:
5589         removed gdk_fb_window_visibility_crossing, added
5590         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5591
5592         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5593         New function that finds the least common ancestor of two windows.
5594         (gdk_window_show, gdk_window_hide):
5595         Use gdk_fb_window_send_crossing_events.
5596         (gdk_fb_window_move_resize): Send configure events to toplevel
5597         windows. Use gdk_fb_window_send_crossing_events.
5598
5599 2000-11-27  Havoc Pennington  <hp@redhat.com>
5600
5601         * gtk/gtkprivate.h (enum): Remove a trailing comma
5602
5603 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5604
5605         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5606         the "changed" callback of the adjustment.  We need to redraw the
5607         spin button's arrows when the adjustment's range changes.
5608         (adjustment_changed_cb): Draw the arrows.
5609         (gtk_spin_button_value_changed): Draw the arrows.
5610
5611 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5612
5613         * gdk/linux-fb/gdkselection-fb.c:
5614         Initial selection implementation.
5615
5616         * gtk/gtkselection.c:
5617         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5618         requestor in gtk_selection_request.
5619         
5620         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5621         Added gdk_selection_property atom.
5622
5623         * gdk/linux-fb/gdkprivate-fb.h:
5624         Export _gdk_selection_window_destroyed.
5625         Removed mask_off_x/y from GdkCursorPrivateFB.
5626         Removed hbearing, added top, left to PangoFBGlyphInfo.
5627
5628         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5629         Call _gdk_selection_window_destroyed
5630         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5631         the root window has been created.
5632         (static_dx_hack, static_dy_hack, compare_draw_rects,
5633         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5634         in region. They are already sorted. Instead just traverse them in
5635         reverse if draw_direction < 0.
5636         
5637         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5638         Double-clicks must be sent after the normal button_press.
5639         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5640         
5641         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5642         Pass _gdk_fb_screen_gc instead of NULL.
5643
5644         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5645         Initialize gdk_selection_property.
5646         (gdk_event_make): Remove unused code.
5647
5648         * gdk/linux-fb/gdkcursor-fb.c:
5649         Make the pixmap for the cursor the same size as the mask. Also remove
5650         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5651         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5652         Now the whole cursor is visible.
5653
5654         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5655         Fix bug where xdest+height instead of ydest+height was used
5656         to calculate if the source and dest overlapped. This fixes the
5657         redraw bug when the main window in testgtk was scrolled when
5658         partially covered by a tall window.
5659         Copy rectangles in region in order depending on draw_direction.
5660         Also moved the draw_direction flipping of start_y and end_y into
5661         the gc functions, as this might not be what all of them want.
5662         (gdk_fb_draw_lines): Support dashed lines.
5663         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5664         so that the text is positioned correctly (was 1 pixel high).
5665
5666         gdk/linux-fb/gdkgc-fb.c:
5667         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5668         all lines were drawn a pixel to short. Also checked the default of
5669         the rest of the values, and they're the same as X now.
5670
5671         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5672         Clean up pixel positioning of the glyphs. Just use bgy->top and
5673         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5674         to all divisions to get correct rounding behaviour.
5675
5676         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5677         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5678         Moved start_y/end_y flip into draw_drawable implementations.
5679         Flip also x rendering when draw_direction < 0.
5680         Remove unneccesary multiply with draw_direction.
5681
5682 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5683
5684         * docs/tutorial/gtk-tut.sgml:
5685           - get rid of gtk_toggle_button_toggled FUD
5686           - start DND section - needs work - based on:
5687                 http://wolfpack.twu.net/docs/gtkdnd/
5688
5689 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5690
5691         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5692         Correct calculation of font metrics. Now GtkEntrys have sane
5693         size.
5694
5695 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5696
5697         * gdk/gdktypes.h:
5698         Add new type GdkSpan
5699         
5700         * docs/reference/gdk/gdk-sections.txt,
5701         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5702         gdk/gdkregion.h:
5703         Implement and document gdk_region_spans_intersect_foreach.
5704
5705         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5706         Add new file gdkrender-fb.c which contains all core
5707         rendering code.
5708         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5709         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5710         (optimized rectangle fillers).
5711
5712         * gdk/linux-fb/gdkdrawable-fb2.c:
5713         Move all rendering code to gdkrender-fb.c.
5714         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5715         Use the new span intersection functions in gdk_fb_fill_spans.
5716         gdk_fb_draw_rectangle() clips filled rectangles and calls
5717         gc->fill_rectangle with the result.
5718         gdk_fb_fill_spans() gets extra argument "sorted".
5719
5720         * gdk/linux-fb/gdkevents-fb.c:
5721         Remove unused includes and defines.
5722         New function gdk_fb_get_time() to get correct time for events.
5723
5724         * gdk/linux-fb/gdkinput-ps2.c:
5725         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5726         Make sure to set the time of all events.
5727
5728         * gdk/linux-fb/gdkmain-fb.c:
5729         Use gdk_fb_get_time ().
5730
5731         * gdk/linux-fb/gdkprivate-fb.h:
5732         New virtual GC calls: fill_span & fill_rectangle.
5733         Export gdk_fb_get_time().
5734         gdk_fb_fill_spans() gets extra argument "sorted".
5735
5736         * gdk/linux-fb/mi*.c:
5737         Use GdkSpan instead of GdkRectangle.
5738         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5739         from XFree 4 source)
5740         
5741 2000-11-22    <jrb@redhat.com>
5742
5743         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5744         reversing the order in an if statement will do.  Doing so managed
5745         to make the treemodelsort half work.  Other half will follow after
5746         I get the insert function fully fixed.
5747
5748 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5749         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5750         more than 2 bits. Besides, I need to implement an evil hack. :)
5751
5752 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5753
5754         * docs/tutorial/gtk-tut.sgml: minor corrections
5755
5756 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5757         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5758           convert to and from relative path's and iters.
5759
5760         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5761           testing sorting functions a bit better.  Currently broken -- will
5762           fix in morning.
5763
5764 2000-11-20  Havoc Pennington  <hp@redhat.com>
5765
5766         * gtk/gtkwidget.c: Documented a bunch of functions in here
5767         (gtk_widget_realize): Warn if you try to realize
5768         a widget with no parent that isn't a toplevel
5769         (gtk_widget_intersect): return a gboolean
5770
5771 2000-11-20  Havoc Pennington  <hp@redhat.com>
5772
5773         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5774         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5775         scrolling to be implemented in GDK to finish. Also, right now
5776         we just size_allocate all children on every layout change,
5777         which is pretty lame. Test commented out of testtext.c, 
5778         until it works better.
5779
5780 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5781
5782         * gdk/linux-fb/gdkdrawable-fb2.c:
5783         Removed unused arguments from gdk_fb_drawable_get_pixel().
5784
5785         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5786         Renamed fidur specific mouse packet data in MouseDevice to
5787         generic. Used it in ps2 mouse handling code to avoid blocking
5788         reads.
5789
5790 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5791
5792         * demos/gtk-demo/main.c: Changed to have the list become
5793         non-italic when the demo window is destroyed through an external
5794         event (like a close button).  Doing so found three bugs in the
5795         widget.
5796
5797         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5798
5799         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5800         we actually set the cell.
5801
5802         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5803
5804         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
5805         free a leaked path.  Thanks memprof.
5806
5807 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
5808
5809         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
5810         off-by-one error when destroying allocated segments
5811         on failure. (Elliot)
5812
5813 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
5814
5815         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
5816         memleaks found by Evan Martin.
5817
5818 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
5819
5820         * Released 1.3.2
5821         
5822         * NEWS: Updates for 1.3.2
5823
5824 2000-11-17  Tor Lillqvist  <tml@iki.fi>
5825
5826         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5827         but in general for window system specific events.
5828
5829         * gtk/gtk.def
5830         * gtk/makefile.mingw.in
5831         * gtk/makefile.msc.in: Update.
5832         
5833         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5834
5835 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5836
5837         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5838         distribute gtk.immodules.
5839
5840         * gtk/Makefile.am (install-data-local): Don't install the
5841         gtk.immodules file created for the uninstalled modules;
5842         instead run gtk-query-immodules after install
5843
5844 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5845
5846         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5847         -rpath to the right install location.
5848
5849         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5850         -export-dynamic.
5851
5852         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5853         properly.
5854
5855 2000-11-15  Havoc Pennington  <hp@pobox.com>
5856
5857         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5858         patch from Mikael Hermansson to temporarily stop blinking while
5859         the user is using the keyboard to type or navigate. 
5860
5861         Also, when blinking, stay on for longer than we stay off. Also,
5862         return from start_cursor_blink if !cursor_visible, to save
5863         checking that flag all over the place before we call
5864         start_cursor_blink.
5865
5866 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5867
5868         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5869         only contain a "fontset" line, which is now ignored.
5870
5871         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5872         double-click-to-select-word work.
5873         
5874 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5875
5876         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5877         Don't move back one char when we are actually at the end of the 
5878         paragraph.
5879
5880 2000-11-15  Robert Brady  <robert@suse.co.uk>
5881
5882         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5883         'o' < 'p'.
5884         
5885         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5886         bind_textdomain_codeset.
5887
5888         (gtk_init_check): Make the warning about translating default:LTR
5889         sterner.
5890         
5891 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5892
5893         * **/Makefile.am : remove unecessary rules for win32-specific
5894         config-substituted targets. If you want these rules, use
5895         --enable-maintainer-mode (called automatically by autogen.sh).
5896         Stops a lot of unneccessary make-time warnings.
5897
5898         * gtk/gtktext{layout,display}.c: Factor in total width as
5899         well as screen when figuring alignment for word-wrap as well as
5900         no wrap; this is necessary to handle lines that cannot be wrapped
5901         at all.
5902
5903 2000-11-15  Havoc Pennington  <hp@redhat.com>
5904
5905         * gtk/testtext.c: Implement essential color cycling feature
5906
5907 2000-11-15  Havoc Pennington  <hp@redhat.com>
5908
5909         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5910         when we invalidate the main window.
5911
5912         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5913         GtkTextView will now invalidate the side windows for us when text
5914         changes.
5915
5916 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5917
5918         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5919         unconditionally, since we may need to update the horizontal
5920         scrollbars even if the height didn't change.
5921
5922         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5923         the extra attrs, since some of them affect size.
5924
5925         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5926         x_offset correctly.
5927
5928 2000-11-15  Havoc Pennington  <hp@redhat.com>
5929
5930         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5931         don't move the first line out into the margin, instead move the
5932         whole paragraph in order to make space for the first line within 
5933         the margin
5934
5935 2000-11-15  Havoc Pennington  <hp@redhat.com>
5936
5937         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5938         xoffset in addition to yoffset, so horizontal scrolling doesn't
5939         break redraws
5940
5941 2000-11-15  Havoc Pennington  <hp@redhat.com>
5942
5943         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5944         from the cursor
5945         (render_layout_line): fix reversed test that caused weird
5946         underlines to get drawn
5947
5948 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5949
5950         * gdk/linux-fb/gdkprivate-fb.h:
5951         Fix debug macros.
5952         
5953 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5954
5955         * gdk/linux-fb/gdkprivate-fb.h:
5956         Added virtual functions set_pixel, get_color,
5957         fill_span and draw_drawable to the GC.
5958         Added global _gdk_fb_screen_gc to use instead of
5959         NULL when drawing to the screen.
5960         Added _gdk_fb_gc_calc_state() prototype.
5961
5962         * gdk/linux-fb/gdkgc-fb.c:
5963         Call _gdk_fb_gc_calc_state() on any gc state change.
5964
5965         * gdk/linux-fb/gdkglobals-fb.c:
5966         Add _gdk_fb_screen_gc
5967                 
5968         * gdk/linux-fb/gdkdrawable-fb2.c:
5969         _gdk_fb_gc_calc_state() calculates best functions
5970         for the GC state and depth.
5971         Moved bpp specialized code to separate functions.
5972         Added optimized 24 bpp AA draw_drawable.
5973
5974         * gdk/linux-fb/gdkevents-fb.c:
5975         Silence gcc warning.
5976
5977         * gdk/linux-fb/gdkimage-fb.c:
5978         Use _gdk_fb_screen_gc
5979
5980         * gdk/linux-fb/gdkwindow-fb.c:
5981         Init and use _gdk_fb_screen_gc
5982
5983         * gdk/linux-fb/mitypes.h:
5984         Remove unused types.
5985
5986 2000-11-14  Havoc Pennington  <hp@pobox.com>
5987
5988         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5989         to pixels
5990
5991 2000-11-14  Havoc Pennington  <hp@pobox.com>
5992
5993         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5994
5995         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5996         unknown char, no real reason we were using a variable. 
5997         Remove gtk_text_unknown_char variable. Fix all the text widget
5998         files accordingly.
5999
6000         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6001         since the Unicode spec seems to prefer that character for our
6002         purposes.
6003
6004 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6005
6006         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6007         value of g_getenv() isn't freeable, so g_strdup it.
6008
6009         * modules/input/inuktitut.c: Inuktitut input method.
6010
6011         * modules/input/Makefile.am: Build this.
6012         
6013 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6014
6015         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6016         of gtk programs.
6017
6018 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6019
6020         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6021         reversed > that was causing Home to go to end of previous line.
6022
6023         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6024         modified-keypresses (leave for bindings.)
6025
6026         * modules/input/Makefile.am: Remove useless -export-dynamic
6027         from module LDFLAGS.
6028
6029 2000-11-14  Havoc Pennington  <hp@redhat.com>
6030
6031         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6032         higher.
6033
6034         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6035         account. Also, render rise, underline, background, etc. for
6036         pixbufs as well as text. Also, draw underlines one pixel higher.
6037
6038         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6039         PangoAttribute for the rise, so it gets drawn properly. Also,
6040         add the GtkTextAppearance attribute for pixbuf/widget segments
6041         as well; we should go ahead and have rise, underline, background,
6042         stipple work for those
6043
6044         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6045         Pango
6046
6047 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6048
6049         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6050
6051         * gtk/gtk.def: Update.
6052
6053         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6054         included.
6055         (gtk_rc_get_im_module_file): Use run-time installation directory
6056         on Win32.
6057
6058         * gdk/win32/rc/gdk.rc: Remove.
6059         * gdk/win32/rc/gdk.rc.in: New file.
6060         * gdk/win32/rc/Makefile.am: New file
6061         * gdk/win32/Makefile.am: Corresponding changes.
6062
6063         * gtk/gtk.rc: Remove.
6064         * gtk/gtk-win32.rc.in: New file.
6065         * gtk/Makefile.am: Corresponding changes.
6066
6067         * configure.in: Corresponding changes.
6068
6069         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6070         has a built gtkcompat.h. Developers using CVS code on Win32 can
6071         hand-edit it from gtkcompat.h.in.
6072
6073         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6074         gtkcompat.h from gtkcompat.h.win32.
6075
6076 2000-11-14  Havoc Pennington  <hp@redhat.com>
6077
6078         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6079         to default to GDK_ACTION_MOVE if the drag is within a single
6080         widget. Defaults to GDK_ACTION_COPY between widgets.
6081
6082 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6083
6084         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6085
6086         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6087
6088         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6089         srcdir != builddir
6090
6091         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6092
6093         * configure.in (GTK_VERSION): Up to 1.3.2
6094
6095         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6096         gtkimcontextxim.h
6097
6098         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6099         missing doc comment.
6100
6101 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6102
6103         * modules/linux-fb/basic.c:
6104         Use the glib iconv wrappers.
6105
6106 2000-11-13  Havoc Pennington  <hp@pobox.com>
6107
6108         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6109         still more bugs.
6110
6111         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6112         scroll the GdkWindows before realization.
6113
6114 2000-11-13  Havoc Pennington  <hp@redhat.com>
6115
6116         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6117         where GC didn't always get updated properly
6118
6119         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6120         of fonts instead of setting the entire font
6121
6122         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6123         setting entire font
6124
6125         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6126
6127         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6128         a bunch of individually-settable font attributes. You can still 
6129         use the "font" and "font_desc" args, they just set all the font
6130         attributes at once.
6131
6132 2000-11-13 Elliot Lee <sopwith@redhat.com>
6133
6134         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6135
6136 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6137
6138         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6139         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6140
6141         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6142         work better.
6143
6144 2000-11-13  Havoc Pennington  <hp@redhat.com>
6145
6146         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6147         the module file.
6148
6149         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6150         dest->language
6151
6152         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6153         settings
6154
6155         * gtk/gtktextview.c: Implement object args and setters/getters for
6156         all the aspects of the GtkTextAttributes that are not set from
6157         GtkWidget attributes. This is spacing, justification, margins,
6158         etc.
6159
6160         (gtk_text_view_set_arg)
6161         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6162         args
6163         (gtk_text_view_class_init): Add args for justify, left_margin,
6164         right_margin, indent, and tabs
6165         
6166
6167         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6168         attribute properly
6169
6170         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6171         replace with indent attribute
6172
6173         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6174         PANGO_SCALE
6175
6176         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6177         rearranging code to do that
6178         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6179         i.e. don't subtract the top_margin first, just to keep
6180         all margin-futzing in one place.
6181
6182         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6183
6184         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6185         special case of last line, Pango now handles this itself.
6186         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6187         Y coordinate
6188         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6189         (find_display_line_above): wasn't moving the byte index as it
6190         iterated over lines, so always returned byte 0. Also, port to use
6191         PangoLayoutIter.
6192         (find_display_line_below): same problem as
6193         find_display_line_above. Also, port to use PangoLayoutIter.
6194
6195 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6196
6197         * gdk/linux-fb/*.[ch]:
6198         Massive reindent to gtk+ standard. My hands hurt.
6199
6200         * gdk/linux-fb/gdkcolor-fb.c:
6201         Move GdkColorPrivateFB from inherited to windowing_data
6202
6203         * gdk/linux-fb/gdkcursor-fb.c:
6204         _gdk_cursor_new_from_pixmap made static
6205
6206         * gdk/linux-fb/gdkdnd-fb.c:
6207         GdkDragContextPrivate moved to windowing_data
6208
6209         * gdk/linux-fb/gdkdrawable-fb2.c:
6210         Removed endian.h, use glib endianness macros instead
6211         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6212         and GDK_DRAWABLE_IMPL_FBDATA
6213
6214         * gdk/linux-fb/gdkfont-fb.c:
6215         Add empty gdk_font_load(). Needed for linking of Gtk+.
6216
6217         * gdk/linux-fb/gdkimage-fb.c:
6218         Removed endian.h, use glib endianness macros instead
6219         Moved GdkImagePrivateFB to windowing_data
6220         gdk_image_new_bitmap didn't always allocate enough
6221         memory.
6222
6223         * gdk/linux-fb/gdkinput-ps2.c:
6224         Added semi-working support for MS serial mice.
6225
6226         * gdk/linux-fb/gdkprivate-fb.h:
6227         s/GdkWindowPrivate/GdkWindowObject/
6228         Removed GdkWindowPrivate typedef
6229         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6230         Removed GDK_DRAWABLE_P
6231         Move GdkColorPrivateFB from inherited to windowing_data
6232         Moved GdkImagePrivateFB to windowing_data
6233
6234         * gdk/linux-fb/gdkvisual-fb.c:
6235         Removed some unused debug code.
6236
6237         * gdk/linux-fb/gdkwindow-fb.c:
6238         Use stock cursors instead of including X headers.
6239         s/GdkWindowPrivate/GdkWindowObject/
6240
6241         * gdk/linux-fb/mitypes.h:
6242         Removed unused types.
6243
6244         * modules/linux-fb/basic.c:
6245         Use the pango fribidi wrappers.
6246
6247 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6248
6249         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6250         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6251         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6252         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6253         GEqualFunc where applicable.
6254         
6255         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6256         pango_font_description_equal as changed in pango.
6257         
6258         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6259
6260         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6261
6262         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6263
6264         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6265
6266         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6267
6268         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6269
6270         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6271         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6272
6273         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6274         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6275
6276 2000-11-12  Havoc Pennington  <hp@pobox.com>
6277
6278         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6279         dir to datadir/gtk+-2.0/demo
6280
6281         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6282         sorts of text widget and Pango font bugs. Urgh.
6283
6284         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6285
6286         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6287         tree that you should double click to see the demo. Fix 
6288         types of variables to reflect changed return values from 
6289         GtkTreeStore and GtkTreeViewColumn constructors.
6290
6291         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6292         newly-created buffer to prepare for GObject semantics
6293
6294         * gtk/testtext.c: don't leak the buffer with GObject semantics
6295
6296         * gtk/testtextbuffer.c: ditto
6297         
6298 2000-11-12  Havoc Pennington  <hp@pobox.com>
6299
6300         Rename this testgtk to gtk-demo to avoid confusion, and 
6301         install it so people can use it as a supplement to 
6302         the documentation.
6303         
6304         * demos/gtk-demo: Moved from demos/testgtk
6305
6306         * demos/testgtk: Removed
6307
6308         * configure.in: make Makefile in gtk-demo
6309         
6310         * demos/gtk-demo/Makefile.am: Install sample source to 
6311         datadir/gtk-demo (maybe there's a better place?), and 
6312         rename the binary to gtk-demo
6313         
6314         * demos/gtk-demo/main.c (load_file): Load installed sample
6315         source if source isn't found in pwd.
6316
6317 2000-11-09  Havoc Pennington  <hp@pobox.com>
6318
6319         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6320         argument to set the char displayed when visibility == FALSE
6321         (gtk_entry_create_layout): If !entry->visible, replace 
6322         all chars with the "invisible char"
6323
6324         * gtk/testgtk.c: Test the invisible_char deal
6325         
6326 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6327
6328         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6329         can't get a native font in the right encoding.
6330
6331 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6332
6333         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6334         respectively.
6335
6336 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6337
6338         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6339         Fix warning when moving between paragraphs.
6340
6341         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6342         delete => delete_from_cursor, insert => insert_at_cursor
6343
6344 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6345
6346         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6347
6348         * modules/input/imthai-broken.c: A Thai input method for use if
6349         Thai keys are really generating Latin1 keysyms.
6350
6351         * modules/input/Makefile.am: Build these.
6352
6353 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6354
6355         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6356         g_filename_{to,from}_utf8 now takes an extra parameter.
6357
6358         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6359         strftime into UTF-8.
6360
6361         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6362         calendars.
6363
6364         (gtk_calendar_paint_day_names): Draw day names in the right 
6365         place.
6366         
6367 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6368
6369         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6370         problem with using result of g_get_charset() backwards -
6371         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6372
6373         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6374         negative min_width/height and max_width/height to
6375         mean "requisition"; this allows setting a window
6376         to be user-resizable in only one direction easily.
6377
6378         * gtk/testgtk.c (create_main_window): Remove hard-coded
6379         usize - set a default size in the vertical direction.
6380
6381 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6382
6383         * gtk/gtkrange.c: Add some missing casts. Support 
6384         2 and 3 button clicks on the arrows to mean 
6385         "move by pages" and "jump to end". (Like gtkspinbutton)
6386
6387 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6388
6389         * gdk/win32/makefile.msc : reflect build module changes
6390
6391         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6392         from GdkPixmap*, cast implementation member instead.
6393
6394         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6395         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6396         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6397         more Gdi functions return value checking. 
6398         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6399         GdkImagePrivateWin32 *.
6400
6401         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6402         menus useable again. Add #pragma message to keep reminded on this issue.
6403         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6404         windows. This allows to enable backing store on Win32!
6405
6406         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6407         in drawable is of impl type. Correct specific type checks appropriate.
6408  
6409         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6410         GDK_WINDOW_DESTROYED before allocating new resources.
6411
6412         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6413
6414         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6415         (gdk_window_foreign_new) initialize parent handle.
6416         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6417
6418         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6419         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6420         problems (e.g. main buttons in testgtk). 
6421
6422 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6423
6424         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6425         gtk_widget_activate for GDK_Return.
6426
6427         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6428         of preedit cursor position.
6429
6430 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6431
6432         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6433         static.
6434
6435 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6436
6437         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6438         out support for multiple locales; that simple doesn't
6439         work reliably with current Xlib
6440
6441         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6442         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6443         Add support for positioning the cursor within the preedit string.
6444
6445 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6446
6447         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6448         at XIM input method module.
6449
6450         * gtk/gtktextview.c: Check for bindings after passing
6451         events to im context filter.
6452
6453 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6454
6455         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6456         empty attribute lists properly.
6457
6458 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6459
6460         * gtk/queryimmodules.c (main): Return non-zero exit
6461         status if errors were encountered querying any
6462         modules.
6463
6464         * modules/input/Makefile.am (moduledir): remove
6465         leftover bin program target.
6466
6467         * docs/make-todo: Fix typo in error message.
6468
6469 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6470
6471         * configure.in: Add modules/input/Makefile
6472
6473 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6474
6475         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6476         don't include gtkthemes.h.
6477
6478         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6479         to point
6480
6481         * gtk/Makefile.am: Add new .c and .h files, build 
6482         gtk-query-immodules and use it to create a gtk.immodules
6483         file for use of test programs.
6484
6485         * gtk/gtkpreview.c: remove extra blank line.
6486
6487 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6488
6489         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6490         Add the ability to add extra tables beyond the default
6491         one, and also the ability to have compose sequences 
6492         that are prefixes of other compose sequences. 
6493
6494         * gtk/gtkimcontextsimple.c: Export a preedit string which
6495         consists of possible candidates for keystrokes that have
6496         been entered but not yet committed.
6497
6498         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6499         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6500
6501         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6502         Add a function to add input-method switching menu items
6503         to a menu.
6504
6505         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6506         when switching input methods.
6507
6508         * gtk/gtkimcontextsimple.[ch]: Change the format of
6509         the compose table to allow compose tables of different
6510         lengths / sequence.
6511
6512 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6513
6514         * gtk/gtkimmodule.[ch]: Support routines for loading
6515         GtkIMContext implementations dynamically at runtime.
6516
6517         * modules/input/imcyrillic-translit.c: A sample input
6518         method (based on GtkIMContextSimple with an extra table),
6519         which demonstrates preedit strings and the module
6520         system for input modules
6521
6522         * gtk/queryimmodules.c: Program to query the available
6523         input modules and write the results into a file.
6524          
6525         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6526         extra config options "im_module_file" (cache file for
6527         input method modules), and "im_module_path" - path
6528         to look for modules when generating cache file.
6529
6530         This doesn't scale.
6531
6532 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6533
6534         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6535         generic code from gtkthemes into a new abstraction
6536         GtkModule which has the logic for implementing
6537         a loadable module which implements a number of 
6538         GObject types.
6539
6540 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6541
6542         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6543         a class into an interface  
6544         
6545         * gtk/gtkoldeditable.[ch]: Move the old editable
6546         implementation into here, so legacy widgets can
6547         still rely on the implemenation. GtkOldEditable
6548         exports GtkEditable. Make selection handling
6549         code use new text conversion functions (and
6550         handle UTF-8 as a side-effect). Use GtkClipboard
6551         for CLIPBOARD.
6552
6553         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6554         Adopt to match above changes.
6555
6556         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6557         avoid GtkOldEditable implementation. Restructure
6558         to reduce number of places that modify state directly.
6559         Move to GtkBindingSet. Display the preedit string.
6560         Queue recomputation of PangoLayout and scroll position
6561         to improve effiency of doing complex changes naively.
6562         Add a menu with cut/copy/paste and input method selection.
6563
6564 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6565
6566         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6567         to set preedit string and attributes; display preedit string by
6568         inserting string and attributes at cursor when creating the
6569         GtkTextLineDisplay.
6570
6571         * gtk/gtktextlayout.c: Move all conversions between byte
6572         positions in PangoLayout and GtkTextIter into new functions
6573         line_display_iter_to_index/index_to_iter that properly
6574         handle the preedit string.
6575
6576         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6577         it to return const char * (eventually will end up
6578         as GCONST char *, most likely.)
6579
6580         * gtk/gtktextview.[ch]: Handle the preedit string, call
6581         gtk_im_context_reset() as necessary, add a menu to switch
6582         input methods.
6583         
6584         * gtk/gtktextlayout.[ch]: Remove useless
6585         gtk_text_layout_get_log_attrs() function.
6586
6587 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6588
6589         * gdk/gdk.def
6590         * gtk/gtk.def: Update.
6591
6592         * gdk/win32/*.c: Add last argument to g_type_register_static()
6593         calls.
6594
6595         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6596
6597         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6598         generated by older wheel mouse drivers. Get the correct y
6599         coordinate from WM_MOUSEWHEEL messages.
6600
6601         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6602         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6603         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6604         Debugging functions.
6605
6606         * gdk/win32/gdkprivate-win32.h: Declare them.
6607
6608         * gdk/win32/gdkinput-win32.h: Add declaration for
6609         gdk_input_window_destroy().
6610
6611         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6612
6613 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6614
6615         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6616         function to help handle keeping things in sync.
6617
6618 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6619
6620         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6621         BOXED marshallers.
6622
6623         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6624         (gtk_list_store_class_init): use the new BOXED marshallers.
6625
6626         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6627         new_with_values to new_with_types.
6628         (gtk_tree_store_get_column_type): add this.
6629         (gtk_tree_store_class_init): use the new BOXED marshallers.
6630
6631         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6632         mirror some POINTER marshallers.
6633
6634 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6635
6636         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6637         allow more interesting iterators.  Also, made the lifecycle of
6638         iterators more explicit.
6639
6640         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6641
6642         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6643         types.
6644
6645 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6646
6647         * demos/testgtk/menus.c:
6648         Changes to make the new testgtk compile after
6649         gtk_menu_append was removed.
6650
6651         * gdk/linux-fb/gdkdrawable-fb2.c
6652         (gdk_fb_get_depth, gdk_fb_get_visual,
6653         gdk_drawable_impl_fb_class_init): Implement
6654         these drawable functions. Now GtkImages work again.
6655
6656         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6657
6658         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6659         
6660         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6661         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6662         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6663         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6664
6665 2000-11-08  Havoc Pennington  <hp@pobox.com>
6666
6667         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6668         visible_set args, don't know where these had gone, I thought they
6669         used to be there
6670
6671         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6672         now we can test the feature and see that it's totally broken.
6673
6674 2000-11-08  Havoc Pennington  <hp@pobox.com>
6675
6676         Make DND copy pixbufs and tags when source and target share a 
6677         tag table.
6678         
6679         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6680         in-process GTK_TEXT_BUFFER_CONTENTS target
6681         (gtk_text_view_drag_data_received): Paste from
6682         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6683
6684 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6685
6686         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6687         API changes.
6688
6689         * gtk/gtkmenu.c: Add support for scrolling menus.
6690         Remove gtk_menu_append/prepend/insert, these have been moved to
6691         gtkcompat.h as #defines.
6692
6693         * gtk/gtkcompat.h.in:
6694         Add compatibility #defines for gtk_menu_append/prepend/insert
6695
6696         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6697         GtkMenuPositionFunc gets an extra argument push_in.
6698         gtk_menu_append/prepend/insert removed.
6699         
6700         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6701         positioning behaviour to fit to scrolling menus.
6702
6703         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6704         into menuitem->submeny. That is wrong, and broke torn
6705         off submenus of torn off menus, since they were unrealized
6706         when the first menu was unrealized.
6707
6708         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6709         gtk_menu_shell_select_item() since these need to be overridden in
6710         GtkMenu.
6711
6712         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6713         positioning behaviour to fit to scrolling menus.
6714         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6715         the current item so that it is prelighted when the menu pops up.
6716         This is a workaround to the fact that the menu doesn't get the
6717         initial enter event (due to grabs).
6718
6719         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6720         s/gtk_menu_append/gtk_menu_shell_append/
6721
6722         * gtk/gtknotebook.c:
6723         s/gtk_menu_insert/gtk_menu_shell_insert/
6724
6725         * gtk/testgtk.c (create_menu, create_menus):
6726         Create the first menu with 50 items so that menu scrolling
6727         can be tested.
6728         
6729         
6730         Patch from Jonathan Blandford  <jrb@redhat.com>
6731
6732         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6733         system to handle size requests.  First, we ask what the size of
6734         the toggle is.  Then, when allocating the size, we allocate the
6735         toggle_size first.  This way we can have multiple menu-item
6736         classes w/o needing a seperate class for each.
6737
6738         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6739         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6740
6741         * gtk/gtkcheckmenuitem.c
6742         (gtk_check_menu_item_toggle_size_request): New function to handle
6743         the toggle size-request.
6744
6745 2000-11-07  Havoc Pennington  <hp@redhat.com>
6746
6747         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6748         Half-ass somewhat fix this function, so that scrolling to the
6749         insertion point works. Pango hacking is in the future to really
6750         fix it.
6751
6752         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6753         length of data, no longer used.
6754
6755         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6756         method contents in here, get rid of destroy method
6757         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6758         that were backward. Remove debug spew.
6759         (cut_or_copy): Make the clipboard work with insert_range to
6760         preserve tags and pixbufs, not just the primary selection.
6761
6762 2000-11-07  Havoc Pennington  <hp@redhat.com>
6763
6764         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6765         to gtk_text_mark_get_visible
6766
6767         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6768         bug that was generating an invalid iterator
6769
6770         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6771         ensure_char_offsets() in front of code placing the iter in an
6772         invalid state.
6773
6774         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6775         make override_location arg const
6776         (paste): Replace the selection if we paste into the 
6777         current selection
6778
6779         * gtk/gtkselection.h: Remove "GtkSelectioData"
6780         (struct _GtkSelectionData): move the definition here.
6781
6782         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6783         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6784
6785         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6786
6787         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6788         (gtk_text_buffer_insert_range_interactive): implement
6789         (gtk_text_buffer_get_tags): Remove, replaced by
6790         gtk_text_iter_get_tags()
6791
6792         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6793         limit parameter, to avoid infinite linear scan.
6794         (gtk_text_iter_backward_search): Add search limit
6795         (gtk_text_iter_forward_find_char): Add search limit
6796         (gtk_text_iter_backward_find_char): Add search limit
6797
6798 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6799
6800         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6801         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6802         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6803         gdk/linux-fb/gdkwindow-fb.c:
6804         use g_object_new() instead of g_type_create_instance() which
6805         is a private function for fundamental type implementations.
6806
6807         * gdk/linux-fb/gdkinput-ps2.c:
6808         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
6809         instead just store the current modifier state. Add a (somewhat broken)
6810         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
6811         Rename exported function gdk_input_ps2_get_mouseinfo to
6812         gdk_input_get_mouseinfo.
6813
6814         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
6815         gdk/linux-fb/gdkwindow-fb.c:
6816         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
6817         
6818
6819 2000-11-02  Havoc Pennington  <hp@redhat.com>
6820
6821         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
6822         use stock buttons. Should be 100% source compatible, appropriate
6823         filesel fields now point to dialog->vbox and dialog->action_area.
6824         On the bizarre side, dialog->action_area and filesel->action_area
6825         are not the same widget.
6826         (gtk_file_selection_init): Put some padding around the selection
6827         entry, so it isn't touching the GtkDialog separator.    
6828
6829         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6830         use stock buttons, etc. Should also be source compatible.
6831         Set the dialog default title in _init not _new().
6832         
6833         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6834         Use stock buttons; don't put a button box inside the existing
6835         dialog button box. Don't bother with push/pop colormap anymore.
6836
6837         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6838         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6839         for message dialog, and necessary for the font selection and color
6840         selection with help and apply buttons.
6841         
6842         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6843         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6844         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6845         between buttons, put less padding around the action area.
6846         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6847         This will also exit the loop if the widget is hidden.
6848         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6849         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6850         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6851         special-case delete event.
6852
6853         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6854         formatting
6855         
6856 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6857
6858         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6859         button to temporarily disable position recording in the
6860         "saved position" test.
6861
6862 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6863
6864         * gtk/gtkthemes.c: added compat code that temporarily implements
6865         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6866         going to be revamped by owen's upcoming GtkModule patches, but
6867         untill then people want gtk to build, right? ;)
6868
6869 2000-11-04  Havoc Pennington  <hp@pobox.com>
6870
6871         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6872         list
6873
6874         * docs/Changes-2.0.txt: Add note about
6875         gtk_container_get_toplevels()
6876
6877         * gtk/gtktextview.h: formatting
6878         
6879         * gtk/gtktextview.c: don't start descriptions with "Returns",
6880         confuses gtk-doc
6881
6882 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6883
6884         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6885         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6886
6887 2000-11-03  Havoc Pennington  <hp@redhat.com>
6888
6889         * gtk/gtktexttagtable.c: Docs
6890         (gtk_text_tag_table_size): return a signed int
6891
6892         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6893         (gtk_text_tag_event): make the event_object a GObject
6894
6895         * gtk/gtktextview.c: Write API docs for all functions.
6896
6897         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6898         for gtk_text_view_get_window_type() called on one of the private
6899         windows.
6900
6901         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6902         directly, call get_buffer() which demand-creates a default
6903         buffer. So gtk_text_view_new() can be used to create a view with a
6904         default buffer in it, if you just want an empty text box users can
6905         put data in. Useful for GUI builders also.
6906
6907 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6908
6909         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6910         the charset encodign portion MUST be in lowercase.
6911         * gtk/gtkrc.az: added file for Azeri language
6912
6913 2000-11-03  Havoc Pennington  <hp@redhat.com>
6914
6915         Get widgets working on the btree/buffer side. Display of them 
6916         still doesn't work.
6917         
6918         * gtk/gtktextview.c: start implementing child widget stuff
6919
6920         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6921
6922         * gtk/gtktextlayout.c: handle embedded widgets
6923
6924         * gtk/gtktextdisplay.c: handle embedded widgets
6925
6926         * gtk/gtktextchild.c: Implement all the child anchor goo
6927
6928         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6929         function
6930
6931         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6932         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6933         creating a child anchor or a pixbuf segment.
6934         (gtk_text_btree_create_child_anchor): new function
6935         (gtk_text_btree_unregister_child_anchor): new function
6936
6937         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6938         allocate_child signal on GtkTextLayout
6939
6940         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6941         values
6942         (gtk_text_iter_get_child_anchor): new function
6943
6944         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6945         default handler for the changed signal, which calls
6946         gtk_text_buffer_set_modified(), instead of just always emitting
6947         changed then calling set_modified() manually. I guess this is
6948         maybe more flexible. It seems logical.
6949
6950 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6951
6952         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6953         now.
6954
6955         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6956
6957 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6958
6959         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6960         been marked static.
6961
6962 2000-11-02  Havoc Pennington  <hp@redhat.com>
6963
6964         * gtk/testgtk.c (create_labels): had a test backward
6965
6966         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6967         fields, so the dest GC ends up with the correct clip origin, 
6968         etc. Fixes a bug where colored labels didn't redraw 
6969         properly.
6970
6971 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6972
6973         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6974         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6975         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6976         Add last argument to t_type_register_static call.
6977         
6978         * gdk/linux-fb/gdkdrawable-fb2.c:
6979         Add last argument to t_type_register_static call.
6980         export the get_image drawable virtual function.
6981
6982         * gdk/linux-fb/gdkimage-fb.c:
6983         Add last argument to t_type_register_static call.
6984         rename gtk_image_get to _gdk_fb_get_image and
6985         export it for use by gdkdrawable-fb2.
6986
6987         * gdk/linux-fb/gdkprivate-fb.h:
6988         export _gdk_fb_get_image.
6989
6990         * gdk/linux-fb/gdkselection-fb.c:
6991         Add new api call stubs.
6992
6993         * gtk/Makefile.am:
6994         Missing ( in linux-fb part.
6995
6996         * modules/linux-fb/Makefile.am:
6997         Must link with gdk_pixbuf or get unresolved symbol.
6998
6999 2000-11-01  Havoc Pennington  <hp@pobox.com>
7000
7001         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7002         GTK_TYPE_TEXT_ITER and BOXED marshallers
7003
7004         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7005
7006         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7007         
7008         * gtk/gtk-boxed.defs: add GtkTextIter
7009
7010         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7011         properly use OBJECT and BOXED
7012
7013 2000-11-01  Havoc Pennington  <hp@redhat.com>
7014
7015         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7016
7017         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7018         before returning it. 
7019         
7020 2000-11-01  Havoc Pennington  <hp@redhat.com>
7021
7022         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7023         Clip the rectangle to be rendered to the drawable, since
7024         get_from_drawable() requires a region within the drawable
7025
7026 2000-11-01  Havoc Pennington  <hp@redhat.com>
7027
7028         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7029         from coordinates.
7030
7031 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7032
7033         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7034         it isn't NULL.
7035
7036 2000-11-01  Havoc Pennington  <hp@pobox.com>
7037
7038         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7039         on a label
7040         (gtk_label_finalize): unref the attr list if any.
7041
7042         * gtk/testgtk.c (create_get_image): close test on second click
7043         (make_message_dialog): close dialog if it exists
7044
7045         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7046
7047         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7048         gdk-pixbuf
7049
7050         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7051         from Pango markup format
7052         (gtk_label_set_markup_with_accel): ditto but with accelerator
7053         parsing
7054
7055         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7056
7057         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7058         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7059         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7060         call gdk_window_get_origin().
7061
7062         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7063         implement GDK_PIXBUF_ALPHA_FULL
7064         
7065 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7066
7067         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7068         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7069         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7070         multiple handlers respectively, instead of only treating the
7071         first handler found (bug reported by owen).
7072
7073 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7074
7075         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7076
7077         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7078
7079         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7080         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7081         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7082
7083         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7084         widget.  Needs writing someday.
7085
7086         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7087         the docs.
7088
7089 2000-10-30  Havoc Pennington  <hp@redhat.com>
7090
7091         * gtk/gtktextview.h, gtk/gtktextview.c:
7092         Rename delete_at_cursor delete_from_cursor, and 
7093         move to move_cursor.
7094
7095 2000-10-30  Havoc Pennington  <hp@redhat.com>
7096
7097         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7098         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7099         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7100         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7101         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7102         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7103         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7104         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7105         gtktexttypes.h, gtktextview.c, gtktextview.h:
7106
7107         Massive reindentation and reformatting. Arg alignment and comments
7108         still need fixing in various places.
7109
7110 2000-10-30  Havoc Pennington  <hp@redhat.com>
7111
7112         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7113         to be named insert_at_cursor and delete_at_cursor so C++ can
7114         handle them.
7115
7116 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7117
7118         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7119         to get a double directory separator in case the home directory
7120         ends with one. This would cause trouble especially on Windows,
7121         where the path will be confused with the syntax for an an UNC
7122         (network share) path \\server\share\path.
7123         (gtk_rc_add_initial_default_files): Ditto.
7124
7125 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7126
7127         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7128
7129         * gtk/gtktextview.c: Use correct marshallers.
7130
7131 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7132
7133         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7134         use new iter stuff, and added all the appropriate signals et al.
7135
7136         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7137         code is internal to gtk only.
7138
7139 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7140
7141         * gtk/gtk.def
7142         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7143         glib-genmarshal etc.
7144
7145 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7146
7147         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7148         parallel builds.
7149
7150 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7151
7152         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7153
7154 2000-10-27  Robert Brady  <robert@suse.co.uk>
7155
7156         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7157         en_GB (British), ia (Interlingua).
7158
7159 2000-10-26  Havoc Pennington  <hp@redhat.com>
7160
7161         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7162
7163         Fixed output of:
7164         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7165         
7166         * gtk/gtktextsegment.c (char_segment_new): rename
7167         (_char_segment_new_from_two_strings): rename
7168         (_toggle_segment_new): rename
7169         
7170         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7171         (make_clipboard_widget): make it static
7172         (text_get_func): static
7173         (text_clear_func): static
7174
7175         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7176         static
7177         (hex_changed): make it static
7178         (hsv_changed): make it static
7179         (opacity_entry_changed): make it static
7180
7181         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7182         (toggle_segment_check_func): rename with _gtk
7183
7184         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7185         (_widget_segment_new): rename
7186         (_widget_segment_add): rename
7187         (_widget_segment_remove): rename
7188         (_widget_segment_ref): rename
7189         (_widget_segment_unref): rename
7190
7191         * gtk/gtktextmark.c (_mark_segment_new): Rename
7192         _gtk_mark_segment_new   
7193
7194 2000-10-26  Havoc Pennington  <hp@redhat.com>
7195
7196         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7197         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7198         types
7199
7200         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7201         marshaller types
7202
7203         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7204         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7205         license on these files.
7206
7207         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7208         work.
7209
7210         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7211         runtime random number different for each tree, instead of 
7212         a constant I made up.
7213
7214 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7215
7216         * gtk/Makefile.am: buncha cleanups, kludged build sources
7217         dependencies with a Makefile: oldest-source-stamp dependancy
7218         for the moment. automake is really fighting us here, with
7219         intentionally not allowing user-defined rules or dependancies
7220         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7221
7222         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7223         to public headers. tehy have a comment stating that they are
7224         "semi-public" aren't included by gtk.h and if enums popup there,
7225         they can be /*< skip >*/-ed.
7226
7227         * gtk/gtktextlayout.h: 
7228         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7229         added LGPL... <SIGH>
7230
7231 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7232
7233         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7234         GtkTreeIter.  Added iterators everywhere.
7235
7236         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7237
7238         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7239
7240         * gtk/gtktreestore.c: Changed to use the iterators.
7241
7242         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7243         iterators tomorrow.
7244
7245         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7246         iterators tomorrow.
7247
7248         * gtk/treestoretest.c: Changed to use iterators.
7249
7250         * demos/testgtk/main.c: Moved to use the new iterator system.
7251
7252 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7253
7254         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7255         localization misbehaviour.
7256
7257         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7258         a useless type without copy/free.
7259
7260         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7261         of GTK_TYPE_CTREE_NODE.
7262
7263 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7264
7265         * gtk/gtksignal.c:
7266         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7267         applicable.
7268
7269         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7270         gtk_selection_data_copy and gtk_selection_data_free
7271         do GtkSelectionData work as params in signals.
7272
7273 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7274
7275         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7276         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7277         couldn't they at least give it a non-standard name?
7278         
7279         * gtk/gtktextlayout.c: arg! yet another implementation of
7280         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7281
7282         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7283         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7284         home. now i know this _is_ a conspiracy.
7285
7286         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7287         ::state-changed.
7288
7289         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7290         (gtk_accel_group_create_add): marshaller signature fixups.
7291
7292         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7293         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7294
7295         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7296         anymore.
7297
7298 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7299
7300         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7301         due to the signal system changes, it wouldn't build currently. to
7302         be fixed soon.
7303
7304         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7305
7306         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7307         so it needs gtk_marshal_VOID__ENUM() instead of
7308         gtk_marshal_NONE__UINT().
7309
7310         * gdk/gdk*.c: adapted type registration functions.
7311
7312         * gtk/gtkbindings.c:
7313         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7314         gone.
7315
7316         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7317
7318         * gtk/gtkobject.c:
7319         (gtk_object_destroy):
7320         (gtk_object_shutdown): fixed recursion guards. basically we have to
7321         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7322         is called during ::destroy, and avoid recursion there.
7323
7324         * gtk/gtktypeutils.c:
7325         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7326         boxed_copy/boxed_free. this needs a more general solution based on a
7327         publically installed code-generator utility.
7328
7329         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7330         glib's gobject has support for that now.
7331         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7332
7333 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7334
7335         * gtk/gtksignal.[hc]:
7336         * gtk/gtkmarshal.[hc]:
7337         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7338         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7339         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7340         care of that.
7341
7342         * *.c: marshaller name fixups.
7343
7344         * gtk/gtkmarshal.list: added a comment briefing the format.
7345
7346 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7347
7348         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7349         compatibility macros here now. more specifically, most of
7350         the API is preserved (yes, _most_, nonwithstanding the
7351         following exceptions listed, the API is stil lHUGE ;)
7352         things that got removed completely:
7353         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7354         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7355         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7356         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7357         gtk_signal_remove_emission_hook().
7358         non-functional functions variants:
7359         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7360         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7361         not supported anymore.
7362         (gtk_signal_compat_matched): new internal function to aid
7363         implementation of the compatibility macros, it  provides
7364         functionality to block/unblock/disconnect handlers based
7365         on func/data.
7366
7367         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7368
7369         * *.c: adaptions to new type registration API signatures.
7370
7371 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7372
7373         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7374
7375 2000-10-25  Robert Brady  <robert@suse.co.uk>
7376
7377         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7378         gdk_property_delete): If window == NULL, assume the root window.
7379         (restoring the behaviour that was in 1.2).
7380         
7381         * gtk/testtext.c (save_buffer): Allow creation of new files when
7382         saving.
7383
7384         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7385         calls to read().
7386
7387 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7388
7389         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7390
7391         * gdk/win32/gdkdrawable-win32.c
7392         * gdk/win32/gdkimage-win32.c
7393         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7394         X11 backend.
7395
7396         * gdk/win32/gdkcc-win32.c
7397         * gdk/win32/gdkcolor-win32.c
7398         * gdk/win32/gdkfont-win32.c
7399         * gdk/win32/gdkinput-win32.c
7400         * gdk/win32/gdkmain-win32.c
7401         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7402
7403 2000-10-24  Havoc Pennington  <hp@redhat.com>
7404
7405         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7406         it a static function
7407
7408         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7409         redraw text when a tag is applied to it.
7410
7411         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7412         (gtk_text_tag_affects_nonsize_appearance): private functions to
7413         see if a tag requires various kinds of redraw/layout to be queued
7414         up.
7415
7416         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7417
7418         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7419         at the start of the buffer, so search works by default
7420
7421         * gtk/gtktextiter.c (lines_match): init match_start always
7422
7423         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7424         function, get iter at a line + a byte index
7425
7426         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7427         to set byte position within a line
7428         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7429
7430 2000-10-23  Havoc Pennington  <hp@redhat.com>
7431
7432         * gtk/testtext.c: Re-enable the "find" dialog
7433
7434         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7435         
7436         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7437         the arguments to gdk_draw_drawable were in the wrong order
7438         (gdk_window_paint_init_bg): This function was ignoring the
7439         init_region, instead of clipping to it, so the entire backing
7440         pixmap was cleared on every begin_paint()
7441         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7442         was in here again, the loop kept using the same GtkWindowPaint
7443         over and over.
7444         (gdk_window_begin_paint_region): Fix a bug where we had two
7445         x_offset instead of x_offset and y_offset
7446
7447         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7448         before we get the image.
7449         (gdk_draw_drawable): get the composite before we draw the drawable.
7450         (gdk_drawable_real_get_composite_drawable): default
7451         get_composite_drawable implementation that returns the drawable 
7452         itself
7453
7454         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7455         get_composite_drawable virtual function
7456
7457         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7458         list-walking bug
7459
7460         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7461         make this work if the source drawable is a GdkDrawableImplX11
7462         instead of a public drawable type. This is really broken; the
7463         problem is that GdkDrawable needs a virtual method get_xid(), but
7464         of course that doesn't work in practice. Enter RTTI.
7465
7466         Also, improve mismatched depth message.
7467
7468         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7469         GdkPixmap
7470
7471         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7472         install _gdk_x11_get_image as our implementation of get_image
7473         
7474         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7475         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7476
7477         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7478         gdk_drawable_get_image
7479
7480         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7481
7482         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7483         get_image
7484
7485         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7486         trailing semicolon after for loop
7487
7488 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7489
7490         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7491         where font_desc for widget's context lagged widget's font_desc by
7492         one step.
7493
7494 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7495
7496         * gdk/win32/gdkgc-win32.c
7497         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7498
7499         * gtk/makefile.mingw.in
7500         * gtk/gtk.def: Updates.
7501
7502         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7503         library.
7504
7505         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7506
7507         * gtk/makefile.msc: Remove
7508
7509         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7510
7511         * gtk/Makefile.am: Add it.
7512
7513         * configure.in: Generate it.
7514
7515         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7516         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7517         something even if not implemented, to satisfy picky MSVC.
7518
7519         Patches by Hans Breuer:
7520         
7521         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7522         SetBkMode() and SetTextAlign() before calling
7523         pango_win32_render().
7524
7525         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7526         Set hcliprgn to NULL after destroying it.
7527         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7528
7529         * gdk/win32/gdkgeometry-win32.c
7530         (_gdk_windowing_window_queue_antiexpose): More effective
7531         implementation.
7532
7533         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7534         depth as default, not the visual's.
7535
7536         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7537         against empty title.
7538
7539         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7540         IMAGE_PRIVATE_DATA.
7541
7542         * gdk/win32/gdkimage-win32.c: Use it.
7543
7544 2000-10-22  Robert Brady  <robert@suse.co.uk>
7545
7546         * configure.in: Check for bind_textdomain_codeset
7547
7548         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7549         present, make use of it.
7550
7551         Add a translatable string "default:LTR" which, if translated
7552         to "default:RTL", will cause the default direction to be
7553         Right-to-Left.
7554
7555         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7556         direction if marked as flippable.
7557
7558         * gtk/gtkhscale.c: Mark widget as flippable.
7559         
7560 2000-10-04  Havoc Pennington  <hp@redhat.com>
7561
7562         * gtk/testgtk.c (create_buttons): create some stock buttons
7563         with the default accel group
7564         (create_image): test some new GtkImage features
7565         (make_message_dialog): test GtkMessageDialog
7566         (create_modal_window): fix someone's bizzarro indentation
7567
7568         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7569         GTK_WIN_POS_CENTER_ON_PARENT. 
7570         Add "destroy with parent" setting, which means the window goes
7571         away with its transient parent.
7572         (gtk_window_get_default_accel_group): get the default accel group
7573         for the window.
7574         (gtk_window_set_destroy_with_parent): set/unset destroy with
7575         parent flag
7576         (gtk_window_read_rcfiles): invalidate icon set caches
7577         after reloading rcfiles 
7578
7579         * gtk/gtkenums.h (GtkWindowPosition): add
7580         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7581         on its parent window when the dialog is mapped for the first time.
7582
7583         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7584         a simple message dialog class
7585         
7586         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7587         handler to emit response signal, and maybe later it would
7588         honor a hide_on_delete flag - though that isn't there yet.
7589         Set border width on the vbox to 2, so we get some padding.      
7590         Use a button box for the action area.
7591         (gtk_dialog_key_press): synthesize a delete event if Esc
7592         is pressed and the GtkWidget key press handler didn't 
7593         handle the escape key.
7594         (gtk_dialog_new_with_buttons): new function creates a dialog
7595         with some default buttons in it.
7596         (gtk_dialog_add_action_widget): add an activatable widget
7597         as a button in the dialog - you can also add a non-activatable
7598         widget by accessing the action area directly.
7599         (gtk_dialog_add_button): add a simple button - stock ID or 
7600         label - to the action area
7601         (gtk_dialog_response): emit response signal
7602         (gtk_dialog_run): block waiting for the dialog, return 
7603         the response. Override normal delete_event behavior, so that 
7604         delete_event does nothing inside gtk_dialog_run().
7605
7606         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7607         emitted when an action widget is clicked or the dialog gets
7608         delete_event
7609
7610         * gtk/gtk.h: add gtkmessagedialog.h
7611
7612         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7613
7614 2000-10-18  Havoc Pennington  <hp@redhat.com>
7615
7616         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7617         where any number of empty lines would get skipped
7618
7619         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7620         edge.
7621
7622         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7623         warning about invalid iterators (explain more thoroughly)
7624         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7625
7626         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7627         big
7628
7629         * demos/*.c: Add error handling
7630
7631         * gtk/gtktextbuffer.c: don't modify const iterators
7632
7633         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7634
7635         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7636         on file load
7637
7638         * gtk/gtkiconfactory.c: Update to reflect addition of error
7639         handling to gdk-pixbuf loaders
7640
7641 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7642
7643         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7644         move to new modularized testgtk.
7645
7646 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7647
7648         * gtk/gtktreeview.c: Draw the arrows correctly.
7649
7650         * gtk/gtktreemodel.c: Added user docs.
7651
7652         * gtk/gtk.h: remove gtktreedatalist.h.
7653
7654         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7655         parent when generating my type.
7656
7657         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7658         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7659
7660 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7661
7662         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7663         GtkTreeModel from object to interface.
7664
7665 2000-10-16  Havoc Pennington  <hp@redhat.com>
7666
7667         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7668         compilation
7669
7670 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7671
7672         * gtk/gtktreeselection.c: Add API documentation to all public
7673         functions.
7674
7675         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7676         functions.
7677
7678 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7679
7680         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7681         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7682         docs to all public functions.
7683
7684         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7685         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7686         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7687         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7688         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7689         issue.
7690
7691 2000-10-14  Robert Brady  <robert@suse.co.uk>
7692
7693         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7694
7695 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7696
7697         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7698         values other then G_TYPE_STRING.
7699         * gtk/gtktreeselection.c: Minor commenting updates.
7700         * gtk/gtktreeview.c: Format updates.
7701
7702 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7703
7704         * README.win32: Update.
7705
7706         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7707         lines that had been deleted by mistake (?).
7708
7709         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7710         also the case fg==white and bg==black (but still not randomly
7711         coloured cursors). Thanks to Wolfgang Sourdeau.
7712
7713         * gdk/win32/*.c: Silence gcc -Wall.
7714
7715         * gtk/gtk.def: Add missing entry points.
7716
7717         Fixes by Hans Breuer:
7718
7719         * gdk/makefile.msc
7720         * gdk/win32/makefile.msc: Update.
7721
7722         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7723         some MSVC thing, presumably), cause breakpoint on failures. Add
7724         GDK_NOR case. Call g_log_set_always_fatal.
7725
7726         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7727         should be pased by reference.
7728         
7729         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7730         
7731         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7732
7733         * gdk/win32/gdkevents-win32.c
7734         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7735
7736         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7737         implementation object.
7738
7739         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7740         not just windows.
7741         
7742         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7743         Use the wrapper object.
7744         
7745 2000-10-06  Havoc Pennington  <hp@redhat.com>
7746
7747         * Makefile.am (SRC_SUBDIRS): contrib subdir
7748
7749         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7750         so it can be used in Xlib version
7751
7752         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7753         tree
7754
7755         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7756         change from 1.0 tree that returns first frame of animation
7757         if the loaded file is an animation.
7758
7759         * contrib: add new directory to hold stuff that comes with GTK+
7760         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7761         
7762         * configure.in: add contrib/*
7763
7764 2000-10-05  Havoc Pennington  <hp@redhat.com>
7765
7766         * demos/testpixbuf-save.c: add pixbuf save test
7767
7768         * demos/Makefile.am: add testpixbuf-save.c
7769
7770 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7771
7772         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7773         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7774         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7775         * gtk/gtktreeselection.[ch]: Replaced
7776         "node_selected"/"node_unselected" signal with "selection_changed"
7777         signal.
7778
7779 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7780
7781         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7782         tree widget.
7783
7784 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7785
7786         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7787         drawing.
7788
7789 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7790
7791         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7792         Move list pointer forwards before removing item from
7793         list. (Crash reported by Salmaso Raffaele)
7794
7795         * gdk/gdkwindow.h: Remove spurious trailing ,
7796
7797         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7798         dependencies on uninstalled libraries, sorry folks.
7799
7800 2000-10-04  Havoc Pennington  <hp@redhat.com>
7801
7802         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7803         gtk/gtkiconfactory.c: Fix copyrights    
7804
7805         * demos/testpixbuf.c: add inline pixbuf test
7806         
7807 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
7808
7809         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
7810         Add gdk_window_iconify.
7811
7812         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
7813         (gdk_window_set_geometry_hints): Add win_gravity
7814         to geometry structure.
7815
7816         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
7817         Implement _NET_WM_PING.
7818
7819         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
7820         Set _NET_WM_PID on the client leader.
7821
7822         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
7823         Handle UTF-8 better.
7824
7825         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
7826         UTF-8 better, set _NET_WM_NAME as well. Only set
7827         icon name if it hasn't previously been explicitely 
7828         set.
7829
7830 2000-10-03  Havoc Pennington  <hp@redhat.com>
7831
7832         * gtk/testtextbuffer.c: clean up trailing whitespace,
7833         add extensive tests for tag toggle iteration.
7834         
7835         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7836         distance
7837
7838         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7839         optimize case where the tag root is on level 1
7840         (gtk_text_line_previous_could_contain_tag): attempt to implement
7841         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7842         functionality
7843
7844         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7845         Implement this, though not very efficiently.
7846
7847         * gtk/gtktextiterprivate.h: reformat
7848
7849         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7850         iterator
7851
7852         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7853         this to properly revalidate the iterators.
7854
7855         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7856         properly at the end of the line (and therefore on empty lines)
7857
7858         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7859         maybe we should return a value...
7860
7861 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7862
7863         * config.h.win32: Guard definition of alloca(). glib.h now handles
7864         that.
7865
7866         * gdk/gdk.def
7867         * gtk/gtk.def: Add new entry points.
7868
7869         Changes just to make GTK+ build without errors on Win32. No hope
7870         of it working in its current state, though...:
7871         
7872         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7873         some functions from the X11 backend, just to make GTK+ build.
7874
7875         * gdk/makefile.mingw.in
7876         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7877         number. Add new object files.
7878
7879         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7880         GetMessageTime to get timestamp (where on X11 uses
7881         gdk_x11_get_server_time()).
7882
7883 2000-10-02  Havoc Pennington  <hp@pobox.com>
7884
7885         * gtk/gtktextview.c: text_window_* weren't static and should have
7886         been.
7887         Start work on child widgets; not yet complete, syncing to 
7888         office computer.
7889
7890         * gtk/gtktextchild.h: change this to contain a public interface,
7891         starting work on child interfaces.
7892         * gtk/gtktextchildprivate.h: move private interfaces here
7893
7894         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7895
7896         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7897         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7898         gtk/gtktextmark.c: copyright notices
7899
7900         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7901         internal functions      
7902
7903         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7904         internal function
7905
7906         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7907         Reformatting    
7908
7909 2000-09-30  Havoc Pennington  <hp@pobox.com>
7910
7911         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7912         NULL start/end pointers
7913
7914         * gtk/gtktextbuffer.c: Write some docs
7915         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7916         NULL, so you can just check whether there's a selection.        
7917
7918         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7919         cleanup_line or segments_changed ourselves, it gets done 
7920         in unlink_segment
7921
7922         * gtk/gtktextmark.h:
7923         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7924         
7925         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7926
7927         * gtk/gtktextmark.c: delete some more old Tk cruft
7928
7929         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7930         mark before removing it, so we can emit MARK_DELETED with a valid
7931         pointer.
7932         (gtk_text_buffer_mark_set): hold ref across signal emission
7933
7934         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7935         whining about attempts to delete special marks
7936
7937         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7938         underscore, since it's internal.
7939
7940         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7941         now implemented in terms of iterators in gtktextiter.h
7942
7943         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7944         New function, destructively sets contents of buffer. Also 
7945         a convenient way to clear the buffer by setting text to ""
7946
7947         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7948         multiline string literal
7949
7950         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7951         text changes.
7952
7953         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7954         is not dereferenceable
7955         (gtk_text_iter_forward_lines): fix return value
7956
7957 2000-09-29  Havoc Pennington  <hp@redhat.com>
7958
7959         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7960
7961         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7962         that set border window size to have nicer name
7963         (gtk_text_view_mark_set_handler):  Fix this to have the 
7964         right signature.
7965
7966         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7967
7968         * gtk/testtext.c: Update with API changes, put line numbers on 
7969         both sides.
7970         
7971         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7972         with this
7973
7974         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7975         pixbuf; delete a big block of #if 0 Tk code
7976
7977         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7978         insert_pixmap with insert_pixbuf
7979
7980 2000-09-29  Martin Baulig  <baulig@suse.de>
7981
7982         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7983         confusion with the GdkPixbuf of the GNOME 1.x platform.
7984
7985 2000-09-29  Havoc Pennington  <hp@pobox.com>
7986
7987         * gtk/gtktextview.c: Implement the side windows.
7988
7989         * gtk/testtext.c: Implement simple line numbering in the 
7990         left side window; seems to make scrolling sloooow. Oops.
7991         Also, cursor blink is for some reason causing redraws
7992         of the line numbers. Should investigate...
7993
7994 2000-09-28  Havoc Pennington  <hp@redhat.com>
7995
7996         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7997         scrolling child windows, and draw focus rectangle properly.
7998         
7999         (gtk_text_view_buffer_to_window_coords):
8000         Coordinate transformation to deal with all these freaking windows
8001         and offsets
8002         (gtk_text_view_window_to_buffer_coords): transform the other way
8003
8004         * gtk/testtext.c (create_buffer): Update to match Pango API change
8005
8006         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8007         anonymous tags
8008         (foreach_unref): don't emit remove signal from finalize, just
8009         set tag's parent to NULL
8010
8011 2000-09-26  Havoc Pennington  <hp@redhat.com>
8012
8013         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8014         Fix some warnings       
8015
8016 2000-09-26  Havoc Pennington  <hp@redhat.com>
8017
8018         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8019         headers into the private header list
8020
8021         * Makefile.am (pkgconfig_DATA): install pkg-config files
8022
8023         * configure.in: add pkg-config files
8024
8025         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8026
8027         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8028         outstanding icon caches on theme change.
8029
8030         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8031         important types:
8032
8033         (GtkIconSource): Specification for creating a pixbuf 
8034         appropriate for a direction/state/size triplet from 
8035         a source pixbuf or filename
8036
8037         (GtkIconSet): List of GtkIconSource objects that are used to
8038         create the "same" icon (e.g. an OK button icon), and cache for
8039         rendered icons
8040
8041         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8042         up the icon set for a given stock ID.  GTK maintains a stack of
8043         GtkIconFactory to search, and applications or libraries can add
8044         additional icon factories on top of the stack
8045         
8046         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8047         the set of GtkIconSource specified for a given stock ID into 
8048         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8049         RcStyle, under the specified stock ID.
8050
8051         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8052         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8053         This allows people to theme how prelight, insensitive, etc. are
8054         done.
8055
8056         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8057         icon factories for a style, and return the resulting 
8058         icon set if any.
8059
8060         (gtk_style_render_icon): Render an icon using the render_icon 
8061         method in the GtkStyleClass.
8062
8063         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8064         Use the style for a given widget to look up a stock ID, get the
8065         icon set, and render an icon using the render_icon method 
8066         of the style
8067
8068         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8069         (contains information about a stock item), the built-in stock item
8070         IDs, and functions to add/lookup stock items.
8071
8072         * gtk/stock-icons/*: Stock icons that come with GTK
8073
8074         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8075         a button based on a GtkStockItem
8076         (gtk_button_new_accel): Takes a uline string and accel group, and
8077         installs the accelerator.
8078
8079         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8080         image-display widget.
8081
8082 2000-09-25  Havoc Pennington  <hp@redhat.com>
8083
8084         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8085
8086         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8087         Fix a bug when removing node data, we didn't properly 
8088         re-splice the linked list after removing the data.
8089
8090         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8091         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8092
8093         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8094
8095         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8096         for the layout from the GtkTextTag.
8097
8098         * gtk/gtktexttypes.h: delete tab and search cruft, 
8099         remove g_convert() in favor of GLib version
8100
8101         * gtk/gtktexttypes.c: remove tab implementation from here,
8102         move to Pango
8103
8104         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8105         tab stuff using new PangoTabArray from Pango
8106
8107         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8108         unused border_width stuff
8109
8110 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8111
8112         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8113         glib) and now useless utf_to_latin1() latin1_to_utf()
8114
8115         * gtk/gtktextview.[ch]: Change ::move_insert and
8116         ::delete_text action signals to ::move and ::delete;
8117         create the signals with the right enumeration type,
8118         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8119         C-v bindings, change Home, End to move to beginning/end
8120         of line, Add C-Home C-End to move to beginning/end
8121         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8122         combine ::scroll_text into ::move; use new GtkSelectionData
8123         functions to simplify DND text handling.
8124         
8125         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8126         deletion enumerations here, rename enumeration values to 
8127         be consistently plural.
8128
8129         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8130         for cut/copy/paste and primary selection.
8131
8132         * gtk/gtktextbuffer.[ch]: Remove excess time and
8133         'interactive' arguments from cut/copy/paste;
8134         rename cut to cut_clipboard, etc; remove
8135         gtk_text_buffer_get_clipboard_contents().
8136
8137         * gtk/gtktextlayout.[ch]: Add 
8138         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8139         line ends.
8140
8141         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8142         Functions to set or get a UTF-8 string on the selection
8143         data.
8144
8145         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8146         interfaces.
8147
8148         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8149         created widgets - one of these is useless if we don't.
8150
8151         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8152         a public function clear all targets registered for the
8153         widget.
8154
8155         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8156         Never call gtk_widget_realize() - that was just asking
8157         for bizarre side-effects.
8158
8159         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8160         gdk_selection_owner_set even if the widget is the
8161         same so that we reliably update the timestamp on
8162         the server.
8163
8164         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8165         gdk_x11_get_server_time() function.
8166         
8167         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8168         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8169         Add some tricky filtering on serial numbers for
8170         selection clear events to fix up long-standard
8171         race condition FIXME's in gtkselection.c.
8172
8173         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8174         routines to convert from utf8 to compound text or
8175         STRING and from a text property to UTF-8.
8176
8177         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8178         a convenience function gdk_get_current_event_time().
8179
8180         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8181         and free selection_data->data properly
8182
8183 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8184
8185         * gtk/gtkthemes.c: Remove some unecessary includes.
8186
8187 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8188
8189         * gtk/gtktextdisplay.c
8190         * gtk/gtktextlayout.c
8191         * gtk/gtktexttag.c
8192         * gtk/gtktexttag.h
8193         * gtk/testtext.c: Change the overstrike property to strikethrough,
8194         to closer match pango.
8195
8196 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8197
8198         * gtk/gtktextview.c: Fix up visibility so that focus,
8199         cursor_visible and blink interact properly.  Reenable cursor blink
8200         which had been roughly disabled. Make blink and focus
8201         properly per-view.
8202
8203         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8204         Add a flag for whether to display insertion cursor and
8205         a function to set the flag.
8206
8207         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8208         get_line_y() to get_line_yrange(), to be a bit more generally
8209         useful.
8210
8211 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8212
8213         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8214           do stop_navigating_submenu, to clear last timeout properly.
8215           Also in gtk_menu_motion_notify move ignore_enter above
8216           the conditional to make it always happen as suggested by Owen
8217
8218 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8219
8220         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8221
8222         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8223         w32api headers.
8224
8225         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8226         declarations.
8227
8228         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8229         (gdk_win32_get_colormap): A line had been deleted by mistake.
8230
8231         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8232         (gdk_event_translate): Handle more virtual keycodes to be able to
8233         generate GDK events for Control-comma, Control-period, etc.
8234
8235         * gtk/gtk.def: Add some missing entry points.
8236
8237 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8238
8239         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8240         Doc comment fixing. (Mostly non-matching parameter names.)
8241
8242         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8243         comments a little to avoid looking like a doc comment.
8244
8245         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8246         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8247         conversions be changed to GError?)
8248
8249         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8250         Move private #defines into .c file.
8251
8252         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8253         order of argument addition, remove duplicates.
8254
8255         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8256         parent class is FrameClass, not BinClass.
8257
8258         * gtk/gtk.h: Add gtkinvisible, which was missing.
8259         (It's occasionalyl useful for client apps, if seldom.)
8260
8261         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8262         #define.
8263
8264 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8265
8266         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8267         coordinates when creating window, instead of GDK-space
8268         coordinates. (Avoid BadValue on too large windows.)
8269
8270 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8271
8272         * configure.in (use_mmx_asm): Remove conftest* after use along the
8273         lines of AC_TRY_COMPILE.        
8274         
8275         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8276         of g_dirname, which is deprecated.
8277         (gtk_rc_parse_any): Removed calls to
8278         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8279
8280         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8281         Removed calls to g_hash_table_{freeze,thaw}, as they are
8282         deprecated now.
8283
8284         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8285         instead of g_basename.
8286         
8287 2000-09-04 Elliot Lee <sopwith@redhat.com>
8288         
8289         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8290         ANSI warning.
8291
8292 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8293
8294         * gtk/gtkwidget.h:  Add some documenting comments about 
8295           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8296           just as owen said on irc.
8297
8298         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8299           set HAS_DEFAULT.  Only set it if there isn't another window
8300           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8301           it if the widget is not the focused window with RECEIVES_DEFAULT.
8302           This fixes weird double default bugs in dialogs which has things
8303           call gtk_window_set_default at times.
8304
8305 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8306
8307         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8308         Nils Barth and David Santiago to improve submenu
8309         navigation. The patch does this by creating a triangular
8310         region from the point where the pointer leaves the
8311         menu to the submenu.  While the pointer is in
8312         that region and a timeout has not expired, events 
8313         that would cause the active submenu to change are
8314         ignored.
8315
8316 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8317
8318         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8319         moving a toplevel window immediately after sizing it would
8320         result in it being sized back to the old size since 
8321         impl->width, impl->height aren't updated until we hear
8322         back from the server. There is still a (longstanding) bug
8323         here that gdk_window_get_size() will give the wrong size
8324         until we do hear back.
8325
8326 2000-08-31  Havoc Pennington  <hp@redhat.com>
8327
8328         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8329         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8330         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8331         Rename GtkTextStyleValues to GtkTextAttributes
8332
8333 2000-08-31  Havoc Pennington  <hp@pobox.com>
8334
8335         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8336         for rapid testing whether an iterator is the end iterator
8337         (gtk_text_btree_new): init end line cache
8338         (gtk_text_line_is_last): use fast cached line to 
8339         see if we're the last line.
8340         (get_last_line): use cached line here too, should 
8341         speed up some random unrelated code.
8342         
8343 2000-08-30  Havoc Pennington  <hp@pobox.com>
8344
8345         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8346         signals.
8347
8348         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8349         delete_text signals. This allows the signals to be used for
8350         implementing undo.
8351
8352         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8353         provide "interactive" argument when emitting insert_text or
8354         delete_text signal.
8355         
8356 2000-08-30  Havoc Pennington  <hp@pobox.com>
8357
8358         * gtk/gtktextbuffer.c: Docs
8359
8360 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8361
8362         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8363         from switch statements, since Tor removed the enumeration
8364         value.
8365         
8366         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8367         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8368
8369 2000-08-29 Elliot Lee <sopwith@redhat.com>
8370         * */*.h: Use G_GNUC_CONST.
8371
8372 2000-08-27  Havoc Pennington  <hp@pobox.com>
8373
8374         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8375         minor indentation fixes, inserted some FIXME about stuff I
8376         realized was broken while documenting it.
8377         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8378         GTK convention  
8379
8380 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8381
8382         * gtk/testgtk.c (create_styles): Fix double free of
8383         font desc.
8384
8385 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8386
8387         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8388         
8389         * gtk/testgtk.c (create_styles): Add a test for modifying
8390         the style through gtk_widget_modify_*.
8391
8392         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8393         a function to get the current modifier style.
8394
8395         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8396         of the passed in GtkRcStyle instead of ref'ing it.
8397
8398         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8399
8400 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8401
8402         * gdk/gdkimage.h
8403         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8404         shared memory image+pixmap GdkImage type, or
8405         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8406         I am dropping that.
8407
8408         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8409         actually call gtk_init_abi_check(), passing also
8410         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8411
8412         * gtk/gtk.def
8413         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8414         New functions, used to check that the GTK+-using code has been
8415         compiled using the correct compiler and switches. In particular,
8416         with gcc one has to use the -fnative-struct switch as GTK+ is
8417         compiled with that.
8418
8419 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8420
8421         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8422         ->prev fields when merging lists. (Found simultaneously
8423         by Pawel Salek and Jakub Jelinek)
8424
8425 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8426
8427         * gdk/gdk.def
8428         * gtk/gtk.def: Add missing entries.
8429
8430         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8431         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8432
8433         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8434         function. Dummy implementation at this point.
8435
8436         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8437         rules. Undefine GTK_COMPILATION when compiling the test programs.
8438         
8439         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8440
8441 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8442
8443         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8444         to convert back and forth from UTF-8 and the "system" (or "current
8445         locale") charset when necessary. Indentation/spacing cleanup.
8446
8447 2000-08-10  Havoc Pennington  <hp@redhat.com>
8448
8449         * Makefile.am (snapshot): Change the format of the snapshot
8450         version to match glib
8451
8452         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8453         from EXTRA_DIST since it doesn't seem to exist
8454
8455 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8456
8457         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8458         version of the directory name (not the UTF-8 one) when building
8459         the path name to stat().
8460
8461 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8462
8463         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8464         PANGO_ATTR_SHAPE set.
8465
8466 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8467
8468         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8469         Peter Osterlund to simplify the code while keeping the
8470         functionality the same.
8471
8472 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8473
8474         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8475         is_viewable() test further inside the function, since removing the 
8476         window from the redraw list without clearing ->update_area
8477         was also very broken.
8478
8479 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8480
8481         * configure.in: Check for <unistd.h>.
8482
8483 2000-08-01  Martin Baulig  <baulig@suse.de>
8484
8485         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8486         to display the message that this is a development version of GTK+.
8487
8488 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8489
8490         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8491         was depending on widget->allocation instead of the width of text_area,
8492         which was incorrect for subclasses like GtkSpinButton.
8493
8494         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8495         with width == 1 tests that should be width == -1.
8496
8497 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8498
8499         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8500         (broken, Elliot, every single window blank on X) custom code with call
8501         to gdk_window_is_viewable() which a) prevents code duplicate and
8502         b) works. 
8503
8504 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8505
8506         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8507         to get the GDK_PARENT_ROOT() macro to work.
8508         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8509         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8510         of, windows that aren't shown.
8511         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8512         pointer grab stuff.
8513
8514 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8515
8516         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8517           s/gtk_main_iteration/g_main_iteration/
8518
8519           Did this already in change:
8520                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8521           don't know how it got reverted.
8522
8523 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8524
8525         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8526         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8527
8528         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8529         not gdk_pixbuf.
8530
8531 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8532
8533         * configure.in,po/{sp,sr}.po: Added Serbian files
8534
8535 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8536
8537         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8538
8539         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8540         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8541         GIOChannel implementation.
8542
8543         * gdk/win32/gdkinput.c
8544         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8545
8546         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8547         definition to match prototype.
8548
8549         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8550
8551 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8552
8553         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8554         function, to allow handling image formats that cannot be detected
8555         by looking at content alone.
8556
8557 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8558
8559         * docs/tutorial/*.gif *.jpg *.eps
8560           Update these to the same look-n-feel.
8561           Why does including images in DocBook suck so badly?
8562
8563 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8564
8565         * gtk/gtktable.c: applied patch from Phil Thompson
8566         <phil@river-bank.demon.co.uk> that enables space settings for
8567         the last row/columns as well.
8568
8569 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8570
8571         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8572         updates the license headers to the GNU Lesser General Public License,
8573         as well as updating the copyright year to 2000.
8574
8575 2000-07-26  Robert Brady  <rwb197@zepler.org>
8576
8577         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8578           and po/Makefile, was installing and looking for them under gtk20
8579           and gtk2 respectively.
8580
8581 2000-07-25  Havoc Pennington  <hp@redhat.com>
8582
8583         * gtk/testtext.c: Comment out some stuff that depends on the rest
8584         of my patches.
8585
8586 2000-07-25  Havoc Pennington  <hp@redhat.com>
8587
8588         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8589         buffer
8590
8591 2000-07-25  Havoc Pennington  <hp@redhat.com>
8592
8593         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8594         widget changes.
8595
8596         * gtk/gtktextview.h: To be consistent with usage of "line"
8597         throughout the API to mean "newline-terminated thingy", change
8598         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8599         to MOVEMENT_LINE.
8600
8601         (GtkTextView): Add flags for default editability, and whether to
8602         show the cursor. Add functions to get/set that. Add 
8603
8604         (gtk_text_view_get_iter_location): new function
8605
8606         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8607         gtktextlayout.h
8608         (g_convert): Add g_convert temporarily, will go in glib in a bit
8609         
8610         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8611         GtkTextTagTableForeach instead of brokenly using GHFunc.
8612         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8613
8614         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8615         moved to public header.
8616
8617         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8618         "invisible", since "elide" was a bad name.
8619         (gtk_text_tag_get_priority): Added
8620
8621         (GtkTextStyleValues): put this in public header, along with
8622         functions to use it.
8623
8624         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8625         longer include gtktextbtree.h.
8626
8627         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8628         gtk_text_mark_deleted
8629
8630         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8631         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8632         to make this possible. Now we only need to install
8633         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8634         (However the Makefile.am isn't changed yet because of the
8635         logistics of merging gtk-hp-patches piecemeal)
8636
8637         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8638         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8639         gtk_text_iter_get_line is now used in the public API for a
8640         different purpose.
8641
8642         * gtk/gtktextiter.h: Clean up function names to be more
8643         consistent. Always call char offset "offset" and byte index
8644         "index". A "line" is always a line number. 
8645
8646         (gtk_text_iter_is_last): new function, more efficient than 
8647         the existing way to check
8648         (gtk_text_iter_is_first): new function, also more efficient
8649
8650         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8651
8652         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8653         gtk_text_iter_forward_char, etc.
8654
8655         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8656         forward_find_tag_toggle, since this isn't a linear search
8657
8658         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8659
8660         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8661         New functions, search for a buffer substring.
8662
8663         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8664         interactive and default editable (since we need to store that info
8665         until we receive the selection data).
8666
8667         Remove all the _at_char and at_line etc. versions of functions;
8668         only have iterator versions.
8669
8670         Add _interactive() versions of functions, that consider the
8671         editability of text. (FIXME add interactive flag to the 
8672         insert/delete signals per Darin's suggestion)
8673
8674         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8675         tag table if necessary
8676
8677         Remove declaration of gtk_text_buffer_get_iter_from_string
8678
8679         (_gtk_text_buffer_get_btree): private/internal function, added.
8680         
8681
8682         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8683         (gtk_text_line_is_last): new function
8684
8685 2000-07-25  Havoc Pennington  <hp@redhat.com>
8686
8687         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8688         using GtkProgressBar. See Changes-2.0.txt for details.
8689
8690         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8691         "pulse_step" which are the equivalent of
8692         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8693         Implement new API.
8694         
8695         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8696         (use_text_format) to mark whether text set on the progress bar is
8697         a format string. Deprecate entire GtkProgress interface.
8698
8699         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8700         (gtk_progress_build_string): make this a no-op if use_text_format
8701         is FALSE
8702
8703         * docs/Changes-2.0.txt: Describe progress bar changes.
8704
8705 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8706
8707         * Makefile.am: Include the build directory.
8708
8709         * configure.in: Generate build/Makefile, build/win32/Makefile,
8710         gdk/, gdk/win32/, and gtk/makefile.mingw.
8711
8712         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8713         Add GETTEXT_PACKAGE.
8714         
8715         * gdk/gdk.def
8716         * gtk/gtk.def: Updates.
8717
8718         * gdk/gdkfont.h
8719         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8720         need them any longer.
8721
8722         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8723
8724         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8725         PANGOWIN32_LIBS and gdk_pixbuf.
8726
8727         * gdk/win32: Compiles, but no doubt doesn't work at all.
8728
8729         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8730
8731         * gdk/win32/gdkinput.c: New file, temporarily.
8732         
8733         * gdk/win32/gdkinput-win32.h: New file
8734
8735         * gdk/win32/gdkinputprivate.h: Remove.
8736
8737         * gdk/win32/gdkpango-win32.c: New file.
8738
8739         * gtk/makefile.mingw.in: New file
8740
8741         * gtk/makefile.cygwin: Removed
8742         
8743         * gtk/Makefile.am: Update accordingly.
8744
8745         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8746         made externally visible.
8747
8748         * gtk/gtkmain.c: Use it.
8749         
8750         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8751         is enough.
8752
8753         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8754
8755 2000-07-24 Elliot Lee <sopwith@redhat.com>
8756         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8757         individual backends already.
8758         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8759         again. Yes, there really is a good reason for this, if you are using the gdkregion
8760         internals, and if you're not, why do you care?
8761         * gdk/gdkwindow.c: Fix inverted condition
8762         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8763         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8764         * gtk/gtkrange.c: Redraw trough when moving.
8765         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8766         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8767
8768 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8769
8770         * configure.in: Check for mkstemp and sigsetjmp. Output
8771         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8772
8773         More work on GDK for Win32. Still in an intermediate state.
8774
8775         * gdk/makefile.cygwin
8776         * gdk/win32/makefile.cygwin: Removed.
8777         
8778         * gdk/makefile.mingw.in
8779         * gdk/win32/makefile.mingw.in: New files.
8780
8781         * gdk/Makefile.am
8782         * gdk/win32/Makefile.am: Generate and distribute them.
8783
8784         * gdk/win32/gdkwindow-win32.h
8785         * gdk/win32/gdkdrawable-win32.h
8786         * gdk/win32/gdkpixmap-win32.h: New files.
8787
8788         * gdk/win32/gdkcolor-win32.c
8789         * gdk/win32/gdkcursor-win32.c
8790         * gdk/win32/gdkdrawable-win32.c
8791         * gdk/win32/gdkgc-win32.c
8792         * gdk/win32/gdkimage-win32.c
8793         * gdk/win32/gdkprivate-win32.h
8794         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8795         Rename fields and variables called xcursor, xid, etc (these names
8796         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8797
8798 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8799
8800         * gtk/gtkentry.[ch]: Fix some problems with vertical
8801         alignment.
8802
8803         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8804         char/byte confusion.
8805
8806 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
8807
8808         * gtk/gtktextview.c (changed_handler): Fix bug where
8809         redraw wasn't being done properly when height of
8810         dirty region changed.
8811
8812         * demos/Makefile.am: Remove various references to
8813         -lgmodule
8814
8815 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
8816
8817         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
8818         PangoAttrShape to reserve space for pixmaps, add 
8819         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
8820         in the display functions.
8821         
8822         * gtk/testgtk.c (create_layout): Set some more exotic
8823         scrolled window options
8824
8825         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
8826         Add function to set the shadow type of a window, to allow
8827         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8828         which don't draw their own frame.
8829
8830 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8831
8832         * docs/tutorial/package-db-tutorial.sh: New file for
8833           packaging DocBook format tutorial
8834
8835 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8836
8837         * docs/tutorial/gtk-tut.sgml: Minor updates
8838
8839         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8840
8841 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8842
8843         * gtk/gtksignal.c: Fix C++ comment.
8844
8845         * gtk/gtkimmulticontext.c
8846         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8847         don't return value from void functions.
8848
8849         * gtk/gtk.def: Add gtk_rc_style_unref.
8850
8851 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8852
8853         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8854         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8855         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8856         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8857         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8858         gtk/gtktypeutils.h: Include files outside of the extern "C"
8859         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8860         <vakatov@peony.nlm.nih.gov>.
8861
8862 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8863
8864         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8865           Completes first pass. Hurrah!
8866
8867 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8868
8869         * docs/tutorial/gtk-tut.sgml: More clean ups.
8870
8871 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8872
8873         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8874         paint the background of the text area which was accidentally
8875         removed at some point.
8876
8877         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8878           
8879          - Move most of the functionality from the theme vtable
8880            into GtkRcStyleClass and GtkStyleClass. The moved
8881            vtable functions were changed a bit in the move to
8882            work better in their new home.
8883
8884          - Get rid of the engine and engine_data fields from
8885            GtkRcStyle and GtkStyle; instead the theme
8886            engine derives theme-specific subclasses of GtkRcStyle
8887            and GtkStyle
8888
8889          - Add extra dlsym() found entry point to themes,
8890            theme_create_rc_style().
8891
8892         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8893         in gtk_style_real_copy.
8894
8895         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8896         to register a type associated with an engine. (The engine
8897         won't be unloaded as there is an instance of the type.)
8898
8899
8900 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8901
8902         * docs/tutorial/gtk-tut.sgml: Clean ups.
8903
8904 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8905
8906         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8907           of cleaning up to do.
8908
8909 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8910
8911         * gdk/testgdk.c: New file, quick hack to test backends for
8912         pixel-by-pixel correctness of the most simple graphic operations.
8913
8914 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8915
8916         * Really release 1.3.1
8917         
8918         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8919         include structure.
8920
8921 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8922
8923         * Released 1.3.1
8924
8925 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8926
8927         * gtk/gtktextlayout.c: use FALSE for size_only most
8928         of the time when calling gtk_text_layout_get_line_display()
8929         to avoid causing double reshapes when a redraw follows
8930         immediately after.
8931
8932 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8933
8934         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8935         appropriate region and gdk_window_process_updates() so trough
8936         updating doesn't lag behind the window being scrolled.
8937
8938         * gdk/gdkgc.c: Make parent_class pointer static.
8939          
8940 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8941
8942         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8943         include <string.h>.
8944          
8945         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8946         cut-and-paste error in computing memory offset for 4 channels.
8947
8948 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8949
8950         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8951         gtk_rc_append_default_pixmap_path(), since it wasn't
8952         adding an interesting path and we don't have a meaningful
8953         default for this value.
8954
8955 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8956
8957         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8958         gtk-config to gtk-config-2.0 move gtk_.m4 to
8959         gtk-2.0.m4
8960
8961         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8962         gdk/Makefile.am demos/Makefile.am: Change 
8963         library names to libgtk-1.3.la, etc, so that we
8964         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8965
8966         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8967         gdk/Makefile.am gdk/x11/Makfile.am
8968         Move include files into /usr/include/gtk-2.0, 
8969         /usr/lib/gtk-2.0/include/
8970          
8971         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8972         gtk/gtkintl.h: Change package for gettext from 
8973         gtk+ to gtk20. Put hack in autogen.sh to modify
8974         po/Makefile.in.in after gettextize to make this
8975         possible.
8976
8977         * gtk+.spec: Some updates, not tested.
8978
8979         * gdk-pixbuf/Makefile.am: Move loaders into
8980         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8981
8982         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8983         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8984         to THEMENAME/gtk-2.0/. Move engine directory  to
8985         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8986         
8987 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8988
8989         Win32 changes, still doesn't build though.
8990
8991         * gdk/makefile.cygwin
8992         * gdk/win32/makefile.cygwin
8993         * gtk/makefile.cygwin: Updates.
8994
8995         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8996         default values for fg and bg pixel as X11 does (0 and 1), not
8997         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8998         Use 0 for pen width by default (treated as 1 anyway later, but for
8999         apps that might check the value in the GdkGC).
9000         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9001         interface to gdk_gc_predraw and _postdraw.
9002
9003         * gdk/win32/gdkwin32.h
9004         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9005
9006         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9007         extraneous semicolon.
9008
9009         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9010
9011         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9012         not the Win32 bitspixel value.
9013
9014         * gdk/win32/gdkcc-win32.c:
9015         * gdk/win32/gdkcolor-win32.c 
9016         * gdk/win32/gdkprivate-win32.h
9017         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9018         GDK object structure.
9019
9020 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9021
9022         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9023         * docs/tutorial/gtk_tut_it.sgml (name): 
9024         * docs/tutorial/gtk_tut_fr.sgml (name): 
9025         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9026         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9027
9028 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9029
9030         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9031           small changes.
9032
9033 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9034
9035         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9036         a bug here, never been here and never fixed anything ;(
9037         (don't segfault if tree->root_tree is NULL, which happens prior
9038         to widget realization, but puke instead).
9039
9040 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9041
9042         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9043         add the necessary tokens.
9044
9045         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9046         (gtk_rc_style_to_style): copy thicknesses.
9047         (gtk_rc_init_style): apply thicknesses.
9048         (gtk_rc_parse_style): parse xthickness and ythickness.
9049
9050         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9051
9052         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9053         (gdk_window_new): 
9054         (_gdk_windowing_window_init): 
9055         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9056         (gdk_pixmap_create_from_data): 
9057         (gdk_bitmap_create_from_data): 
9058         (gdk_pixmap_new): 
9059         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9060         (gdk_image_new): 
9061         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9062         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9063         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9064         (gdk_colormap_get_system): 
9065         (gdk_colormap_new): 
9066         * gdk/gdkwindow.c (gdk_window_init): 
9067         * gtk/gtkstyle.c (gtk_style_new):
9068         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9069         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9070         * gtk/gtkrc.c (gtk_rc_style_new):
9071         use g_object_new() instead of g_type_create_instance() which
9072         is a private function for fundamental type implementations.
9073
9074 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9075
9076         * configure.in: Add check for db2html
9077
9078 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9079
9080         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9081         hack to set glib_debug_objects based on gtk_debug_flags.
9082
9083 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9084
9085         * INSTALL.in: Update the Prerequisites section.
9086
9087         * Makefile.am demos/Makefile.am docs/Makefile.am
9088         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9089         gdk/linux-fb/Makefile.am: Dist fixes
9090
9091 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9092
9093         * NEWS: 10,000 foot view of 1.3.1 changes.
9094
9095 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9096
9097         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9098         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9099         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9100         gdk/x11/gdkmain-x11.c: 
9101
9102         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9103         as a return value of gdk_*_grab(). Previously, we just
9104         returned the X11 values directly.
9105
9106 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9107
9108         * gdk/x11/Makefile.am: Patch from George Lebl to 
9109         install all the headers in the right place.
9110
9111 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9112
9113         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9114           initial conversion to DocBook.
9115
9116 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9117
9118         * README.win32: Improve a bit.
9119
9120         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9121         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9122         Alt+0nnn on the numpad (used to enter characters by numeric code
9123         from current DOS or ANSI codepage) working correctly, as in other
9124         Windows apps.
9125
9126         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9127         same argument validity tests as in X11 version.
9128         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9129
9130         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9131         definitions in case missing from headers.
9132
9133         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9134         destroy the window-specific cursor.
9135         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9136         calling GetModuleHandle(NULL).
9137         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9138         with CopyCursor before setting it as the window-specific
9139         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9140         also its Windows cursor) after calling this function. Destroy any
9141         previous window-specific cursor.
9142
9143 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9144
9145         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9146         font charset is iso8859-1, not iso-8859-1.
9147
9148 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9149
9150         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9151         Use g_get_charset() instead of g_get_codeset().
9152
9153         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9154         Comment out some strdup'ing functions to keep timj
9155         happy until we finish fighting this out.
9156
9157 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9158
9159         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9160         <= width or height.
9161
9162         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9163         from 1.2 for parent/child states.
9164
9165         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9166         of typos.
9167
9168         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9169         event structures, replace with a generic axes field. Replace 
9170         deviceid/sourec with GdkDevice *device.
9171
9172         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9173         to extract particular axis use value from event. (Also
9174         can be used for normal X/Y.)
9175
9176         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9177         allow for arbitrary number of axes, namespace everything
9178         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9179         everywhere.
9180
9181         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9182         Get rid of the gdk_input_vtable setup if favor of simply
9183         defining the functions in gdkinput-none/gxi/xfree.c in
9184         a similar fashion to the way that the port structure is 
9185         done.
9186
9187         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9188         for new event structures. 
9189
9190         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9191         new device interfaces.
9192
9193 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9194
9195         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9196         set the initial text.
9197
9198         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9199         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9200         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9201         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9202
9203         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9204         pango_layout_set_font_description to simplify.
9205
9206 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9207
9208         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9209         pango_layout_set_font_description to simplify.
9210
9211 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9212
9213         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9214         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9215         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9216
9217         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9218         PANGO_PIXELS() macro.
9219
9220 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9221
9222         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9223         that returns a PangoContext owned by the widget and updated to
9224         match future changes in the widget. Also, make 
9225         gtk_widget_create_pango_layout() use this context. If we ever
9226         add a ::changed signal to PangoContext, this will make things
9227         much more convenient. 
9228
9229         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9230         in the appropriate places instead of destroying the layouts and
9231         creating new ones.
9232
9233         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9234         in a few strategic places.
9235
9236 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9237
9238         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9239         gtk_widget_size_request() on reparented child, if one. Otherwise,
9240         queue_resize() on the child never results in it getting size-requested
9241         at all.
9242
9243         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9244         in option menus, so that (with luck) people won't copy it into
9245         their apps in the future.
9246
9247         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9248         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9249         a lot of problems with changing the size of the menu's menu
9250         items after adding it to the option menu.
9251
9252         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9253
9254         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9255         the text direction for a widget changes.
9256
9257         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9258         ::direction_changed to get rid of various hacks.
9259
9260 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9261
9262         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9263         name.
9264
9265 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9266
9267         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9268         flag to the structure. Do not call XFreePixmap on pixmaps created
9269         by gdk_pixmap_foreign_new().
9270
9271 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9272
9273         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9274         value using GdkRGB functionality given GdkColormap and GdkColor.
9275         (name not final, waiting for inspiration.)
9276         
9277         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9278         set the foreground/background of a GC using the GC's colormap
9279         and GdkRGB. (name not final, waiting for inspiration.)
9280
9281         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9282         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9283
9284         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9285         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9286         purely a function of the corresponding colormap. Make
9287         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9288
9289         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9290         gdk_pixbuf_*create_from_xpm_* in terms of
9291         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9292         code.
9293
9294         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9295         advantage of the new draw_rgb_32_image_dithalign.
9296
9297         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9298
9299         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9300         on each created GC.
9301
9302         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9303
9304         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9305         which we initialize from the drawable when the GC is created,
9306         if the drawable has a colormap.
9307
9308         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9309
9310         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9311
9312         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9313
9314 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9315
9316         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9317         actually returning expose events, make sure to set
9318         the count field properly.
9319
9320         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9321         accidentally reintroced bug which always cleared
9322         the graphics_exposures value. 
9323
9324 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9325
9326         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9327
9328 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9329
9330         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9331
9332 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9333
9334         * docs/faq/gtk-faq.sgml: Start of Section 6.
9335
9336 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9337
9338         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9339         
9340         (Fixes problem with drawing childless frames. Pointed out
9341         by and a first patch from Anders)
9342         
9343         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9344         compute a child_allocation, even if we don't have a child.
9345
9346         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9347         Always chain to the parent's impl, even if we don't have a child.
9348
9349 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9350
9351         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9352         use multiple parts of it instead of creating a bunch of separate
9353         segments, since the maximum number of segments per system is not
9354         large. (This might be worth backporting to GTK+-1.2.x if we make a
9355         new release )
9356
9357         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9358         structure in preparation for per-colormap GdkRGB.
9359
9360         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9361         to False when we get EINVAL from shmget so that the caller of
9362         gdk_image_new can retry with a smaller segment size.
9363
9364 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9365
9366         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9367
9368 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9369
9370         * configure.in: make the current version number 1.3.1 (binary age 0,
9371         interface age 0).
9372         
9373         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9374         gtkcompat.h is all we want.
9375
9376         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9377         GLib primitive types. fixed g_type_register_fundamental() argument
9378         ordering.
9379
9380         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9381         compiles.
9382
9383         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9384         object code cleanup, comment trigraph fixes, etc...
9385
9386 2000-06-23  Havoc Pennington  <hp@redhat.com>
9387
9388         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9389         instead of making up a bogus name for first_para_mark
9390
9391         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9392         0 as a context ID
9393
9394 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9395
9396         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9397
9398 2000-06-21  Havoc Pennington  <hp@pobox.com>
9399
9400         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9401         we didn't check window->bg_pixmap != GDK_NO_BG.
9402
9403         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9404         gdk-pixbuf
9405
9406 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9407
9408         * docs/faq/gtk-faq.sgm: Move file to here.
9409           TODO: Update Makfile.am 
9410
9411 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9412
9413         * docs/gtk-faq.sgm: Add Section 2
9414
9415 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9416
9417         * docs/gtk-faq.sgm: New file. Start of DocBook
9418           version of the FAQ.
9419
9420 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9421
9422         * configure.in (GDK_PIXBUF_MAJOR): Define version
9423         numbers for GDK_PIXBUF_*, as they get substituted
9424         into a header file. Need to consider versioning
9425         for gdk-pixbuf more carefully later.
9426
9427 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9428
9429         Work with srcdir != builddir.   
9430         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9431         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9432         * demos/testpixbuf.c: Likewise.
9433         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9434         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9435         <gdk/x11/gdkx.h>.
9436         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9437         "gdk-pixbuf.h".
9438         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9439
9440 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9441
9442         * TODO.xml: Change 1.4 version numbers to 2.0.
9443
9444 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9445
9446         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9447         fixups to GTK+ standard.
9448
9449 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9450
9451         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9452         gdk-pixbuf.
9453
9454         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9455         fixups for GObject.
9456
9457         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9458         gdk-pixbuf with GDK dependencies moved into GDK.
9459         
9460         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9461         move gdk-pixbuf-loader here until GObject has signals.
9462
9463         * demos/: New directory of demos. Move demos from
9464         gdk-pixbuf here.
9465
9466         * demos/pixbuf-init.c: Small bit of code to check for
9467         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9468         set GDK_PIXBUF_MODULEDIR appropriately.
9469
9470         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9471         define which no longer makes sense.
9472
9473 2000-06-21  Havoc Pennington  <hp@redhat.com>
9474
9475         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9476         gtk_get_default_language
9477
9478         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9479         new function to get the default language
9480
9481         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9482         s/gtk_text_view_style_values/gtk_text_style_values/
9483
9484         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9485         Add a "language" field to tags.
9486
9487         (gtk_text_tag_set_arg): Fix bug in setting
9488         "bg_full_height_set" tag.
9489
9490 2000-06-21  Havoc Pennington  <hp@redhat.com>
9491
9492         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9493         in the interfaces
9494
9495         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9496         stuff instead when possible.
9497
9498         * gtk/gtktexttypes.h: Delete some unused constants
9499
9500         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9501         testtextbuffer.c: use glib instead of custom unicode routines
9502
9503 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9504
9505         * docs/es/: Removed mistakenly added generated sgml
9506
9507         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9508         Remove outdated info files.
9509
9510         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9511         Moved tutorial files into subdir
9512
9513         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9514         subdir.
9515
9516         * docs/man/gtk_button.pod: Remove. (contents will be
9517         integrated into gtk-reference button page.)
9518
9519         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9520         docs/faq/Makefile.am: Adjust for new organization
9521
9522 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9523
9524         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9525         not $(MKINSTALLDIRS)
9526
9527 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9528
9529         * gtk/testgtk.c (create_text): Finish the job Elliot started
9530         of removing font setting test for text widget. (Since text widget
9531         and GdkFont are not deprecated, and cause portability problems.)
9532
9533 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9534
9535         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9536         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9537         Remove use of libunicode in favor of new GLib functions.
9538
9539         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9540         nano-x, framebuffer. The X11 include is just a hack until we get
9541         the necessary functions in gdkcolor.h, so there is no reason to
9542         add other includes of platforms.
9543
9544         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9545         window bigger than the screen change.
9546
9547         * gtk/testgtk.c: Revert some random changes from Elliot
9548         that had no particular point and were causing testgtkrc
9549         not to function correctly.
9550         
9551         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9552         because GdkSegment and GdkRegionBox have the same fields,
9553         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9554         results in clearer code.
9555
9556         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9557         gdk_input_translate_coordinates): Fix missed GdkObjectification
9558
9559 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9560
9561         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9562         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9563
9564 2000-06-20  Havoc Pennington  <hp@redhat.com>
9565
9566         * modules/linux-fb/Makefile.am: Make this compile
9567         without framebuffer enabled
9568
9569         * gdk/linux-fb/Makefile.am: Add conditional to not build
9570         framebuffer unless specified in configure
9571
9572         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9573         the size of the target instead of source if -1 was passed for
9574         width/height
9575
9576         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9577         width/height confusion.
9578
9579 2000-06-19  Havoc Pennington  <hp@redhat.com>
9580
9581         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9582         GDK_DRAWABLE_XID. In the future, we probably want to make it
9583         faster with G_DISABLE_CHECKS turned on.
9584
9585 2000-06-14  Havoc Pennington  <hp@redhat.com>
9586
9587         * gdk/Makefile.am: add gdkpixmap.c
9588
9589         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9590         s/gdk_image_init/_gdk_windowing_image_init
9591
9592         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9593         ref/unref
9594
9595         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9596
9597         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9598         GdkWindowType is now non-deprecated; 
9599         change gdk_window_get_type() compat to be
9600         gdk_window_get_window_type().
9601
9602         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9603
9604         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9605         virtual GObject. Make all functions call into the vtable.
9606         Move gdk_image_put() guts in here. Remove GdkDrawableType
9607         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9608         draw_image, get_depth, get_size, set_colormap, get_colormap,
9609         get_visual added to the vtable.
9610         
9611         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9612         GObject. Virtualize everything. 
9613         (gdk_gc_new_with_values): remove check for destroyed window,
9614         because now GdkWindow::create_gc will check this.
9615         (gdk_gc_set_values): New function to set GC values, this 
9616         was already implemented but wasn't in the header
9617
9618         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9619
9620         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9621         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9622         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9623         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9624         _gdk_windowing_window_init, rename gdk_image_init to
9625         _gdk_windowing_image_init.
9626         
9627         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9628         (gdk_draw_layout): Remove check for destroyed window, 
9629         because all the drawable methods already check it.
9630         
9631         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9632         Add gdkpixmap.c which contains implementation of GdkDrawable
9633         virtual table (by chaining to a platform-specific implementation
9634         object).
9635         
9636         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9637         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9638         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9639         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9640         GdkColormapPrivate. 
9641
9642         * gdk/gdktypes.h: #include <glib-object.h>
9643
9644         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9645         Move most functionality to platform-specific implementation
9646         object. GdkWindow itself now handles the backing store, then
9647         chains to the platform-specific implementation.
9648         (gdk_window_get_window_type): return GdkWindowType of the window.
9649         (gdk_window_peek_children): New routine, returns the children of 
9650         a GdkWindow
9651         (gdk_window_get_children): Was in X11-specific code and did 
9652         XQueryTree. Changed to simply return a copy of window->children; 
9653         so it can go in cross-platform code.
9654         
9655         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9656
9657         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9658         GdkColormap; just changed to use the new private data instead
9659         of casting to GdkColormapPrivate.
9660
9661         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9662         gdk_cursor_new().
9663
9664         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9665         (private data member in the GObject). 
9666         (xdnd_manager_source_filter): Function had broken 
9667         error handling, fix it (use gdk_error_trap_push).
9668
9669         * gdk/x11/gdkdrawable-x11.c: This file now implements
9670         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9671         base class is purely for the convenience of the X port,
9672         and not part of the interface to cross-platform GDK.
9673
9674         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9675         
9676         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9677         specific to X, and returned by the create_gc virtual method
9678         of GdkDrawableImplX11. 
9679         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9680         rather than gchar, this was also changed in the GdkGC vtable.
9681         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9682         mask is 0, return immediately, instead of checking every flag.
9683         This is faster, and keeps us from segfaulting if values is NULL
9684         and the mask contains some nonzero flags.
9685
9686         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9687         GdkWindow.
9688
9689         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9690         GdkWindowPrivate is gone.
9691
9692         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9693
9694         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9695         remove the image_put stuff that got transferred to GdkDrawable.
9696         
9697         * gdk/x11/gdkinput.c: renamings
9698
9699         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9700
9701         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9702
9703         * gdk/x11/gdkprivate-x11.h: indentation fixes
9704
9705         * gdk/x11/gdkproperty-x11.c: renamings
9706
9707         * gdk/x11/gdkselection-x11.c: renamings
9708
9709         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9710         implements the platform-specific "impl" object.
9711         Moved gdk_window_get_children to gdk/gdkwindow.c
9712
9713         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9714         that no longer exist. Add declaration of GdkGCX11 object here.
9715         Fix all the macros to still work. 
9716
9717         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9718         GdkDragContext from the boxed types since they are now GObjects.
9719
9720         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9721         moved xthickness/ythickness into the instance. GtkStyleClass
9722         functions are now in the standard vtable for GtkStyle, so you have
9723         to create a GObject subclass to write a theme engine.
9724         (gtk_style_copy): fixed a leaked PangoFontDescription
9725         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9726         can be the standard GObject function.
9727         
9728         * Throughout GTK:
9729         s/style->klass->[xy]thickness/style->[xy]thickness
9730         s/pango_layout_unref/g_object_unref/
9731
9732         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9733         
9734         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9735         accessing GDK internals.
9736
9737         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9738         accessing GDK internals.
9739
9740 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9741
9742         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9743
9744         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9745         problem by calculating event position relative to the trough
9746         rather than the slider.
9747         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9748
9749         * gdk/gdkgc.h: Add GDK_NOR.
9750
9751         * configure.in, Makefile.am: Add modules top level dir
9752         * configure.in: Only use pangox library if building x11 target.
9753         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9754
9755 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9756
9757         * gtk/gtkcolorsel.c: Change private class member to be named
9758         private_data throughout the file.
9759
9760         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9761         private_data to avoid clashing with keyword.
9762
9763 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9764
9765         * gdk/gdkdnd.h: Add comment to remove warning.
9766
9767 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9768
9769         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9770         Byelorussian language; changed the Makefile and file names 
9771         to reflect that.
9772
9773 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9774
9775         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9776         rather than gdk_window_hide; this makes things work
9777         correctly if the window is programmatically hidden while
9778         iconified.
9779
9780 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9781
9782         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9783         cut and paste typo where wrong pixmap was being
9784         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9785
9786 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9787
9788         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9789         Add helper function to compute format / bytes 
9790         relationship. Use in a couple places to fix up
9791         errors which assume 8 * format.
9792
9793         * gtk/gtkselection.c (gtk_selection_request): Use 32
9794         rather than 8 * sizeof (GdkAtom), to work correctly
9795         on Alpha.
9796
9797 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9798
9799         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9800         libgtk.la
9801         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9802         versions
9803
9804         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
9805         checking macros return NULL since the function has a return value.
9806
9807 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
9808
9809         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
9810         GTK+ from building at all.
9811
9812         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
9813
9814 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
9815
9816         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
9817         gtk/Makefile.am: make it possible to configure gtk for different
9818         targets on the same platform. The library name is now 
9819         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
9820         flag. Only the x11 target compiles right now.
9821         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
9822         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
9823         * gdk/nanox/gdk*generic*: delete generic region code.
9824         * gdk/linux-fb/gdk*generic*: delete generic region code.
9825         * README.nanox: update information.
9826         
9827 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9828
9829         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9830         prepend not append. (Pointed out by Brett Hall.)
9831
9832 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9833
9834         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9835
9836 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9837
9838         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9839         need this later, and this makes sure that the atexit for
9840         glib gets called after that for GDK, so atexits are
9841         properly ordered for object leak checking.
9842
9843         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9844
9845         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9846         pango_x_shutdown_display()
9847
9848         * gtk/simple.c (main): Close window on destroy.
9849
9850 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9851
9852         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9853         to treat initial creation different from setting with 
9854         regards to the graphics-exposures parameter, so add a parameter
9855         indicating whether this is initial or not.
9856
9857 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9858
9859         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9860         to sort of work by adding an extra return_exposes arg
9861         to gdk_event_translate() - it might be better to simply
9862         deprecate the function altogether and force people to rewrite
9863         without it. gdk_window_scroll() handles most of it, and where
9864         gdk_window_scroll() doesn't work, simply redrawing more does.
9865
9866         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9867         assertion.
9868
9869         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9870
9871         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9872         bunch of pretty much useless /* Print debugging info */ comments 
9873         which had drifted away from the code they were commenting.
9874
9875 2000-06-02  Havoc Pennington  <hp@pobox.com>
9876
9877         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9878         is in working order.
9879         
9880         * gtk/testtext.c: Change to reflect anonymous mark API
9881
9882         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9883
9884         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9885         field, which was unused.
9886
9887         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9888         saves some typing.
9889
9890         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9891
9892         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9893         flag on the insertion point and selection bound
9894
9895         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9896         make mark-manipulation functions take a GtkTextMark* instead of a
9897         mark name.
9898         
9899         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9900         GtkTextMarkBody; will be used to detect attempts to delete
9901         the permanent marks (insert and selection bound)
9902
9903         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9904
9905 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9906
9907         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9908         flag to on.
9909
9910         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9911         Honor DOUBLE_BUFFRED_FLAG
9912
9913         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9914         function to set the DOUBLE_BUFFERED flag.
9915
9916         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9917         or not exposes done on the widget should be double-buffered.
9918
9919         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9920         to be what would be expected. (Fixes problem with a
9921         g_return_if_fail() validating a TextDirection enumeration)
9922
9923 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9924
9925         * gtk/gtkwidget.c: Remove all references to 
9926         offscreen flag which was no longer used.
9927
9928         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9929
9930         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9931         for non-null label_widget->parent.
9932
9933         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9934         which no longer was used.
9935
9936         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9937
9938         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9939         for null arguments.
9940
9941         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9942         check for destroyed windows.
9943
9944 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9945
9946         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9947         the slave context there.
9948
9949         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9950         identical to GtkWindow.
9951
9952 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9953
9954         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9955         pangox to here, so we can write them independent of rendering
9956         system, using GDK primitives.
9957
9958         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9959         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9960         since we have a rendering-system independent implementation in
9961         terms of draw_glyphs().
9962         
9963         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9964         function to render a single line.
9965
9966         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9967         into ../gdkpango.c, which simplifies things, since we
9968         don't have to deal with raw X gc's.
9969
9970 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9971
9972         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9973         get the logical attributes for a given GtkTextLine.
9974
9975 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9976
9977         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9978         g_locale_get_codeset() to g_get_codeset() change.
9979
9980 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9981
9982         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9983         descriptions.
9984
9985         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9986         the entry.
9987
9988         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9989         redoing (vastly simplifying) for Pango. Still needs quite
9990         a bit of work. (Size selection is currently poor. List of 
9991         predefined sizes is not a good idea, since all of these
9992         sizes won't necessarily be distinct.)
9993
9994 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9995
9996         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9997         CODESET results for LANG=C.
9998
9999 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10000
10001         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10002         which takes a stringized pango font description;
10003         ignore the older 'font' and 'fontset' declarations.
10004
10005         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10006         field with a GdkFont derived via gdk_font_from_description(),
10007         for compatibility. (Should we just remove it entirely?
10008         Probably too much compatibility breakage, but people
10009         should be migrating to the new Pango stuff as quickly
10010         as possible.)
10011
10012 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10013
10014         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10015
10016 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10017
10018         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10019         redoing; there are some bugs in size allocation right
10020         now, the semi-existant distinction between header / day
10021         fonts was removed, but, with Pango, could actually
10022         be made functional in a nice way.
10023         
10024         * gtk/testcalender: Move calender from examples into this
10025         directory as a test program. (We really need to restrcture
10026         testgtk into a whole directory full of tests for every
10027         widget or functionality group, separated into multiple .c
10028         files.)
10029
10030 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10031
10032         * gtk/testgtk.c (file_exists): Fix stupid typo that
10033         was keeping RC file from being loaded.
10034
10035         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10036         RC file font code.
10037
10038 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10039
10040         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10041         Add function to load a GdkFont from a PangoFontDescription.
10042
10043 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10044
10045         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10046         variable should be of type GdkEventPrivate.
10047
10048 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10049
10050         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10051         to have any widget for the label, use a GtkLabel widget
10052         to display the text. (Based partially on a patch from
10053         Anders Carlson.)
10054
10055         (Quite a bit of code reorganization - strip 90% of the
10056         guts out of gtkaspectframe and add a single virtual
10057         func to GtkFrameClass - compute_child_allocation.)
10058
10059 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10060
10061         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10062         (Removed clist->row_center_offset field because caching
10063         it wasn't saving time or code, added private function
10064         _gtk_clist_create_cell_layout()).
10065
10066 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10067
10068         * gtk/gtkaccellabel.c: Pangoized.
10069
10070         * gtk/[hv]ruler.c: Pangoized
10071
10072 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10073
10074         * gtk/gtkfilesel.c (gtk_file_selection_init):
10075         Use gtk_clist_set_column_auto_resize() to remove need
10076         need for manual column width computations.
10077
10078 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10079
10080         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10081         ensuring Pango correctness, and considerably simplifying the
10082         code.
10083         
10084         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10085
10086         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10087         getting of numbers of lines.
10088
10089         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10090         to the actual requested width of the lable, not to the wrap
10091         width we set.
10092
10093         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10094
10095         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10096           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10097
10098         * gtk/gtktextview.c: Fix structure inheritance.
10099
10100         * gtk/gtkprogressbar.c: Pangoize.
10101
10102 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10103
10104         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10105         in a function.
10106
10107         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10108         bug with computing line tops.
10109
10110         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10111
10112 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10113
10114         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10115         and y_offset coordinates to do what we need now. (The offset between
10116         buffer and layout coordinates has been reintroduced, but is a 
10117         bit different than before.)
10118
10119         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10120         handle the adjustments ourselves, and scroll as necessary using
10121         the new gdk_window_scroll().
10122         
10123         The advantage of this is that when we are incrementally revalidating,
10124         we are essentially rearranging things around the visible portion
10125         of the screen. With the old setup, the visible portion of the
10126         screen was moved around in the layout, so scrolling and redrawing
10127         to track that caused jumping of the display. Since we now
10128         control the scrolling ourselves, we can suppress this and
10129         only redraw when things actually change.
10130
10131 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10132
10133         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10134         the region not just redisplay it after-all, since we store the
10135         cursors in the LineDisplay. (Ugly interactions here between
10136         GtkLayout and GtkTextBTree here.)
10137         
10138         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10139
10140 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10141
10142         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10143         Added function to scroll contents of a window while keeping the
10144         window constant. Works by XCopyArea or guffaw-scrolling depending
10145         on the details of how the window is set up. (guffaw-scrolling
10146         still needs to be filled in.)
10147
10148 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10149
10150         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10151         move the debugging that was tied to a global variable
10152         to that.
10153
10154         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10155
10156         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10157         validated flag, in line data instead of setting height/width to
10158         -1. This allows us to perform operations with partially invalid
10159         buffer (using the old size for invalid lines) and thus to do
10160         incremental vaidation. Keep height/width aggregates up to date
10161         when deleting text and rebalancing the tree.
10162
10163         * gtk/gtktextbtree.[ch]: Add functions validate a line
10164         (gtk_text_btree_validate_line), and to validate up
10165         to a number of pixels (gtk_text_btree_validate).
10166
10167         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10168         that indicates that something is changed and a revalidation
10169         pass is needed. Change ::need_repaint to ::changed, and
10170         make it take old and new yranges instead of a rectangle.
10171
10172         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10173         the line_data_destroy() function from 
10174         gtk_text_btree_add_view() to a virtual function in 
10175         GtkTextLayout
10176
10177         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10178         since we are handling partial repaints in a different fashion
10179         now.
10180
10181         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10182         of the selection instead of queueing a repaint on the
10183         entire widget.
10184
10185         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10186         get_selection_bounds() down to btree, make the function
10187         in buffer a wrapper around the btree function.
10188
10189         * gtk/gtktextlayout.[ch]: Add functions to check if the
10190         layout is valid and to recompute either a range of pixels
10191         aroudn a line or a certain total number of pixels.
10192
10193         * gtk/gtktextlayout.[ch]: Cache a single line display;
10194         now that we only redraw the needed portions, the hit rate
10195         for this cache is quite high.
10196         
10197         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10198         on the screen so that when re-laying-out the buffer, we can
10199         keep the same place. This requires connecting to ::value_changed
10200         on the adjustments
10201
10202         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10203         the buffer after we receive an ::invalidated signal.
10204         
10205 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10206
10207         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10208         to max of allocation and layout size, not just to the
10209         layout size.
10210
10211         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10212         Invalidate window so it gets redrawn properly.
10213
10214         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10215         to mean the entire window.
10216
10217         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10218         into public header.
10219
10220 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10221
10222         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10223         to get the name of a mark.
10224
10225         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10226         to find the paragraph from a y position.
10227
10228 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10229
10230         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10231         nodes have width/height >= 0, not > 0.
10232
10233 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10234
10235         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10236         Add a size_only flag, so when we only need the size, we don't create
10237         useless appearance attributes.
10238
10239         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10240         duplicate setting of font description.
10241
10242         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10243
10244 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10245
10246         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10247         EXTRA_DIST. It does not work well when the file that
10248         everything depends on is not in the tarball.
10249
10250 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10251
10252         * gtk/testgtk.c: Some hacks and fixes so that it basically
10253         works when not sitting in the GTK+ build tree.
10254
10255 2000-05-03  Havoc Pennington  <hp@redhat.com>
10256
10257         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10258         Properly determine the ordering of the tag root and the current
10259         line within the tree. Previous algorithm only worked if the tag
10260         root's immediate parent was the common root of both the current
10261         line and the tag root.
10262
10263 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10264
10265         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10266         alignment.
10267
10268         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10269         the widget text directional dynamically.
10270
10271         * gtk/gtktextview.[ch]: Added functions to get and set default
10272         wrap mode.
10273
10274 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10275
10276         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10277         in cursor location computation.
10278
10279 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10280
10281         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10282         vadjusment values properly when layout gets smaller.
10283
10284         * gtk/gtktextview.c (need_repaint_handler): Areas being
10285         passed in are far completely inaccurate, and sometimes
10286         too small, so, for now, just queue a redraw on the
10287         whole visible region.
10288
10289 2000-04-25  Havoc Pennington  <hp@redhat.com>
10290
10291         * gtk/gtktextbtree.c (summary_destroy): new function to 
10292         destroy tag summary nodes
10293         (gtk_text_line_next_could_contain_tag): this function was 
10294         totally broken if the line passed in wasn't below the tag
10295         root. Fix it.
10296         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10297         "wildcard" case, we have to do a linear scan. Blah.
10298         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10299         we have to do the linear scan
10300         (tag_removed_cb): When a tag is removed from the tag table, 
10301         remove the GtkTextTagInfo node from the btree.
10302         (gtk_text_btree_spew): Implement the spew function, for 
10303         our debugging pleasure.
10304
10305 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10306
10307         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10308         a problem with referring to the wrong buffer.
10309
10310         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10311
10312         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10313         font description to gtk_style_new() - otherwise things
10314         don't work without a .gtkrc file.
10315
10316         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10317         tags table if we create it ourself, too.
10318
10319         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10320         it was conflicting with XKB modifiers.
10321
10322         * gtk/gtktextview.[ch]: Add simple support for 
10323         GtkIMContext.
10324
10325 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10326
10327         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10328         with deletion from last commit.
10329
10330 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10331
10332         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10333         in the context from the current locale.
10334         
10335         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10336         context, not hardcoded value.
10337
10338         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10339         not logical.
10340
10341 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10342
10343         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10344         attributes - that doesn't handle partial-glyph selection
10345         properly. Instead use new pango_layout_line_get_x_ranges()
10346         functionality to draw the selection.
10347
10348         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10349         now properly handles out-of-range coordinates.
10350
10351         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10352
10353         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10354         public.
10355
10356         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10357         for paragraphs opposite to the base direction of the widget.
10358
10359         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10360
10361         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10362         causes Arabic words to reshape as you cursor through.
10363
10364         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10365         cursor position when moving vertically with the arrow keys and
10366         scrolling with page-up/page-down. (Arrow keys save only the X,
10367         scrolling saves both X and Y.)
10368
10369         This means you can line-up / line-down or page-up / page-down
10370         without losing your place, and also that moving vertically
10371         with the cursor keys keeps the same X position, not the same
10372         character count:
10373
10374         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10375         arrow keys move by display lines, not paragraphs.
10376
10377 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10378
10379         * gtk/gtklayout.c: Make sure that the bin window is at least
10380         as big as the allocation. (Should we also make sure that the
10381         bin window is big enough to completely cover widget->window?)
10382
10383         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10384         function to get the onscreen rectangle.
10385
10386         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10387         for offsets in window coordinates.
10388
10389 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10390
10391         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10392         confusion.
10393
10394         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10395         from the widget direction.
10396
10397         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10398         Add a "direction" attribute.
10399
10400         * gtk/gtktextview.c: global s/tkxt/text_view/.
10401
10402         * gtk/testtext.c: Added long block of text in Arabic, to test out
10403         the direction attributes. (Some problems with the shaping system
10404         for arabic become obvious - like the fact the cursor splits words
10405         into unjoined pieces.)
10406
10407 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10408
10409         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10410
10411         * gtk/gtktextlayout.c: Fix up alignment.
10412
10413         * gtk/testtext.c: Add some tests for centering, wrapping.
10414
10415 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10416
10417         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10418         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10419         If we wrote GTK+-specific layout-render function this could just replace
10420         the draw_layout() operation in the vtable.
10421
10422         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10423         pango_layout_get_cursor_pos() and use that function.
10424
10425         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10426         is a non-static symbol.
10427
10428         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10429         with gtk_text_btree_find_line_by_y()
10430
10431         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10432         renderer that handles GtkTextAppearance attributes.
10433
10434         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10435
10436           - Move the values in the style that don't affect geometry into a
10437             GtkTextAppearance structure.
10438           - Change underline to take a PangoUnderline and "font" a string
10439             representation of a font description
10440           - Add a "font_desc" attribute which takes a FontDescription structure.
10441
10442         * gtk/gtktextlayout.[ch]:
10443
10444           - Get rid of the display-line list per each line. Instead, we
10445             generate, on demand, a GtkTextLineDisplay structure which]
10446             contains a PangoLayout * and other necesary information
10447             (offsets, cursor locations) for displaying a paragraph.
10448           - Get rid of the code to wrap lines, create display chunks,
10449             etc. Instead, we just go through a paragraph and convert
10450             it into the necessary inputs to a PangoLayout.
10451           - Implement a new attribute type, GtkTextAttrAppearance. This
10452             holds a GtkTextAppearance, and is used to pass colors, 
10453             stipple, etc, through from the layout to the display without
10454             having to use lots and lots of individual attributes.
10455           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10456             in terms of PangoLayout functions.
10457         
10458         * gtk/gtktextview.c: 
10459          
10460           - Handle passing the necessary PangoContext to the layout
10461           - Some fixups in painting to deal with the automatic backing store
10462             and offsetting of GTK+-1.4
10463           - Add a style_set handler so that the default style reacts
10464             properly to theme changes.
10465         
10466         * gtk/gtktext?*.[ch]: Random code-style fixes.
10467
10468         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10469
10470 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10471
10472         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10473         in original form preparatory to Pango-ization and gdkimcontext-ization.
10474
10475 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10476
10477         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10478         so that we can derive from gtkimcontext in language bindings properly.
10479
10480 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10481
10482         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10483         Add a compose table including (almost) all the compose combinations
10484         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10485         data in the XIM implementation.
10486
10487         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10488         Moved functions to convert keyvalues from and to unicode here from
10489         the win32 port and made them public.
10490
10491 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10492
10493         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10494
10495 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10496
10497         * gtk/gtkimcontext.[ch]: Base class for new input context system
10498
10499         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10500         the real input context implementation to be loaded from modules
10501         and switched on the fly.
10502
10503         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10504         context that just does direct keysymbol => unicode translation.
10505
10506         * gtk/gtkentry.[ch]: Start switching editing over to using
10507         GtkInputContext. (No handling of preedit yet.)
10508
10509 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10510
10511         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10512         many substitutions. (klass should not be subsituted.)
10513
10514 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10515
10516         * configure.in: Add checks for Pango
10517
10518         * configure.in docs/Makefile.am: Add test for sgml2html
10519         and allow 'make dist' without building html, but print out
10520         warnings in that case. (For making snapshots)
10521
10522         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10523         Add Pango libraries and C flags
10524
10525         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10526         Add function (gdk_draw_layout) to draw a pango layout.
10527
10528         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10529         for getting Pango contexts for GDK.
10530
10531         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10532
10533         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10534         editing.
10535
10536         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10537         keysym => unicode translations. More languages can be added
10538         here, but real input-method support is needed.
10539
10540         * docs/Changes-1.4.txt: Added note about entry behavior.
10541         
10542         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10543         to set the reading direction for a widget and the global direction.
10544         Add test which allows toggling the global direction. Two private
10545         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10546
10547         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10548           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10549
10550         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10551
10552         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10553         underlining now handled by Pango.
10554
10555         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10556         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10557         is temporary.)
10558
10559         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10560         convenience functions for creating contexts and layouts for widgets.
10561
10562         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10563
10564 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10565
10566         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10567         titles to be active, even if they aren't visible.
10568         (gtk_clist_column_titles_passive):  Ditto.
10569
10570 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10571
10572         * gtkmenu.c:
10573         * gtkmenu.h:
10574         * gtktypeutils.h: Spelling/grammar fixes in comments.
10575
10576 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10577
10578         * gdk/nanox/*.h: add missing header files.
10579
10580 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10581
10582         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10583         send_event to TRUE.
10584         (gtk_drawing_area_size): queue a resize.
10585
10586 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10587
10588         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10589         the handlers, also invalidate them. bug nailed down by Karl Nelson
10590         <kenelson@ece.ucdavis.edu>.
10591
10592 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10593
10594         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10595         "(nil)" foundries, patch from Grigorios Magklis.
10596
10597         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10598         on non-available fonts, based on a patch by Grigorios Magklis
10599         <maglis@cs.rochester.edu>.
10600
10601 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10602
10603         * gdk/x11/gdkregion-generic.c: If a region does not have any
10604         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10605         instead of GDK_OVERLAP_RECTANGLE_IN.
10606
10607 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10608
10609         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10610         OFFSCREEN, as it is no longer necessary.
10611
10612 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10613
10614         * gtk/gtkcolorsel.c: Patch from David Santiago
10615         <mrcooger@cyberverse.com> to change things so that the 
10616         indicator of the active palette entry is done independently,
10617         not via the focus, since it should always be visible.
10618
10619 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10620
10621         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10622         refcount leaks as in the X11 backend.
10623
10624         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10625         cosmetics.
10626
10627         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10628         backend. Add _gdk_windowing_window_destroy().
10629
10630         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10631         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10632         either, but these probably do exist on nanox?)
10633         
10634         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10635         which isn't necessarily defined by <math.h>.
10636
10637         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10638         ancestry past GtkObject.
10639
10640         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10641         from DLL on Win32.
10642
10643         * gtk/gtk.def: Update corresponding to recent changes.
10644
10645         * gtk/makefile.{cygwin,msc}: Updates.
10646
10647 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10648
10649         * docs/Changes-1.4.txt: A bit of editing.
10650
10651         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10652         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10653         to clear the update area for the window, and clear it
10654         when hiding a window.
10655
10656         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10657         if window destroyed.
10658
10659         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10660
10661         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10662         gdk_window_destroy() to the generic code, since there was a lot of 
10663         window-system-independent logic it in. Add a function:
10664         
10665          _gdk_window_destroy() 
10666
10667         to the internal API to destroy a window without unreferencing it.
10668         Add a function:
10669
10670          _gdk_windowing_window_destroy()
10671
10672         That does the windowing-system-dependent part of destroying 
10673         the window.
10674
10675 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10676
10677         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10678
10679 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10680
10681         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10682         Make gtk_widget_shape_combine_mask() keep a reference count on
10683         the pixmap since it keeps it around.
10684
10685 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10686
10687         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10688         leak.
10689
10690         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10691         leak with event filters.
10692
10693 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10694
10695         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10696         signal handlers with the right data arguments. (Fixes
10697         some warnings when a widget was repeatedly set as a drag
10698         destination.)
10699
10700         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10701         window so we can avoid avoid setting the DND properties on the
10702         toplevel window repeatedly.
10703
10704 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10705
10706         * gdk/win32/gdkwin32.h: Define more message types missing from
10707         mingw headers.
10708
10709         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10710         call gdk_window_destroy_notify(). It was never called. This
10711         probably meant that the GdkWindow was never freed. Thanks Owen for
10712         noticing (!).
10713
10714         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10715         window as destroyed before calling DestroyWindow(). DestroyWindow()
10716         causes a call to the window procedure (gdk_WindowProc), which
10717         calls gdk_event_translate(), which calls
10718         gdk_window_destroy_notify(), which gets confused unless the window
10719         is set as destroyed.
10720
10721         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10722         this function to indicate it's win32 only. Put inside #ifdef
10723         G_ENABLE_DEBUG.
10724
10725         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10726         debugging function. (gdk_event_translate:) Add a default branch
10727         that uses the above function to print debug messages with all
10728         Windows messages symbolically.
10729
10730         * gdk/win32/gdkprivate-win32.h: Declare it, and
10731         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10732
10733 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10734
10735         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10736         public header file.
10737
10738 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10739
10740         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10741
10742         * gtk/gtktext.c: made the adjustments no-construct args, simply
10743         provide default adjustments.
10744         (gtk_text_destroy): release adjustments.
10745
10746         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10747         adjustment argument non-construct.
10748
10749         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10750         instead of in finalize.
10751         (gtk_progress_get_text_from_value): 
10752         (gtk_progress_get_current_text): 
10753         (gtk_progress_set_value): 
10754         (gtk_progress_get_percentage_from_value): 
10755         (gtk_progress_get_current_percentage): 
10756         (gtk_progress_set_percentage): 
10757         (gtk_progress_configure): ensure an adjustment is present.
10758
10759 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10760
10761         * gtk/gtkcolorsel.[hc]:
10762         * gtk/gtkcolorseldialog.[hc]:
10763         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10764         their parent implementation, use bit fields for boolean values, don't
10765         create unused widgets, usage of glib types, braces go on their own
10766         lines, function argument alignment, #include directives etc. etc. etc..
10767
10768         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10769
10770 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10771
10772         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10773
10774         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10775         of NULL.
10776
10777         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10778         to freed data.
10779         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10780
10781         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10782         to NULL when the toplevel is getting destroyed.
10783         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10784         (gtk_menu_destroy): 
10785         (gtk_menu_init): store the information of whether we have to
10786         readd the initial child ref_count during destruction in a new
10787         GtkMenu field needs_destruction_ref_count.
10788
10789         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10790         here, those reading: learn from my mistake! ;)
10791         in order for set_?adjustment to support a default adjustemnt if
10792         invoked with an adjustment pointer of NULL, the code read (pseudo):
10793         if (v->adjustment) unref (v->adjustment);
10794         if (!adjustment) adjustment = adjustment_new ();
10795         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10796         now imagine the first unref to actually free the old adjustment and
10797         adjustment_new() creating a new adjustment from the very same memory
10798         portion. here, the latter comparision will unintendedly fail, and
10799         all hell breaks loose.
10800         (gtk_viewport_set_hadjustment):
10801         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10802         after unreferencing it.
10803
10804         * gtk/gtkcontainer.[hc]: removed toplevel registration
10805         functions: gtk_container_register_toplevel(),
10806         gtk_container_unregister_toplevel() and
10807         gtk_container_get_toplevels() which had wrong semantics
10808         anyways: it didn't reference and copy the list.
10809
10810         * gtk/gtkwindow.c: we take over the container toplevel registration
10811         bussiness now. windows are registered across multiple destructions,
10812         untill they are finalized. the initial implicit reference count
10813         users are holding on windows is removed with the first destruction
10814         though.
10815         (gtk_window_init): ref & sink and set has_user_ref_count, got
10816         rid of gtk_container_register_toplevel() call. add window to
10817         toplevel_list.
10818         (gtk_window_destroy): unref the window if has_user_ref_count
10819         is still set, got rid of call to
10820         gtk_container_unregister_toplevel().
10821         (gtk_window_finalize): remove window from toplevel list.
10822         (gtk_window_list_toplevels): new function to return a newly
10823         created list with referenced toplevels.
10824         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
10825
10826         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10827         adjustment a non-construct arg.
10828         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10829         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10830         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10831
10832         * gtk/gtkrange.c: added some realized checks.
10833         (gtk_range_destroy): get rid of the h/v adjustments in the
10834         destroy handler instead of finalize. remove timer.
10835         (gtk_range_get_adjustment): demand create adjustment.
10836
10837         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10838         we simply create them on demand now and get rid of them in
10839         the destroy handler.
10840         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10841         destroy handler instead of finalize.
10842         (gtk_viewport_get_hadjustment): 
10843         (gtk_viewport_get_vadjustment): 
10844         (gtk_viewport_size_allocate): demand create h/v adjustment
10845         if required.
10846
10847         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10848         gtk_widget_real_destroy () functionality.
10849         (gtk_widget_real_destroy): reinitialize with a new style, instead
10850         of setting widget->style to NULL.
10851
10852 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10853
10854         * gtk/gtkcalendar.c:
10855         * gtk/gtkbutton.c: ported _get_type() implementation over to
10856         GType, either to preserve memchunks allocation facilities,
10857         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10858
10859         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10860         over. prepare for ::destroy to be emitted multiple times.
10861         removed reference tracer magic. chain into GObjectClass.shutdown()
10862         to emit ::destroy signal.
10863
10864         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10865         fundamental.
10866
10867         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10868         cludge.
10869
10870         * gtk/gtksocket.c:
10871         * gtk/gtkplug.c:
10872         * gtk/gtklayout.c:
10873         * gtk/gtklabel.c:
10874         * gtk/gtkargcollector.c:
10875         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10876         not being a fundamental anymore, and to work with the new
10877         type system (nuked fundamental type varargs clutter).
10878
10879         * gtk/*.c: install finalize handlers in the GObjectClass
10880         part of the class structure.
10881         changed direct GTK_OBJECT()->klass accesses to
10882         GTK_*_GET_CLASS().
10883         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10884
10885         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10886         GType. made most of the GTK_*() type macros and Gtk* typedefs
10887         simple wrappers around macros and types provided by GType.
10888         most notably, a significant portion of the old API vanished:
10889         GTK_TYPE_MAKE(),
10890         GTK_TYPE_SEQNO(),
10891         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10892         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10893         GTK_TYPE_ARGS,
10894         GTK_TYPE_CALLBACK,
10895         GTK_TYPE_C_CALLBACK,
10896         GTK_TYPE_FOREIGN,
10897         GtkTypeQuery,
10898         gtk_type_query(),
10899         gtk_type_set_varargs_type(),
10900         gtk_type_get_varargs_type(),
10901         gtk_type_check_object_cast(),
10902         gtk_type_check_class_cast(),
10903         gtk_type_describe_tree(),
10904         gtk_type_describe_heritage(),
10905         gtk_type_free(),
10906         gtk_type_children_types(),
10907         gtk_type_set_chunk_alloc(),
10908         gtk_type_register_enum(),
10909         gtk_type_register_flags(),
10910         gtk_type_parent_class().
10911         replacements, where available are described in ../docs/Changes-1.4.txt.
10912         implemented compatibility functions for the remaining API.
10913
10914         * configure.in: depend on glib 1.3.1, use gobject module.
10915
10916 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10917
10918         * TODO.xml: Various updates to current status.
10919
10920 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10921
10922         * gtk.m4: Print out version when test succeeds.
10923
10924 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10925
10926         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10927         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10928         
10929         (Original triangle color selector from Simon Budig
10930         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10931         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10932         Santiago <mrcooger@cyberverse.com>)
10933
10934         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10935         out into a separate widget.
10936
10937         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10938         and opacity controls.
10939
10940 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10941
10942         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10943         snuck in prematurely.
10944
10945 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10946
10947         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10948         had deleted a ! operator by mistake, which caused
10949         GDK_SELECTION_CLEAR events never to be generated, which caused
10950         only the first copy to the clipboard from an gtkeditable to
10951         actually cause a copy to the Windows clipboard.
10952
10953 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10954
10955         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10956         compilation, too. Current mingw gcc distributions include the
10957         necessary headers. Also the necessary IIDs are now in mingw
10958         headers/libraries, and own definitions unnecessary.
10959
10960         More hacking on OLE2 DND, still doesn't work though, and thus
10961         ifdeffed out.
10962
10963         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10964         here, too.
10965
10966 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10967
10968         * gdk/nanox/*: nano-X port work in progress.
10969         * gdk/simple.c: simple test for Gdk.
10970         * README.nanox: notes about the port: read this first!
10971         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10972         with nano-X.
10973
10974 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10975
10976         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10977         gdk_window_clear() into common code, implement in terms of
10978         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10979         not redirected to the backing rectangle.
10980
10981 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10982
10983         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10984         EXTRA_DIST. It does not work well when the file that
10985         everything depends on is not in the tarball.
10986
10987 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10988
10989         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10990         with recursion where process_updates() is called from
10991         an expose handler. (GtkTextView is highly broken in
10992         doing this, but it should work, so it is a nice test
10993         case.)
10994
10995 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10996
10997         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10998         handle the case where updates are queued during processing of
10999         updates.
11000
11001 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11002
11003         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11004         window is on gdk_display - use that instead of segfaulting.
11005
11006 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11007
11008         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11009         broken and require an empty arg, give it to them.
11010
11011 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11012
11013         * gtk/gtklabel.h: indentation fixes.
11014
11015 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11016
11017         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11018         draw too narrow or too low arcs, they seem to fail, at least with
11019         some display drivers.
11020
11021         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11022
11023         Large changes to the Win32 backend, partially made necessary by
11024         the changes to the backend-independent internal
11025         structures. Attempts to implement similar backing store stuff as
11026         on X11. The current (CVS) version of the Win32 backend is *not* as
11027         stable as it was before the no-flicker branch was merged. A
11028         zipfile with that version is available from
11029         http://www.gimp.org/win32/. That should be use by "production"
11030         code until this CVS version is usable. (But note, the Win32
11031         backend has never been claimed to be "production quality".)
11032
11033         * README.win32: Add the above comment about versions.
11034
11035         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11036
11037         * gdk/gdk.def: Update.
11038
11039         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11040         presumably be replaced by some more better mechanism as 1.4 gets
11041         closer to release shape.
11042
11043         * gdk/makefile.{cygwin,msc}: Update.
11044
11045         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11046         internal headers. Change code according to changes in these. Use
11047         gdk_drawable_*, not gdk_window_* where necessary.
11048
11049         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11050         our old DND.
11051
11052         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11053         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11054         Use correct function name in warning messages.
11055
11056         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11057         GSourceFuncs gdk_event_prepare and gdk_event_check.
11058         (gdk_event_get_graphics_expose): Do implement, use
11059         PeekMessage. Thanks to Hans Breuer.
11060         (event_mask_string): Debugging function to print an GdkEventMask.
11061         (gdk_pointer_grab): Use it.
11062
11063         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11064         (old) book I used claimed was Hangul actually is CJK Unified
11065         Ideographs Extension A. Also, Hangul Syllables were missing.
11066         Improve logging.
11067
11068         * gdk/win32/gdkgc-win32.c: Largish changes.
11069
11070         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11071         g_win32_getlocale() from GLib, and not setlocale() to get current
11072         locale name.
11073
11074         * gdk/win32/gdkprivate-win32.h
11075         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11076         gdkwin32.h, similarily as in the X11 backend.
11077
11078         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11079         assignment was used instead of equals in if test. Thanks to Hans
11080         Breuer.
11081
11082         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11083         the X11 version.
11084
11085         * gdk/win32/makefile.{cygwin,msc}
11086         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11087         path to the Win32 headers that works also with the mingw compiler.
11088
11089         * gtk/gtkstyle.c: Include <string.h>.
11090
11091 2000-04-26  Havoc Pennington  <hp@redhat.com>
11092
11093         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11094         replacing the broken gtk_label_get ()
11095
11096 2000-04-15  Havoc Pennington  <hp@pobox.com>
11097
11098         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11099         this keeps scanner scripts from getting confused.
11100
11101         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11102         data, rather than void
11103
11104 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11105
11106         * gtk/gtkclist.c (gtk_clist_motion)
11107         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11108         with is_hint FALSE, get x and y from the event. They used to be
11109         used uninitialised. The Win32 backend never sends motion events
11110         marked as hints. This for instance fixes the annoying file and
11111         font selector behaviour in the Win32 version.
11112
11113 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11114
11115         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11116         gtk_private_n_signals variables, they are used by some software,
11117         sigh.
11118
11119         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11120         installation directory from the Registry, where the installer
11121         should have put it.
11122
11123 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11124
11125         * gdk/x11/Makefile.am: Fix problem with installation directory for
11126         gdkx.h
11127
11128         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11129         <mrcooger@cyberverse.com> so that when selecting menus with the
11130         mouse, the first item will not be selected, but when selecting
11131         with an accelerator, or navigating left-right on a menubar with
11132         the menus popped up, the first item will be selected.
11133
11134 2000-04-05  Dan Damian  <dand@dnttm.ro>
11135
11136         * configure.in: Added "ro" to ALL_LINGUAS.
11137
11138 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11139
11140         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11141         indentation.
11142
11143         * Makefile.am (EXTRA_DIST): Fix typo.
11144
11145         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11146         to catch gdkconfig.h
11147
11148         * gtk/gtkitemfactory.c: Added FIXME.
11149
11150 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11151
11152         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11153         s/return_if_fail/return_val_if_fail/g and add a return value.
11154
11155 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11156
11157         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11158         merge slipup.
11159
11160         * gdk/gdkinput.h: Fix missing line from merge.
11161
11162 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11163
11164         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11165         instead of gdkprivate.h.
11166
11167 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11168
11169         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11170         parent class to correctly be GtkDialogClass.
11171
11172 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11173
11174         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11175         toplevel windows and their immediate children by their parents,
11176         since the size of toplevel windows is out of our immediate
11177         control and we don't get any real benefit from trying to track
11178         this size for clipping.
11179
11180         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11181         for input_only windows.
11182
11183         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11184         to fix some hacks and make sure that we don't try to set the
11185         background of input only windows.
11186
11187 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11188
11189         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11190         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11191         stuff that we've traditionally exposed.
11192
11193         * gdk/**.c: Use gdkinternals.h where appropriate.
11194
11195         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11196         not include gdkprivate-x11.h, move all stuff of conceivable public
11197         interest into gdkx.h; keep all really private stuff in
11198         uninstalled header gdkprivate-x11.h.
11199
11200         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11201         image->image_put on windows through a new function _gdk_window_draw_image()
11202         to allow us to do backing store for images. (Sort of ugly)
11203
11204         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11205         contexts locally so that we can offset them properly when drawing 
11206         onto backing pixmaps.
11207
11208         * gdk/gdkinput.h: Reindented
11209
11210         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11211         pixmap or color for the window, so we can properly initialize
11212         our double-buffer pixmaps, and also so that we temporarily set
11213         a background of None while scrolling.
11214
11215         * gdk/gdkregion.h: Revise region boolean operators to have an
11216         interface that is actually convenient - switch from creating new
11217         regions on every op, to "methods" that modify existing regions
11218         (A = A OP B). 3 argument forms which allow dest == src, would also
11219         be possible, but the current interfaces seem to map nicely
11220         onto what needs to be done. (There is quite a lot of region
11221         code in GDK now.)
11222
11223         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11224         operator.
11225
11226         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11227         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11228         to 32 bit coordinates, modify it to be mostly GTK+ style
11229         and to have interfaces that match gdkregion.h.
11230
11231         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11232         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11233         create a backing pixmap and redirect all drawing to
11234         that backing pixmap until a matching gdk_window_end_paint().
11235
11236         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11237         Create a special drawable class for GtkWindow's that 
11238         redirects the drawing to the backing pixmap as necessary
11239         and then calls the real operations in _gdk_windowing_window_class.
11240
11241         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11242         Store invalid region for each window. Generate expose events for invalid
11243         region in an idle. This replaces both the expose compression
11244         and the redrawing queuing in GTK+. It is both more efficient and
11245         simpler than either one individually and far more so then the
11246         combination.
11247
11248         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11249         Emulate 32 bit coordinates for windows with 16 bit coordinates
11250         by offsetting drawing, guffaw scrolling techniques and
11251         mapping/unmapping child windows as necessary.
11252
11253         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11254         where, when invalid regions are processed, the region is stored,
11255         and if expose events come in that are detectably duplicate
11256         the processed exposes (by comparison of event serial numbers),
11257         the stored region is subtracted out of those exposes.
11258
11259         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11260         regions newly exposed when scrolling or resizing windows.
11261         This, combined with forcing processesing of queued invalidated
11262         regions, gives nice flicker-free scrolling.
11263
11264         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11265         invalidated regions after every scroll.
11266
11267         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11268         emulation in GDK. Its, for all practical purposes just a
11269         GtkViewport/GtkFixed hybrid now.
11270
11271         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11272         (16-bit) structures as necessary instead of just casting.
11273
11274         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11275         in terms of the structures from gdkregion-generic.c, using appropriate
11276         offsets from GDK to X11 coordinates. Cache clip mask and
11277         origin and ts origin locally and only flush to the server
11278         when drawing, to avoid constantly setting and resetting these
11279         values when offsetting GC's for scrolling and backing pixmaps.
11280
11281         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11282
11283         * gtk/gtkcontainer.c: Call process_all_updates at end
11284         of resizing to reduce flicker. (Avoids having redraw
11285         lag arbitrarily behind resize under some circumstances)
11286
11287         * gtk/gtkentry.c: Remove old backing store code, and simply take
11288         advantage of the new backing store capabilities of GDK.
11289
11290         * gtk/gtkmain.c: Simple implementation of widget backing
11291         store - simply push a paint while handling each expose.
11292         (Should really be configurable widget for widget.)
11293         
11294         * gtk/gtkwidget.c: Remove all the old complicated redraw
11295         code, and simply invalidate the GDK windows from
11296         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11297         debugged complexity ... gone to the winds.)
11298
11299         Remove all the code for suppressing expose events while
11300         resizes are pending; this isn't needed since the invalid
11301         areas won't be processed until after the resizes are
11302         processed, since they are in a lower priority idle.
11303
11304 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11305
11306         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11307         and height of dest rectangle for non-intersecting rectangles.
11308
11309 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11310
11311         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11312         for GdkRectangle.
11313
11314 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11315
11316         * gdk/gdk{events,image,private,types,window}.h
11317          gdk/x11/gdkinputprivate.h: Change all coordinates
11318          from int16 to int. Also, Change width and height from
11319          unsigned to signed to avoid all the stupid C 
11320          signedness bugs.
11321
11322 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11323
11324         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11325         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11326         Add some more detailed checking.
11327
11328         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11329         New function to retrieve the depth of a drawable.
11330
11331         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11332         field, reorder fields to save memory. 
11333
11334 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11335
11336         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11337         of the background image instead of scaling the background down to
11338         a line.
11339
11340         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11341         which temporarily set slider to wrong size.
11342
11343         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11344         queue_clear().
11345
11346 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11347
11348 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11349
11350         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11351
11352 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11353
11354         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11355         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11356
11357         * gdk/win32/gdkfont-win32.c
11358         * gdk/win32/gdkproperty-win32.c
11359         * gdk/win32/gdkselection-win32.c
11360         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11361         now declared such.
11362
11363 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11364
11365         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11366
11367 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11368
11369         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11370         is called without trapping X errors.
11371
11372 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11373
11374         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11375         way into the fontset lists.
11376
11377 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11378
11379         * gtk/gtkthemes.h: add extern "C" scope.
11380
11381 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11382
11383         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11384         to make appends to the list constant. (gtk-guy-990901-0.patch)
11385
11386 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11387
11388         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11389         for the typename hash table.
11390
11391 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11392
11393         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11394         to make sure we never divide by zero. 
11395         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11396
11397 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11398
11399         * gtk/gtkfontsel.c: Apply patch from
11400         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11401         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11402
11403         Also, some cleanups in atom handling.
11404
11405 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11406
11407         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11408         not GtkWidget.
11409
11410 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11411
11412         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11413         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11414         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11415         more guint wrap-around bugs before going to bed.
11416
11417 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11418
11419         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11420         guint wrap arounds in allocation.width.
11421
11422         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11423         process untill we fit the allocation given.
11424
11425 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11426
11427         * gtk/gtkwidget.c:
11428         (gtk_widget_unrealize): guard widget access with ref/unref
11429         around signal emission.
11430         (gtk_widget_hide): same here, but also check its destroyed
11431         state before queueing a resize.
11432
11433 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11434
11435         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11436         of gtk_default_insensitive_bg as insensitive base color.
11437
11438         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11439         to the widget's state.
11440         (gtk_text_realize): same here.
11441         (gtk_text_state_changed): same here.
11442         (draw_bg_rect): compare background color against base[] from
11443         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11444
11445 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11446
11447         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11448         grabs are active, unless a delete event is send to the toplevel
11449         of the currently grab holding widget.
11450
11451 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11452
11453         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11454         debugging g_print's.
11455
11456 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11457
11458         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11459         ever make the scrolled-window requisition ever depend on the 
11460         visibility state of the scrollbars for the AUTOMATIC policy. 
11461         This breaks the GTK+ requisition model, and causes loops.
11462
11463 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11464
11465         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11466         the default font to avoid problems with XFree86-4.0 where the
11467         default charset is iso10646-1, not iso8859-1.
11468
11469 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11470
11471         * acinclude.m4
11472         * config.guess
11473         * config.sub
11474         * ltconfig
11475         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11476
11477         * gtk/Makefile.am: minor cosmetic consistency tweak
11478
11479 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11480
11481         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11482         the activate_time to 0, so that we handle a quick
11483         press/release press/release properly and don't suppress
11484         the second release. (Red Hat bug #7545)
11485
11486 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11487
11488         * gtk/gtkctree.c (row_delete):
11489         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11490         bugs with destruction notifier, *always* update internal
11491         structures *before* calling user code.
11492
11493 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11494
11495         A few more fixes for bug #5487, #2051, #2677.
11496         * gtk/gtkclist.c : 
11497         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11498         not GDK_BUTTON_PRESS.
11499         (resync_selection): resync only if selection_mode is
11500         GTK_SELECTION_EXTENDED
11501         * gtk/gtkctree.c (resync_selection): same here
11502
11503 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11504
11505         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11506         gdk_drag_get_selection() and gtk_menu_detach().
11507
11508         [ From Jeroen Ruigrok/Asmodai ]
11509
11510 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11511
11512         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11513         page->tab_label can be NULL.
11514
11515 2000-01-25  Havoc Pennington  <hp@pobox.com>
11516         
11517         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11518         arg is boolean
11519
11520         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11521
11522         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11523
11524         * gdk/gdkproperty.c (gdk_property_get): return boolean
11525
11526         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11527
11528         * gdk/gdkim.c (gdk_im_ready): return boolean
11529
11530         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11531
11532         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11533         glib clash, should fix glib)
11534
11535         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11536         (gdk_get_show_events): return gboolean, and canonicalize 
11537         to TRUE/FALSE
11538
11539         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11540         colormap is private
11541         (gdk_colors_alloc): gboolean whether to be contiguous
11542         (gdk_color_equal): return gboolean since we are a predicate
11543         and not a qsort() (this looks semi-wrong due to glib breakage,
11544         IMO glib should be fixed)
11545         
11546         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11547         (gdk_get_use_xshm): return gboolean
11548         (gdk_pointer_is_grabbed): return gboolean
11549
11550         * gdk/gdk.h: Change prototypes to match all the above changes,
11551         and re-run egtk-format-protos as required.
11552
11553 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11554
11555         * gtk/gtkctree.c (resync_selection): 
11556         * gtk/gtkclist.c (resync_selection):
11557
11558         Return immediately if clist->drag_pos < 0. This is a workaround
11559         for the corrupt state that the clist gets into when a
11560         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11561
11562         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11563         
11564         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11565         variable from recent commit.
11566
11567 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11568
11569         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11570
11571 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11572
11573         * gtk/Makefile.am: prefix all autogenerated source that get build in
11574         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11575         in builddir. since we subsequently cd into srcdir for autogeneration,
11576         the paths have to be stripped from the target file names, thusly we
11577         use $(@F) as target names now.
11578         put a comment about configure.in's --disable-rebuilds option,
11579         which can be used for non-writable source directories, for development
11580         setups though, srcdir has to be *writable*.
11581
11582 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11583
11584         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11585           Finish the job of allowing event to be NULL.
11586           (Fixes bug #4283, reported by Chris Blizzard)
11587
11588         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11589           things so that the cursor appears on screen, properly
11590           take into account INNER_BORDER.
11591           (Fixes bug #4754, reported by Antonio Campos)
11592
11593 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11594
11595         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11596           show the tab_label unless it itself is visible.
11597
11598           gtk/gtknotebook.c (gtk_notebook_size_request):
11599           Do a better job of making sure that the visibility
11600           of the tab label corresponds to whether it should
11601           be mapped or not.
11602
11603 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11604
11605         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11606           Use the requisition, not the allocation, since the
11607           allocation has not necessarily been computed yet.
11608           (Pointed out by Eugene Osintsev)
11609
11610 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11611
11612         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11613           style/base[GTK_STATE_INSENSITIVE] both to
11614           gtk_default_insensitive_bg!
11615           (Bug #2187, reported by Jonathan Blandford)
11616
11617         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11618           Add Alt_L, Alt_R to list of invalid accelerators.
11619           (Bug #3736, reported by Vlad Harchev)
11620
11621 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11622
11623         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11624         bugs which occured after an attempt to open 
11625         invalid home directory left cmpl_state->reference_dir == NULL.
11626
11627          - completion on files in home directory didn't work
11628          - completion on an empty string caused  segfault
11629
11630          (Bug #3678, reported by Steve Ratcliffe)
11631
11632         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11633         cut and paste error that was causing scales to
11634         be incorrectly positioned.
11635         (Bug #2956,
11636          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11637
11638 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11639
11640         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11641         when checking for dcgettext, if we've found we needed
11642         it for dgettext.
11643 +
11644 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11645
11646         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11647         queue_clear on NO_WINDOW widgets during a reparent,
11648         since at that point the window and widget heirarchies
11649         are out of sync. This stops crashing in some cases
11650         (the scrolled window reparent test, for instance), and
11651         _probably_ won't cause drawing errors.
11652
11653         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11654         test do what it was supposed to do and be robust against
11655         window closings, etc. (Bug #2443)
11656
11657 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11658
11659         * gtk/gtkentry.c: Fix return values on mouse events.
11660         (Bug #2686, Sky <seb_sky@yahoo.com>)
11661
11662         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11663         (pointed out by George Lebl)
11664
11665         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11666         (From Ettore Perazzoli  <ettore@helixcode.com>)
11667  
11668 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11669
11670         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11671         clicks between rows or outside calender area correctly.
11672         (Patch from Damon Chaplin)
11673
11674         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11675         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11676           Call destroy function when overwriting existing data. 
11677           (Pointed out by Damon Chaplin)
11678
11679 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11680
11681         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11682           which was causing problems on various systems with Xmu.
11683           This hasn't been needed for a very long time.
11684           (Fixes #1185 3167)
11685
11686 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11687
11688         * gdk/gdki18n.h: Include <ctype.h> when defining
11689           gdk_isw* in terms of is* as a fallback.
11690           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11691
11692 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11693
11694         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11695           realize the widget when it is size allocated!
11696           (old, old bug)
11697
11698         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11699           Removed unused call to gdk_window_get_size() that
11700           showed up when the above was fixed.
11701
11702 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11703
11704         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11705           fix up widget->window when the widget is a
11706           NO_WINDOW container widget.
11707
11708 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11709
11710         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11711           to account for the fact that feof() does _not_ 
11712           return TRUE on errors, and thus avoid infinite loops
11713           when trying to use gdk_pixmap_create_from_xpm()
11714           on unreadable values.
11715
11716 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11717
11718         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11719
11720 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11721
11722         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11723           gdk_gc_set_dashes to take gint8 instead of gchar to
11724           make it clearer that it is _not_ a NULL terminated string.
11725
11726         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11727           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11728           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11729           arguments.
11730
11731 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11732
11733         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11734         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11735         background size relative to our allocation, guard against small
11736         allocations, we may have not yet been size allocated.
11737
11738 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11739
11740         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11741         not just version == 3. We implement all 3 + most of 4 - 
11742         (we don't support matching text/plain;charset=iso-8859-1
11743         to a dest that expects text/plain). We'll still advertise
11744         3 to be safe, but any client implementing version >= 3
11745         must interoperate with 3.
11746         
11747 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11748
11749         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11750         background and gc members, add a warning in gtk_tooltips_set_color()
11751         indicating that this function is deprecated.
11752
11753 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11754
11755         * docs/gtkfaq.sgml: FAQ Update:
11756           - Minor cleanups (Emmanuel, me)
11757           - New questions:
11758                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11759                 How can I retrieve the text from a GtkMenuItem? (timj)
11760                 How do I validate/limit/filter the input to a GtkEntry? (me)
11761                 Memory does not seem to be released when I free the list
11762                         nodes I've allocated (timj)
11763
11764 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11765
11766         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11767         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11768         for which it is no use to call GetLastError onWin9x.
11769         (gdk_other_api_failed) New function, for general error
11770         reporting without calling GetLastError.
11771         (gdk_win32_api_failed) OTOH, this function always calls
11772         GetLastError. (gdk_win32_last_error_string) Remove this function,
11773         GLib has the equivalent now.
11774
11775         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11776         call them with function name, file name and line number in the
11777         arguments.
11778
11779         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11780         functions.
11781         
11782         * gtk/gtk.def: Add some missing entry points.
11783
11784         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11785         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11786         
11787         Fixes by Hans Breuer:
11788
11789         * gdk/makefile.msc: Update for debugging.
11790
11791         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11792         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11793         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11794         in the dash_list.
11795
11796         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11797         the x11 backend.
11798
11799         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11800
11801         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11802
11803 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11804
11805         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
11806         just pixel value of background colour.
11807
11808         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
11809         containing code snippet previously duplicated in a couple of
11810         places.
11811         
11812         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
11813         gdk_colormap_color.
11814
11815         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
11816         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
11817         events for autorepeated Shift, Control and Alt keys. Use
11818         gdk_colormap_color.
11819
11820         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
11821         pointer is inside the window the cursor of which we are setting,
11822         call SetCursor immediately.
11823
11824         * gdk/win32/makefile.cygwin
11825         * gtk/makefile.cygwin: If we don't have the build number stamp
11826         file, use zero.
11827
11828         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11829         gtk_paned_set_gutter_size as empty.
11830
11831         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11832         
11833 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11834
11835         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11836           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11837           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11838           docs/gtk_tut.sgml docs/gtk.texi TODO:
11839
11840           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11841
11842 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11843
11844         * gtk/gtkcalendar.c: Implement num_marked_dates,
11845           and don't emit mutiple day_selected signals on
11846           month_prev.
11847
11848 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11849
11850         * docs/make-todo (lineno): let title and logo be configurable so
11851         that GNOME can use this script too.
11852
11853         * TODO.xml: added logourl and a title
11854
11855 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11856
11857         * TODO.xml: Added some UI items, and an explanatory
11858         comment at the top of the file.
11859
11860 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11861
11862         * TODO.xml: some updates, added abunch of new entries.
11863         a note for those fiddeling with this file, when done
11864         with it, invoke:
11865         $ ./docs/make-todo TODO.xml >/dev/null
11866         and correct output errors before comitting changes.
11867
11868 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11869
11870         * TODO.xml: Added XML-structured TODO file.
11871         * docs/make-todo: python script to turn TODO.xml into
11872           pretty XML output. 
11873
11874 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11875
11876         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11877         the function to let it draw the seven dots, instead of the old,
11878         much maligned, method.
11879         (draw_dot): New function to draw a dot.
11880
11881         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11882         to draw the handle inside the border width as opposed to outside.
11883         Use paint function instead of gdk_draw_point.
11884
11885         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11886         to draw the handle inside the border width as opposed to outside.
11887         Use paint function instead of gdk_draw_point.
11888
11889         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11890         Change indenting to be more GTK like.
11891
11892 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11893
11894         * docs/gtk_tut.sgml: New section on GtkCalendar
11895         * examples/calendar: Update example code
11896
11897 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11898
11899         * docs/gtkfaq.sgml: FAQ Update
11900
11901 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11902
11903         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11904         to prevent the scroll event to be propagated upwards.
11905
11906 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11907
11908         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11909         OwnerGrabButtonMask from button entries for
11910         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11911
11912         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11913         to the event mask (which will result in button/press release
11914         being added to the event mask on Unix) so scrolling works
11915         for layouts in scroll windows.
11916
11917         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11918
11919         Patch from Anders Carlsson  <andersca@gnu.org> to add
11920         a scroll event.
11921
11922         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11923         scrolling to the "Test Scrolling" part of testgtk.
11924  
11925         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11926  
11927         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11928         it against GDK_SCROLL.
11929  
11930         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11931         way of mouse wheel scrolling.
11932  
11933         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11934  
11935         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11936  
11937         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11938  
11939         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11940         gdk_event_mask_table.
11941  
11942         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11943         GdkEventScroll handler.
11944  
11945         * gdk/gdkevents.h: Added GdkEventScroll structure.
11946  
11947 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11948
11949         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11950         and Anders Carlsson to change the Paned widgets so that they
11951         can be dragged from anywhere along the length. Also change
11952         the way that this is drawn to make this apparent.
11953
11954         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11955         from George Lebl to check that option_menu->menu is present
11956         before getting history.
11957
11958 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11959
11960         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11961         before the assertion for non-NULL segment list.
11962
11963         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11964         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11965         machine, but it might be display driver dependent. Sigh, so make
11966         sure the stipple is that size. Does Windows suck or what?
11967
11968         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11969         places.
11970
11971 2000-02-13  Havoc Pennington  <hp@pobox.com>
11972
11973         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11974         refcount to 1
11975         (gdk_cursor_new): init refcount to 1
11976
11977         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11978
11979 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11980
11981         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11982         so that we don't have to do unnecessary settings to the HDC.
11983
11984         * gdk/win32/gdkdrawable-win32.c
11985         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11986         gdk_gc_predraw.
11987
11988         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11989         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11990         GDI paths, call WidenPath to get the outline of the stroken path,
11991         and then fill the outline (with the brush that was built from the
11992         stipple).
11993
11994         * gdk/win32/gdkgc-win32.c: Factor out common code from
11995         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11996         gdk_win32_gc_values_to_win32values. Use correct colour for
11997         SetBkColor() (Until now the code actually used a random colour in
11998         the call to SetBkColor()... but that didn't show up as not many
11999         GDI APIs use the background colour. Pattern (opaque stippled)
12000         brushes do.)
12001
12002         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12003         gdk_win32_api_failed): New functions for error logging.
12004
12005         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12006         WIN32_API_FAILED to call them, passing function or file name and
12007         line number.
12008
12009         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12010
12011         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12012         GdkColor for foreground and background in GdkGCWin32Data.
12013
12014         * gdk/makefile.cygwin: Link in the resource object separately.
12015
12016         * gdk/win32/rc/gdk.rc
12017         * gtk/gtk.rc (New file)
12018         * gdk/win32/makefile.cygwin
12019         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12020         as in GLib.
12021
12022 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12023
12024         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12025         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12026         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12027         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12028         parameters given and cursor->ref_count. coding style fixups.
12029
12030         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12031         not GtkWidget.
12032         
12033         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12034         fix up widget macros and add _GET_CLASS() variant.
12035         
12036         * gtk/*.c: some GtkType fixups.
12037
12038 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12039
12040         * gdk/win32/gdkproperty-win32.c
12041         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12042         were reversed.
12043
12044 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12045
12046         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12047         g_filename_to_utf8 to convert the font names Windows gives us from
12048         whatever is the default codepage to UTF-8.
12049         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12050         in the other direction.
12051
12052         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12053         error in debugging output.
12054
12055 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12056
12057         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12058         and height parameters to gdk_window_clear_area(). Not minus one.
12059
12060 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12061
12062         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12063         checks if the widget passed to gtk_drag_get_data() was not the
12064         dest widget.
12065
12066 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12067
12068         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12069         g_filename_from_utf8 functions (which were added a moment ago to
12070         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12071         size buffers.
12072
12073         gtk_file_selection_get_filename returns the filename in the C
12074         runtime encoding. It calls g_filename_from_utf8, but copies the
12075         returned string to a static buffer, which is returned. I think
12076         this is better than returning the result from g_filename_from_utf8
12077         directly, which would mean all apps that use it would have to free
12078         the return value. Or should this function care about this issue at
12079         all? Maybe a new function with clearly defined semantics.
12080
12081         * gtk/gtkfilesel.h: Add comment about
12082         gtk_file_selection_get_filename returning the filename in the C
12083         runtime's encoding.
12084
12085         * README.win32
12086         * gdk/gdk.def
12087         * gdk/makefile.{cygwin,msc}
12088         * gtk/gtk.def: Updates.
12089
12090         * gdk/gdkcursor-win32.c: Initialise refcount.
12091
12092 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12093
12094         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12095
12096 2000-01-30  Havoc Pennington  <hp@pobox.com>
12097
12098         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12099         destroy
12100
12101         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12102
12103         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12104         implemented in platform-specific code
12105
12106         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12107
12108         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12109         underscore in front
12110
12111         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12112         put an underscore in front
12113
12114         * gdk/gdkcursor.c: new file, implements
12115         gdk_cursor_ref/gdk_cursor_unref
12116
12117         * gdk/gdkcursor.h: Refcount GdkCursor
12118
12119         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12120
12121 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12122
12123         * gdk/gdkwindow.h
12124         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12125
12126 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12127
12128         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12129         structures to properly inherit from GtkWidget not GtkBin.
12130
12131 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12132
12133         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12134         (bug #5178 - Peter Wainright)
12135         
12136         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12137         so that it will be installed.
12138         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12139
12140 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12141
12142         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12143         for the GtkStyleClass vtable const.
12144
12145         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12146         take a const string argument like GtkTranslateFunc. This will
12147         require changes in use code.
12148
12149 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12150
12151         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12152         semantics (to mimic the X11 backend, which just calls XClearArea)
12153         is to check for zero width (and height), and in that case use the
12154         window's width minus x (height minus y). This fixes for instance
12155         some redraw problems with gtkclist, which were easily noticeable
12156         in the gtk file selection widget.
12157
12158         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12159         windows.
12160
12161 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12162
12163         * configure.in
12164         * gdk/Makefile.am
12165         * gdk/x11/Makefile.am
12166         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12167         (bug #5177).
12168         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12169         out later.
12170
12171 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12172
12173         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12174         WM_MOVE for iconified or invisible windows. This fixes various
12175         problems when minimising windows. Thanks to Bernd Herd.
12176
12177 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12178
12179         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12180         backend's draw_lines method, not draw_points.
12181
12182 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12183
12184         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12185         before Owen's reorganisation: Don't have queued_events and
12186         queued_tail statics in this file, but use gdk_queued_events and
12187         gdk_queued_tail. This makes exposure event compression work again.
12188
12189         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12190         seem to be needed?
12191
12192 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12193
12194         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12195         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12196         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12197         doesn't do anything.
12198
12199         * gdk/gdk.def: Add gdk_xid_table_insert.
12200
12201         * gdk/win32/gdkprivate-win32.h
12202         * gdk/win32/gdkevents-win32.c
12203         * gdk/win32/gdkinput-win32.c
12204         
12205         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12206         extension_events field in the GdkWindowWin32Data struct. Use only
12207         the extension_events field in GdkWindowPrivate. Previously one was
12208         set, and the other one tested, which broke tablet
12209         functionality. Thanks to Keishi Suenaga for pointing this out.
12210
12211 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12212
12213         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12214         When handling a single character (text length == 1), don't handle
12215         it as if it was UTF-8.
12216
12217 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12218
12219         * Makefile.am: Distribute README.win32.
12220         
12221         * gdk/Makefile.am
12222         * gdk/win32/Makefile.am: Distribute Win32 files.
12223
12224         * gdk/makefile.msc: New file.
12225
12226         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12227         after label).
12228
12229         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12230         gdk_error_code as GDKVAR, as they are referred outside GDK.
12231
12232         * gdk/win32/makefile.msc: Update.
12233
12234         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12235         tweaks. Check only if at least one of those Unicode subrange bits
12236         we care for is set. If no code page bits are set, guess (wildly)
12237         based on the charset.
12238
12239         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12240
12241         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12242         non-NULL.
12243
12244         * gtk/gtkdnd.c
12245         * gtk/gtklayout.c
12246         * gtk/gtkplug.c
12247         * gtk/gtkselection.c
12248         * gtk/gtksocket.c
12249         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12250         appropriate. There must be a cleaner way to handle this?
12251
12252         * gtk/gtkrc.c: Must include windows.h on Win32.
12253
12254         * gtk/testgtk.c: No need to include gdkx.h.
12255
12256         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12257
12258 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12259
12260         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12261         the rbearing is set to the same as the width, but this should be
12262         fixed.
12263
12264 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12265
12266         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12267         function. If Windows doesn't tell us what Unicode subranges a font
12268         covers, guesstimate based on the codepages it covers. This will
12269         hopefully help those Windows versions or fonts that don't give us
12270         any useful Unicode subrange information with GetTextCharsetInfo.
12271         Call this function in gdk_font_load_internal.
12272
12273         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12274         minor changes.
12275
12276 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12277
12278         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12279         New function, long needed.
12280
12281 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12282
12283         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12284         only_if_exists argument of gdk_atom_intern to
12285         bool.
12286
12287 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12288
12289         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12290         Fix two copy&paste errors.
12291
12292         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12293         win32 has changed.
12294
12295         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12296         GdkWin32SingleFont struct.
12297
12298         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12299         subranges of loaded fonts. Clear font signature first, in case
12300         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12301         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12302
12303         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12304         Unoffset clip region.
12305
12306 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12307
12308         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12309         event->any.window before calling filter functions.
12310
12311 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12312
12313         * gtk/gtkgamma.h: Adapt cast macros to standard.
12314
12315 [ Merges from 1.2 ]
12316
12317 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12318
12319         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12320         If translation does not include a '/', use entire
12321         translation instead of crashing.
12322
12323 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12324
12325         * docs/gtk_tut.sgml:
12326         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12327
12328 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12329
12330         * gtk/gtkselection.c (gtk_target_list_remove): Use
12331         g_list_remove_link, not g_list_remove.
12332
12333         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12334         
12335 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12336
12337         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12338         statement upon unselection (how the heck did that slip in?).
12339
12340 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12341
12342         * gtk/gtktext.c (gtk_text_freeze): 
12343         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12344         in frozen state (and aparently crashes). patch provided by Anders
12345         Melchiorsen <and@kampsax.dtu.dk>.
12346
12347 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12348
12349         * fix insensitive default/focus widget activation,
12350         reported by Matt Goodall <mgg@isotek.co.uk>.
12351
12352         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12353         (gtk_window_activate_default):
12354         (gtk_window_activate_focus):
12355         return handled=FALSE for actiavtion of insensitive default
12356         widgets. return handled=TRUE for activation of insensitive
12357         focus widgets. don't activate in either case.
12358
12359 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12360
12361         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12362         and $glib_cflags to match library order and in the
12363         theory that an old version of GLib is more likely to
12364         be in the include directory for X then vice-versa.
12365         (Bug #2776)
12366
12367 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12368
12369         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12370         to determine the locale for fontsets, not LC_MESSAGES;
12371         the user may want English messages with a handling
12372         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12373         will still be broken) (Bug #2891)
12374
12375 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12376
12377         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12378
12379 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12380
12381         * gtk/gtkrc.ko: Changed the Korean default fontset.
12382
12383 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12384
12385         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12386         where when scrolling to the left or top double exposes
12387         were done, causing major slowdowns.
12388
12389 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12390
12391         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12392         names to lowercase and alphanumeric, before looking
12393         them up.
12394
12395         * gtk/Makefile.am: Install codeset variant gtkrc files
12396         with normalized names.
12397
12398 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12399
12400         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12401         popup menus when the menu is already visible, but its parent
12402         is still hidden, (happens after tornoff window got hidden).
12403
12404 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12405
12406         * gtk/Makefile.am (install-data-local): Fix
12407         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12408         deleted, causing error messages on install.
12409
12410 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12411
12412         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12413         the handle as well, since we now sometimes ignore
12414         exposes on the handle while resizing.
12415
12416 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12417
12418         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12419         extra g_free introduced in one of the last one or two 
12420         commits.
12421
12422 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12423
12424         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12425         consistent, put each style that a gtkrc.* file creates
12426         in a unique namespace, remove old files before installing.
12427
12428 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12429
12430         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12431         gtk_rc_init is called multiple times. (Yes, people who
12432         do that have bugs in their code.)
12433
12434 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12435
12436         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12437         Remove it since it's generated by the Makefile anyway
12438
12439 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12440
12441         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12442         device->info.axes for core pointer.
12443
12444 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12445
12446         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12447         idle_id, to deal with obsolete, broken C libraries.
12448
12449 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12450
12451         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12452         allocation->x/y twice!
12453
12454         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12455         consistent with gtk_vscale_pos_trough().
12456
12457 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12458
12459         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12460         be queueing a resize on a toplevel container between
12461         the time we show it and when we map it. So, we need
12462         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12463         use GTK_WIDGET_DRAWABLE() for child windows.
12464
12465 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12466
12467         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12468         (fixes bug #2144)
12469
12470 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12471
12472         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12473         container DRAWABLE (instead of VISIBLE), so we don't queue
12474         resizes on non-toplevel containers.
12475
12476 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12477
12478         * gtk/gtkselection.[ch]: Make the data argument
12479         const guchar *.
12480
12481 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12482
12483         * gtk/gtkwindow.c: Try to behave sensibly if 
12484         the focus widget is the window itself. (Should
12485         we allow this at all?)
12486
12487 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12488
12489         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12490         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12491         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12492         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12493         in prototypes and implementations consistent (Tomas Ogren).
12494
12495         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12496         before the widget is unparented (reported by damon).
12497
12498         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12499         since we provide unsigned data anyways.
12500
12501 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12502
12503         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12504         the call to gtk_tooltips_layout_text() until later.
12505
12506         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12507         Call gtk_widget_ensure_style() before using the style.
12508
12509 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12510
12511         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12512         for old widgets that don't propagate draws to all
12513         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12514
12515 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12516
12517         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12518         for a redraw but just the widget that requested the resize.
12519
12520 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12521
12522         * gtk/gtkcontainer.c: added new widget level method
12523         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12524         reallocate_redraws : 1 to reflect the setting, exported this through
12525         the argument system as a boolean ::reallocate_redraws.
12526
12527         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12528         on the widget because the allocation changes, do so as well for
12529         widget->parent if the parent has reallocate_redraws set to TRUE.
12530         with that containers requesting reallocation redraws get automatically
12531         redrawn if their children changed allocation (this unfortunately
12532         affects also other children that didn't change allocation, but we
12533         cannot work around that before 1.3).
12534
12535 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12536
12537         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12538         _and_ height are >0 (not _or_).
12539
12540         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12541         instead of gtk_container_queue_resize(), which is a core gtk internal
12542         function (must have been on crack when i queued that).
12543
12544         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12545         we can check more reliably if we want to discard expose events.
12546         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12547         flag.
12548         
12549         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12550         we simply trust these events. for deciding whether to discard exposes,
12551         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12552         
12553 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12554
12555         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12556         queues of areas that are completely off screen.
12557
12558         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12559         logic for handleboxes.
12560
12561         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12562         check on width/height.
12563
12564 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12565
12566         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12567         we are fine with using $@ the way we do (if we actually encounter
12568         brokeness with $@ in VPATH builds because of additional path prefixes,
12569         we need to use $(@F) actually).
12570
12571 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12572
12573         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12574         short lived bugs, that would allow language bindings to do surgeries
12575         to our guts.
12576
12577 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12578
12579         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12580         where comparison was being done against an uninitialized
12581         value causing intermittant results depending on
12582         compiler flags. Also make it clearer that we aren't
12583         ever initializing the child as 0x0 (though this will
12584         be caught in gtk_widget_size_allocate())
12585
12586 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12587
12588         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12589         gtk_window_unset_transient_for() call after we do checks
12590         involving the old transient parent.
12591         [ From Lance Capser <lmc@cyberhighway.net> ]
12592
12593 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12594
12595         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12596         an empty file.
12597
12598 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12599
12600         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12601         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12602
12603 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12604
12605         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12606         `$@' is valid only in the build dir, not after we've done 
12607         `cd $srcdir'.  Also use `test -f' instead of less portable
12608         `test -e'.
12609
12610 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12611
12612         * gtk/gtktext.c (correct_cache_insert): Rewrite
12613          for simplicity, and hopefully correctness.
12614          (Fixes bug #1322, which was a segfault when
12615           on some insertions with the properties around
12616           the insertion set up just wrong.)
12617
12618         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12619          a "changed" signal, clamp the new value to the adjustment
12620          bounds to avoid segfaulting if someone tries to change
12621          the adjustment to a bogus value. (Bug #1795)
12622
12623 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12624
12625         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12626         for children, for toplevel windows handle them
12627         like delete_event.
12628
12629         * gtk/gtkplug.c: Add an unrealize handler so that
12630         we unref plug->socket_window when we are done
12631         with it.
12632
12633 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12634
12635         * gtk/gtktext.c (clear_area): Fix stupid signedness
12636          problem that was causing background to sometimes
12637          be misaligned.
12638
12639 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12640
12641         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12642         
12643         * gtk/gtkmenu.c (gtk_menu_position): Make
12644          sure we never position menus with negative x, y,
12645          since gtk_widget_set_uposition() can't handle that.
12646
12647         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12648          Modify the positioning code a bit so that we always
12649          put the top-left corner onscreen. (This is for
12650          UI reasons, gtk_menu_position() now takes care of
12651          gtk_widet_set_uposition() brokeness.)
12652
12653 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12654
12655         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12656
12657 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12658
12659         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12660           RC style that is passed in. The lack of the ref
12661           before was a bug. If people worked around this
12662           bug, this will introduce a slight memory leak
12663           in their code. The code should typically look like:
12664
12665             rc_style = gtk_rc_style_new ();
12666             [...]
12667             gtk_widget_modify_style (widget, rc_style);
12668             gtk_rc_style_unref (rc_style);
12669
12670         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12671           the style if it was already set.
12672
12673         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12674           style if it was set before.
12675
12676 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12677
12678         * gtk/testgtk.c (main): Add a check to see if we
12679           are being run from the correct directory and
12680           to quit nicely if we are not.
12681
12682         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12683           static.
12684
12685 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12686
12687         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12688
12689         * gtk/gtkwindow.c:
12690         queue resizes unconditionally (gtk_widget_queue_resize will figure
12691         what to do if the window is not realized).
12692         (gtk_window_move_resize): only recenter the window
12693         for GTK_WIN_POS_CENTER_ALWAYS.
12694         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12695         the same way as GTK_WIN_POS_CENTER.
12696
12697 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12698
12699         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12700         with (!(info->last_flags & GDK_HINT_POS)) instead of
12701         (!info->last_flags & GDK_HINT_POS).
12702
12703         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12704         new_height unconditionally, because we use these values even if
12705         !default_size_changed && !hints_changed.
12706         comented the (default_size_changed || hints_changed) case with
12707         respect to resize rejects from the window manager.
12708
12709         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12710         in the zvt condition hack, since this includes the window hints, set
12711         the hints after the handling_resize case.
12712
12713         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12714         window is initially shown with to the geometry.
12715
12716 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12717
12718         * gtk/gtkwindow.c (gtk_window_move_resize):
12719         s/size_changed/default_size_changed/g so i know what's
12720         really going on (frying brain on smaller flame now).
12721
12722 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12723
12724         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12725         we have size_changed upon handling_resize. this is a gross
12726         workaround for the broken zvt widget and should be removed in
12727         1.3 again (search for FIXME).
12728         Owen provided an accurate comment for this:
12729
12730         /* We could be here for two reasons
12731          *  1) We coincidentally got a resize while handling
12732          *     another resize.
12733          *  2) Our computation of size_changed was completely
12734          *     screwed up, probably because one of our children
12735          *     is broken. It's probably a zvt widget.
12736          *
12737          * For 1), we could just go ahead and ask for the
12738          * new size right now, but doing that for 2)
12739          * might well be fighting the user (and can even
12740          * trigger a loop). Since we really don't want to
12741          * do that, we requeue a resize in hopes that
12742          * by the time it gets handled, the child has seen
12743          * the light and is willing to go along with the
12744          * new size. (this happens for the zvt widget, since
12745          * the size_allocate() above will have stored the
12746          * requisition corresponding to the new size in the
12747          * zvt widget)
12748          *
12749          * This doesn't buy us anything for 1), but it shouldn't
12750          * hurt us too badly, since it is what would have
12751          * happened if we had gotten the configure event before
12752          * the new size had been set.
12753          */
12754
12755 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12756
12757         * gtk/gtkrc.c: deal properly with the fact that RC
12758           style lists may include rc styles more than once.
12759
12760         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12761           unused static function.
12762
12763         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12764           stack of directories of RC files currently being
12765           parsed and implicitely add them to pixmap path.
12766           
12767           This fixes a bug where the directory would get
12768           appended then overwritten by pixmap_path declarations.
12769
12770           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12771
12772         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12773           theme's exit function. (Patch from Peter Wainwright,
12774           bug #1454)
12775
12776         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12777           Add a destroy() handler to take care of removing
12778           group for menu item. (Fixes bug #1197)
12779
12780         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12781           in warning message.
12782
12783 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12784
12785         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12786         roundtrip to figure window's width and height, since we know that
12787         anyways from widget->allocation.
12788
12789 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12790
12791         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12792           the hints after we request the new size.
12793
12794 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12795
12796         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12797           GTK_WIDGET_REALIZED() assertion - we can compute the
12798           hints before we are realized.
12799
12800         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12801           hint changing so that we have a value of hints_changed
12802           when we decide whether to constrain the window size.
12803
12804         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
12805
12806         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
12807         change back to G_MAXINT.
12808
12809 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
12810
12811         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
12812         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
12813         contain uncluttered values.
12814         (gtk_window_compute_hints): simply assert that window is realized
12815         and that geometry_info is valid, since we rely on this anyways.
12816         (gtk_window_constrain_size): major cleanups to the code.
12817         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
12818         for the base size, instead of the minimums. use 32767 as max width
12819         and height (like in gtkwindow.c) instead of G_MAXINT.
12820
12821 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
12822
12823         * cleaned up the GtkContainer.need_resize flag handling mess, we
12824         only need to force resize requests when we were prematurely
12825         realized, or our widget tree was modified when we were temporarily
12826         hidden. handling these cases directly upon showing the window (i.e.
12827         while the GdkWindow is still unmapped) avoids the need to wait for
12828         a configure event response and therefore makes the GUI more snappier
12829         and avoids blank windows during the roundtrip.
12830
12831         * gtk/gtkwidget.c:
12832         (gtk_widget_hide): 
12833         (gtk_widget_show): don't queue resizes on toplevels, they know how
12834         to deal with matters.
12835
12836         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12837         flag directly for not visible resize containers and spare us unecessary
12838         signal emissions.
12839
12840         * gtk/gtkwindow.c:
12841         (gtk_window_realize): if we need to enforce premature size allocation,
12842         queue a container resize so we are correctly resized later on.
12843         (gtk_window_init):
12844         (gtk_window_size_request):
12845         don't freak around with the ->need_resize flag,
12846         gtk_container_queue_resize() will care about that.
12847         (gtk_window_show):
12848         handle initial resizing issues here, we can handle matters better in
12849         this place, especially since we know that our GdkWindow is still
12850         unmapped.
12851         (gtk_window_move_resize):
12852         don't care about ->need_resize at all.
12853         handle size changes properly that occoured while we waited for a
12854         configure event.
12855
12856 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12857
12858         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12859         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12860         Move the hint setting code from gtk_widget_set_uposition
12861         to here; set the hints so that we respect any previously
12862         set geometry hints.
12863
12864         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12865         change the window hints here or move the window here,
12866         let that happen in gtk_window_move_resize().
12867
12868 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12869
12870         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12871         to already queued resizes (and therefore redraws) on a widget, check
12872         its anchestry as well.
12873
12874         * gtk/gtkcontainer.c:
12875         (gtk_container_queue_resize): clear resize widgets for resize
12876         containers before aborting prematurely. this is especially important
12877         for toplevels which may need imemdiate processing or their resize
12878         handler to be queued.
12879         (gtk_container_dequeue_resize_handler): added new internal function for
12880         gtkwindow.c.
12881
12882         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12883         configure event, take possible changes in window position into account
12884         as well.
12885         if we request a new window size, queue up a resize handler that will
12886         last until the configure event response arrives.
12887         combined the ->need_resize case (initial show) with the general size
12888         (hints) changed case and added even more comments.
12889         if !auto_shrink, only revert to the old allocation if the new size
12890         is smaller than the current allocation.
12891
12892 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12893
12894         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12895                            gtk_window_set_geometry_hints
12896                            gtk_window_set_default_size):
12897         When hints are set, queue a resize so that the hints will
12898         be eventually reset on the toplevel.
12899
12900         * gtk/gtkwindow.c (gtk_window_show): Use
12901         gtk_window_compute_default_size(). Clear the need_resize flag
12902         on the initail map so that we don't unnecessarily trigger the
12903         resize code.
12904
12905         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12906         into separate functions. Compare the hints we are setting
12907         with what we set last time so that we can accurately
12908         tell when we need to reset the hints.
12909
12910         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12911         function to figure out the size from requisition
12912         and default_size.
12913
12914         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12915         from fvwm to constrain a size to the geometry hints.
12916
12917         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12918         to compare two sets of geometry hints.
12919
12920         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12921         from gtk_window_set_hints(), just compute the hints,
12922         don't set them.
12923
12924         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12925         code from gtk_window_move_resize() to separate function,
12926         rationalize a bit.
12927
12928 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12929
12930         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12931         structure into a new private structure.
12932
12933         * gtkrc.c: Split GtkRcStyle into public/private.
12934         In the private part, add a list of pointers to the
12935         RcStyle lists this RcStyle participates in.
12936
12937         * gtkrc.c: When a RcStyle is free, remove all
12938         lists referencing it from the 
12939         realized_style_ht hash, and free those lists.
12940         
12941         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12942         gtk_rc_init(), since that adds the default styles
12943         to the list of parsed RC files again.
12944
12945         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12946         
12947 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12948
12949         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12950         checks that ensure that a widget's allocation is at least 1 in width
12951         and height. (GNOME note: this doesn't affect old panel code anymore,
12952         because GtkSocket will request width and height of at least 1 since
12953         Fri Jul 23).
12954
12955         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12956         allocated yet (happens if the user realizes the window prematurely),
12957         size request and allocate it.
12958         (gtk_window_size_allocate): guard against guint underflows.
12959
12960 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12961
12962         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12963         in gtk_built_sources, so gtk.defs gets built prior to all other
12964         sources.
12965
12966 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12967
12968         * gtk/Makefile.am:
12969         invoke indent on gtkmarshal.*. 
12970         rewrote source generation rules, use COPYING as oldest source tag for
12971         a piggyback rule to generate all sources from (don't touch it ;).
12972         major cleanups, strip spaces on build rules for GNU Make.
12973
12974         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12975         source and target files from commandline arguments. don't invoke indent.
12976
12977 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12978
12979         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12980         notebook after switch to avoid drawing problems.
12981         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12982         
12983         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12984         show them instead. 
12985         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12986
12987 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12988
12989         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12990         notebook after switch to avoid drawing problems.
12991         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12992         
12993         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12994         show them instead. 
12995         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12996
12997 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12998
12999         * gtk/gtkwindow.c:
13000         we use window->need_resize from configure_event now, to indicate that
13001         the gtkwindow should keep its allocation (e.g. because the user resized
13002         the window through window manager handles). resize_count is now reliably
13003         used to figure whether we got the allocation we requested from the
13004         window manager.
13005         configure events get queued as resizes now, the real stuff (size
13006         computation and allocation) now only goes on in gtk_window_move_resize().
13007         GtkWindow's requisition now contains its *real* requisition (like all
13008         other widgets), *not* taking usize into account.
13009         geometry_info->last_{width|height} is now updated from set_hints() only
13010         so it always contains the last hints we set for the window manager.
13011         made some event handlers return TRUE instead of FALSE.
13012         the overall code should be much more straight forward now, and the
13013         significant code portions are accompanied by comments now.
13014         (gtk_window_set_hints):
13015         removed requisition argument and made it
13016         fetch the requisition through gtk_widget_get_child_requisition.
13017         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13018         does that now.
13019         (gtk_window_show):
13020         ensure that the widget is realized before calling 
13021         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13022         ensure that we got properly size requested and allocated before
13023         realization.
13024         (gtk_window_configure_event):
13025         ignore plain window moves, or reallocate the widget tree through the
13026         resize queue otherwise.
13027         (gtk_window_move_resize):
13028         mostly rewrote this function to figure window manager hints more
13029         reliably, coalesce window moves and resizes to reduce configure events
13030         and do actuall size allocations.
13031
13032 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13033
13034         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13035         that have a resize pending, because a redraw is already queued for them.
13036
13037         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13038         hack to clear resize_widgets.
13039
13040         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13041         for resize containers prior to size allocation. (this is also a bit
13042         ugly, but avoids side effects for stopped emissions and is thus more
13043         reliable).
13044         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13045
13046         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13047         function from gtk_tooltips_expose, as we connect to ::expose_event
13048         *and* ::draw now.
13049
13050 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13051
13052         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13053         checks.
13054         (gtk_target_list_unref): Likewise.
13055
13056         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13057
13058 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13059
13060         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13061         guard against division by zero. (Fixes bug #1339)
13062
13063 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13064
13065         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13066         Prevent the trivial leak of information of allowing
13067         word motion when the entry is not visible.
13068
13069 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13070
13071         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13072         modality to error dialog as well as confirmation dialogs.
13073         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13074
13075 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13076
13077         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13078         tree->view_lines.
13079         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13080
13081         * gtk/Makefile.am (install-data-local): Solaris apparently
13082         has various troubles with ln -f; use rm first instead.
13083         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13084
13085 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13086
13087         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13088         use `cp' followed by `rm' (the `rm' was already there).
13089
13090 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13091         
13092         * configure.in: Fix autoconf warnings about cross compilation by
13093         trying to provide sane defaults for AC_TRY_RUN.
13094         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13095         put them into $(srcdir) when generated. Also add a dependency of
13096         gtksignal.h on gtkmarshal.h for -j builds. 
13097         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13098
13099 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13100
13101         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13102         GDK_THREADS_{LEAVE,ENTER} pair.
13103         (From Paul Fisher <pnfisher@redhat.com>)
13104
13105 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13106
13107         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13108         width and height are always >0 (owen).
13109
13110 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13111
13112         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13113         change that assured that a widget's allocated with and height are
13114         always >1, since this breaks *buggy* panel code. unfortunately this
13115         back-breaks the gimp's color selector.
13116
13117         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13118         allocation is always >0 in width and height, before sending the
13119         configure event; this is a *gross* hack to get the gimp back to work.
13120         
13121         * marked both cases with TODO-1.3
13122
13123 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13124
13125         * gtk/gtktext.c: Don't display wrap indicators when
13126         text is not editable and word wrap is on.
13127
13128 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13129
13130         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13131         option menus here as they are not derived from menu shell, assure that
13132         the option menu has a menu we can add items to.
13133
13134 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13135
13136         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13137         width/height to (gint) before calculations and check against < 0 to
13138         avoid guint wraparounds.
13139
13140 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13141
13142         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13143         width and height is never zero. sanity check both dimensions against
13144         32767 and issue a warning if the allocation is greater than that.
13145
13146 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13147
13148         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13149         to g_main_pending() as well.
13150
13151 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13152
13153         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13154         call to g_main_iteration() - since that will regrab
13155         GTK+ lock to process events.
13156
13157 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13158
13159         * gtk/gtkwindow.c
13160         - Regularize with the rest of GTK+ by making widget->requisition
13161           not reflect the set_usize()
13162         - Always recompute geometry hints, then check if they
13163           changed before sending them to the X server. The
13164           previous checks for changes would fail in a number
13165           of circumstances. 
13166
13167 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13168
13169         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13170
13171 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13172
13173         * gtk/gtkdnd.c:
13174         - Code cleanups
13175         - Instantaneously update on modifier key presses
13176         - Allow cancellation of the drag with Escape.
13177
13178 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13179
13180         * gtk/testgtk.c (create_handle_box): Set the policy
13181         to auto_shrink - otherwise the appearance is rather
13182         strange when flipping between horizontal and vertical.
13183
13184 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13185
13186         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13187         (gtk_window_set_default_size): don't change a value if it's < 0.
13188         queue a resize.
13189
13190 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13191
13192         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13193
13194 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13195
13196         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13197         add an extra "/" when concating "/" + filename.
13198         (From Matt Grossman <mattg@oz.net>)
13199
13200 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13201
13202         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13203         for fg_gc if we set it for drawing pixmap.
13204
13205 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13206
13207         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13208         
13209         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13210         already set, call old engine's destroy function and
13211         unref the old engine.
13212
13213 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13214
13215         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13216
13217 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13218
13219         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13220
13221 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13222
13223         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13224         expand behaviour changed.
13225
13226         * gtk/gtklabel.c (gtk_label_set_pattern):
13227         (gtk_label_set_justify):
13228         (gtk_label_set_line_wrap):
13229         don't bother invoking queue_clear, the reallocation does
13230         that for us, always free_words so the upcoming resize will
13231         relayout the label's contents.
13232
13233 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13234
13235         * applied argument implementation patches from Elena Devdariani
13236         <elena@cogent.ca>.
13237
13238         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13239         ::space_style, ::relief
13240         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13241         * gtk/gtkpreview.c: ::expand
13242         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13243         * gtk/gtknotebook.c: ::homogeneous
13244         * gtk/gtklabel.c: ::wrap
13245         * gtk/gtklist.c: ::selection_mode
13246         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13247         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13248         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13249         * gtk/gtkclist.c: ::sort_type
13250         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13251         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13252
13253 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13256         comment.
13257
13258 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13259
13260         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13261         counting right when we have to attach a new style
13262         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13263
13264         * gtk/gtkstyle.c: Documented the refcounting
13265         peculularities of gtk_style_attach.
13266
13267 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13268
13269         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13270         window types.
13271
13272         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13273         of GTK_TOPLEVEL for creating the window.
13274
13275 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13276
13277         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13278         the last argument (reported by Per Winkvist).
13279         
13280 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13281
13282         Fixes for invisible XOR lines (Frank Loemker
13283         <floemker@TechFak.Uni-Bielefeld.DE>)
13284         
13285         * gtk/gtkclist.c (gtk_clist_realize): Always use
13286         a non-zero pixel for GDK_XOR.
13287
13288         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13289         Use GDK_INVERT instead of GDK_XOR.
13290
13291 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13292
13293         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13294         signals if h/voffsets differ from adjustment values.
13295         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13296
13297 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13298
13299         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13300         ::selection-done emissions up to the topmost menu shell.
13301
13302 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13303
13304         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13305         the user data on the window before destroying it.
13306
13307         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13308         unrealize handler to take care of destroying 
13309         notebook->panel properly. 
13310         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13311
13312         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13313         of g_new and g_realloc to stop memory leak. (Actually,
13314         we could just use g_realloc(), but I'm not 100% sure
13315         that is portable).
13316         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13317
13318 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13319
13320         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13321
13322         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13323         for fontsets.
13324
13325         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13326         with bin/button confusion.
13327
13328 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13329
13330         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13331         and show how preselection of radio items is done.
13332
13333 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13334
13335         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13336         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13337         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13338         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13339         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13340         * gtk/gtktable.c (gtk_table_attach): 
13341         * gtk/gtklist.c (gtk_list_insert_items): 
13342         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13343         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13344         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13345         * gtk/gtkbin.c (gtk_bin_add): 
13346         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13347         * gtk/gtkfixed.c (gtk_fixed_put): 
13348         * gtk/gtklayout.c (gtk_layout_put):
13349         general fixups to container_add logic. always realize child if
13350         child->parent is realized, only map the child and queue a resize
13351         if child and child->parent are both visible.
13352
13353 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13354
13355         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13356         instead of gtk_container_foreach to walk and unrealize children, so
13357         composite children get also unrealized.
13358         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13359         (gtk_widget_map): assert that the widget is visible (basic constrain).
13360         (gtk_widget_real_map): assert that the widget is realized (basic
13361         constrain).
13362
13363 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13364
13365         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13366
13367 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13368
13369         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13370         file for iso-8859-2 locales.
13371
13372         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13373
13374 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13375
13376         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13377          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13378          Remove some suspicious and useless lines. 
13379
13380 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13381
13382         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13383         width,height = 0, 0 to mean - here to edge of window,
13384         instead of -1, -1, since the former is all we support.
13385
13386 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13387
13388         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13389         when removing from quit_functions list.
13390
13391 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13392
13393         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13394
13395 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13396
13397         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13398          When redrawing characters on non-visible entry, use appropriate
13399          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13400
13401 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13402
13403         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13404         from drag coordinates.
13405         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13406         use drag_dest_cell.
13407
13408         * gtk/gtktree (drag_dest_cell)
13409         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13410         (Bug #1129)
13411
13412 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13413
13414         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13415         translate_* fields.
13416         (gtk_item_factory_finalize): invoke translate_notify independant from
13417         translate_data.
13418         (gtk_item_factory_set_translate_func): likewise.
13419         (gtk_item_factory_destroy): only remove ifactory pointer from those
13420         widgets that belong to us (stupid me).
13421
13422 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13423
13424         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13425         rc_style list when lookup succeeeds.
13426
13427 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13428
13429         * gtk/gtkctree.c (resync_selection): 
13430         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13431         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13432         bug.
13433
13434 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13435
13436         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13437         Add some missing GDK_THREADS_ENTER()/LEAVE around
13438         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13439
13440 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13441
13442         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13443         rather than emit_by_name.
13444
13445         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13446         on the widget across multiple signal emissions.
13447         (gtk_editable_delete_text): same here.
13448         (gtk_editable_class_init): set widget_class->activate_signal after
13449         editable_signals[ACTIVATE] has been created.
13450
13451 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13452
13453         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13454         position here prematurely -- we might not have the
13455         right ->min_position and ->max_position yet.
13456
13457 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13458
13459         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13460         Add error traps so if the other end of the connection
13461         dies, we survive.
13462
13463         * gtk/gtkselection.c (gtk_selection_notify): Clean
13464         up properly when selection property retrieval fails.
13465         
13466         * gtk/gtkselection.c (gtk_selection_request): Correctly
13467         reject SelectionRequest notifies where the handler
13468         returns no data.
13469
13470 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13471
13472         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13473         when we've previously highlighted.
13474
13475         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13476         emit two "drag_leave" signals for Motif drops.
13477
13478         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13479         back the correct status messages when dropping from
13480         Motif onto a proxy window that is rejecting the
13481         drop.
13482
13483 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13484
13485         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13486         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13487         to compare two argument values. added gtk_arg_to_valueloc() to set a
13488         variable from an arg through its location (pointer).
13489
13490         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13491         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13492         as gfloat*, uchars are collected as guchar*, ints are collected as
13493         gint*, etc...
13494
13495 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13496
13497         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13498         Include <string.h> instead of <strings.h>.
13499
13500         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13501         (actually, a lot more duplicate includes occur if
13502          you trace through the sequence of #include's)
13503         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13504         
13505 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13506
13507         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13508         gtk-a-higuti-990322-[0-3]
13509
13510         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13511         that was causing -DX_LOCALE not to work.
13512
13513         * gtk/gtkrc.c (gtk_rc_init):
13514         X_LOCALE will never have LC_MESSAGES defined
13515
13516 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13517
13518         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13519         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13520
13521         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13522         left/right as well (gtk-michael-980726-0.patch.gz).
13523
13524         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13525         for pointer values, use gchar instead of char. fixed uline allocation
13526         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13527         chunks instead of G_ALLOC_ONLY.
13528         (gtk_label_size_request): always alter requisition as passed and leave
13529         widget->requisition alone.
13530         (gtk_label_set_text): allow NULL strings.
13531         (gtk_label_new): likewise.
13532
13533 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13534
13535         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13536
13537 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13538
13539         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13540         *and* mapped (i.e. drawable).
13541         (gtk_bin_expose): only send exposes to drawable children.
13542
13543         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13544         (gtk_box_expose): only send exposes to drawable children.
13545
13546         * gtk/gtkhscale.c (gtk_hscale_draw): 
13547         * gtk/gtkvscale.c (gtk_vscale_draw):
13548         hm, this is an ugly one. we first compute the size of our trough area
13549         here (window relative) and then check intersection with the draw_area
13550         which is parent relative because we're a NO_WINDOW widget, so we need
13551         to offset the trough area by allocation.x and allocation.y before the
13552         check. (this must not be done for the background area though, since
13553         that's already computed parent relative).
13554
13555 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13556
13557         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13558         unrealize title buttons.
13559
13560 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13561
13562         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13563         (gtk_clist_column_title_active): 
13564         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13565
13566         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13567         zero initialize event, removed superfluous gdk_window_get_pointer call
13568
13569         * gtk/gtklist.c (gtk_list_vertical_timeout)
13570         (gtk_list_horizontal_timeout): removed superfluous
13571         gdk_window_get_pointer call
13572
13573 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13574
13575         * plugging problems reported by "Bruce Mitchener, Jr."
13576         <bruce@puremagic.com> due to a purify session.
13577
13578         * gtk/gtkstyle.c:
13579         (gtk_style_ref): 
13580         (gtk_style_unref): assert ref_count to be > 0.
13581
13582         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13583         the requisition.
13584         (gtk_clist_set_shift): likewise.
13585
13586         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13587         adjustments.
13588
13589         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13590         event before sending it and set send_event to TRUE (which needs to
13591         be done for *all* synthesized events).
13592         (gtk_list_vertical_timeout): likewise.
13593
13594         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13595         leaks.
13596
13597         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13598         to TRUE when synthesizing events.
13599
13600 [ *** end of merges from 1.2 *** ]      
13601         
13602 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13603
13604         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13605         (or copied from gdkconfig.h.win32 on Win32, sigh).
13606
13607         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13608
13609         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13610
13611         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13612
13613         * gdk/gdkconfig.h.win32: New file.
13614
13615         * gdk/win32/makefile.cygwin: Build just a static archive here.
13616
13617         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13618         for the DLL from the static archive built above.
13619
13620         * gdk/gdk.def: Moved here from the win32 subdirectory.
13621
13622         * gdk/win32/*: Adapt for the changed private struct organisation.
13623
13624         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13625
13626 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13627
13628         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13629         for wheel mice (buttons 4 and 5).
13630
13631 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13632
13633         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13634         drawables use just the pixel field in the foreground and
13635         background GdkColor of the GdkGC.
13636
13637         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13638         GdkColors containing uninitialized (red,green,blue) fields, and
13639         just the pixel field filled in, and furthermore in the
13640         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13641         It thus turns out that we really don't need to have the full
13642         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13643         it later to have just the pixel values.
13644
13645 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13646
13647         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13648
13649 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13650
13651         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13652         New question on GtkLabel background colors.
13653
13654         * docs/gtk_tut.sgml:
13655           - Correct the example code callback
13656             function definitions.
13657           - Update the gtkdial example code, from Frans van Schaik.
13658           - Update setselection.c to current API.
13659
13660         * examples/Makefile examples/*/*.c: Update to code
13661         listed in tutorial.
13662
13663 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13664
13665         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13666         subrange table (from the "Developing International Software for
13667         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13668         block... Get the loaded font's charset correctly.
13669
13670         (Note that this, and the other *-win32.c files, still really are
13671         the old ones, the win32 subdirectory is not ready for compilation
13672         yet after the reorg.)
13673
13674 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13675
13676         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13677         check.
13678
13679 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13680
13681         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13682         on results of XQueryDeviceState().
13683
13684 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13685
13686         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13687         we need to accesss only ->children. We need an accessor
13688         for the children.
13689
13690         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13691         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13692         to get rid of gdkx.h include.
13693         
13694         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13695         and random references to 'None'.
13696
13697         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13698         Get rid of unused #include <gdk/gdkx.h>
13699
13700         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13701         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13702         gdkconfig.h.
13703
13704 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13705
13706         * gdk/win32/gdkdraw.c
13707         * gdk/win32/gdkfont.c
13708         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13709         following yesterday's changes. (Unrelated to Owen's reorg.)
13710
13711 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13712
13713         * gdk/x11/gdkinput-gxi.c: Add missing include,
13714           fix GdkWindowPrivate => GdkDrawablePrivate.
13715
13716         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13717
13718         * gdk/x11/Makefile.am (xinput_sources): Add missing
13719         backslash to fix building with --with-xinput=none
13720
13721 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13722
13723         Move all X specific code into the x11/ directory.
13724         Aside from shuffling things around, did the following:
13725
13726        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13727          gdk_arg_context_* - a simple argument parsing system
13728          in the style of popt.
13729
13730        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13731          gdk/x11/gdkprivate-x11.h:
13732          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13733          add ->klass and ->klass_data fields. The klass_data
13734          field points to an auxilliary structure that is
13735          windowing system dependent.
13736
13737        * gdk/gdkfont.c: Make most of the measurement functions
13738          simply wrappers around gdk_text_extents().
13739
13740        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13741          _gdk_font_strlen() function that hides the weird
13742          behavior in gtk+-1.[02] where a string is interpreted
13743          differently for 8-bit and 16-bit fonts.
13744
13745        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13746          to store common code for synthesizing double/triple
13747          press events.
13748         
13749        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13750          Make all the function that modify an existing GC
13751          simply wrappers around gdk_gc_set_values().
13752          
13753        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13754          for throwing out later.
13755
13756        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13757          GdkImagePrivate and GdkColormapPrivate to have a
13758          windowing system dependent part (GdkFontPrivateX etc.)
13759          that "derives" from the system-independent part.
13760
13761        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13762          Got rid of the included-source-files for XInput in
13763          favor of automake conditionals. (Which didn't exist
13764          when XInput support was originally added.)
13765
13766        * gdk/gdkrgb.c: Remove the visual id from the debugging
13767          statements since that is X11 specific; print out
13768          type/depth info instead.
13769          
13770
13771 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13772
13773         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13774         loading duplicates of hashed fonts.
13775
13776         * gdk/gdk.c (gdk_keysym_convert_case): rename
13777         gdk_XConvertCase to gdk_keysym_convert_case, allow
13778         results to be NULL in the GTK+ style.
13779
13780         * gdk/gdkcompat.h: Started compatibility header
13781         for renames.
13782
13783 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13784
13785         * gdk/win32/gdkprivate.h: New font private structures, related to
13786         fontsets.
13787
13788         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13789         gdk_font_list_free(). On X11, will just be wrappers to
13790         XListFonts() and XFreeFontNames(). On Win32, the code previously
13791         in gtkfontsel.c is now here.
13792
13793         New function gdk_font_xlfd_create(). On X11 will get the FONT
13794         property of the font (for GDK_FONT_FONTs), or call
13795         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13796         builds a XLFD style name from the font information in the LOGFONT
13797         struct(s).
13798
13799         New function gdk_font_xlfd_free(), which correspondingly frees the
13800         string returned by gdk_font_xlfd_create().
13801
13802         Implement fontsets on Win32. Add a function that iterates over a
13803         wide char string and calls a callback function for each substring
13804         of wide chars from the same Unicode subrange (and thus probably
13805         available in the same real font).
13806
13807         Improve the XLFD emulation a bit.
13808
13809         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
13810
13811         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
13812         Beta3, WM_IME_CHAR messages don't seem to contain the composed
13813         multi-byte char as with the Active IMM on Win9x. Oh well, handle
13814         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
13815         ImmGetCompositionStringW() to get the composed Unicode chars.
13816
13817         * gdk/win32/gdkgc.c
13818         * gdk/win32/gdkdraw.c: Changes needed because of the font private
13819         struct changes.
13820
13821         * gdk/win32/gdk.def: Add the new functions.
13822
13823 1999-11-04  Tor Lillqvist  <tml@iki.fi>
13824
13825         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
13826         get the Platform SDK to get <dimm.h>.
13827
13828         * gdk/win32/gdkevents.c: More event handling fixes and
13829         simplification. Never generate motion events with is_hint true. We
13830         used to do that on bogus grounds earlier. Windows sends
13831         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13832         moved, ignore these.
13833
13834         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13835
13836         * gdk/win32/gdkglobals.c
13837         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13838         the TrackMouseEvent function, and use it.
13839
13840         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13841         char before calling WideCharToMultiByte in order to get a string
13842         for the window title.
13843
13844         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13845
13846         * gdk/win32/gdk.def: Remove obsolete functions.
13847
13848         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13849         /nodefaultlib and /defaultlib switches.
13850
13851         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13852
13853 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13854
13855         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13856         EuroSign).
13857
13858         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13859         same type as GdkWChar, especially on Win32.
13860
13861         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13862
13863         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13864         before passing to Windows GDI for drawing etc. Convert to the
13865         system default codepage before passing to Windows as window
13866         titles.
13867
13868         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13869         support changing input locale on the fly.
13870
13871         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13872         on-the-fly changes. Convert incoming characters from the current
13873         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13874         on the current input language. Use keysym<->Unicode mapping tables
13875         and functions borrowed from xterm sources.
13876
13877         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13878         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13879         Manager) if available. IMEs and the Active IMM are available under
13880         the disguise of Chinese, Korean and Japanese support for IE and
13881         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13882         support is present in all editions (as long as you install it).
13883
13884         Call DispatchMessage from gdk_events_queue() (and thus
13885         gdk_WindowProc()), instead of duplicating the code in
13886         gdk_WindowProc().
13887
13888         Reworked the grab handling and propagation code, factored out
13889         duplicated code snippets into separate functions. Other cleanups,
13890         too.
13891
13892         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13893         the <dimm.h> header describing the Active IMM.
13894
13895         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13896         just do the same as for "single" fonts.
13897
13898         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13899         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13900         the new keysyms from gdkkeysyms.h.
13901
13902         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13903         fontset, so that gtkentry uses wide characters.
13904
13905         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13906         GTk+'s system directory "gtk+", not "gtk".
13907
13908 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13909
13910         * docs/gtkfaq.sgml: FAQ update
13911
13912 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13913
13914         * gdk/win32/gdkprivate.h: Add more font private data.
13915
13916         * gdk/win32/gdkfont.c
13917         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13918         fonts and strings. Now works much better. You still have to
13919         have a correct font selected, though. No fontset emulation yet.
13920
13921 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13922
13923         * gtk/maketypes.awk: Use G_OS_WIN32.
13924
13925         * gtk/gtk.def: Add some missing entry points. Also some non-public
13926         ones, but PyGTK porter claims to need them.
13927
13928         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13929         built-in type generation.
13930
13931 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13932
13933         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13934         GDK_FONT_FONT fonts (which is all we have for now, we don't
13935         emulate fontsets). The X11 version uses plain XDrawString in that
13936         case, too. The string passed to gdk_draw_text_wc seems to be in
13937         fact (at least, when used by gtkentry and gtktext) either in a
13938         single-byte charset, or a DBCS. Not Unicode.
13939
13940         This fixes the problem in gtkfontsel, where even if you had
13941         selected a font with a non-Latin1 charset (windows-greek, for
13942         instance), the preview still used Latin-1 glyphs.
13943
13944         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13945         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13946         (gdk_font_load): Recognize the demibold etc weights, even if we
13947         don't have the corresponding constants in the headers.
13948         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13949         version. Should save font resources a bit, when we don't have
13950         multiple HFONTs for the same font.
13951
13952         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13953         version.
13954
13955 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13956
13957         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13958         X values
13959
13960 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13961
13962         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13963         layout support (as mentioned on
13964         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13965
13966 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13967
13968         * gtk/fnmatch.c
13969         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13970
13971 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13972
13973         * configure.in (ALL_LINGUAS): Added Galician (gl)
13974
13975 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13976
13977         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13978
13979         * gdk/win32/gdkcompat.c: New file, actually provide an
13980         implementation for the deprecated functions. (Just temporarily.)
13981
13982         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13983
13984         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13985
13986         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13987
13988 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13989
13990         * configure.in: Added "uk" to ALL_LINGUAS.
13991         
13992 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13993
13994         * configure.in: correct checking for BeOS check
13995
13996         * gdk/gdktypes.h
13997         * gtk/fnmatch.c
13998         * gtk/gtkfilesel.c
13999         * gtk/gtkitemfactory.c
14000         * gtk/gtkmain.[ch]
14001         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14002
14003 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14004
14005         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14006         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14007         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14008         by Bulgarian). 
14009
14010 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14011
14012         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14013         Fix a reference to window_private->destroyed.   
14014
14015         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14016         (ugly) setting of an internal GdkWindow member to use
14017         a _slightly_ cleaner macro.
14018
14019         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14020         GdkDrawablePrivate and GdkWindowPrivate.
14021         Add extra macros for accessing GDK_DRAWABLE_ components.
14022
14023         * *.[ch]: Massive adjustments for the above, use the
14024         new macros in a lot of places.
14025
14026 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14027
14028         * gdk/gdktypes.h: Make GdkDrawable the base type,
14029         not GdkWindow.
14030
14031 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14032
14033         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14034
14035 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14036
14037         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14038
14039 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14040
14041         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14042         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14043
14044         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14045
14046         * docs/gtk-config.1: Now autogenerated.
14047         * docs/Changes-1.4.txt: started
14048         
14049 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14050
14051         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14052         to #ifdef also here.
14053
14054         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14055         Owen did to the X11 backend.
14056
14057         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14058         ScrollWindowEx when blitting inside a window, it can't be correct
14059         in the general case.
14060
14061         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14062         WM_GETMINMAXINFO is easier.
14063
14064         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14065         depth equal to the bitspixel value, not the visual's depth.
14066
14067         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14068         to 24 even if the bitspixel value is 32.
14069
14070         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14071         need to check for depth==32 when bpp==32, depth will always be 24.
14072
14073 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14074
14075         * docs/Changes-1.4.txt: Started
14076         
14077         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14078
14079         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14080         
14081         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14082         into C file.
14083         
14084         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14085         header to gdkinputprivate.h.
14086
14087         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14088         unused since before 1.2.
14089
14090 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14091
14092         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14093         expand possible hex escapes in the font family (put there by
14094         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14095         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14096         On Win32, add hex escapes here, too.
14097
14098 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14099
14100         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14101         to #ifdef GDK_WINDOWING_X11.
14102
14103 [ Merges from gtk-1-2 ]
14104
14105 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14106
14107         * configure.in: fixed "GNU Make" check to pass with new make version
14108         3.77.95.
14109
14110 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14111
14112         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14113         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14114         AM_PATH_GTK() macros don't get confused by the -pre1.
14115
14116 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14117
14118         * configure.in (REBUILD): Change check for perl5
14119           to check explicitely for v >= 5.002. (5.001
14120           does not work with our scripts.)
14121
14122 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14123
14124         * configure.in: evaluate $PERL for the perl version check. added
14125         --disable-rebuilds to give the user an option to completely disable
14126         any source autogeneration rules.
14127
14128 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14129
14130         * configure.in: evaluate $ac_make when checking for GNU Make.
14131
14132 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14133
14134         * docs/Makefile.am: added generation.txt.
14135
14136         * Makefile.am: require automake 1.4, build README from README.in and
14137         INSTALL from INSTALL.in in dist-hook.
14138         
14139         * README.in:
14140         * INSTALL.in: new files to autogenerate README and INSTALL from.
14141
14142         * configure.in: figure whether we have GNU Make
14143
14144         * docs/generation.txt: minor additions/corrections.
14145
14146 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14147
14148         * docs/gtkfaq.sgml: FAQ Update
14149
14150 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14151         
14152         * configure.in: Fix autoconf warnings about cross compilation by
14153         trying to provide sane defaults for AC_TRY_RUN.
14154
14155 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14156
14157         * ltconfig
14158         * ltmain.sh: upgrade to libtool 1.3.3
14159
14160 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14161
14162         * INSTALL: Indicate that the --with-glib= configure
14163         time flag is unsupported.
14164
14165 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14166
14167         * docs/generation.txt: Added a file that gives
14168         documenation about the autogeneration process for
14169         various autogenerated files.
14170         
14171 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14172
14173         * configure.in (LIBS): Look for libgmodule in the
14174         right location.
14175
14176 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14177
14178         * docs/gtk_tut.sgml: Removed references to
14179         code examples in my directory on gtk.org as
14180         they should all be in the tutorial now.
14181
14182         * docs/gtk_tut.sgml: Added sources for dial-test
14183         and scribble-xinput programs that were previously
14184         missing.
14185
14186 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14187
14188         * TODO: Added entry about menu keyboard navigation, removed
14189         some finished items.
14190
14191 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14192
14193         * acinclude.m4: Standardize on func_dgettext
14194         not func_gettext, so that the checks for dgettext
14195         actually are paid attention to.
14196
14197 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14198
14199         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14200         directly, rather than repeating the checks for
14201         gettext.
14202
14203         * INSTALL: Added information about gettext and
14204         NLS support.
14205
14206         * acinclude.m4 (LIBM): Check for dgettext, not
14207         just gettext. This should hopefully fix things wrt
14208         systems with old versions of GNU gettext installed.
14209
14210 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14211
14212         * configure.in (LIBS): Look for libgmodule in the
14213         right location.
14214
14215 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14216
14217         * autogen.sh: add --enable-maintainer-mode
14218
14219         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14220
14221 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14222
14223         * docs/gtk-config.1.in:
14224           docs/Makefile.am:
14225           configure.in: gtk-config is now generated.
14226
14227         * docs/gtk-config.1: Removed, now generated.
14228
14229 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14230
14231         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14232         handle CreateNotify itself, still put out a debuging message for
14233         --gdk-debug=events. made the ReparentNotify debugging message more
14234         verbose.
14235         wrap xcoords translation for ConfigureEvents into an error trap,
14236         a destroy event may already be pending, and in that case, the
14237         actuall coordinate values are not at all critical.
14238
14239 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14240
14241         * gdk/gdkcc.c: Stop leaking the color_hash all over
14242         the place. Simplify and improve the logic.
14243
14244 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14245
14246         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14247         for prototypes and function implementations consistent (reported
14248         by Tomas Ogren).
14249
14250 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14251
14252         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14253         send_event set in debugging output.
14254         (gdk_compress_exposures): default initialize the event so we don't
14255         operate on bogus values (namely send_event).
14256
14257 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14258
14259         * gdk/gdkwindow.c: When we receive an unexpected
14260         destroy notify on one of our windows, don't just
14261         warn about it, also mark our windows as destroyed.
14262
14263 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14264
14265         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14266           name => font and name => fontset hashes. The 
14267           name => fontset hash is a _big_ win since we
14268           weren't previously caching fontsets at all and loading
14269           fontsets is expensive. The name => font hash
14270           is less of a win, but it does save us from doing
14271           repeated XQueryFont calls on the same font.
14272
14273         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14274           list so we can remove font/fontset from hash.
14275
14276 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14277
14278         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14279           and slightly confusing test. [ XInternAtom (,,TRUE)
14280           will never return None ].
14281
14282 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14283
14284         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14285           gdk/gdkwindow.c (gdk_window_set_hints):
14286
14287         Don't omit setting the properties if flags == 0 -
14288         there may be an existing set of properties there
14289         already. (Very old bug. Would it be better to
14290         delete the property instead?)
14291
14292         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14293           spelling error in comment.
14294
14295 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14296
14297         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14298           to avoid stomping over gdk_error_warnings.
14299
14300         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14301           as (bits_per_pixel + 7) / 8. This gives the same
14302           result as before for multiples of 8, but actually
14303           a "reasonable" value for 1bit or 4bit displays.
14304
14305 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14306
14307         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14308         GNU Make.
14309
14310 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14311
14312         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14313         discarding configure events.
14314
14315 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14316
14317         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14318         refcount is greater than zero.
14319
14320         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14321
14322         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14323
14324         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14325
14326         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14327
14328 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14329
14330         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14331         that format 32 => sizeof(item) == 4. It really is
14332         sizeof(long).
14333
14334 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14335
14336         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14337         core dump at all on X IO errors, only core dump
14338         if --enable-debug for X errors.
14339
14340 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14341
14342         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14343         unknown window:" message. disabled ConfigureNotify discarding code,
14344         because it led to events being processed out of order.
14345
14346 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14347
14348         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14349
14350         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14351         we export this function, supress error warnings and don't reset the
14352         error code in the first half of this function.
14353
14354         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14355         code (instead of just -1) so gdk_error_trap_pop() reveals something
14356         actually informative about the error that happened.
14357
14358         * gdk/*.c:
14359         don't rely on gdk_error_code being -1 if an error occoured, but just
14360         gdk_error_code != 0.
14361
14362 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14363
14364         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14365         pointer *before* invoking the filter function, so we at least don't
14366         crash if a filter is removed that is currently executed. window filters
14367         *really* need to be made truely reentrant at some point.
14368
14369 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14370
14371         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14372         PropertyNotify debug messages.
14373
14374 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14375         
14376         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14377         
14378         * gdk/gdkim.c: Fix cut-and-paste errors for 
14379         x/y and PreeditAttributes/StatusAttributes.
14380
14381 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14382
14383         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14384         G_MAXINT to 2^16 to alleviate overflow problems in
14385         various window managers.
14386
14387 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14388
14389         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14390         for fontsets.
14391
14392 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14393
14394         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14395         Initialize size_hints.x and size_hints.y because kwm
14396         brokenly pays attention to them.
14397         (Bug #1181 -  Lars Heete <hel@admin.de>)
14398
14399 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14400
14401         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14402         return value of gdk_list_visuals(). 
14403         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14404
14405 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14406
14407         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14408         XSetIMValues to (void *) when comparing to NULL, to workaround
14409         the problem of some compilers barfing since older X headers don't
14410         have the prototype for it.
14411
14412 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14413
14414         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14415         for pseudocolor where colormap->colors was double
14416         allocated.
14417
14418         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14419         color value in the hash table with the pixel filled
14420         in so when we do later hash table lookups, the color
14421         value is correct.
14422         
14423 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14424
14425         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14426         making the call
14427
14428 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14429
14430         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14431         pointed out by Morten Welinder <terra@diku.dk>.
14432
14433 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14434
14435         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14436           default filter from the list
14437
14438 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14439
14440         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14441           default filter from the list
14442
14443 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14444
14445         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14446
14447         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14448         g_strdup_printf instead of calcing the length separately
14449
14450 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14451
14452         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14453         that we don't do in many other places. (Fixing duplicate 
14454         #include of config.h)
14455
14456         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14457         Otherwise, #ifndef XINPUT_NONE check in the latter
14458         doesn't work. (Bug #546)
14459
14460 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14461
14462         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14463         "None" case insensitive.
14464
14465 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14466
14467         * gdk/gdkselection.c: 
14468         Add error traps so if the other end of the connection
14469         dies, we survive.
14470
14471 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14472
14473         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14474         dest_xid field into two fields - one for the window
14475         to send in messages, one to indicate the last looked
14476         up window for caching purposes. This is needed, so
14477         that Leave messages get the correct window.
14478
14479 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14480
14481         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14482         Fix warning created by people mucking around
14483         with the gsource API.
14484
14485         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14486         Change mapping between GIOCondition and GdkInputCondition
14487         to match the way the Linux kernel does it. This should
14488         fix problems where closed pipes were no longer signalling
14489         GDK_INPUT_READ on systems with a native poll().
14490
14491 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14492
14493         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14494         explicitly for the string "None" - it is in the XPM
14495         spec and some servers treat unknown colors in odd ways
14496         (like asking the user!)
14497
14498 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14499
14500         * gdk/gdkevents.c: made "->" into a "." of previous change so
14501         it compiles
14502
14503 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14504
14505         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14506         window field of the event structure before calling
14507         user filters.
14508
14509 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14510
14511         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14512         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14513
14514 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14515
14516         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14517         intermediate text property - prevents major memory
14518         leak when gdk_use_mb.
14519         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14520
14521 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14522
14523         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14524         gtk-a-higuti-990322-[0-3]
14525
14526         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14527         sizeof(wchar_t) != sizeof (GdkWChar)
14528
14529         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14530         that was causing -DX_LOCALE not to work.
14531
14532         * gtk/gtkrc.c (gtk_rc_init):
14533         X_LOCALE will never have LC_MESSAGES defined
14534
14535         * gdk/gdk.c (gdk_init_check):
14536         Remove --xim-preedit and --xim-status from argv properly.
14537
14538         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14539         that the client window is present on the X server
14540         before we pass it to the input method.
14541
14542 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14543
14544         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14545         if --display is specified on the command line, than
14546         the drag window will not be created on that display.
14547         
14548 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14549
14550         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14551         lookups with only_if_exists == TRUE were inserting
14552         bogus values into the atom cache.
14553
14554 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14555
14556         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14557         then reset it to NULL.
14558
14559         * gdk/gdkcolor.c:
14560         (gdk_colors_free): 
14561         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14562         key for g_hash_table_remove() in both functions, this prevents us
14563         from accessing possibly uninitialized portions of a GdkColor structure
14564         where we are only interested in its pixel value.
14565
14566 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14567
14568         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14569         font hash table, if we have a GdkFontPrivate entry for this font
14570         already, simply increment its reference count, provided by Olaf Dietsche
14571         <olaf.dietsche+list.gtk@netcologne.de>.
14572
14573 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14574
14575         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14576         just to be sure.
14577
14578         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14579         unused variables, leftovers from the X11 version.
14580
14581         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14582
14583         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14584         downcase fields on X11.
14585
14586 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14587         
14588         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14589         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14590
14591 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14592
14593         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14594
14595         * gtk/makefile.msc: Correct path to libintl.
14596
14597         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14598         use of gint vs. int, and gint vs. gboolean in headers and
14599         definitions. Use GtkType for the *_get_type functions. Note that
14600         these changes preserve binary compatibility.
14601
14602         * gdk/gdk.c
14603         * gdk/win32/gdk.c
14604         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14605
14606         * gtk/gtkmain.c
14607         * gtk/gtkclist.c
14608         * gtk/gtkmenufactory.c
14609         * gtk/gtknotebook.c
14610         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14611         vs. gboolean.
14612
14613         * gtk/gtkcolorsel.[ch]
14614         * gtk/gtkcombo.[ch]
14615         * gtk/gtkdrawingarea.[ch]
14616         * gtk/gtkgamma.[ch]
14617         * gtk/gtkhandlebox.[ch]
14618         * gtk/gtkhpaned.[ch]
14619         * gtk/gtkhruler.[ch]
14620         * gtk/gtkplug.[ch]
14621         * gtk/gtkpreview.[ch]
14622         * gtk/gtkruler.[ch]
14623         * gtk/gtksocket.[ch]
14624         * gtk/gtkstatusbar.[ch]
14625         * gtk/gtktoolbar.[ch]
14626         * gtk/gtkvbbox.[ch]
14627         * gtk/gtkvpaned.[ch]
14628         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14629         functions.
14630
14631         * gtk/gtkgamma.h: Fix bug, missing () in call of
14632         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14633
14634 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14635
14636         * gdk/gdkcolor.c (gdk_colormap_new)
14637         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14638         colormap->colors was allocated twice.
14639
14640         * gdk/win32/gdk.c: Remove some unused stuff.
14641
14642         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14643         colormap.
14644
14645         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14646         * gtk/gtklabel.h (gtk_label_get_type)
14647         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14648         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14649         in a couple of places, not guint.
14650
14651 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14652
14653         * configure.in,po/et.po: added Estonian language file
14654
14655 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14656
14657         * configure.in,po/da.po: added Danish file
14658
14659 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14660
14661         * docs/gtkfaq.sgml: Minor FAQ Update
14662
14663 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14664
14665         * docs/gtkfaq.sgml: FAQ update
14666
14667 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14668
14669         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14670         way to get window contents continually refreshed while resizing. I
14671         didn't like the effects myself, so it's not on by default.
14672
14673         * gdk/win32/gdkprivate.h: New flag variable
14674         gdk_event_func_from_window_proc, FALSE by default.
14675
14676         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14677         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14678         are passed --gdk-event-func-from-window-proc.
14679
14680         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14681         and we have am event_func, call it instead of enqueing the event.
14682
14683 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14684
14685         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14686         Kelley: Set expose_count in GdkEventExposes correctly.
14687
14688         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14689         MULTIPLE_WINDOW_CLASSES).
14690
14691         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14692         for bug in NT, apparently NT *does* draw the end pixel, too, in
14693         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14694
14695 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14696
14697         Improvements by Hans Breuer: 
14698
14699         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14700
14701         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14702         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14703         window contents while dragging" is turned on. Allocate at least
14704         one unique class for every GdkWindowType. If support for single
14705         window-specific icons is ever needed (eg. Dialog specific), every
14706         such window should get its own class.
14707
14708 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14709
14710         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14711         error that caused crashes.
14712
14713 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14714
14715         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14716         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14717         bugs when for instance part of the window was outside the
14718         display. Thanks to Philippe Colantoni for finding and fixing this.
14719
14720 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14721
14722         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14723         endpoint calculations which were totally wrong. (A little RTFMing
14724         helps a lot ;-)
14725
14726         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14727         from a separate directory, not from gettext, because of licensing
14728         issues (we want to use the LGPL version).
14729
14730         * README.win32: Mention the intl from glibc vs from gettext issue.
14731
14732 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14733
14734         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14735         in the key event handling: Now AltGr chars work again. Also,
14736         now Alt-digits are passed up as well as Control-digits.
14737         Pass keypad plus and minus as normal plus and minus.
14738
14739 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14740
14741         * docs/gtkfaq.sgml: FAQ Update
14742
14743 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14744
14745         * README.win32
14746         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14747         the Wintab SDK.
14748
14749         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14750         OK, but getting closer. Guard against bogus tilt data from Wacom
14751         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14752         enable easier building without Wintab.
14753
14754         * gdk/win32/gdkinput.h
14755         * gdk/win32/gdkevents.c 
14756         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14757         
14758         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14759         code. As we have just one visual on Win32, no sense to have it in a
14760         table, and no need for the hash table.
14761
14762         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14763         better on white background.
14764
14765 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14766
14767         * README.win32: Update gcc build instructions. Mention gettext is
14768         GPL.
14769
14770         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14771         supported cursor size with GetSystemMetrics.
14772
14773         * gdk/win32/gdkfont.c
14774         * gtk/gtkfontsel.c: Guard against some font weight and charset
14775         symbols being undefined (in mingw32 headers).
14776
14777         * gdk/win32/makefile.cygwin
14778         * gtk/makefile.cygwin
14779         * gtk/gtkthemes.c: No longer need to have differently named
14780         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14781
14782 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14783
14784         * docs/gtkfaq.sgml: Long awaited FAQ update.
14785
14786 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14787
14788         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14789         it. Obscure bit manipulation needed.
14790
14791         * gdk/win32/gdkevents.c: Logging.
14792         
14793         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14794         style (file name include compiler name) for theme engines.
14795
14796 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14797
14798         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14799
14800         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14801         events. The key.string wasn't zero-terminated, still we strdup'ed
14802         it in gdk_event_copy(). Synthesize crossing events for button
14803         events before possible propagation.
14804
14805         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
14806
14807         * gdk/win32/makefile.cygwin
14808         * gtk/makefile.cygwin: Use new DLL naming style for the
14809         GCC-compiled ones.
14810
14811         * gdk/win32/makefile.msc
14812         * gtk/makefile.msc: Cosmetics mostly.
14813
14814         * gtk/gtk.def: Add missing entry points.
14815
14816         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
14817
14818 1999-07-09  Tor Lillqvist  <tml@iki.fi>
14819
14820         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
14821         or height is zero. Don't print a warning if Pie or Arc fails, they
14822         always fail (?) for very narrow ellipses.
14823
14824         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
14825         the part or the destination window corresponding to source area
14826         outside of the source drawable's boundary.
14827
14828         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14829         anything if less than two points.
14830
14831         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14832         return NULL. Gtk cut-and-paste inside a single program works
14833         better this way. (It always gets the clipboard contents from
14834         Windows, not from its own copy, which is cleared anyway. I can't
14835         say I fully understand what happens... Emulating the X selection
14836         and property stuff is a bit of a mess.)
14837
14838         * gdk/win32/gdkevents.c
14839         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14840
14841         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14842         that never got deleted). Revamp gdk_region_shrink.
14843
14844         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14845         after use.
14846
14847         * gtk/gtk.def: Add some missing entry points.
14848
14849         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14850         component.
14851
14852 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14853
14854         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14855         Control-digits specially.
14856
14857 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14858
14859         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14860
14861 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14862
14863         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14864         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14865         finding this.)
14866
14867 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14868
14869         * gtk+.spec.in: Corrected some typos in files section.
14870         
14871 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14872
14873         * README.win32: Mention using GNU gettext.
14874         * config.h.win32: Enable NLS stuff.
14875         * gtk/makefile.msc: Use GNU gettext.
14876         * gdk/win32/gdkdnd.c: Minor header reorg.
14877         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14878         cosmetics.
14879         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14880         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14881
14882 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14883
14884         * acinclude.m4
14885         * config.guess
14886         * config.status
14887         * ltconfig
14888         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14889
14890 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14891
14892         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14893         SafeAdjustWindowRectEx. Don't override all calls to
14894         AdjustWindowRectEx by it, but use it only in two places: When
14895         creating a new top-level window and when moving a top-level
14896         window.
14897
14898         Use screen coordinate rectangle, not client rectangle, in
14899         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14900         when we try to place a window so that the decoration (mainly,
14901         title bar) isn't visible.
14902
14903         These changes fix the bug that showed up for instance as the
14904         GIMP's saved top-level windows moving right and down (by an amount
14905         equal to the window decoration) for each session. This bug showed
14906         up also in testgtk's "Saved Position".
14907
14908         gdk_window_resize also redone a bit.
14909
14910 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14911
14912         * gtk/testgtkrc: Add (commented out) Windows-style theme
14913         include line.
14914
14915         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14916
14917 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14918
14919         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14920         gdkx.h to a gdk subdirectory, so that applications can include
14921         these with <gdk/*.h> without trouble.
14922
14923         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14924         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14925         have their bitmap destroyed.
14926
14927         * gdk/win32/gdk.def: Add gdk_root_parent.
14928
14929 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14930
14931         * configure.in
14932           gtk-config.in
14933           ltconfig
14934           ltmain.sh     
14935           gtk/Makefile.am: changes to compile nicely (with xlib) 
14936           on BeOS
14937
14938 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14939
14940         * acinclude.m4
14941         * config.guess
14942         * config.sub
14943         * ltconfig
14944         * ltmain.sh: upgrade to libtool 1.3
14945
14946 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14947
14948         * gtk/gtkclist.c:
14949         * gtk/gtkctree.c: merges from gtk-1-2
14950
14951 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14952
14953         Support added for building using a GNU toolchain on Win32,
14954         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14955
14956         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14957         * config.h.win32: Changes for gcc.
14958         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14959         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14960         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14961         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14962         Protect shl stuff unavaiilable with mingw32 headers.
14963         * gdk/win32/gdkevents.c: Fix typo.
14964         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14965         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14966         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14967         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14968         the mingw32 headers.
14969         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14970         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14971         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14972         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14973         Test for NATIVE_WIN32, not _MSC_VER.
14974         * gtk/gtkmain.c: No use warning about developer version on Win32,
14975         there aren't any non-developer versions anyhow.
14976         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14977         * gtk/makefile.msc: Use pthread from another directory. Minor other
14978         changes. 
14979
14980 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14981
14982         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14983           default filter from the list
14984
14985 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14986
14987         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14988          when gtk_widget_grab_default() is called for a widget that
14989          is not within a GtkWindow.
14990
14991 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14992
14993         * docs/gtk_tut.sgml, examples/clist.c: use a
14994           scrolled window in the clist example. Minor
14995           tutorial fixes.
14996
14997 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14998
14999         * docs/gtk_tut.sgml: Style check from David King
15000           <dking@youvegotmail.net>
15001
15002 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15003
15004         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15005         compile with unknown value of GDK_WINDOWING
15006
15007 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15008
15009         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15010         after the rule is fired.
15011         (install-exec-local): Install gdkconfig.h only if the contents are
15012         different from the currently installed gdkconfig.h.
15013
15014 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15015
15016         * gdk/Makefile.am (configexecincludedir): Rename from 
15017         configincludedir so that gdkconfig.h will be installed 
15018         as part of `make install-exec'. 
15019
15020 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15021
15022         * acinclude.m4
15023         * config.guess
15024         * config.sub
15025         * ltconfig
15026         * ltmain.sh: upgrade to libtool 1.2f
15027
15028         * autogen.sh: libtool is not required to autogen gtk+
15029
15030         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15031         needed)
15032
15033 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15034
15035         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15036         declaring gdk variables exported/imported from the DLL. New image
15037         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15038         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15039         GDK_DRAG_PROTO_OLE2.
15040
15041         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15042         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15043         declared only for the Win32 version, but could be in the X11
15044         version as well. (Needed for a Xlib-less gdk_imlib.)
15045         gdk_color_hash should have only one parameter. Declare
15046         gdk_threads_mutex with GDKVAR.
15047         
15048         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15049         just one parameter.
15050
15051         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15052         per pixel, not bits.
15053
15054         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15055         Fetch bpp (which means bits-per-pixel here) from another place on
15056         Win32. Accept also depth==32 (which we might get on Win32) with
15057         bpp==32.
15058
15059         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15060         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15061         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15062         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15063         in the backend-dependent directory, not in the common gdk
15064         directory.
15065
15066         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15067         headers.
15068
15069 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15070
15071         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15072         want to use the Gtk+ devel version (which is true, and yes - even i am
15073         currently working with the 1.2.x branch). so everyone reading this, you
15074         probably want to issue
15075         cvs checkout -r glib-1-2 glib
15076         and
15077         cvs checkout -r gtk-1-2 gtk+
15078         as your next two comands.
15079
15080 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15081
15082         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15083         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15084
15085         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15086         file. strongly deprecated the GTK_HAVE_* macros, we provide
15087         GTK_CHECK_VERSION() for people that need to check for certain
15088         Gtk+ versions.
15089
15090         * gtk/gtkcompat.h: removed this from CVS.
15091         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15092         idea right from the start, it just didn't seem like that back then.
15093
15094 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15095
15096         * merges from gtk-1-2:
15097
15098 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15099
15100         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15101         item factory class has been created.
15102         (gtk_item_factory_parse_rc): likewise.
15103
15104         * gtk/gtkmenu.c:
15105         keep proper references for old_active_menu_item.
15106         (gtk_menu_reparent): unset the usize of the new parent,
15107         so the menu can sanely be size requested and we don't get nasty screen
15108         artefacts upon next reparentation.
15109         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15110         enter notify. only synthesize enter notifies if the pointer really is
15111         inside the event window.
15112         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15113         (gtk_menu_popup): move the background setting stuff into
15114         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15115
15116         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15117         gtk_menu_shell_select_item() to select the new item.
15118         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15119         do the right thing for deselection as well.
15120
15121 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15122
15123         * gtk/gtkwidget.[hc]:
15124         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15125         are locked.
15126
15127         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15128         existing accelerators if the widget's accelerators are locked.
15129
15130 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15131
15132         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15133
15134         * gtk/gtkmenu.c: truely forward key press and key release events to
15135         the menu widget from the toplevel or tearoff window. we can't simply
15136         connect to that, we need to stop further processing of the events as
15137         well.
15138
15139 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15140
15141         * gtk/gtkmenu.c:
15142         (gtk_menu_key_press): pass event->keyval, event->state to
15143         gtk_accelerator_valid, instead of event->keyval twice.
15144         refuse to install single letter accelerators for menus that use
15145         single letter shortcuts.
15146
15147         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15148         gtk_menu_ensure_uline_accel_group().
15149
15150         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15151         which will always return an uline accel group, made
15152         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15153         yet created.
15154
15155 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15156
15157         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15158
15159         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15160         Leave button sensitive, trap  button_press, button_release,
15161         motion_notify, enter_notify and leave_notify events instead.
15162         (gtk_clist_column_title_active): disconnect event handler.
15163         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15164         Guillaume Laurent <glaurent@worldnet.fr>
15165
15166 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15167
15168         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15169         width/height mixups.
15170
15171         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15172         if needed.
15173
15174 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15175
15176         * gtk/testgtk.c (create_item_factory): unref the item factory after
15177         window's destruction.
15178
15179         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15180         count on the menu shell around the menu item's activation, since the
15181         signal emission may cause menu shell destruction.
15182
15183         * gtk/gtkitemfactory.c:
15184         the previous code leaked one accel group per menu. we use
15185         gtk_menu_get_uline_accel_group() now to fix that, and with that
15186         also create the underline accelerator group of the menus only if
15187         required (i.e. an underline accelerator has been specified).
15188         (gtk_item_factory_construct):
15189         (gtk_item_factory_create_item): removed code that would create an
15190         extra accel group for the menu (and leak references).
15191         (gtk_item_factory_create_item): adapted the underline accelerator
15192         installation code to properly feature gtk_menu_get_uline_accel_group().
15193
15194         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15195         menu->accel_group, this may return NULL if the accelerator group
15196         hasn't been set yet.
15197         added gtk_menu_get_uline_accel_group() to retrive the underline
15198         accelerator group of the menu, this will be created on demand
15199         and proper care is taken about its reference count.
15200
15201         * gtk/gtkitemfactory.h:
15202         * gtk/gtkitemfactory.c:
15203         dumped the approach of keeping a widgets by action list on the
15204         factory since the factory<->widget destroy negotiation didn't work
15205         and would be hard to get going at all. instead we keep a list of
15206         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15207         persistant throughout a program's life time).
15208         also, i removed the static const gchar *key_* variables, and made
15209         them inline strings (they weren't actually used anyways).
15210         (gtk_item_factory_add_item): update ifactory->items.
15211         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15212         the item factory pointer from the remaining ifactory widgets).
15213         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15214         list to find the widget.
15215         (gtk_item_factory_get_item): new function that works around
15216         gtk_item_factory_get_widget() limitations, this function will only
15217         return menu items, even for <Branch> entries.
15218
15219 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15220
15221         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15222         font hash table, if we have a GdkFontPrivate entry for this font
15223         already, simply increment its reference count, provided by Olaf Dietsche
15224         <olaf.dietsche+list.gtk@netcologne.de>.
15225
15226         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15227         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15228
15229 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15230
15231         * gtk/gtkcontainer.c:
15232         (gtk_container_add_with_args):
15233         (gtk_container_addv):
15234         (gtk_container_add): before adding a child to a conatiner, make sure
15235         it is (default) constructed, this is neccessary because under certain
15236         circumstances the child will get relized and mapped immediatedly, in
15237         which case it has to be constructed already.
15238
15239 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15240
15241         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15242         values > 1 as TRUE also.
15243
15244 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15245
15246         * README.win32: New file.
15247                 
15248         * configure.in: Check for lstat.
15249
15250         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15251         completeness.
15252
15253         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15254
15255         * gtk/gtk.def: Removed CRs.
15256
15257         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15258         ..\gdk\win32).
15259
15260         * gdk/win32/makefile.msc: Correct upwards relative paths.
15261         
15262 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15263
15264         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15265           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15266           it was connecting a void function to expose_event and the int
15267           returning function to the draw signal
15268
15269 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15270
15271         * configure.in:
15272         Use correct path to libgmodule.la when ref'ing uninstalled copy
15273         of glib.  (Already in stable branch, Bug #417)
15274
15275 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15276
15277         Win32 merge and general portability stuff:
15278                 
15279         * acconfig.h,configure.in: Check for <sys/time.h>.
15280
15281         * gdk/win32: New directory (actually, been there for a while).
15282         
15283         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15284         NATIVE_WIN32, and use these. Always case fold on Win32. No
15285         backslashed escapes on native Win32.
15286
15287         * gtk/{gtk.def,makefile.msc}: New files.
15288
15289         * gtk/Makefile.am: Add above new files.
15290         
15291         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15292         instead of <strings.h>.
15293
15294         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15295         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15296         <unistd.h> appropriately.
15297
15298         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15299         Use ABS() (from <glib.h>) instead of abs().
15300         
15301         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15302         of gtk (and thus glib) headers, so that WIN32 will be
15303         defined. With MS C, include <direct.h> for mkdir prototype.
15304
15305         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15306         some casts, needed by MS C.
15307
15308         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15309         implemented).
15310
15311         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15312         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15313         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15314
15315         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15316                 
15317         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15318         the event is not a hint, or its window is not the slider. Needed
15319         on Win32, at least.
15320
15321         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15322         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15323         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15324         a subdirectory of the Windows directory as gtk system
15325         configuration directory.
15326
15327         * gtk/gtkselection.c: No chunks on Win32.
15328
15329         * gtk/gtksocket.c: Not implemented on Win32.
15330
15331         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15332
15333         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15334
15335         * gtk/maketypes.awk: Declare variables with a macro that expands to
15336         necessary export/import magic in the case of Win32.
15337                 
15338         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15339
15340 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15341
15342         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15343         since those were meant only for gdki18n.h.  
15344         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15345         for widechar tests.
15346         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15347
15348 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15349
15350         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15351         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15352
15353         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15354         installed) to CFLAGS.
15355
15356         * gdk/Makefile.am: Add rules for gdkconfig.h.
15357
15358         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15359         APIs.
15360
15361         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15362         gdkx.h anyway when compiling for X11.
15363         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15364         general): Merge in Win32 version.
15365         
15366         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15367         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15368         expansion (if we don't have HAVE_PWD_H), allow for drive
15369         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15370         included code from Craig Setera's port to Win32 (the one that uses
15371         X11, and the cygwin dll), even if it probably will be abandoned.
15372
15373         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15374         the user entered one herself.  This way one can complete *.h and
15375         don't get matches on any .help files, for instance.
15376         
15377 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15378
15379         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15380         font hash table, if we have a GdkFontPrivate entry for this font
15381         already, simply increment its reference count, provided by Olaf Dietsche
15382         <olaf.dietsche+list.gtk@netcologne.de>.
15383
15384         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15385         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15386
15387 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15388
15389         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15390         the number of calls to gdk_draw_point() (and thus to X) by
15391         clipping the points by hand.
15392
15393         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15394         the clip parameter.
15395         (gtk_handle_box_paint): Only paint the handle if the expose area
15396         intersects it.
15397
15398 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15399
15400         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15401
15402 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15403
15404         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15405         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15406
15407 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15408
15409         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15410          textmode (O_TEXT) for OS/2 version.
15411
15412 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15413
15414         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15415         GtkSpinButton, "input" and "output", to make the output more flexible.
15416         The user has to provide a mapping between adjustment->value and the
15417         output string (and vice versa, if the spin button is editable). 
15418         See testgtk for examples.
15419
15420 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15421
15422         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15423         new one.
15424         
15425         * configure.in: set gtk+ version to 1.3.0.