]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
Forgot the ChangeLog entry.
[~andy/gtk] / ChangeLog.pre-2-4
1 2001-04-24  Alexander Larsson  <alexl@redhat.com>
2
3         * gtk/gtkclist.[ch]:
4         * gtk/gtkctree.c:
5         When there is a row highlighted for D'n'D it must alse
6         be painted hightlighted on exposes. Otherwise exposes from
7         the icon being dragged will mess up the hightlight.
8
9         * gtk/gtkfontsel.c:
10         Don't recenter selected font when exposing the font family
11         clist. This means you can now actually scroll the font family
12         list.
13
14         * gtk/gtknotebook.c:
15         Fix focus movement on scrolling tabs that are placed on the left
16         and right.
17
18 2001-04-21  Havoc Pennington  <hp@pobox.com>
19
20         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
21         empty/invisible lines.
22
23         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
24         (gtk_text_iter_set_visible_line_index): new functions to set
25         indexes excluding invisible text
26
27         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
28         index
29
30         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
31         (gtk_text_iter_get_visible_line_offset): new functions to 
32         get indexes excluding invisible text
33
34         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
35         bunch of extra padding that served no purpose
36
37         * gtk/gtkdialog.c: Make all the spacings configurable via style
38         properties, for chubbiness configuration in themes
39
40         * tests/testtext.c: fix path to the immodules.
41         
42 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
43
44         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
45         got munched by #endif.
46
47         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
48
49         * gtk/gtktreeview.c: Refactored code to clean up a number of
50         events.
51
52         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
53         values to make consistent with other functions.  Spotted by Jeff
54         Franks <jcf@tpg.com.au>.
55
56         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
57         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
58
59 2001-04-23  Sven Neumann  <sven@gimp.org>
60
61         * gtk/Makefile.am
62         * gtk/gtkplug.c
63         * gtk/gtksocket.c: on request of Owen, reverted my last change 
64         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
65
66 2001-04-23  Sven Neumann  <sven@gimp.org>
67
68         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
69         compile for non-X11 targets again
70
71 2001-04-20  Alexander Larsson  <alexl@redhat.com>
72
73         * gtk/gtkcolorsel.[ch]:
74         API Change. Take GdkColor arguments instead of gdouble *.
75         Leave the old gtk_color_selection_set_color for compatibility,
76         but marked deprecated.
77         Do correct rounding when converting RGB <-> HSV.
78         
79         * gtk/gtkcolorseldialog.c:
80         * tests/testgtk.c:
81         Use new GtkColorSelection API.
82
83         * gtk/gtkhsv.c:
84         Fix problem selecting colors in triangle when Hue is 330.
85         Fix some black dots around the HSB triangle.
86         
87         * gtk/gtkfilesel.c:
88         return FALSE from the focus_in_event handler to fix focus problems.
89
90 2001-04-18  Havoc Pennington  <hp@redhat.com>
91
92         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
93         set, so keybindings are configurable    
94         (gtk_window_activate_default): Change to activate the focus widget
95         instead if there's a focus widget, to be consistent with the
96         behavior that previously existed in key_press_event
97
98 2001-04-18  Havoc Pennington  <hp@redhat.com>
99
100         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
101
102 2001-04-18  Havoc Pennington  <hp@redhat.com>
103
104         Close bug #50615:
105         
106         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
107         the layout
108
109         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
110
111         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
112
113         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
114         
115         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
116         to blue for base, in addition to bg
117         
118 2001-04-18  Havoc Pennington  <hp@redhat.com>
119
120         * tests/testgtk.c (create_image): allow shrinking the image window
121         to test that we clip to allocation.
122
123         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
124         #9845
125
126         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
127
128 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
129
130         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
131         mode on shm segments to 0600. We'll see who complains.
132
133         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
134         _gdk_windowing_window_destroy() AFTER recursing through
135         children.
136
137         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
138         testsocket_child on X.
139
140         * tests/testsocket[_child].c: Fix uses of
141         gtk_window_get_default_accel_group().
142
143         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
144
145         * gdk/gdkimage.c: (gdk_image_get):
146         Deal with the possibility that XGetImage() might return NULL.
147         Allocate the GdkImagePrivate structure only after XGetImage()
148         succeeds in order not to dereference a NULL ximage pointer.  This
149         prevents a core dump when XGetImage() fails - which is unlikely,
150         but can happen due to race conditions accessing the geometries of
151         drawables.  An x error will still be triggered, but the gdk image
152         wrapper at least wont seg fault.
153         
154 2001-04-18  Havoc Pennington  <hp@redhat.com>
155
156         * gtk/gtkimage.c: fix to properly queue resizes when the image is
157         set
158
159         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
160         if the insertion point isn't editable
161
162         * demos/gtk-demo/images.c: Added a GtkImage demo
163
164         * demos/gtk-demo/drawingarea.c: drawing area demo
165         
166         * demos/gtk-demo/menus.c (create_menu): cleanups
167
168 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
169
170         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
171           gdk/x11/gdkevents-x11.c: Introduce an extra child
172         of toplevel windows that serves to hold the focus to
173         avoid events being delivered to embedded windows.
174
175         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
176         some extra variables to clean up code and reduce the
177         number of casts.
178
179         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
180         guint for 1 bit bit fields, not gboolean.
181
182 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
183
184         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
185         not TRUE. (Fixes #52925)
186
187 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
188
189         * Released 1.3.4
190
191         * NEWS: Updated
192
193         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
194         use GTK_TYPE_ENUM.
195
196 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
197
198         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
199
200         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
201         names to compatibility #defines so docs work.
202
203         * gtk/gtkenums.h: Remove GtkMenuFactoryType
204
205         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
206
207         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
208
209         * tests/testgtkrc: No magenta cursors, please.
210
211         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
212
213         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
214         
215 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
216
217         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
218         grabs, since they are no longer necessary.
219
220         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
221         by signal_connect() and call gtk_button_pressed() rather
222         than signal_connect_after().
223
224         * tests/testgtk.c: Restore radio menu items to combos 
225         since they'll look OK with Raleigh, and it is easier
226         than finishing the process of removing them that was
227         started earlier.
228
229 2001-04-16  Hans Breuer  <hans@breuer.org>
230
231         * gdk/gdk.def :
232         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
233
234         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
235         we are interested in the functions return value not the function address
236         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
237
238         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
239
240 2001-04-14  Hans Breuer  <hans@breuer.org>
241
242         * gdk/gdk.def :
243         * gdk/makefile.msc : updated
244
245         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
246         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
247         (the testgtk::text backgound pixmap is drawn again)
248         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
249         Win32 Pango change
250         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
251
252         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
253         Not sure if the returned settings have the right unit, because I couldn't
254         find any docs for the X version ...
255
256         * gtk/gtk.def :
257         * gtk/makefile.msc.in : updated
258
259 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
260
261         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
262         wording problems. (Compared to version from Johannes Stezenbach to
263         check correctness.)
264
265 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
266
267         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
268         this to compile.
269
270 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
271
272         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
273         not pixbufpos.
274
275         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
276
277         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
278         are unsigned insts, therefore use g_value_set_uint.
279         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
280
281 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
282
283         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
284
285         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
286         GTK_TYPE_STRING.
287
288         * gtk/gtktreeview.c: New functions to allow initial column
289         dragging work.
290
291         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
292
293         * tests/testtreefocus.c: give dave some love.
294
295         * tests/testtreesort.c: Modify test to check really long samples.
296
297 2001-04-11  Alexander Larsson  <alexl@redhat.com>
298
299         * gtk-2.0.m4: Pass pkg-config options
300         before the other args so it works even if
301         POSIXLY_CORRECT is set.
302
303 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
304
305         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
306         0, interface 0).
307
308 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
309
310         * gtk/gtkcalendar.c (gtk_calendar_button_press):
311         check for action_func != NULL
312
313 2001-04-04  Sven Neumann  <sven@gimp.org>
314
315         * tests/testgtk.c (test_init): corrected path to gtk.immodules
316
317 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
318
319         * Released Gtk+-1.3.3.
320
321 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
322
323         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
324
325 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
326
327         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
328         files to/from source dir. (if we don't stay in builddir, we
329         can't reach make-inline-pixbuf.
330
331         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
332         deps.
333
334         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
335         ages 0).
336
337 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
338
339         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
340         moved to the GtkTreeSortable interface.
341
342         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
343         Make more efficient (fixes #50262).
344
345 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
346
347         * NEWS: Updated.
348
349         * configure.in: Remove support for uninstalled glib.
350
351         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
352         so as not to stop emission.
353
354         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
355         is no longer supported.
356
357         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
358         into tests, change build order to build modules before
359         gtk/.
360
361         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
362         to here.
363
364 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
365
366         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
367         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
368         GPatternSpec. this is actually unlikely to cause breakage in
369         third-party apps since except for gle, pretty much ever caller
370         passes NULL here.
371
372         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
373
374         * *.c: use g_pattern_*() API.
375
376         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
377
378         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
379         directions aren't passed in.
380
381         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
382         functionality to be usable from gtkstyle.c as well, give precedence
383         for conversion to user-supplied parsers.
384         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
385
386         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
387         _gtk_settings_parse_convert() for rcporperty value conversion.
388
389 2001-04-03  Alexander Larsson  <alexl@redhat.com>
390
391         * gdk/linux-fb/gdkevents-fb.c:
392         Add empty gdk_setting_get().
393
394 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
395
396         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
397         variable names.
398         
399         * gtk/makeenums.pl: touch this so enum files get remade.
400
401 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
402
403         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
404         work again when not sorted.
405
406         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
407         and "expand_row" signal, closing bug 52578.
408
409         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
410         support.
411
412         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
413         support.
414
415 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
416
417         * gdk/gdkevents.h: Add GdkEventSetting event for notification
418         of changes to system settings, gdk_setting_get() to retrieve
419         a single system setting.
420
421         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
422         to the draft XSETTINGS mechanism.
423
424         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
425         XSETTINGS.
426
427         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
428         of GDK settings changes to the GtkSettings object.
429
430         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
431         double-click-timeout property to GDK.
432
433         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
434         Define GDK boxed types here.
435
436         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
437         gdk/gdkenumtypes.[ch] for enum definitions.
438
439         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
440         * gtk/gtk-boxed.defs: Comment out GDK types
441         * gtk/gtktypeutils.h: Remove GDK types
442         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
443
444 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
445
446         * Applied patch from Ron Steinke to add signal accumulators
447         so that signals with the convention 'TRUE return means
448         handled' stop emission on a TRUE return.
449
450         * gtk/gtkmain.[ch]: Add private accumulator 
451         _gtk_boolean_handled_accumulator, used throughout GTK+.
452         
453         * gtk/gtkspinbutton.c: Add accumulator for ::output.
454
455         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
456         
457         * gtk/gtkwidget.c: Add accumulators for event signals,
458         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
459         for ::mnemonic-activate.
460
461         * gtk/gtkwindow.c: Add accumulator for ::frame_event
462
463 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
464
465         * gtk/gtkwidget.c: Add missing include.
466
467 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
468
469         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
470         marshaller.
471
472         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
473         "changed" signal to "range_changed".
474
475         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
476         removing a tree from one model would remove all trees from that
477         model.
478         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
479         changed signal instead.
480
481 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
482
483         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
484         chaining up to parent impl, since we have a INPUT_ONLY
485         window.
486
487         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
488         foreground color for the cursor.
489
490 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
491
492         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
493         param spec when caching property values, since we unref it
494         later when we free the style.
495
496         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
497         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
498
499 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
500
501         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
502         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
503         stupidity.
504
505 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
506
507         [ First pass at adding style properties. Still needs some definite
508         fine-tuning. ]
509
510         * gtk/gtkbutton.c: Add ::default_spacing style property.
511          
512         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
513         ::indicator_spacing style properties.
514
515         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
516         style properties.
517
518         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
519         rather than a normal property.
520
521         * gtk/gtkwidget.c: Add an ::interior_focus style property to
522         draw focus inside buttons, in the Windows/Java Metal/etc. style.
523
524         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
525         Honor ::interior_focus.
526         
527         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
528         TRUE.
529
530         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
531         Add ::slider_width, ::trough_border, ::stepper_size,
532         ::stepper_spacing style properties.
533
534         * gtk/gtkscale.[ch] Add ::slider-length style property.
535
536 2001-04-02 Alexander Larsson   <alexl@redhat.com>
537
538         * gdk/linux-fb/gdkwindow-fb.c:
539         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
540         warnings that were spewed on startup.
541
542         * gtk/gtkwindow-decorate.c:
543         gtk_window_reposition -> _gtk_window_reposition
544
545 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
546
547         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
548         Add boxed type for GtkRequistion. Use it for ::size-request.
549
550         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
551         Add a new GtkBorder structure useful for geometry properties
552         for widgets. Add corresponding GTK_TYPE_BORDER.
553         
554         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
555         Support automatic parser selection like
556         gtk_settings_install_property_parser().
557
558         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
559         functionality for use by gtk_widget_class_install_style_property.
560         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
561
562 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
563
564         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
565         g_param_spec_unichar(). 
566
567 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
568
569         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
570         _NET window managers.
571
572         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
573
574 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
575
576         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
577         bad needs to be nuked, not just deprecated.
578
579         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
580         gtk_widget_popup().
581
582         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
583         
584         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
585         widget.
586         
587         * docs/Changes-2.0.txt: updates.
588         
589 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
590
591         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
592         for (i = 0; i < 100; i ++)
593           g_print ("I will confirm it compile before committing\n");
594
595 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
596
597         * gtk/gtktreestore.c: Initial work on implementing the
598         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
599
600 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
601
602         * gtk/gtkwidget.c: fixed a bunch of notifications, added
603         reference counts around emissions where the widget is used afterwards.
604         added freeze/thaws around multiple properties being notified.
605         (_gtk_widget_get_aux_info): cleanups.
606         
607         * gtk/gtksettings.c (gtk_settings_install_property): provide
608         default parsing functions for gdkcolor, enums and flags.
609
610         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
611         applied by owen.
612         backed out gtk_window_get_location(), gtk_window_set_location(),
613         gtk_window_get_size() and gtk_window_set_size(), these
614         have to be sorted out wrg x/y/width/height/default_with/default_height
615         properties.
616         kept a flag in GtkWindowGeometryInfo to handle user
617         resetting default sizes.
618         cleaned up ZVT comments.
619         bunch of assorted bug fixes, notification fixes.
620         (_gtk_window_reposition): make this a really internal function.
621         
622         * gtk/testgtk.c: fixups.
623         
624 2001-03-31  Hans Breuer  <hans@breuer.org>
625
626         * config.h.win32.in : disable USE_MMX for msvc build cause
627         the assembler doesn't fit and is out of my scope. Disable
628         USE_GMODULE for msvc build as wel. The right way to share
629         binaries on win32 would be to use libtiff.dll etc. To reduce
630         installation hassles IMO it's better to include all fileformats
631         builtin to gdk-pixbuf
632
633         * gdk-pixbuf/makefile.msc : new file
634
635         * gdk/gdk.def : updated
636
637         * gdk/win32/gdkevents-win32.c : don't erase the background if
638         .no_bg is set. It improves the scrolling (e.g. of testgtk main
639         buttons
640         * gdk/win32/gdkgeometry-win32.c : added comment about the above
641
642         * gdk/win32/gdkwindow-win32.c : added three new functions like
643         the X version. Only one is implemented, because the other two
644         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
645         be default behaviour on win32 anyway ...
646
647         * gtk/gtk.def : updated
648
649         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
650         from where it was built and add an additional rule to automagically
651         build gtkmarshal.[hc]
652
653         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
654         before array access for the current entry isn't finished
655
656         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
657         use g_return_val_if_fail
658
659         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
660         for the static array, but let the compiler calculate it. It
661         makes me wonder if gcc isn't capable to catch bugs like this ...
662
663 2001-03-31  James Henstridge  <james@daa.com.au>
664
665         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
666         constant "-1" in the aux info structure.
667
668 2001-03-30  Alexander Larsson  <alexl@redhat.com>
669
670         * gtk/gtkbutton.c (gtk_button_get_property):
671         * gtk/gtklabel.c:
672         Remove leaks.
673         
674         * gtk/gtkcontainer.c:
675         * gtk/gtkhscale.c:
676         * gtk/gtkhscrollbar.c:
677         * gtk/gtklayout.c:
678         * gtk/gtkmisc.c:
679         * gtk/gtkprogress.c:
680         * gtk/gtkprogressbar.c:
681         * gtk/gtkrange.c:
682         * gtk/gtktable.c:
683         * gtk/gtkviewport.c:
684         * gtk/gtkvscale.c:
685         * gtk/gtkvscrollbar.c:
686         * gtk/gtkwidget.c:
687         Property patches, based on patches from John Margaglione and Lee Mallabone.
688
689 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
690
691         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
692         adjustment. Cleaned redundant preconditions (spin != NULL). Added
693         inline API function docs.
694         (gtk_spin_button_new_with_range): New convenience constructor.
695         (gtk_spin_button_set_increments): New adjustment helper.
696         (gtk_spin_button_set_range): New adjustment helper.
697
698         * gtk/testgtk.c : added test of the new convenince constructor and
699         value_changed signals.
700
701 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
702
703         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
704         listen to the reorder signal.
705
706 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
707
708         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
709         to get the aux info structure fo the widget.
710
711         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
712         above function.
713
714         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
715
716         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
717         to get the size of the window manager frame, basically the same
718         code that gdk_window_get_root_origin() had
719         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
720
721         * gtk/gtkwindow.c (gtk_window_set_default_size): use
722         gdk_window_resize() if the window is realized and resizeable
723
724         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
725         typo so that setting gravity works
726
727         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
728         allocation if auto_shrink is on, even if the default size
729         has not changed.
730
731         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
732         g_return_if_fail
733
734 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
735
736         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
737         reordering/sorting work.  Now pretty much works.
738
739         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
740         reorder mostly work.  Still need to get the parity correct.
741
742         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
743         signal, so I can listen for the sort_column_changed signal so I
744         can change my "sort_indicator" property.  Cool.
745
746 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
747
748         [ Patch from Havoc Pennington, hp@redhat.com ]
749
750         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
751         Add functions gdk_window_begin_resize_drag/begin_move_drag
752         to start resizing or moving a toplevel window. This
753         is done either using the _NET_WM_MOVERESIZE protocol,
754         or, if that isn't present, by emulation.
755
756         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
757         to export the above to GTK+-land.
758
759         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
760         
761         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
762         Move this function into gdkwindow, since we need it
763         when implementing fallback resizing.
764
765         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
766         Fix typo when setting gravity.
767
768         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
769         Add an optional (but on by default) resize grip for resizing 
770         the parent window.
771
772 01-03-29  Alexander Larsson  <alexl@redhat.com>
773
774         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
775         Don't return TRUE from the event handler, that blocks all
776         event signals on the tooltip widget. Now you can press buttons
777         in toolbars again.
778
779 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
780
781         * gtk/testtext.c (create_buffer): Add missing NULL on
782         valist.
783
784         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
785         c-n-p problem with INCONSISTENT property.
786
787         [ Patch from Havoc Pennington  <hp@redhat.com> ]
788
789         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
790         hook.
791
792         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
793         signal as a hook for extending the default popup menu
794
795         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
796         use radio menu items for the input method menuitems
797
798         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
799         inserted unicode from Ctrl-Shift-hex input method
800
801         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
802         validatation here, already done at GtkTextBuffer level.
803
804         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
805         popup_menu run action signal and Shift+F10 and Menu keybindings.
806
807         * gtk/gtkentry.c: implement a default handler for popup_menu
808
809         * gtk/gtktextview.c: implement a default handler for popup_menu
810
811         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
812         from a key event
813         
814         * gtk/gtklabel.c: remove "trailer" cruft
815
816 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
817
818         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
819         handle reordering of trees.  Seems to mostly work w/ the exception
820         of the parity flag.
821
822         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
823         signal.
824
825 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
826
827         * gtk/gtkwidget.h: c++ fixes.
828
829 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
830
831         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
832         memory.
833
834 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
835
836         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
837         Nils Barth fixing event return values. (#51041)
838
839         * gtk/gtkwidget.c: Fix some return values for default
840         functions.
841
842         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
843         return values for trough_keys functions.
844
845         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
846         value for add_accelerator (shoudl have been a void
847         return.)
848
849         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
850         Fix return type of EVENT.
851
852         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
853         signal return a boolean.
854
855 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
856
857         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
858         reordered signal.
859
860         * tests/testtreesort.c (main): fix spelling.
861
862 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
863
864         * gtk/gtkliststore.c: More work on implementing sortable
865         interface.
866
867 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
868
869         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
870         reference the widgets in the resulting list. (#11821)
871         This makes this consistent with gtk_container_children.
872
873         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
874         uses of gtk_window_list_toplevels.
875
876 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
877
878         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
879         a virtual function to set whether the IM context should use 
880         the preedit string. (#51922)
881         
882 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
883
884         * gdk/gdkpango.h: Remove stale FIXME comment.
885
886 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
887
888         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
889         Fixed bug that returned NULL if a filename was selected.
890
891 2001-03-24  Havoc Pennington  <hp@pobox.com>
892
893         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
894         to contain the word "theme"
895
896 2001-03-24  Havoc Pennington  <hp@pobox.com>
897
898         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
899         slower but finer-grained
900         (gtk_hsv_focus): get initial focus on the ring or triangle 
901         according to tab direction
902
903         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
904
905 2001-03-23  Havoc Pennington  <hp@pobox.com>
906
907         * gtk/gtkhsv.c: make this somewhat key-navigable
908
909         * gtk/gtkfontsel.c: mnemonics
910
911         * gtk/gtkgamma.c: mnemonics
912
913         * gtk/gtkcolorsel.c: add mnemonics to labels
914
915 2001-03-22  Havoc Pennington  <hp@pobox.com>
916
917         Applied big patch from Seth Lytle to fix event handler return
918         values, slightly modified.
919
920         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
921         handled.
922         (gtk_calendar_key_press): return TRUE for GDK_space triggers
923         select_day
924
925         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
926         (gtk_clist_button_release): return TRUE if handled
927
928         * gtk/gtkcolorsel.c (mouse_release):
929         (palette_activate): 
930         (palette_press): 
931         (palette_new): 
932         (mouse_press): 
933         (get_screen_color): 
934         fixed return type (void to gboolean), return TRUE,
935         added GTK_SIGNAL_FUNC cast
936
937         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
938         (void to gboolean), and return TRUE
939         (gtk_combo_button_release): changed return value to TRUE after
940         gtk_grab_add on combo->popwin
941
942         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
943         collapse or expand
944
945         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
946         button/motion
947
948         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
949         press/release and motion that trigger act
950
951         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
952
953         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
954         for GDK_Return
955         
956         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
957         (gtk_list_button_release): return TRUE if selection
958
959         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
960         press
961
962         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
963         (gtk_menu_shell_button_release): chain parent_menu_shell retval
964
965         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
966         nothing triggered
967         (gtk_notebook_button_release): return TRUE if we do anything
968
969         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
970         (gtk_spin_button_button_release): return TRUE or chained retval
971
972         * gtk/gtktext.c (gtk_text_button_press): 
973         (gtk_text_button_release): return TRUE
974         (gtk_text_key_press): remove redundant retval code
975         
976         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
977         and sensitive
978         (gtk_tree_item_subtree_button_click): changed type to gint, and return
979         TRUE if sensitive
980
981         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
982         return TRUE
983
984 2001-03-23  Havoc Pennington  <hp@redhat.com>
985
986         * gtk/testgtk.c: fix warnings
987
988         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
989
990         * gtk/gtktextview.c: fix warnings
991
992         * gtk/gtktext.c (find_cursor_at_line): fix warning
993
994         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
995
996         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
997         of this function
998
999         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1000         fix warning
1001
1002         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1003
1004         * gtk/gtkfontsel.c: fix warning
1005
1006         * gtk/gtkcolorsel.c: fix warnings
1007
1008 2001-03-23  Havoc Pennington  <hp@redhat.com>
1009
1010         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1011
1012         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1013
1014         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1015         and deprecated gtk_check_menu_item_set_show_toggle().
1016         
1017         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1018
1019         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1020
1021         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1022
1023 2001-03-23  Havoc Pennington  <hp@redhat.com>
1024
1025         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1026         some docs
1027
1028 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1029
1030         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1031         this.
1032
1033         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1034         set_cell to set_value
1035
1036         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1037         set_cell to set_value
1038
1039 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1040
1041         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1042         fix braino.
1043         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1044         support.
1045
1046         * gtk/gtktreeview.c: Addition of initial sortable support.
1047
1048         * gtk/gtktreestore.c: Addition of initial sortable support.
1049
1050         * gtk/gtkliststore.c: Addition of initial sortable support.
1051
1052         * gtk/gtkmarshal.list: yet another marshaller.
1053
1054         * gtk/gtktreedatallist.[ch]: shared code between the store models
1055         for handling sorting headers.
1056
1057 2001-03-22  Havoc Pennington  <hp@redhat.com>
1058
1059         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1060         (gtk_container_unset_focus_chain): Add ability to override the 
1061         focus chain for a container explicitly
1062
1063 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1064
1065         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1066         added PROP_MNEMONIC_WIDGET.
1067
1068         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1069         (gtk_window_remove_mnemonic): 
1070         (gtk_window_add_mnemonic): fixed assertions.
1071         (gtk_window_activate_mnemonic): constrain modifier checks to those
1072         permitted by gtk_accelerator_get_default_mod_mask().
1073         got rid of gtk_window_get_default_accel_group().
1074
1075         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1076         activatable widgets either by focussing or a warning.
1077         added a signal accumulator to ::activate_mnemonic which stops the
1078         emission once a handler returned TRUE.
1079
1080 2001-03-22  Havoc Pennington  <hp@pobox.com>
1081
1082         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1083         the stock item label
1084
1085         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1086
1087         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1088
1089         * demos/gtk-demo/*.c: Add mnemonics all over the place
1090
1091         * gtk/gtklabel.h: mark parse_uline deprecated
1092
1093 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1094
1095         * gtk/gtkitemfactory.[ch]:
1096         Add support for stock and normal imagemenuitems.
1097         
1098         * gtk/testgtk.c:
1099         Add some tests for mnemonics, stock toolbars, stock
1100         and image menuitems in itemfactory and gdk_window_scroll.
1101
1102 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1103
1104         * gtk/gtkbutton.[ch]:
1105         * gtk/gtkdialog.c:
1106         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1107         removed accel_group argument. Renamed gtk_button_new_accel() to
1108         gtk_button_new_with_mnemonic() and removed accel_group argument.
1109
1110         * gtk/gtkcheckbutton.[ch]:
1111         New function gtk_check_button_new_with_mnemonic().
1112
1113         * gtk/gtkentry.c:
1114         Override activate_mnemonic and just grab focus.
1115
1116         * gtk/gtkitemfactory.c:
1117         Don't add menu uline accel group, instead use mnemonics support.
1118
1119         * gtk/gtklabel.[ch]:
1120         New support for mnemonics.
1121
1122         * gtk/gtkmarshal.list:
1123         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1124
1125         * gtk/gtkmenu.[c]:
1126         * gtkmenushell.c:
1127         Use mnemonics instead of accel groups for uline
1128         support in menu items.
1129         Removed gtk_menu_get_uline_accel_group() and
1130         gtk_menu_ensure_uline_accel_group().
1131
1132         * gtk/gtkmenuitem.c:
1133         Override activate_mnemonic to handle switching between
1134         menu items if there are collisions.
1135         
1136         * gtk/gtknotebook.c:
1137         Connect to activate_mnemonic on the tab_label, so that
1138         activating it switches to that notebook page.
1139
1140         * gtk/gtkwidget.[ch]:
1141         Add activate_mnemonic signal. New function
1142         gtk_widget_activate_mnemonic() to emit it.
1143         Default implementation does activate/grab_focus.
1144
1145         * gtk/gtkwindow.[ch]:
1146         Add support for mnemonics in windows.
1147         New functions:
1148         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1149         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1150
1151         * gtk/testgtk.c:
1152         Update to function name changes.
1153         
1154 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1155
1156         * gtk/gtkimagemenuitem.[c]:
1157         Add gtk_image_menu_item_new_from_stock()
1158
1159 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1160
1161         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1162         Fix buglet in meeting.
1163
1164 2001-03-19  Havoc Pennington  <hp@redhat.com>
1165
1166         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1167         add a bunch of accessor functions. This is because we have
1168         reasonable expectations of extending what fields it contains in
1169         the future.
1170
1171         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1172         changes
1173
1174         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1175         GtkIconSource   
1176
1177 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1178
1179         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1180         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1181
1182         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1183           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1184           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1185           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1186         Change float to double everywhere with the exception of 0<->1.0 alignment
1187         and GtkCurve.
1188
1189 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1190
1191         * gdk/win32/gdkdrawable-win32.c
1192         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1193         output.
1194
1195         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1196         gdkwin32.h.
1197
1198 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1199
1200         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1201         print_event_state, print_event): Use preprocessor macro to make
1202         code more compact. Print also GDK_WINDOW_STATE events.
1203         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1204         
1205         * gtk/gtk.def
1206         * gtk/makefile.mingw.in: Update.
1207
1208         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1209         to catch also Cygwin.
1210
1211 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1212
1213         * gtk/gtkspinbutton.[hc]: added rc-style argument
1214         GtkSpinButton::shadow_type.
1215         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1216         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1217         rc-style settings.
1218
1219         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1220
1221         * gtk/gtkwidget.c: quark cleanups.
1222
1223         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1224         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1225         to create_rc_style() (we don't do cloning in standard OO sense).
1226         added per rc style properties.
1227         
1228         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1229         property values and for caching those. some cleanups.
1230         
1231         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1232         
1233         * gtk/gtksettings.[hc]: new file for global rc-file properties
1234         (at least currently, should get extended to support X properties
1235         and other communication mechanisms).
1236         
1237         * gtk/gtkwidget.[hc]: added style property support:
1238         (gtk_widget_class_install_style_property_parser): install style
1239         property pspec with parser function for rc-file values other
1240         than LONG, DOUBLE or STRING.
1241         (gtk_widget_class_install_style_property): same as above without
1242         parser (parsers are going to be needed quite infrequently).
1243         (gtk_widget_style_get_property): retrive style property value.
1244         (gtk_widget_style_get_valist): same as above with varargs support,
1245         has NOCOPY semantics.
1246         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1247
1248 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1249
1250         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1251         "row_activated" signal.
1252
1253         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1254         stupidity.  Lets actually pass in the row with this signal...
1255
1256 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1257
1258         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1259
1260         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1261
1262         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1263         everything into the ::destroy function, and freed a lot more.
1264
1265 2001-03-16  Havoc Pennington  <hp@redhat.com>
1266
1267         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1268         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1269         are now allowed.
1270
1271 2001-03-16  Havoc Pennington  <hp@redhat.com>
1272
1273         * Applied patch from Nils Barth (bug # 51041) to 
1274         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1275         in various places.
1276
1277 2001-03-15  Havoc Pennington  <hp@redhat.com>
1278         
1279         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1280         for properties to set on the tag.
1281
1282         * gtk/testtext.c: fixups to reflect create_tag change
1283         
1284         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1285         background/foreground stipple are objects, not boxed.
1286
1287         * demos/gtk-demo/textview.c: intellihancing
1288
1289 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1290
1291         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1292         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1293
1294 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1295
1296         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1297         Fix sign error with queued region translations.
1298
1299 2001-03-15  HideToshi Tajima  <tajima@happy>
1300
1301         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1302         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1303         * gtk/gtkentry.c (update_im_cursor_location): 
1304         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1305         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1306         set_cursor_pos to set_cursor_location in GtkInputContext class
1307
1308 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1309
1310         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1311         the location of the cell relative to its area.
1312         * gtk/gtkcell*: modified for above change
1313         * gtk/gtktreeview.c: modified for above change.
1314
1315 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1316
1317         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1318          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1319         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1320
1321 2001-03-14  Havoc Pennington  <hp@redhat.com>
1322
1323         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1324         
1325         * gtk/gtk.h: remove gtkdata.h
1326
1327         * gtk/Makefile.am: remove gtkdata
1328         
1329         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1330         not "disconnect" on the adjustments.
1331         
1332         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1333         GtkData
1334
1335         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1336         not GtkData
1337
1338         * configure.in: handle case where X render exists, but Pango lacks
1339         Xft support.
1340
1341 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1342
1343         * gtk/gtktoolbar.[ch]:
1344         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1345         to add stock items to toolbars.
1346
1347         * gtk/Makefile.am:
1348         Remove ../gdk/gdkim.h from gdk_headers.
1349
1350 2001-03-15  Sven Neumann  <sven@gimp.org>
1351
1352         * gdk/gdkim.h: removed
1353         
1354         * gdk/gdkprivate.h
1355         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1356
1357 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1358
1359         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1360         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1361         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1362         set_cursor_pos() virtual method
1363
1364         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1365         (gtk_im_context_xim_set_cursor_pos): add implementation for
1366         set_cursor_pos() method
1367
1368         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1369         position to input methods
1370
1371 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1372
1373         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1374         code a lot.
1375
1376         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1377         g_mem_chunk.
1378         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1379         (_gtk_tree_data_list_node_to_value): Fix to switch on
1380         G_TYPE_FUNDAMENTAL.
1381         (_gtk_tree_data_list_value_to_node): Fix to switch on
1382         G_TYPE_FUNDAMENTAL.
1383         (_gtk_tree_data_list_node_copy): Fix to switch on
1384         G_TYPE_FUNDAMENTAL.
1385
1386 2001-03-12  Havoc Pennington  <hp@redhat.com>
1387
1388         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1389         to convert to new property API. Also, change default_width and
1390         default_height get_property to return 0 as the flag value for
1391         "unset"; -1 is not a valid value for these fields.
1392
1393 2001-03-12  Havoc Pennington  <hp@redhat.com>
1394
1395         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1396         enum with registration for icon sizes, instead of strings.
1397
1398         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1399         gtkwidget.c: Fix to reflect GtkIconSize
1400         
1401 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1402
1403         Make GtkFB compile and link.
1404         
1405         * gdk/linux-fb/gdkdrawable-fb2.c:
1406         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1407         
1408         * gdk/linux-fb/gdkwindow-fb.c:
1409         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1410         Added gdk_window_shape_combine_region.
1411         Added assorted placeholders for unimplemented new GdkWindow API calls.
1412
1413 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1414
1415         * gtk/gtkfilesel.c:
1416         Add more test when converting filenames from/to utf-8.
1417         Don't allow entering text in the filename entry which isn't allowed in
1418         a filename. Just beep instead.
1419
1420 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1421
1422         * gtk/gtkclist.c:
1423         Scroll using gdk_window_scroll(). Don't wait for exposes.
1424         Move the column headers in an order that makes them flash less.
1425
1426 2001-03-10  Hans Breuer  <hans@breuer.org>
1427
1428         * gdk/gdk.def : updated
1429
1430         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1431         to offseting the clip_mask at the right place
1432
1433         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1434         for all the gdkClasses, especially not for the input_only case.
1435         Otherwise flickering wont be avoidable, because we don't get
1436         WM_ERASEBKGND message for these windows.
1437
1438         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1439         and fixed massive redraw problems apparently triggered by Alexanders 
1440         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1441         but it seems to work quite well :-)
1442
1443         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1444         prototype
1445
1446 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1447
1448         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1449         (gtk_list_store_set_cell): Fix a stupid typo.
1450
1451 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1452
1453         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1454         select_all not work if you're in SINGLE mode (it doesn't make that
1455         much sense, anyway.)
1456
1457         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1458         handle types more sanely.
1459         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1460         (_gtk_tree_data_list_node_copy): handle types more sanely.
1461
1462         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1463         GValue better. Converts the type as well.
1464
1465         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1466         GValue better. Converts the type as well.
1467
1468 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1469
1470         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1471         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1472         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1473         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1474
1475         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1476         gdk_im/gdk_ic.
1477
1478 2001-03-09  Hans Breuer  <hans@breuer.org>
1479
1480         * gdk/gdk.def : updated
1481
1482         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1483         for their palette
1484
1485         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1486         removing
1487
1488         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1489         removing and implemented Havoc's GdkWindow state functions; 
1490         stick/unstick only as no-op, cause I don't know how to emulate 
1491         on win32 ...
1492
1493         * gtk/gtk.def : updated
1494
1495         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1496
1497         * gtk/gtktypeutils.c : #include <string.h>
1498
1499         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1500
1501 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1502
1503         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1504         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1505         not a boxed.
1506
1507 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1508
1509         * docs/Changes-2.0.txt:
1510         Document expose event->region change and that gtk_widget_event
1511         doesn't allow passing expose events.
1512
1513         * gdk/gdkevents.h:
1514         Add region to expose event.
1515         
1516         * gdk/gdkevents.c:
1517         Handle event->region in gdk_event_copy() and gdk_event_free().
1518
1519         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1520         Generate expose_event->region when creating expose events.
1521
1522         * gdk/x11/gdkevents-x11.c:
1523         Generate expose events with regions when translating X events.
1524
1525         * gtk/gtkcontainer.[ch]:
1526         Default expose handler that propagates expose events to NO_WINDOW
1527         children. New function gtk_container_propagate_expose()
1528
1529         * gtk/gtkwidget.[ch]:
1530         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1531         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1532         expose events. New function gtk_widget_send_expose() to send expose
1533         events. New function gtk_widget_region_intersect() to calculate
1534         window/region intersections.
1535         
1536         * gtk/gtkmain.c (gtk_main_do_event):
1537         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1538         Use gtk_widget_send_expose() to send expose events.
1539         
1540         * gtk/gtkbin.c:
1541         * gtk/gtkbox.c:
1542         * gtk/gtkfixed.c:
1543         * gtk/gtkimagemenuitem.c:
1544         * gtk/gtklist.c:
1545         * gtk/gtkpacker.c:
1546         * gtk/gtktable.c:
1547         * gtk/gtktree.c:
1548         Remove expose handler, using the default container implementation
1549         instead.
1550         
1551         * gtk/gtkbutton.c:
1552         * gtk/gtkcheckbutton.c:
1553         * gtk/gtkeventbox.c:
1554         * gtk/gtkfixed.c:
1555         * gtk/gtkhandlebox.c:
1556         * gtk/gtklayout.c:
1557         * gtk/gtklistitem.c:
1558         * gtk/gtkmenu.c:
1559         * gtk/gtkmenubar.c:
1560         * gtk/gtkmenuitem.c:
1561         * gtk/gtknotebook.c:
1562         * gtk/gtkoptionmenu.c:
1563         * gtk/gtkpaned.c:
1564         * gtk/gtkscrolledwindow.c:
1565         * gtk/gtktogglebutton.c:
1566         * gtk/gtktoolbar.c:
1567         * gtk/gtktreeitem.c:
1568         * gtk/gtkviewport.c:
1569         Chain expose handler to parent class handler. Use
1570         gtk_container_propagate_expose() to propagate exposes.
1571
1572         * gtk/gtkclist.c (check_exposures):
1573         * gtk/gtktext.c (process_exposes):
1574         Use gtk_widget_send_expose instead of gtk_widget_event.
1575
1576 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1577
1578         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1579
1580 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1581
1582         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1583         unref the nodes.   Fixes bug #50058.
1584
1585         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1586         "::ref_iter" to "::ref_node".
1587         (gtk_tree_model_unref_node): change "::unref_iter" to
1588         "::unref_node". Fixes bug #50064.
1589
1590 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1591
1592         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1593         support for invisible cells.
1594          (gtk_tree_view_bin_expose): ditto
1595
1596 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1597
1598         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1599         on gobjects.
1600
1601         * tests/testtreefocus.c (main): New test file.
1602
1603         * tests/testtreeview.c: update to latest glib changes.
1604
1605         * tests/testtreecolumns.c: update to latest glib changes.
1606
1607 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1608
1609         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1610
1611 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1612
1613         * *.c: added accumulator data argument to g_signal_newc()
1614         functions.
1615
1616         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1617         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1618         * gtk/treestoretest.c (make_window):
1619         s/g_signal_connect/g_signal_connectc/.
1620
1621         * gtk/gtktextbuffer.c: completed signal arg fixups,
1622         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1623
1624 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1625
1626         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1627         G_CONST_RETURN.
1628
1629         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1630         ::hierarchy-changed signal when a widget changes
1631         from anchored to unanchored or vice versa.
1632         (anchored means 
1633          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1634         Use a private flag to keep track of this efficiently.
1635
1636 2001-03-07  Havoc Pennington  <hp@redhat.com>
1637
1638         * gtk/testgtk.c (create_spins): uglify so that size request gets
1639         tested.
1640
1641         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1642         request on values for upper/lower, completes #6152
1643
1644 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1645
1646         * Makefile.am: Remove gtk-config-2.0 again.
1647         (Grrrr, pkg-config. And stops make loops.)
1648
1649 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1650
1651         * gtk/gtksignal.[hc]: removed old emission hook API.
1652         
1653         * docs/Changes-2.0.txt: fixed sections.
1654         
1655         * gtk/gtktextbuffer.c: signal arg fixups.
1656
1657 2001-03-07  Havoc Pennington  <hp@redhat.com>
1658
1659         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1660
1661         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1662         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1663         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1664         validation and the redraw which is higher priority than the
1665         validation.
1666
1667 2001-03-07  Havoc Pennington  <hp@redhat.com>
1668
1669         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1670         (gtk_entry_set_property): remove trailer
1671
1672         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1673         (gtk_entry_get_width_chars): new functions, to set size request to 
1674         a given number of characters
1675
1676         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1677
1678         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1679         (gtk_dialog_get_has_separator): new function
1680         (run_delete_handler): fix to not emit "response" signal
1681         because we already did in the delete event handler installed
1682         at dialog creation time.
1683         
1684         * gtk/gtkdialog.h: add a has_separator property,
1685         add GTK_DIALOG_NO_SEPARATOR flag
1686
1687 2001-03-07  Havoc Pennington  <hp@redhat.com>
1688
1689         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1690         off decorations for a window.
1691
1692         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1693         changes
1694
1695         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1696         to get location of PangoLayout inside the label, closes #51198
1697
1698         * gtk/testgtk.c (create_bbox): fix up button box usage
1699
1700         * gtk/testcalendar.c (create_calendar): fix up button box usage
1701
1702         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1703
1704         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1705
1706         * gtk/gtkhbbox.h: deprecations
1707
1708         * gtk/gtkvbbox.h: deprecations
1709
1710         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1711         emulate deprecated gtk_button_box_get_spacing
1712
1713         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1714         the "set global default" functions
1715         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1716         GtkBox base class
1717
1718         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1719
1720         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1721         render the icon, return the missing image icon.
1722
1723         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1724         image icon if the load fails.   
1725
1726         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1727         when no image is found; should be the Netscape "missing image"
1728         icon eventually but for now is a random image
1729
1730         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1731         role for the session manager
1732
1733         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1734
1735         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1736         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1737
1738         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1739
1740 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1741
1742         * gtk/*.c: marshaller fixes.
1743         
1744         * gtk/gtkmarshal.list: extreme cleanup.
1745
1746         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1747         param spec for now.
1748
1749         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1750         where appliable.
1751
1752         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1753         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1754         which are not reference counted:
1755         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1756         PangoFontDescription, GtkTreeIter and GtkTreePath.
1757
1758 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1759
1760         * gtk/gtktreeselection.h: 
1761         * gtk/gtktreemodel.c:
1762         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1763         file should be included directly, and gobject/gmarshal.h
1764         as well as gtk/gtkmarshal.h even can't be included directly.
1765
1766         * Makefile.am: grr, install gtk-config-2.0.
1767
1768         * gtk/testgtk.c:
1769         * gtk/simple.c:
1770         * gtk/gtkmenu.c:
1771         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1772         passing "*signal*::*" args to gtk_widget_set().
1773         
1774         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1775         
1776         * gtk/*.c: removed trailer arg from property setters and getters.
1777         macro fixups.
1778
1779 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1780
1781         * gtk/gtklabel.c (set_markup): Removed warning
1782
1783 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1784
1785         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1786         field to allow you to hide cell renderers.
1787
1788         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1789
1790         * gtk/gtktreeview.c: Add support for invisible cells.
1791
1792 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1793
1794         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1795         Add "clicked" signal back to columns.
1796
1797         * ChangeLog: remove conflict markers.
1798
1799 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1800
1801         * gtk/gtkbutton.c: Add animation of activation by, on 
1802         activate, pressing the button, and adding a timeout that 
1803         releases the button after 250ms or on key release and
1804         emits ::clicked. (#51501)
1805
1806         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1807         action area, we connect to ::clicked instead of ::activate
1808         so the dialog stays up through the animation.
1809
1810 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1811
1812         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1813         check the ignore_enter flag for the menu shell that
1814         the item is actually a child of, not for attached
1815         submenus. (#51536)
1816
1817 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1818
1819         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1820         special key-press grab handling for widgets within
1821         GtkWindows. Otherwise, fall through to normal case.
1822
1823         This prevents key events being sent twice to GtkInvisible
1824         widgets, which can cause all sorts of mischief.
1825
1826 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1827
1828         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1829         widget is in effect, give the grab widget a first
1830         crack at KEY_PRESS/RELEASE events. (#424)
1831
1832 2001-03-06  James Henstridge  <james@daa.com.au>
1833
1834         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1835         offset for the window_state_event to point at window_state_event
1836         rather than no_expose_event.
1837
1838 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1839
1840         * gtk/gtkimmodule.h: fix busted /* comment */
1841
1842 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1843
1844         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1845         object properties.
1846
1847 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1848
1849         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1850         add object properties.
1851
1852         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1853         to add object properties.
1854
1855         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1856         object properties.
1857
1858         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1859         add object properties.
1860
1861         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1862         object properties.
1863
1864 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1865
1866         * gtk/gtktreemodel.c: renamed "child_toggled" to
1867         "has_child_toggled".
1868
1869         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1870         handle new signal name.
1871
1872         * gtk/gtktreestore.c: Updated to handle new signal name.
1873         * gtk/gtklisttore.c: Updated to handle new signal name.
1874         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1875
1876 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1877
1878         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1879         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1880
1881 2001-03-05  Michael Natterer  <mitch@gimp.org>
1882
1883         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1884         pixbuf-engine coincidentially also failed to make one of it's
1885         parent_class pointers static, causing overwriting of GtkLabel's
1886         parent_class pointer in pixbuf_style_class_init().
1887         (Will commit the fix to the pixbuf-engine too).
1888
1889 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1890
1891         * gdk/gdkwindow.h:
1892         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1893         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1894         gdk_window_set_icon_list for net wmspec functionality.
1895
1896         * gdk/x11/gdkwindow-x11.c:
1897         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1898         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1899         gdk_window_set_icon_list.
1900         Added gdk_wmspec_change_state helper function and used it in the code.
1901         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1902
1903         * gtk/gtkdialog.c (gtk_dialog_init):
1904         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1905
1906         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1907         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1908
1909         * gtk/gtkwindow.c:
1910         new function gtk_window_set_type_hint.
1911         On realize, set type hint and modal hint.
1912
1913         * gtk/gtkwindow.h:
1914         Added type_hint field and gtk_window_set_type_hint.
1915
1916 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1917
1918         * gtk/gtklabel.[ch]:
1919         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1920         New function gtk_label_get_accel_keyval () to get the underline accelerator
1921         of the label. Setting the label pattern overrides other attributes.
1922
1923 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1924
1925         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1926         Added missing initializers to gtk_rc_style_init().
1927
1928 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1929
1930         * gtk/gtktextview.c: fixed bug #51097 about setting 
1931         gtk_text_view_set_border_window_size() if the widget is 
1932         already realized.
1933
1934 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1935
1936         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1937
1938         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1939         comment. Won't do to have duplicated doc comments between
1940         the platform subdirs.
1941
1942 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1943
1944         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1945           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1946
1947         Detectable auto-repeat - make a repeating key generate
1948         press/press/press/release instead of press/release pairs.
1949
1950         If we have Xkb and XkbSetDectableAutoRepeat supports
1951         that, we do it that way. Otherwise, when we get
1952         a release event, we check ahead with XPending to see
1953         if the next key is a KeyPress with the same keycode
1954         and timestamp. (Not 100% reliable, but pretty close.)
1955           
1956 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1957         
1958         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1959         special key-press grab handling for widgets within
1960         GtkWindows. Otherwise, fall through to normal case.
1961  
1962         This prevents key events being sent twice to GtkInvisible
1963         widgets, which can cause all sorts of mischief.
1964  
1965 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1966  
1967         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1968         widget is in effect, give the grab widget a first
1969         crack at KEY_PRESS/RELEASE events. (#424)
1970  
1971 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1972
1973         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1974         to extend the selection. (Roughly based on patch
1975         from Jay Cox, #50939)
1976
1977         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1978         to properly handle previous GDK_BUTTON_PRESS. 
1979         (Patch from Jay Cox, #50938)
1980
1981         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1982         '\0' back along with the deleted text. (#51148)
1983
1984 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1985
1986         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1987         the group when extracting it from the X keyboard event.
1988
1989         * modules/input/Makefile.am modules/input/imipa.c: 
1990         Simple module for entering IPA. (Do we need a 
1991         gtk-stupid-input-tricks CVS module?)
1992
1993 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1994
1995         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1996         const.
1997
1998         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1999
2000         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2001         is no focus widget for the dialog currently, grab the focus as well
2002         as the default.
2003
2004         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2005         the action area's children to iterate through, not the
2006         dialog's children.
2007
2008 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2009
2010         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2011         Add plug-socket tests. (Won't work worth a darn until I commit
2012         the rest of the plug-socket changes, but no reason these
2013         can't go into CVS now.)
2014
2015 2001-03-02  Havoc Pennington  <hp@redhat.com>
2016
2017         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2018         _gdk_region_get_xrectangles()
2019
2020         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2021
2022         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2023
2024         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2025         function, contributed by Ron Steinke    
2026
2027         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2028         gdk_net_wm_supports
2029
2030         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2031         New function, contributed by Ron Steinke
2032
2033         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2034         used to line up the text in the entry when using the entry for
2035         editable sheet cell hacks
2036
2037         * gtk/testgtk.c (create_entry): test the activate_default setting
2038         on GtkEntry
2039
2040         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2041         cause the entry to activate the default button for a dialog when 
2042         activated
2043         (gtk_entry_get_activates_default): new function
2044
2045 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2046
2047         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2048         Hwang to move call to sync_selection() up a few lines
2049         to before the row list is modified, to fix crash when
2050         removing rows in the undo_selection list.
2051
2052         (Test case provided by Daniel Elstner:
2053
2054         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2055
2056 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2057
2058         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2059         of tree->root_tree in parent_set rather than _map(), 
2060         fixing #50892 in a bit better manner.
2061
2062 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2063
2064         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2065
2066 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2067
2068         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2069         gtk_default_draw_shadow.
2070
2071 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2072
2073         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2074         warning, make warnings more verbose, treat a error
2075         in shmat as permanent, and don't try again.
2076         (#51163, Ed Randall.)
2077
2078 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2079
2080         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2081         delay for the first click before starting to scroll.
2082         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2083
2084         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2085         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2086
2087 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2088
2089         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2090         cleanup to remove some references to unused
2091         ->xoffset, ->yoffset.
2092
2093 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2094
2095         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2096         mask. (#51039, fix from Martin Maierhofer)
2097
2098 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2099
2100         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2101         for unshifted + and shifted = for non-us keyboards.
2102         Make <Control>+ and <Control>- work as well as 
2103         <Control>KP_Plus, <Control>KP_Minus for recursive
2104         open/close.  (#2682, René Seindal)
2105
2106 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2107
2108         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2109         the active menu item before deactivating the menu,
2110         so gtk_menu_popdown doesn't change the history. (#50964)
2111         
2112 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2113
2114         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2115         draw lines with text_gc rather than black_gc.
2116         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2117
2118 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2119
2120         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2121         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2122         less interrelated then it was, but it still requires the
2123         GtkTreeView to map it.
2124
2125         * test/testtreecolumn.c: Now I can add a column to one view,
2126         remove it, add it to the another view, remove it, then re-add it
2127         to the first.  Nifty.
2128
2129 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2130
2131         * docs/tutorial/gtk-tut.sgml: Minor corrections
2132
2133 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2134
2135         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2136         GtkRowReference.
2137
2138 2001-02-28  Havoc Pennington  <hp@redhat.com>
2139
2140         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2141         draw_default
2142         (gtk_widget_draw_focus): remove this function; we could instead
2143         make it just gtk_widget_draw(), but in most cases I think the
2144         result would be broken user code, so think it's better to have
2145         that code not compile and get fixed
2146         (gtk_widget_draw_default): ditto
2147
2148         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2149         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2150         
2151         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2152         widgets lose/get the default, instead of calling draw_default
2153         
2154         * docs/Changes-2.0.txt: note about all this
2155
2156         Then fixed every widget in GTK, I won't list all the filenames.
2157
2158 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2159
2160         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2161         _gtk_tree_row_reference_deleted.
2162         (inserted_callback): Proxy out to
2163         _gtk_tree_row_reference_inserted.
2164         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2165         get around signal emission ordering problem.
2166
2167         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2168         fix to work with SINGLE 
2169         (_gtk_tree_selection_internal_select_node): Major sanitization on
2170         selections.  SINGLE now seems to work.
2171
2172         * tests/Makefile.am: add testtreecolumn.c:
2173
2174         * tests/testtreecolumn.c: New test.  Mostly points out selection
2175         bugs currently, but will test columns later.
2176
2177         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2178         selection bug.  I hate touching this code -- it's scary.
2179
2180 2001-02-26  Havoc Pennington  <hp@redhat.com>
2181
2182         * gtk/testgtk.c: test the window state stuff
2183
2184         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2185         window come to the user's attention as if it were just created
2186         (gtk_window_iconify): new function
2187         (gtk_window_deiconify): new function
2188         (gtk_window_stick): new function
2189         (gtk_window_unstick): new function
2190         (gtk_window_maximize): new function
2191         (gtk_window_unmaximize): new function
2192
2193         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2194
2195         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2196
2197         * gdk/x11/gdkevents-x11.c: create window state events when
2198         appropriate
2199         (gdk_wmspec_supported): new function
2200
2201         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2202         iconification before showing the window
2203         (gdk_window_deiconify): new function
2204         (gdk_window_stick): new function
2205         (gdk_window_unstick): new function
2206         (gdk_window_maximize): new function
2207         (gdk_window_unmaximize): new function
2208
2209         * gdk/gdkwindow.c: store the window state in the window; 
2210         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2211         window->mapped.
2212         (gdk_window_get_state): return the current window state
2213
2214         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2215         (gdk_event_get_state): handle GDK_WINDOW_STATE
2216         (gdk_synthesize_window_state): function to create the window state
2217         events
2218
2219         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2220         event, for changes to "window state" such as maximized, sticky, 
2221         etc.
2222         
2223         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2224         focuses a window
2225
2226         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2227         finds out if we support a given WM spec hint
2228
2229 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2230
2231         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2232
2233 2001-02-25  Hans Breuer  <hans@breuer.org>
2234
2235         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2236         cause we want to loose those prototypes only in the latter case
2237
2238         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2239         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2240         impl member variable instead
2241
2242         * gtk/gtk.def : updated
2243
2244         * gtk/gtklist.c : 
2245         * gtk/gtkmenus.c : include <string.h> for memset ()
2246
2247         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2248         for everthing built here, but for gtk-x.x.dll only. This solves
2249         problem of indifferent gtk type definitions
2250
2251 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2252
2253         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2254
2255 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2256
2257         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2258         column that is exposed.
2259
2260         (_gtk_tree_view_update_size): Changed name from set_size, and
2261         changed function to do more work, and not force people calling it
2262         to figure out the size.  Simplifies a lot of code elsewhere.
2263
2264 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2265
2266         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2267         return solid masks for xpms that have no transparent color.
2268         This makes the ..._create_from_xpm... API backwards
2269         compatible.
2270
2271 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2272
2273         * README.win32: Update. Mention the gtk-1-3-win32-production
2274         branch.
2275
2276         * gdk/win32/bdfcursor.c: New file. A program that generates
2277         xcursors.h. Thanks to Stefan Ondrejicka.
2278
2279         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2280         compact format.
2281
2282         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2283
2284         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2285         function, uses xcursors.h.
2286         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2287         cursor from inline data instead of using LoadCursor() to generate
2288         it from a resource.
2289
2290         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2291         event, must check the Windows message for mouse button state, as
2292         the GDK event state might not have been built if it is
2293         undelivered. Remove one goto.
2294
2295         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2296         SetCursor() if the current cursor as returned by GetCursor() is
2297         the window's previous cursor. The ChildWindowFromPoint() test
2298         apparently didn't work correctly.
2299
2300         * gdk/win32/rc/*.cur: Remove.
2301
2302         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2303
2304         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2305
2306         * gtk/makefile.{mingw,msc}.in: Updates.
2307
2308 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2309
2310         * gtk/gtktreemodel.h: add functions for signal emission.
2311
2312         * gtk/gtktreestore.c: move to use above functions instead of
2313         g_signal_emit.
2314
2315         * gtk/gtkliststore.c: ditto
2316
2317 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2318
2319         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2320         GObject instead of GtkObject.
2321
2322         * gtk/gtkliststore.c: ditto.
2323
2324         * gtk/gtktreemodelsort.c: ditto.
2325
2326         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2327         GtkTreeModelIface, instead of in each model.
2328
2329 2001-02-21  Havoc Pennington  <hp@redhat.com>
2330
2331         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2332         unbreak this function
2333
2334         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2335         properties
2336
2337         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2338         properties
2339
2340         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2341         properties
2342
2343         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2344         mean unset the max length
2345
2346 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2347
2348         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2349         Changed name to be set_cell_data_func to make it clear what
2350         the functino does.  Close bug #51069.
2351
2352 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2353
2354         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2355         have memory actually freed.  Keeps box running longer.
2356
2357 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2358         
2359         * gtk/gtkseparatormenuitem.[ch]:
2360         Added new menu separator item. The drawing and size handling
2361         is still done in GtkMenuItem, but the API is a bit more sane.
2362         
2363         * gtk/Makefile.am:
2364         Add gtkseparatormenuitem.[ch].
2365
2366         * gtk/gtk.h:
2367         Add gtkseparatormenuitem.h.
2368         
2369         * gtk/gtkentry.c:
2370         * gtk/gtkmenufactory.c:
2371         * gtk/gtktextview.c:
2372         Use the new API for menu separators.
2373         
2374         * demos/gtk-demo/menus.c (create_menu):
2375         Add some GtkSeparatorMenuItem demo code.
2376
2377 2001-02-20  Havoc Pennington  <hp@redhat.com>
2378
2379         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2380         Lee Mallabone
2381
2382         * gtk/gtkarrow.c: Convert to new property API, patch from 
2383         Lee Mallabone
2384
2385 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2386
2387         * tests/testtreeview.c (toggled_callback): fix to reflect change
2388         in GtkTreeModelStore.
2389
2390 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2391
2392         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2393         function to create an icon set from a pixbuf.
2394
2395 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2396
2397         * gtk/gtkcellrenderertext.[ch]:
2398         Add a "markup" property.
2399
2400         * gtk/treestoretest.c:
2401         Use the markup property, remove some leftover stuff from
2402         GtkTreeModelMapping.
2403
2404 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2405
2406         * gtk/gtklabel.c (gtk_label_set_selectable):
2407         Queue a redraw if the selectable setting was changed.
2408
2409 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2410
2411         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2412         Actually copy the whole gc, not just the public parts.
2413         
2414         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2415         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2416         labels.
2417
2418 2001-02-19  Havoc Pennington  <hp@pobox.com>
2419
2420         * gdk/gdkwindow.c: docs
2421
2422         * gdk/gdkrgb.c: docs
2423
2424         * gdk/gdkregion-generic.c: docs
2425
2426         * gdk/gdkgc.c (gdk_gc_set_values): docs
2427
2428         * gdk/gdkdraw.c: docs
2429
2430         * gdk/gdkdrawable.h: deprecate drawable get/set data
2431
2432 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2433
2434         * demos/gtk-demo/dialog.c: Add simple new demo.
2435
2436 2001-02-19  Havoc Pennington  <hp@redhat.com>
2437
2438         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2439         insert_child_anchor signal, bug #50245
2440
2441         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2442         from create_child_anchor, so the anchor is passed in
2443
2444         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2445         (_gtk_widget_segment_new): have the child anchor object passed in, 
2446         instead of creating it.
2447
2448         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2449         to gtk_text_buffer_get_modified
2450
2451 2001-02-19  Havoc Pennington  <hp@redhat.com>
2452
2453         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2454         changed GLib without fixing GTK
2455
2456         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2457         functions to have an underscore in front. Most of them should 
2458         probably just go away, but for starters don't export them.
2459         Bug #50482
2460
2461 2001-02-19  Havoc Pennington  <hp@redhat.com>
2462
2463         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2464         excluded by default
2465
2466         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2467         clean up the old code a bit
2468
2469         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2470         inconsistent state
2471
2472         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2473         draw inconsistent state
2474
2475         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2476         (create_menu): add inconsistent test
2477
2478         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2479         new function
2480         (gtk_check_menu_item_get_inconsistent): new function
2481         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2482         state (using etched in for now)
2483
2484         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2485         draw inconsistent state
2486
2487         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2488         function, used when the user has selected a range of stuff in
2489         different states
2490         (gtk_toggle_button_get_inconsistent): accessor for that
2491         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2492         don't know what else to do)
2493
2494 2001-02-19  Hans Breuer <hans@breuer.org>
2495
2496         * gtk/gtk.def : updated exported symbols
2497
2498         * gtk/makefile.msc.in : updated
2499
2500         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2501         a colormap, when invoked from testgtk::entry. I'm not sure where
2502         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2503         avoids immediate crashing ...
2504
2505         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2506         any objections ?
2507
2508         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2509         0 parameter. At least msvc doesn't like macros with var args. 
2510         I simply removed the extra 0, was it a feature or a typo ?
2511
2512         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2513         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2514         because the value assignment to the internal struct wasn't working.
2515         I'm not absolutely sure. The problem could have been resolved by
2516         changing the "func" declartion in the struct, but was the pointer
2517         to the function pointer intended ?
2518
2519         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2520
2521         * gdk/gdk.def : updated exported symbols
2522
2523         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2524         only use SetDIBitsToDevice if there is a palette at the drawable
2525         and the image is GDK_VISUAL_PSEUDO_COLOR
2526
2527         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2528
2529         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2530
2531         * gdk/*/makefile.msc : updated
2532
2533 2001-02-19  Havoc Pennington  <hp@redhat.com>
2534
2535         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2536         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2537
2538         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2539         (gdk_key_repeat_restore): nuke
2540
2541         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2542         (gdk_init_check): no atexit func
2543
2544         * gdk/gdkrgb.h: mark some stuff deprecated
2545
2546         * gdk/gdkcolor.h: mark some stuff deprecated
2547         
2548         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2549
2550         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2551
2552 2001-02-16  Havoc Pennington  <hp@redhat.com>
2553
2554         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2555         scroll steps.
2556
2557         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2558         steps, and add Ctrl-arrow shortcuts for paging visually as with
2559         HScale, since Page Up and Page Down move logically.
2560
2561         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2562         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2563         
2564         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2565         steps
2566         (gtk_range_scroll): handle the visual steps
2567
2568         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2569         scroll steps
2570
2571         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2572         steps, not the logical ones.
2573
2574         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2575         (scroll_vertical): handle up/down steps
2576
2577 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2578
2579         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2580         Copy data and free data with free().
2581
2582         * gdk-pixbuf/gdk-pixbuf.c:
2583         * gdk-pixbuf/io-jpeg.c:
2584         * gdk-pixbuf/io-png.c:
2585         Use g_try_malloc/g_free instead malloc/free.
2586         
2587         * gdk-pixbuf/test-gdk-pixbuf.c:
2588         Must... initialize... gobject...
2589         
2590         * gdk-pixbuf/pixops/timescale.c:
2591         * gtk/gtkcalendar.c:
2592         Use g_malloc instead of malloc.
2593         
2594 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2595
2596         * gtk/testgtkrc:
2597         Comment out property assignments, these don't work yet.
2598
2599 2001-02-17  Havoc Pennington  <hp@pobox.com>
2600
2601         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2602         bit.
2603
2604 2001-02-17  Havoc Pennington  <hp@pobox.com>
2605
2606         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2607         shadowed variables that had broken size request in some cases,
2608         leading to bogus tooltips (#50996)
2609
2610 2001-02-06  Jon K Hellan  <hellan@acm.org>
2611
2612         Implement fast browsing of tooltips, bug #50619
2613         
2614         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2615         and last_popdown
2616         
2617         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2618         use_sticky_delay and last_popdown.
2619         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2620         time of popdown.
2621         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2622         is NULL.
2623         (gtk_tooltips_recently_shown): New static function.  Return true
2624         if < sticky_delay has elapsed since last popdown.
2625         (gtk_tooltips_event_handler): Display window after sticky_delay
2626         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2627         since last popdown.
2628         
2629 2001-02-17  Havoc Pennington  <hp@pobox.com>
2630
2631         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2632         instead of (). #6394
2633
2634         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2635         G_CONST_RETURN, make it return by reference, #50473
2636         
2637 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2638
2639         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2640         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2641         setup fields contain garbage (e.g. subwindow, breaking
2642         gdk_drawable_ref() upon event copy).
2643         (gtk_menu_stop_navigating_submenu_cb): same here.
2644
2645         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2646         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2647         * gtk/gtkclist.c (vertical_timeout): 
2648         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2649         default-zero-intialization for unions to memset(,0,), as unions are
2650         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2651         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2652
2653         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2654         g_closure_sink() warning.
2655
2656         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2657         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2658         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2659         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2660         
2661 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2662
2663         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2664         gtk_*_store_get, and moved to GtkTreeModel.
2665
2666         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2667
2668         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2669
2670         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2671
2672         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2673         set the func.
2674
2675         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2676         freeze/thaw notify between setting all the properties for a cell.
2677
2678         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2679
2680 2001-02-15  Havoc Pennington  <hp@redhat.com>
2681
2682         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2683         the X coordinates so they're with respect to the line, rather than 
2684         with respect to the layout.
2685
2686         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2687         Mallabone
2688
2689         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2690         and inverted test
2691
2692         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2693         #50806
2694
2695         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2696
2697         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2698         gtk_text_iter_is_end
2699
2700         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2701         rename gtk_text_buffer_get_end_iter
2702
2703         * gtk/testgtk.c (create_labels): Add test for selectable
2704
2705         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2706         the selection stuff. This code is kind of broken since it doesn't 
2707         use the theme engine.
2708
2709         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2710         fix infinite loop and y offset problem
2711         (gdk_draw_layout_line_with_colors): fix foreground color handling
2712
2713         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2714         that makes the label selectable.
2715         
2716         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2717         layout when the style is set, since fonts etc. could have changed.      
2718
2719 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2720
2721         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2722
2723         * gtk/gtktreemodelsimple.[ch]: removed.
2724
2725 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2726
2727         * gtk/gtktreemodelmapping.[ch]:
2728         New files. Implement GtkTreeModelMapping.
2729         
2730         * gtk/Makefile.am:
2731         Add gtktreemodelmapping.[ch].
2732         
2733         * gtk/gtk.h:
2734         Add gtktreemodelmapping.h
2735
2736         * gtk/treestoretest.c:
2737         Test the GtkTreeModelMapping
2738
2739 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2740
2741         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2742         have a demo, we might as well pass in real values.  Thanks to
2743         clahey for pointing this out.
2744
2745 2001-02-14  Havoc Pennington  <hp@pobox.com>
2746
2747         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2748         "static" to a private function
2749         (gtk_image_menu_item_class_init): remove destroy handler,
2750         add "image" object property
2751
2752 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2753
2754         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2755         Add a shortcut if the window and the current clip_region doesn't
2756         overlap. This is needed when there are a lot of windows in a
2757         window. The layout test in testgtk is a good test.
2758
2759         * gdk/linux-fb/gdkwindow-fb.c:
2760         Whitespace fix.
2761
2762 2001-02-13  Sven Neumann  <sven@convergence.de>
2763
2764         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2765
2766 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2767
2768         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2769         Don't reference last_cursor if it is null. Fixes crash when rotating
2770         the screen before having moved the mouse.
2771
2772         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2773
2774         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2775
2776         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2777         when using 90 or 270 degrees rotation.
2778
2779 2001-02-12  Havoc Pennington  <hp@pobox.com>
2780
2781         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2782         it always set the foreground, even if we were only using
2783         a stipple.
2784         (gdk_draw_layout_line_with_colors): new function, allow
2785         override colors
2786         (gdk_draw_layout_with_colors): new function, allow override
2787         colors
2788         (gdk_pango_layout_line_get_clip_region): function to get the clip
2789         region for a logical text range
2790         (gdk_pango_layout_get_clip_region): get the clip region for a
2791         logical text range
2792
2793         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2794         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2795         the right number of arguments.
2796
2797         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2798         enhance the function to check that node data corresponds to a 
2799         view still belonging to the tree.
2800
2801         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2802         GtkTreePath
2803         (gtk_tree_view_inserted): ditto
2804         (gtk_tree_view_child_toggled): ditto
2805
2806         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2807         simplify this code.
2808
2809         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2810         a PangoAttrList
2811
2812         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2813
2814         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2815
2816         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2817         size in the size request 
2818         (gtk_menu_bar_size_allocate): consider toggle size here
2819
2820         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2821         that displays a widget in the toggle slot
2822
2823         * gtk/testgtk.c: test GtkImageMenuItem
2824
2825         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2826         
2827         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2828         request and allocation
2829
2830         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2831
2832         * gtk/gtkcheckmenuitem.c
2833         (gtk_check_menu_item_toggle_size_request): ditto
2834         
2835 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2836
2837         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2838         reference.
2839
2840         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2841         and refuse to initialize GTK+ if they fail.
2842
2843 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2844
2845         * configure.in: Add check for gtk-doc version.
2846
2847 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2848
2849         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2850         where the xpad/ypad was only being used on one side!
2851
2852 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2853
2854         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2855         function, copied from X11 version.
2856
2857         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2858         DestroyCursor failures. The reason for the problem (despite the
2859         inconsistent messages from GetLastError()) was that
2860         DestroyCursor() cannot be called while a cursor is set in a
2861         window. Set the new cursor first and then destroy the old one.
2862         Thanks to jpe@archaeopteryx.com.
2863
2864         * gdk/win32/gdkcc-win32.c: Remove.
2865
2866         * gdk/win32/Makefile.am: Remove from here, too.
2867         
2868         * gdk/gdk.def
2869         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2870
2871         * gtk/gtk.def
2872         * gtk/makefile.mingw.in: Updates.
2873
2874 2001-02-08  Havoc Pennington  <hp@redhat.com>
2875
2876         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2877         add a widget to a bin that already has a child.
2878
2879         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2880
2881         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2882         
2883         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2884
2885         * gdk/gdk.h: remove gdkcc.h
2886
2887         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2888
2889         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2890         GdkPixbuf, since the previous implementation was GdkColorContext
2891         dependent.
2892
2893         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2894         
2895 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2896
2897         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2898         a sane value!
2899
2900 2001-02-08  Havoc Pennington  <hp@redhat.com>
2901
2902         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2903         lighten them.
2904
2905 2001-02-08  Havoc Pennington  <hp@redhat.com>
2906
2907         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2908         validation idle
2909
2910         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2911         cell renderer
2912
2913         * demos/pixbuf-demo.c (timeout): remove deprecated
2914         gtk_widget_draw
2915
2916         * demos/testpixbuf-save.c (main): remove deprecated
2917         gtk_drawing_area_size
2918
2919         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2920         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2921         at the start of the allocation.
2922         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2923         unsetup or NULL model.
2924
2925         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2926         even/odd/sorted cells in the tree view.
2927
2928         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2929         bugfixes
2930
2931         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2932         backgrounds with draw_flat_box using different detail for even/odd
2933         rows.
2934
2935         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2936         row, so we can draw the alternating colors thing
2937
2938         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2939         property from a synonym property, notify for the synonym.
2940         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2941         (gtk_text_tag_get_property): Always return the font, even if
2942         all its fields aren't set
2943
2944         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2945         store the attr list; it leaves us with no way to change attributes
2946         in _render according to the render flags, and no way to implement
2947         get_property. Instead store all the specific text attributes. 
2948         Separate whether an attribute is enabled from its value. Sync all
2949         properties with GtkTextTag, make them all consistent, etc.
2950
2951         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2952         renderers can highlight the sort row/column     
2953
2954         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2955         accessor functions to get values; this has the side effect of
2956         showing up which accessor functions were missing. Added those.
2957
2958         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2959         set_alignment, to be consistent with GtkLabel, GtkMisc
2960
2961         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2962         arrow.
2963
2964         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2965
2966         * gtk/gtktreesortable.h: updates in here
2967
2968 2001-02-07  Sven Neumann  <sven@convergence.de>
2969
2970         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2971         pango dimensions after painting the background. We used to draw
2972         gigantic flat boxes here.
2973
2974 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2975
2976         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2977         error introduced with earlier commit) (pointed out by
2978         Ollie Lho)
2979
2980 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2981
2982         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2983         which are no longer necessary.
2984
2985 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2986
2987         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2988
2989 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2990
2991         * gdk/gdk.def
2992         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2993         Provide dummy implementations.
2994
2995 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2996
2997         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2998
2999         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3000         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3001         deprecated this function.
3002
3003         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3004         argument.
3005
3006 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3007
3008         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3009
3010 2001-02-03  Havoc Pennington  <hp@pobox.com>
3011
3012         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3013         Mikael Hermansson with patch from Mikael (if there was a toggle
3014         start one after the first character in the range, this function
3015         was broken). Bug #50380
3016
3017 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3018
3019         * configure.in: Remove confusing comment about X11.
3020
3021 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3022
3023         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3024         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3025         
3026 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3027
3028         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3029         it breaks things on BSD. If you want to compile GTK+ with
3030         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3031         when configuring, since GTK+ simply can't be "pure ANSI" 
3032         in the header files it uses. (#8170, Greg Hudson)
3033
3034 2001-02-02  Havoc Pennington  <hp@redhat.com>
3035
3036         * gtk/gtkwindow.c: docs
3037
3038         * gtk/gtkwidget.c: docs
3039         (gtk_widget_set_colormap): add a reference to the colormap
3040         (gtk_widget_get_default_colormap): add a reference to the colormap
3041
3042         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3043
3044         * gtk/gtktextiter.c: docs
3045
3046         * gtk/gtkmain.c (gtk_propagate_event): docs
3047
3048         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3049         (gtk_paned_set_position): docs
3050
3051         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3052         sort interface, no implementation yet.
3053
3054         * demos/testpixbuf.c (new_testrgb_window): replace
3055         gtk_drawing_area_size() with gtk_widget_set_usize()
3056
3057         * demos/testpixbuf-drawable.c (main): ditto
3058         
3059         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3060
3061         * gtk/gtktextbuffer.c: docs
3062
3063         * gtk/gtkstock.c: docs
3064
3065         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3066
3067         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3068
3069         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3070         
3071         * gtk/gtkimage.c: add some docs in here
3072         (gtk_image_size_request): change name of
3073         gtk_widget_render_stock_icon
3074         (gtk_image_get_icon_set): don't dup returned string
3075         (gtk_image_get_icon_set): don't dup returned string
3076
3077         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3078         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3079         and gtkiconfactory.h functions
3080
3081         * gtk/gtkiconfactory.c: add some docs in here
3082
3083         * gtk/gtkmain.c (gtk_get_default_language): document
3084         (gtk_get_current_event): document
3085         (gtk_get_current_event_state): document
3086         (gtk_get_event_widget): document
3087
3088         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3089
3090         * gtk/gtkcontainer.c: Add some documentation
3091         (gtk_container_add): give a more explanatory warning on adding an
3092         already-parented widget, this is kind of a FAQ and also a common
3093         typo that's easier to debug with a nice warning 
3094
3095         * gtk/gtkcellrenderertoggle.c
3096         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3097         adding this, it's useless
3098         (gtk_cell_renderer_toggle_set_active): remove
3099         (gtk_cell_renderer_toggle_get_radio): add
3100
3101         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3102         the NULL cell renderer, that doesn't make any sense to me. 
3103
3104         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3105         demo code should never use deprecated features.
3106
3107         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3108         code should never use deprecated features.
3109
3110         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3111         gtk_widget_queue_clear_area deprecated
3112
3113         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3114         deprecated
3115
3116         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3117
3118         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3119         a GdkImage deprecated, replaced by new consistently-named
3120         functions       
3121
3122         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3123
3124         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3125
3126         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3127         deprecated
3128
3129         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3130         so it won't appear in docs and confuse people.
3131
3132         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3133
3134         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3135         macros deprecated. (can't mark the type itself deprecated, since
3136         GtkProgressBar is not deprecated and we need the type decl to use
3137         GtkProgressBar)
3138
3139         * gtk/gtkpixmap.h: Mark deprecated
3140
3141         * gtk/gtkoldeditable.h: Mark deprecated
3142
3143         * gtk/gtklist.h: Mark deprecated
3144
3145         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3146         for anything anymore.
3147
3148         * gtk/gtkctree.h: Mark deprecated
3149
3150         * gtk/gtkclist.h: Mark deprecated
3151
3152         * gtk/gtkpreview.h: Mark deprecated
3153
3154         * gtk/gtkpacker.h: Mark deprecated
3155
3156         * gtk/gtktipsquery.h: Mark deprecated
3157
3158         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3159
3160         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3161
3162         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3163
3164         * gtk/gtkruler.h: Add comment that it will move out of GTK
3165
3166         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3167
3168         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3169
3170 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3171
3172         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3173         gdk_colormap_sync private since it was never exported
3174         in a header file.
3175
3176         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3177         colormap->colors[] for StaticGray, StaticColor colormaps.
3178
3179         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3180         was being used as if it was image->bits_per_pixel.
3181
3182         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3183         for the image in the GdkImage structure since it isn't
3184         reconstructable, and we need it to handle packed types
3185
3186         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3187         the assumption that on Win32 image->bits_per_pixel == image->depth,
3188         always.
3189
3190         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3191
3192         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3193         warning message if no converter can be found. 
3194
3195 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3196
3197         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3198         chars to isupper() / tolower(). (#567)
3199
3200         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3201         to clear up 64-bit warnings. (#567)
3202
3203 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3204
3205         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3206         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3207
3208         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3209         since some people set $(libdir) separately. (#1290, David Kaelbling)
3210
3211 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3212
3213         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3214         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3215         MAXPATHLEN, but the code here depends on a fixed value.)
3216         (#4524)
3217
3218 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3219
3220         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3221         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3222
3223 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3224
3225         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3226         viewable there is no way that moving the node will cause the 
3227         focus row to become not viewable, so omit check on the visibility
3228         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3229
3230 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3231
3232         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3233         selection before inserting new text.
3234
3235 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3236
3237         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3238         Make the sensitivity of the reparented child track that of
3239         the original parent menu item. (#34218, David Hodson)
3240
3241         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3242         the case where the current item is destroyed properly.
3243
3244         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3245         some edge cases with child-less menuitems.
3246         
3247 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3248
3249         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3250         key pop down window. (#12074, Jon K Hellan)
3251
3252 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3253
3254         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3255         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3256         The solution here isn't perfect - you get an extraneous
3257         emission of "toggle", which could conceivably confuse an app,
3258         but better than the current situation. LXR search seems to
3259         indicate that no apps in GNOME CVS connect to "toggle".
3260
3261 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3262
3263         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3264         gtk_public_h_sources to directly here to avoid warning when
3265         building srcdir != builddir. (#9656)
3266
3267 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3268
3269         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3270         handlers in gtkrange.c return the proper values (TRUE == handled)
3271         (#10316).
3272
3273         This is just the tip of the iceberg, but gtkrange.c is the
3274         most common place where the propagation is problematical,
3275         and also a place where it is almost certainly safe to change
3276         this in the stable branch.
3277
3278         (You don't want right click popups on a range control or anything...)
3279
3280 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3281
3282         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3283         area on focus out, even if a background pixmap isn't set.
3284         (#13941)
3285         
3286 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3287
3288         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3289         to deal with setting the shape properly when scrolling arrows are
3290         turned on, but not visible because there is sufficient space.
3291         (#13432)
3292
3293 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3294
3295         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3296         items with submenus, destroy the item along with the submenu.
3297         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3298         properly.
3299
3300         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3301         later.
3302
3303 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3304
3305         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3306         the focus widget sometimes wasn't drawn with the default if there
3307         was no default widget.
3308
3309         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3310         unreference pixmaps. 
3311
3312         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3313         for some extra safety.
3314
3315 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3316
3317         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3318         the text of a cell to the old pointer value better, by
3319         copying the new text before freeing the old text. Some code
3320         cleanup. (#8079, Karl Nelson)
3321
3322 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3323
3324         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3325         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3326
3327 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3328
3329         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3330         item from a menu, check to see if it matches 
3331         menu->old_active_menu_item, and if so, unref and clear
3332         old_active_menu_item (Patch from Pavel Cisler)
3333
3334         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3335         menu_shell->active_menu_item, if it is the child being
3336         removed. (Patch based on that of Gene Ragan, #50337)
3337
3338 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3339
3340         * gdk/linux-fb/gdkselection-fb.c: 
3341         * gdk/linux-fb/gdkcolor-fb.c: 
3342         * gdk/linux-fb/gdkdrawable-fb2.c: 
3343         * gdk/linux-fb/gdkfont-fb.c: 
3344         * gdk/linux-fb/gdkim-fb.c: 
3345         * gdk/linux-fb/gdkinput.c: 
3346         * gdk/linux-fb/gdkkeyboard-fb.c: 
3347         * gdk/linux-fb/gdkmain-fb.c: 
3348         * gdk/linux-fb/gdkrender-fb.c: 
3349         A bunch of whitespace cleanup.
3350         
3351 2001-01-30  Havoc Pennington  <hp@pobox.com>
3352
3353         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3354         #ifdef GTK_ENABLE_BROKEN.
3355
3356         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3357         GTK_ENABLE_BROKEN just before including the broken headers.
3358         
3359         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3360         deprecated types registered.
3361
3362         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3363         we have to test the broken stuff.
3364
3365         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3366         
3367 2001-01-30  Havoc Pennington  <hp@redhat.com>
3368
3369         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3370         here where prev pointer was set to the wrong thing
3371
3372         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3373         (gtk_tree_path_is_descendant): new function
3374
3375         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3376         cached length
3377         (gtk_list_store_get_iter): don't modify iter if we can't get the
3378         path.
3379
3380         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3381         
3382         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3383         GtkTreeDragDest
3384
3385         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3386         was causing segfault
3387
3388         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3389         pointer to NULL
3390
3391         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3392
3393         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3394         on returning FALSE
3395         (gtk_list_store_iter_children): ditto
3396         (gtk_list_store_iter_nth_child): ditto
3397         (gtk_list_store_iter_nth_child): ditto
3398         (gtk_list_store_iter_parent): ditto
3399
3400         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3401         on iter->user_data != NULL instead of silently accepting it.
3402         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3403         we are returning TRUE.
3404         (gtk_tree_store_iter_children): ditto
3405         (gtk_tree_store_iter_nth_child): ditto
3406         (gtk_tree_store_iter_parent): ditto
3407         (gtk_tree_store_insert): remove handling of parent->user_data ==
3408         NULL, replace with parent == NULL       
3409
3410         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3411         and a comment explaining things
3412
3413         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3414         interface support to GtkTreeStore.
3415
3416         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3417         FALSE if no prev, fix
3418
3419         * gtk/gtktreeview.c (set_source_row): use a row reference
3420         (set_dest_row): use a row reference
3421
3422 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3423
3424         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3425         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3426         (gtk_tree_selection_select_iter): The same as above.
3427
3428 2001-01-26  Havoc Pennington  <hp@redhat.com>
3429
3430         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3431         which holds a handle to a specific row (particular set of values
3432         in the model, i.e. pointer-identity row).
3433
3434         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3435         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3436         Still need to use it for the src/dest row saved on the drag context.
3437
3438 2001-01-26  Havoc Pennington  <hp@redhat.com>
3439
3440         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3441
3442         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3443         not offset by TREE_VIEW_HEADER_HEIGHT
3444         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3445         TREE_VIEW_HEADER_HEIGHT
3446
3447         * configure.in (included_loaders): for me, --with-included-loaders
3448         generates the error "the specified loader yes does not exist",
3449         i.e. the arg defaults to "yes", so change test for value ""
3450         to test for value "yes", and include all loaders in that case.
3451
3452         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3453
3454         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3455         handle TREE_VIEW_VERTICAL_SEPARATOR
3456         (gtk_tree_view_bin_expose): fix to consider the row offset as
3457         pointing halfway into vertical separator.       
3458         (gtk_tree_view_draw_node_focus_rect): ditto
3459
3460         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3461         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3462         (TRUE) to be called.
3463
3464         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3465         debug mode where the invalid region is colored in on invalidate,
3466         so you can see the flicker and know whether your redraw code is 
3467         doing a good job.
3468
3469         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3470         tree window coordinates (clip rect is in tree window coords)
3471
3472         * gtk/Makefile.am: add gtktreednd.[hc]
3473
3474         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3475
3476         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3477         drag-and-drop data operations on a model (so we can set up tree
3478         drag-and-drop automatically)
3479
3480         * gtk/testgtk.c: Add a window to change sensitivity in the
3481         GtkLabel test; add a way to change the entry frame in GtkEntry
3482         test
3483
3484         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3485         (gtk_entry_get_has_frame): new functions to remove the frame
3486         around an entry
3487         (gtk_entry_size_request): shrink requisition if no frame
3488         (gtk_entry_draw_focus): don't draw frame if no frame
3489
3490         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3491         checks inside a cell renderer
3492         (gtk_default_draw_option): ditto for options
3493
3494         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3495         children from the alignment, not the button
3496         (gtk_tree_view_column_init): ref/sink the column, to emulate
3497         GObject refcounting.
3498
3499         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3500         
3501         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3502         Use theme functions to draw the toggles 
3503
3504         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3505
3506         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3507         GdkPangoAttrEmbossed to use in rendering insensitive text
3508
3509         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3510
3511         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3512         using new GDK features
3513         
3514 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3515
3516         * gtk/gtkimage.c:
3517         Splitted gtk_image_clear into gtk_image_clear() and
3518         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3519         to avoid leaks.
3520
3521         * gtk/gtklabel.c (set_markup):
3522         Don't leak text.
3523
3524         * gtk/gtktextlayout.c:
3525         Always free display->shaped_objects.
3526
3527         * gtk/testgtk.c (create_clist):
3528         Don't leak custom style.
3529
3530 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3531
3532         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3533         Don't leak image. Simplify using gdk_colormap_query_color().
3534         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3535
3536         * linux-fb/gdkcolor-fb.c:
3537         Implemented gdk_colormap_query_color.
3538
3539 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3540
3541         * linux-fb/gdkcursor-fb.c:
3542         Don't leak built-in cursors.
3543
3544         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3545         Don't leak tmp_points.
3546
3547         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3548         Don't modify desc. Don't leak font if the PangoFont
3549         isn't found.
3550         
3551         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3552         Free dash_list.
3553
3554         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3555         Don't leak string.
3556         
3557 2001-01-20  Havoc Pennington  <hp@pobox.com>
3558
3559         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3560         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3561         me, matches Pango
3562
3563 2001-01-22  Havoc Pennington  <hp@redhat.com>
3564
3565         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3566
3567         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3568
3569         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3570         Remove, move back to gdk-pixbuf
3571
3572         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3573         to all the word functions
3574
3575         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3576         before doing anything on NULL layout or if we don't have the focus
3577
3578         * gtk/testtext.c (fill_example_buffer): "justification"
3579
3580         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3581         to be called "justification" not "justify"
3582
3583         * demos/gtk-demo/textview.c (create_tags): "justification"
3584         
3585         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3586
3587 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3588
3589         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3590         Don't leak visible_region. Use visible_region instead of region.
3591         
3592         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3593         Don't do extra gdk_drawable_ref(). This is not X.
3594         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3595         gdk_fb_focused_window is ref:ed.
3596         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3597         windows.
3598
3599 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3600
3601         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3602         Don't leak the PangoFontDescriptor.
3603
3604 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3605
3606         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3607         when not realized.
3608         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3609         (gtk_tree_view_realize): add scroll_to support
3610         (gtk_tree_view_finalize): add a finalize method.  Populate.
3611         (gtk_tree_view_insert_column): ref and sink the column.
3612         (gtk_tree_view_append_column): ref and sink the column.
3613         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3614         individual nodes.  Should make the code much more efficient, if
3615         actually used.
3616
3617 2001-01-19  Havoc Pennington  <hp@redhat.com>
3618
3619         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3620         byte_offset variable was being used to mean both "offset into
3621         layout" and "offset into buffer line" which was no longer true
3622         with addition of preedit string; fix
3623
3624 2001-01-19  Havoc Pennington  <hp@redhat.com>
3625
3626         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3627
3628         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3629         function
3630
3631         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3632         implement
3633
3634         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3635         scroll_to_cell, matches TextView scroll functions better
3636         (gtk_tree_view_tree_to_widget_coords): new function
3637         (gtk_tree_view_widget_to_tree_coords): new function
3638         (gtk_tree_view_get_visible_rect): new function
3639         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3640         (gtk_tree_view_draw_node_focus_rect): new function moved from
3641         draw_focus, also, use width of bin_window as width of the focus
3642         rect
3643         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3644         already-expanded rows
3645         (gtk_tree_view_get_cell_rect): new function
3646         (gtk_tree_view_get_path_at_pos): return the click position
3647         relative to the passed-in cell
3648         (gtk_tree_view_set_expander_column): new function
3649
3650         * configure.in: remove gtk-config-2.0 chmod
3651
3652         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3653         and properly handle drags with targets we don't understand
3654         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3655         scrolling anyway
3656         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3657         mark invisible
3658
3659         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3660         function
3661         (gtk_drag_dest_get_target_list): new function
3662         (gtk_drag_dest_set_target_list): new function
3663         
3664         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3665
3666         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3667         related to drag-and-drop
3668
3669 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3670
3671         * gdk/linux-fb/gdkprivate-fb.h:
3672         Define EMULATE_GDKFONT.
3673         Add extra pango_font stuff to GfkFontPrivate.
3674         
3675         * gdk/linux-fb/gdkdrawable-fb2.c:
3676         * gdk/linux-fb/gdkfont-fb.c:
3677         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3678         emulation using PangoFont.
3679
3680 2001-01-17  Havoc Pennington  <hp@pobox.com>
3681
3682         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3683         all the non-deprecated set_foo functions. Added missing object
3684         properties, and added g_object_notify() to setters. 
3685         Wrote docs.
3686         
3687 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3688
3689         * gtk/gtkmain.c
3690         * gtk/gtkrc.c: (Win32) Use the new
3691         g_win32_get_package_installation_(sub)directory() functions.
3692
3693         * config.h.win32.in: New file.
3694         
3695         * config.h.win32: Removed.
3696
3697         * configure.in: Output config.h.win32.
3698
3699         * Makefile.am: Add it to EXTRA_DIST.
3700
3701         * gtk/gtk.def: Update.
3702
3703 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3704
3705         * gtk/gtklabel.c (gtk_label_size_request): Set the
3706         attributes onto the PangoLayout even if they are newly
3707         created from label->pattern.
3708
3709 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3710
3711         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3712
3713         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3714         structures in functions. Fixes bug where gtk_dataset_*
3715         was accidentally still being used in one place, causing
3716         every dest side event to be treated independently.
3717
3718         * gtk/gtkdnd.c: Remove last vestages of handling
3719         ::draw (fixes warning)
3720         
3721         * gtk/gtkentry.[ch]: Add drag and drop support.
3722
3723         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3724         new function gtk_check_drag_threshhold() for checking
3725         to check if (dx,dy) has exceeded the threshhold for starting
3726         a drag and use it everywhere.
3727
3728 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3729
3730         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3731         add -I{includedir}/gtk-2.0.
3732
3733         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3734         gdk/gdk-pixbuf.h: Doc fixups.
3735         
3736         * gtk/gtkobject.h: Remove trailing , from enum
3737
3738 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3739
3740         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3741         Doh! Mixed up x and y.
3742
3743         * gdk/linux-fb/gdkglobals-fb.c:
3744         Removed gdk_fb_pointer_grab_window_events,
3745         added _gdk_fb_pointer_grab_owner_events and
3746         _gdk_fb_keyboard_grab_owner_events.
3747
3748         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3749         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3750         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3751         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3752         Send crossing events after ungrab finished.
3753         (gdk_keyboard_grab): Set ..._owner_events
3754         (type_masks): Move out of function.
3755         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3756         gdk_fb_keyboard_event_window): New functions, return the
3757         window an event should be targeted at. Handles grabs and
3758         event propagation. Can return NULL.
3759         (gdk_event_make): Remove event_mask checking. Now always
3760         returns an event.
3761                 
3762         * gdk/linux-fb/gdkkeyboard-fb.c:
3763         * gdk/linux-fb/gdkproperty-fb.c:
3764         * gdk/linux-fb/gdkselection-fb.c:
3765         Use new event_window/gdk_event_make() behaviour.
3766         
3767         * gdk/linux-fb/gdkmouse-fb.c:
3768         Use new event_window/gdk_event_make() behaviour.
3769         Only send motion events if in the same window.
3770         If grabbed, use cursor from window if sibling of grabbed
3771         window, and cursor from grabbed window otherwise.
3772
3773         * gdk/linux-fb/gdkprivate-fb.h:
3774         Update gdk_fb_window_send_crossing_events, gdk_event_make
3775         and grab varaible declarations. Add gdk_fb_*_event_window().
3776
3777         * gdk/linux-fb/gdkwindow-fb.c:
3778         Use new event_window/gdk_event_make() behaviour.
3779         Keep correct track of focus window.
3780         (gdk_window_set_events): Set all specific button motion masks
3781         if GDK_BUTTON_MOTION_MASK set.
3782
3783         * gtk/gtkdnd.c (gtk_drag_update):
3784         Free info->last_event if gdk_drag_motion returned FALSE.
3785
3786 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3787
3788         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3789         Eliminate redraws when input-only windows are shown or
3790         hidden. Thanks to jpe@archaeopteryx.com.
3791
3792 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3793
3794         * docs/faq/gtk-faq.sgml: FAQ update:
3795           - Update to bugzilla
3796           - Add GTK+ and security/SUID/SGID
3797           - Add DnD question
3798
3799 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3800
3801         * gdk/linux-fb/gdkdnd-fb.c:
3802         Some cleanups.
3803         
3804 2001-01-15  Havoc Pennington  <hp@pobox.com>
3805
3806         * tests/testtreeview.c: add test stuff for CellRendererToggle
3807
3808         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3809         accessor
3810
3811         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3812         only toggle on button press (would do release like GtkButton, but
3813         we'd need implicit grab code for treeview cells)
3814
3815 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3816
3817         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3818
3819         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3820         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3821
3822         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3823         to g_{locale,filename}_{to,from}_utf8 to match current API.
3824
3825         * gtk/makefile.msc.in (gtk_OBJECTS)
3826         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3827
3828         * gtk/gtk.def: Update.
3829
3830 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3831
3832         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3833         implementaion that more closely mimics the events that an X server
3834         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3835         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3836         with nested preview widgets, for instance, more responsive when
3837         you move the mouse quickly into them.
3838         (find_window_for_pointer_event): Make it actually compile.
3839         (gdk_event_translate): Set send_event to the value of
3840         InSendMessage (). This doesn't really mean the same as X11's
3841         send_event flag, but is close enough, says jpe@archaeopteryx.com
3842
3843 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3844
3845         * gdk/linux-fb/gdkdnd-fb.c:
3846         Implemented drag and drop.
3847         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3848         when it tries to free and then copy the same event (info->last_event).
3849         I am not sure about why this happens, but will continue looking.
3850
3851 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3852
3853         * gdk/linux-fb/gdkwindow-fb.c:
3854         Use gdk_window_invalidate_rect instead of
3855         gdk_window_invalidate_rect_clear to minimise flashing.
3856         When hiding windows you need to clear the root window though.
3857
3858 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3859
3860         * gdk/linux-fb/gdkdrawable-fb2.c:
3861         For optization, add an full_shapes argument to gdk_fb_clip_region.
3862         If this is false, only the cliprects of the shapes are used.
3863
3864         * gdk/linux-fb/gdkprivate-fb.h:
3865         Export gdk_fb_window_peek_shape.
3866         Add full_shapes to gdk_fb_clip_region.
3867
3868         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3869         When moving a window, don't clear everything under the it, just the
3870         root window. Makes stuff faster and flash less.
3871         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3872         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3873         offset of the shape.
3874         
3875
3876 2001-01-12  Havoc Pennington  <hp@redhat.com>
3877
3878         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3879         current invalid region, fixes redraw bug while scrolling the 
3880         text widget
3881
3882         * gtk/gtktextview.c, gtk/gtktextview.h:
3883         Rearrange the scrolling/validation/etc. code in a major way, 
3884         so it seems to make sense to me. Probably isn't genuinely that
3885         much better, but...
3886
3887         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3888         notifies
3889
3890         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3891
3892 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3893
3894         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3895         Hide mouse pointer while rotation. Show it afterwards.
3896
3897 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3898
3899         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3900         windows in consideration when generating clip region.
3901
3902         * gdk/linux-fb/gdkfb.h:
3903         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3904
3905         * gdk/linux-fb/gdkprivate-fb.h:
3906         Add shape to GdkWindowFBDatat.
3907         exported gdk_fb_window_get_abs_shape().
3908         removed gdk_fb_draw_lines declaration.
3909
3910         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3911         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3912         send focus changes when there is a grabbed window.
3913         (gdk_window_get_pointer): Handle shaped windows.
3914         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3915         (gdk_fb_window_peek_shape): Returns the shape for a window,
3916         handles GDK_FB_USE_CHILD_SHAPE.
3917         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3918         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3919         (gdk_window_shape_combine_mask): Implement.
3920
3921         * gtk/gtkwindow-decorate.c:
3922         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3923         setting the shape of a window makes the window transparent.
3924
3925 2001-01-11  Havoc Pennington  <hp@redhat.com>
3926
3927         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3928
3929 2001-01-10  Havoc Pennington  <hp@redhat.com>
3930
3931         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3932         add this function, bug 40251
3933
3934         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3935         of type macro   
3936
3937 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3938
3939         * acconfig.h:
3940         Added ENABLE_SHADOW_FB
3941
3942         * configure.in:
3943         Added --disable-shadowfb
3944
3945         * gdk/linux-fb/gdkcursor-fb.c:
3946         Update shadowfb when updating cursor
3947
3948         * gdk/linux-fb/gdkdrawable-fb2.c:
3949         Added wrappers for shadowfb that calls  the normal drawable
3950         methods, but calls gdk_shadow_fb_update(bounding box) when
3951         GdkWindows are drawed to.
3952         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3953         which also returns the bounding box.
3954
3955         * gdk/linux-fb/gdkfb.h:
3956         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3957
3958         * gdk/linux-fb/gdkgeometry-fb.c:
3959         Update shadowfb when scrolling window.
3960
3961         * gdk/linux-fb/gdkglobals-fb.c:
3962         Add _gdk_fb_screen_angle.
3963         
3964         * gdk/linux-fb/gdkkeyboard-fb.c:
3965         Test code for screen rotation. Shift-F2 in the xlate driver
3966         rotates the screen.
3967
3968         * gdk/linux-fb/gdkmain-fb.c:
3969         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3970
3971         * gdk/linux-fb/gdkmouse-fb.c:
3972         Use fb_width/height instead of modeinfo.xres/yres.
3973
3974         * gdk/linux-fb/gdkprivate-fb.h:
3975         Added fb_men, fb_width, fb_height & fb_stride. When using
3976         shadow fb these can differ from the framebuffer stuff.
3977         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3978         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3979         _gdk_fb_screen_angle. Removed CM, RP.
3980
3981         * gdk/linux-fb/gdkrender-fb.c:
3982         Added code for shadowfb handling and screen rotation using
3983         shadowfb.
3984
3985         * gdk/linux-fb/gdkwindow-fb.c:
3986         Use fb_mem, fb_stride, fb_width, fb_height.
3987         Added recompute_rowstride to reset the rowstride of all windows.
3988         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3989         window abs positions and window rowstrides. Usefull when the
3990         rotation has changed.
3991
3992 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3993
3994         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3995
3996 2001-01-10  Havoc Pennington  <hp@redhat.com>
3997
3998         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3999         where sibling == iter
4000         (gtk_tree_store_insert_after): handle sibling == iter
4001         (gtk_tree_store_prepend): remove stamp checks
4002         (gtk_tree_store_insert_before): ditto
4003         (gtk_tree_store_append): ditto
4004         (gtk_tree_store_get_path): ditto
4005         (gtk_tree_store_get_value): ditto
4006         (gtk_tree_store_iter_has_child): ditto
4007         (gtk_tree_store_iter_n_children): ditto
4008         (gtk_tree_store_iter_nth_child): ditto
4009         (gtk_tree_store_insert_after): ditto
4010         (gtk_tree_store_is_ancestor): ditto
4011         (gtk_tree_store_iter_depth): ditto
4012         (gtk_tree_store_insert_before): assert that sibling's parent is
4013         the same as the passed-in parent
4014         (gtk_tree_store_insert_after): assert that sibling's parent is
4015         the same as the passed-in parent
4016
4017         
4018         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4019         function to get the first iterator in a model
4020         
4021         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4022         conventionally the "root" in this sense is just NULL afaict.
4023
4024         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4025         where sibling == iter
4026         (gtk_list_store_insert_after): handle case where sibling == iter
4027
4028         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4029         automated tests for ListStore, TreeStore
4030
4031         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4032         (gtk_list_store_insert): update tail pointer, and fix it to work
4033         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4034         (gtk_list_store_append): use tail to be faster
4035         (gtk_list_store_prepend): fix it, update tail pointer
4036         (gtk_list_store_insert_after): fix it, update tail pointer
4037
4038         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4039         the list
4040
4041 2001-01-09  Havoc Pennington  <hp@redhat.com>
4042
4043         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4044         is NULL due to a pending resize
4045
4046         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4047         column width to values less than 1
4048
4049         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4050         width to be between min/max width, and still set the width 
4051         even if autosize is turned on, so the tree view can use this 
4052         function in order to autosize.
4053         (gtk_tree_view_column_init): set initial width to 1 not 0
4054
4055         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4056         setter function to modify column width, so we get notification
4057         (gtk_tree_view_insert_iter_height): ditto
4058         (gtk_tree_view_calc_size): ditto
4059         (gtk_tree_view_check_dirty): ditto
4060
4061         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4062         properties to change all the interesting attributes of the tree
4063         view column.
4064         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4065         (gtk_tree_view_column_get_clickable): add
4066         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4067         attributes; assume a cell renderer with equivalent object
4068         properties has been swapped in. Do g_object_notify().
4069         (gtk_tree_view_column_set_visible): g_object_notify
4070         (gtk_tree_view_column_get_sizing): rename from get_col_type
4071         (gtk_tree_view_column_set_sizing): g_object_notify
4072         (gtk_tree_view_column_set_width): add g_object_notify
4073         (gtk_tree_view_column_set_min_width): ditto
4074         (gtk_tree_view_column_set_max_width): ditto
4075         (gtk_tree_view_column_set_title): ditto
4076         (gtk_tree_view_column_set_clickable): ditto
4077         (gtk_tree_view_column_set_widget): ditto
4078         (gtk_tree_view_column_set_justification): ditto
4079
4080 2001-01-09  Havoc Pennington  <hp@redhat.com>
4081
4082         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4083         there are no rows in the model
4084
4085         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4086         NULL, then return the start of the list
4087
4088         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4089         if we can't get any rows from an empty model 
4090
4091         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4092         extraneous * after function pointer typedef usage
4093
4094         * Makefile.am: don't specify full path to cp and rm
4095
4096         * gtk/gtkcellrenderertextpixbuf.c
4097         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4098         NULL before dereferencing, fixes a segfault that happened from
4099         time to time
4100
4101         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4102         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4103         and reindent the function
4104         (gtk_cell_renderer_pixbuf_get_size): indentation
4105
4106         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4107         we quit it
4108         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4109         (gtk_dialog_set_default_response): New function, to set default
4110         button
4111         (gtk_dialog_set_response_sensitive): New function, to set 
4112         sensitivity of buttons
4113
4114         * gtk/gtkcellrendererpixbuf.c
4115         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4116         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4117
4118         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4119         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4120         also boxed types.
4121         (_gtk_tree_data_list_value_to_node): ditto
4122
4123         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4124         --gtk-debug=tree
4125
4126         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4127
4128         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4129
4130 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4131
4132         * gdk/win32/gdkevents-win32.c: Implement better mouse
4133         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4134         (find_window_for_pointer_event): New function.
4135         (gdk_event_translate): Use it when handling mouse events.
4136
4137 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4138
4139         * configure.in:
4140         Added --with-included-loaders option
4141
4142         * gdk-pixbuf/Makefile.am:
4143         * gdk-pixbuf/gdk-pixbuf-io.c:
4144         Add support for including selected gdk-pixbuf loaders only.
4145
4146         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4147         gtk_window_set_has_frame):
4148         Added inline documentation.
4149
4150         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4151         * docs/reference/gdk/tmpl/windows.sgml:
4152         Added inline documentation.
4153
4154 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4155
4156         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4157         realizing buttons that have already been realized.
4158
4159 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4160
4161         * tests/testtreeview.c (main): Show menu items before adding to
4162         option menu.
4163
4164         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4165         around if we kill them.
4166
4167         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4168         Return if we pass in a NULL model.
4169
4170 2001-01-08  Havoc Pennington  <hp@redhat.com>
4171
4172         * tests/testtreeview.c: hack on this some
4173
4174         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4175         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4176         list
4177         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4178
4179         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4180         functions
4181
4182 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4183
4184         * gtk/gtkwindow-decorate.[hc]:
4185         * gtk/Makefile.am:
4186         New files. Contains an implementation of a minimal WM for
4187         linux-fb.
4188
4189         * gtk/gtkwindow.h:
4190         Add the possibility for GtkWindows to specify a frame. This
4191         is used for the window decoration code, but could concievably
4192         be used for X programs too (xmms style windows).
4193         GtkWindow->frame is the toplevel window if the window is framed.
4194         The signal frame_event gets all events that are targeted to
4195         GtkWindow->frame.
4196         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4197         
4198         * gtk/gtkwindow.c:
4199         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4200         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4201
4202 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4203
4204         * docs/README.linux-fb:
4205         Correct filename ~/.pangoft2_aliases
4206
4207         * gdk/gdkwindow.h:
4208         Added new function gdk_window_get_decorations.
4209
4210         * gdk/linux-fb/gdkfb.h:
4211         Removed _gdk_window_get_decorations declaration.
4212         Renamed _gdk_window_set_child_handler to
4213         gdk_fb_window_set_child_handler.
4214
4215         * gdk/linux-fb/gdkwindow-fb.c:
4216         Renamed _gdk_window_set_child_handler to
4217         gdk_fb_window_set_child_handler.
4218
4219         * gdk/x11/gdkwindow-x11.c:
4220         New function gdk_window_get_mwm_hints().
4221         Implemented gdk_window_get_decorations.
4222
4223         * docs/reference/gdk/tmpl/windows.sgml:
4224         * docs/reference/gdk/gdk-sections.txt:
4225         Added gdk_window_get_decorations docs.
4226         
4227 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4228
4229         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4230         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4231         gdk_fb_window_send_crossing_events):
4232         Possibly send focus events when the mouse moves from one
4233         window to another.
4234
4235 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4236
4237         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4238         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4239         to match current API.
4240
4241         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4242         environment variable is set, don't call g_error when on a
4243         palettized (PseudoColor) display. Some people want to use GTK+ 
4244         in 256-colour mode even though works only partially.
4245
4246         * gdk/gdk.def
4247         * gtk/gtk.def
4248         * gtk/makefile.mingw.in: Update.
4249
4250 2001-01-05  Havoc Pennington  <hp@redhat.com>
4251
4252         * tests/testtreeview.c: hack on this a bit
4253
4254         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4255         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4256
4257         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4258         was spelled incorrectly
4259         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4260
4261         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4262         from gtk_tree_view_set_headers_active   
4263
4264         * gtk/gtktexttag.c:
4265         (gtk_text_tag_get_property): handle PROP_DIRECTION
4266         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4267         properties, bug 40235
4268
4269         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4270         forward_to_line_end
4271
4272 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4273
4274         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4275         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4276         for unicode,locale,filename conversion functions.
4277
4278 2001-01-05  Havoc Pennington  <hp@redhat.com>
4279
4280         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4281         broken if called on the first position in the buffer.
4282
4283         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4284         forward_to_delimiters to be called only if we aren't already at
4285         the delimiters.
4286
4287 2001-01-05  Havoc Pennington  <hp@redhat.com>
4288
4289         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4290
4291 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4292
4293         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4294         colormap in here. Sync from X port.
4295         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4296         Sync from X port.
4297         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4298         This happens now and then, and i don't think it is a bug.
4299         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4300         != endpoint.
4301         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4302         GDK_LINE_SOLID.
4303
4304         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4305         some of the fields filled in at least.
4306
4307         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4308         miLineArcD is no more, remove it from the function definition.
4309
4310 2001-01-04  Havoc Pennington  <hp@redhat.com>
4311
4312         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4313         this
4314
4315         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4316         user_data instead of tree_node
4317
4318         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4319         TREE_VIEW_COLUMN_SIZE
4320
4321         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4322         "size" field to "width" finishes bug 40061
4323
4324         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4325         for bitfields, bug 40268
4326
4327 2001-01-04  Havoc Pennington  <hp@redhat.com>
4328
4329         Rename some stuff:
4330         
4331         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4332
4333         s/GtkModelSimple/GtkTreeModelSimple/g;
4334         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4335         s/gtk_model_simple/gtk_tree_model_simple/g;
4336         s/gtkmodelsimple/gtktreemodelsimple/g;
4337
4338         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4339
4340         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4341         s/column_set_col_type/column_set_sizing/g;
4342
4343         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4344         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4345
4346         s/GtkCellRendererType/GtkCellRendererState/g;
4347         
4348         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4349         (gtk_cell_renderer_toggle_class_init): change "state" property to
4350         "active", to match GtkToggleButton
4351         (gtk_cell_renderer_toggle_get_active): new function, bug
4352         40269
4353         (gtk_cell_renderer_toggle_set_active): new function
4354         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4355         state through gtk_cell_renderer_set_active
4356
4357 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4358
4359         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4360         temporarily until they work again.  Brought up to date with
4361         changes in the model.
4362         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4363         model.
4364
4365 2001-01-04  Havoc Pennington  <hp@redhat.com>
4366
4367         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4368         equal to the line length, then position iterator before paragraph 
4369         separators. Fixes crash reported by Mikael Hermansson when
4370         pressing left arrow from the start of a line.   
4371
4372         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4373         about byte indexes off the end
4374         (iter_set_from_char_offset): add g_error about char offsets
4375         off the end
4376
4377 2001-01-03  Havoc Pennington  <hp@redhat.com>
4378
4379         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4380
4381         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4382         of private functions; remove inclusion of private headers.
4383
4384         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4385         function, so we don't need private functions in gtktextdisplay.c
4386
4387         * gtk/gtktextiterprivate.h: underscore-ification
4388
4389         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4390         to instead say "only useful to implement widgets"
4391
4392         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4393         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4394         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4395
4396         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4397         This function was completely broken
4398
4399         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4400
4401         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4402
4403         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4404
4405         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4406
4407         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4408
4409         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4410
4411         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4412         gtk_paint_layout
4413
4414         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4415         gtk_paint_layout
4416
4417         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4418         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4419         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4420         which were not implemented.     
4421
4422         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4423         insert_pixbuf signal. Rename delete_text to delete_range since it
4424         also deletes pixbufs and child anchors. This almost closes bug
4425         40245 (still need to deal with child anchors)
4426
4427         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4428         insert_pixbuf, change signal names as appropriate, change types of
4429         signals taking marks/tags to have the specific type, not just
4430         G_TYPE_OBJECT
4431         
4432         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4433         closes bug 40051
4434
4435         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4436         unnecessary remove_contents() call
4437         (gtk_option_menu_class_init): add a "changed" signal, closes
4438         bug 40039
4439         (gtk_option_menu_update_contents): emit "changed" if the 
4440         active menu item changes
4441
4442         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4443         cast to GtkObject, reported by Jonas Borgstrom
4444         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4445         we can't do stuff with side effects in finalize. Instead, spew a
4446         warning if the loader isn't closed.
4447
4448         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4449         colormap in here, non-X ports probably need to sync to this change
4450
4451         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4452         assertion that colormap != NULL, you can set the colormap to NULL
4453         if you like.
4454         
4455         * Makefile.am: remove gtk-config-2.0
4456
4457         * configure.in: Use pkg-config to locate GLib. Remove
4458         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4459         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4460         Use pkg-config to locate Pango. Output correct Pango libs to
4461         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4462
4463         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4464         files
4465         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4466         X11 pc files
4467
4468         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4469         unref from here
4470
4471 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4472
4473         * configure.in:
4474         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4475
4476 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4477
4478         * gtk/gtktextlayout.c
4479         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4480         variable when moving back onto a single line.
4481
4482 2001-01-01  Havoc Pennington  <hp@redhat.com>
4483
4484         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4485
4486         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4487
4488         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4489         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4490
4491 2001-01-01  Havoc Pennington  <hp@redhat.com>
4492
4493         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4494
4495         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4496         GtkTextAttributes
4497
4498         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4499         #40246
4500         (gtk_text_attributes_copy_values): rename from 
4501         gtk_text_attributes_copy
4502         (gtk_text_attributes_copy): a more standard GTK copy function, 
4503         which returns a new object
4504
4505 2001-01-01  Havoc Pennington  <hp@redhat.com>
4506
4507         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4508         
4509         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4510         don't fill in tree_view->priv->selection, kind of an unexpected
4511         side effect
4512
4513         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4514         gtkintl.h
4515         
4516         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4517         gtkintl.h
4518         (gtk_cell_renderer_get_property): remove calls to g_value_init
4519
4520         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4521         gtkintl.h
4522
4523         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4524         and include gtkintl.h
4525         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4526         property names
4527
4528         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4529         GtkTreeSelection
4530         (_gtk_tree_selection_new_from_with_view): rename, return
4531         GtkTreeSelection
4532         (_gtk_tree_selection_set_tree_view): rename with uscore
4533         (gtk_tree_selection_get_selected): fill in the "model" out param
4534         first, so it gets filled in even if we return at the top of the 
4535         function
4536         (gtk_tree_selection_real_select_all): add a comment and an else{}
4537         to clarify this a bit
4538         (gtk_tree_selection_real_unselect_all): add the same else{}
4539
4540         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4541         set_tree_view to have underscore prefixes, move them to the
4542         private header, fix return type of new_with_tree_view
4543         (struct _GtkTreeSelection): mark struct
4544         fields private  
4545
4546         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4547         GtkTreeModelFlags, not a guint
4548         (gtk_tree_path_prev): return gboolean not gint
4549         (gtk_tree_path_up): return gboolean not gint
4550
4551         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4552         return GtkTreeModelFlags, not a guint
4553
4554         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4555         that child model is non-null before unrefing it
4556         (g_value_int_compare_func): make this a qsort compare func, not 
4557         a boolean predicate
4558
4559         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4560         (add -umn to the end), and mark it unimplemented
4561         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4562         I don't see what it's for - doesn't the model always sort itself?
4563         (gtk_tree_model_sort_set_compare): this had the wrong signature
4564
4565         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4566         Fix the docs to say that it destructively replaces existing
4567         attributes (previously said that it added attributes).
4568         (gtk_tree_view_column_set_visible): canonicalize bool before
4569         equality testing. Also, check for realization before
4570         hiding/showing the tree_column->window; if this window could exist
4571         before realization, then it's busted and needs fixing, we can't 
4572         create GDK resources pre-realization. Also, remove
4573         superfluous queue_resize(), since set_size() does that for us.
4574         (gtk_tree_view_column_set_col_type): check realization before 
4575         using tree_column->window
4576
4577         * gtk/gtktreedatalist.c: fix filename in copyright notice
4578
4579 2000-12-31  Havoc Pennington  <hp@pobox.com>
4580
4581         * gtk/gtktextview.c: Rearrange all the
4582         scroll-while-dragging-or-selecting code to be different, not
4583         necessarily better. ;-)
4584         (gtk_text_view_scroll_to_mark): Change this
4585         function to take within_margin as a fraction instead of a pixel
4586         value, and to take alignment arguments (indicating where to align 
4587         the mark inside the visible area)
4588         
4589         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4590         to GtkObject
4591
4592         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4593         behavior so that offsets past the end of the line are not 
4594         allowed, and an offset equal to the line length moves the iterator
4595         to the next line
4596         (gtk_text_iter_set_line_index): make parallel change
4597         (gtk_text_iter_get_bytes_in_line): add this function
4598         
4599         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4600         of byte indexes off the end of the line; byte index at the end of
4601         the line now returns FALSE and doesn't fill in the requested
4602         values, byte index past the end of the line is an error.  Also,
4603         don't allow -1 offset anymore, since its meaning is unclear.
4604
4605         This change exposes some bug in visual cursor motion, where we
4606         end up with a huge invalid byte index; needs fixing. Symptom of 
4607         bug is a crash when you hit up arrow.
4608         
4609         (_gtk_text_line_char_locate): match the change to byte_locate
4610
4611         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4612         from start of line properly. fixes bug reported by Mikael
4613         Hermansson where backspace would delete all text before the
4614         cursor.
4615
4616 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4617
4618         * gdk/win32/gdkwindow-win32.c
4619         (gdk_window_impl_win32_get_visible_region): New function, as in
4620         the X11 backend.
4621         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4622         instead of duplicating the same code here.
4623
4624         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4625         GDK_COLORMAP macro.
4626
4627         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4628         destroy function.
4629         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4630         access that.
4631
4632         * gtk/gtk.def: Update.
4633
4634         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4635
4636 2000-12-30  Havoc Pennington  <hp@pobox.com>
4637
4638         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4639         colormap on input only windows, to avoid special cases all over
4640         the code for these windows.
4641
4642 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4643
4644         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4645         we are on a palettized display ("PseudoColor" in X11), as the code
4646         for that doesn't work anyway, and never has.
4647
4648 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4649
4650         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4651         Don't use isprint() for chars > 255.
4652
4653 2000-12-21  Havoc Pennington  <hp@redhat.com>
4654
4655         * tests/testtreeview.c: more work
4656
4657 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4658
4659         * docs/README.linux-fb:
4660         Update the docs to the new pangoft2 way.
4661
4662 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4663
4664         * configure.in:
4665         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4666         pango version.
4667         Remove modules/linux-fb/Makefile.
4668
4669         * gdk/linux-fb/gdkdrawable-fb2.c:
4670         Render glyphs using freetype.
4671
4672         * gdk/linux-fb/gdkfb.h:
4673         Add new fb-specific functions needed for managing windows.
4674
4675         * gdk/linux-fb/gdkmain-fb.c:
4676         Remove gdk_font_init/fini() calls.
4677
4678         * gdk/linux-fb/gdkpango-fb.c:
4679         Remove old implementation. Use pangoft2 instead.
4680
4681         * gdk/linux-fb/gdkprivate-fb.h:
4682         Remove PangoFBFont and related stuff.
4683
4684         * gdk/linux-fb/gdkwindow-fb.c:
4685         Implement drawable->get_visible_region.
4686         Implement support for _gdk_window_set_child_handler () and
4687         _gdk_window_get_decorations().
4688
4689         * modules/Makefile.am:
4690         Remove linux-fb subdir.
4691
4692         * modules/linux-fb/*:
4693         Removed all.
4694         
4695 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4696
4697         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4698         calls, as they are no longer needed.
4699
4700         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4701         
4702         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4703         figure out how to emit a signal on an interface.
4704
4705 2000-12-20  Havoc Pennington  <hp@redhat.com>
4706
4707         * tests: new directory to contain tests, gtk/test* should move
4708         here sometime (with appropriate on-cvs-server hackery)
4709
4710         * tests/testtreeview.c, tests/Makefile.am: a test
4711         
4712         * configure.in (AC_OUTPUT): add tests/Makefile
4713
4714         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4715         and "invisible_set" which were missing
4716
4717         * gtk/gtkrbtree.h: some cheesy indentation fix
4718         
4719 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4720
4721         * gtk/gtkinvisible.c (gtk_invisible_realize):
4722         Attach the style to the window so that the style it is not
4723         leaked when unrealizing the window.
4724
4725 2000-12-18  Havoc Pennington  <hp@redhat.com>
4726
4727         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4728         begin/end user action where appropriate
4729         (gtk_text_view_commit_handler): add begin/end user action
4730
4731         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4732         bracket interactive operations with begin/end user action pair.
4733         
4734         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4735         "interactive" arg from insert_text and delete_text signals.
4736         Add begin_user_action, end_user_action signals
4737         (gtk_text_buffer_begin_user_action): 
4738         (gtk_text_buffer_end_user_action): New functions to delimit 
4739         a user-visible action
4740
4741         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4742         signals.
4743         
4744 2000-12-18  Havoc Pennington  <hp@redhat.com>
4745
4746         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4747         was pretty non-working.
4748
4749         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4750         by passing the length to g_utf8_validate().
4751
4752 2000-12-16  Havoc Pennington  <hp@pobox.com>
4753
4754         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4755         Port to GObject, can go back in gdk-pixbuf after setting up 
4756         a gdk-pixbuf-marshal.h header over there.
4757
4758         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4759         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4760         args
4761         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4762         set
4763         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4764         here, do it when we create the buttons later
4765         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4766         (gtk_tree_view_map): paranoia checks that column->button is shown 
4767         and unmapped
4768         (gtk_tree_view_size_request): only request visible children.
4769         Move header size calculation in here, for cleanliness, and 
4770         to maintain invariants for child widgets if we eventually 
4771         let users set different children inside the buttons
4772         (gtk_tree_view_map_buttons): factor out code to map buttons,
4773         since it was being called several times
4774         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4775         windows instead of just moving them; their height may change 
4776         if we allow random widgets in there, or the theme changes.
4777         (gtk_tree_view_size_allocate): move button size allocation 
4778         above emitting the scroll signals, to ensure a sane state when we
4779         hit user code
4780         (gtk_tree_view_button_release): remove queue_resize after
4781         tree_view_set_size(), set_size() will handle any resize queuing
4782         that's needed
4783         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4784         draw_focus goo
4785         (gtk_tree_view_focus): use gtk_get_current_event() and
4786         gdk_event_get_state()
4787         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4788         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4789         semicolon
4790         (gtk_tree_view_create_button): show the button here
4791         (gtk_tree_view_button_clicked): actually emit the clicked signal
4792         on the column
4793         (_gtk_tree_view_set_size): return right away if the size is
4794         unchanged, as a cheesy optimization
4795         (gtk_tree_view_setup_model): rename set_model_realized to 
4796         setup_model to match the flag that indicates whether we've 
4797         called it
4798         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4799         exist, because set_scroll_adjustment does that and it shouldn't
4800         matter what order you call these in
4801         (gtk_tree_view_get_vadjustment): ditto
4802         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4803         for paranoia
4804         (gtk_tree_view_set_headers_visible): call
4805         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4806         (gtk_tree_view_append_column): clarify whether the return value
4807         is the count of columns before or after, and do the increment 
4808         separately from the return statement so you can tell from the code.
4809         (gtk_tree_view_remove_column): ditto
4810         (gtk_tree_view_insert_column): ditto
4811         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4812         outside the existing range, the docs say that outside-range
4813         columns are allowed, so we handle them as documented. (Presumably
4814         this allows a nice loop with column != NULL as test.)
4815         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4816         mean (left/right/center etc.).
4817         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4818         (gtk_tree_view_expand_row): add docs
4819         (gtk_tree_view_collapse_row): add docs
4820
4821         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4822         function to emit the clicked signal on a column
4823         
4824         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4825         state of an event
4826         (gdk_event_get_time): don't treat GDK_SCROLL 
4827         as a button event, remove default case from switch so gcc 
4828         will whine if we don't explicitly handle all event types
4829
4830         * gtk/gtktreeselection.h: added some FIXME 
4831         
4832         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4833         "columns" to "n_columns" and "column" to "columns" for clarity
4834
4835 2000-12-16  Havoc Pennington  <hp@pobox.com>
4836         
4837         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4838         stuff. This should make e.g. the delete key work again in the
4839         text widget...
4840         (gtk_text_iter_forward_cursor_positions): handle negative count
4841         (gtk_text_iter_backward_cursor_positions): handle negative count
4842         (gtk_text_iter_forward_word_ends): handle negative count
4843         (gtk_text_iter_backward_word_starts): handle negative count
4844
4845         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4846         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4847         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4848         GObject. No doubt will cause breakage.
4849
4850         * demos/gtk-demo/textview.c: remove hacks around
4851         non-GObject-ification of the text objects
4852
4853         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4854         the text tag
4855         
4856 2000-12-14  Havoc Pennington  <hp@pobox.com>
4857
4858         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4859         that we have Xrender
4860
4861 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4862
4863         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4864         Add two virtualized functions gdk_drawable_get_clip_region - to
4865         get the clip region when drawing.
4866         
4867         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4868         use invalidate_region.
4869
4870         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4871         region.
4872
4873         * acconfig.h configure.in: Check for Xft. For now, assume
4874         that if Xft is found, Pango was compiled with Xft support
4875         as well.
4876
4877         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4878         gdk_colormap_query_color().
4879         
4880         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4881         with Xft if appropriate.
4882
4883         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4884         a pangoxft context if we have XFT and the environment
4885         variable GD_USE_XFT is set.
4886         
4887         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4888         and also possibly an XftDraw structure.
4889
4890         * gtk/gtkfontsel.c: Handle the case where the font from the
4891         style doesn't match any of the fonts a bit better.
4892         
4893         * gtk/testgtk.c: Add tabs between directional segments for
4894         hebrew/arabic test. (Not really necessary, just a little
4895         prettier.)
4896
4897 2000-12-14  Havoc Pennington  <hp@redhat.com>
4898
4899         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4900         reading a file
4901
4902 2000-12-14  Havoc Pennington  <hp@redhat.com>
4903
4904         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4905         unused call to get_last_line()
4906
4907         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4908         here until boxed is working (and maybe after that - we should
4909         really not gratuitously break old code)
4910
4911         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4912         specific types for font_desc and tabs args, move them to
4913         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4914         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4915
4916         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4917         use GTK_TYPE_POINTER for signal signatures as a hack-around
4918
4919         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4920         PangoTabArray
4921
4922         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4923         make static
4924         (line_display_index_to_iter): make static
4925
4926         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4927         to marshal a string not a boxed
4928
4929         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4930
4931         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4932         since the UTF-8 isn't validated yet
4933
4934         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4935         lines to end in '\n'
4936         
4937         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4938         forward_to_delimiters, and grapheme boundaries
4939         (gtk_text_view_delete_from_cursor): properly handle non-newline
4940         delimiters, and grapheme boundaries
4941
4942         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4943         to gtk_text_iter_forward_to_delimiters, and make it work properly
4944         if empty lines end with a character other than '\n'
4945
4946         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4947         position
4948
4949 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4950
4951         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4952
4953         * gtk/gtk.def
4954         * gdk/gdk.def: Update.
4955
4956         * gdk/win32/gdkmain-win32.c
4957         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4958         gdkmain-win32.c here.
4959
4960         * gdk/win32/makefile.mingw.in (all): No need to make
4961         gdk-win32res.o here, the makefile one step up will call us to make
4962         it.
4963
4964         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4965         gdkkeys-win32.
4966
4967         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4968
4969         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4970         call to g_source_add().
4971
4972         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4973         leak. Thanks to Andreas Kemnade.
4974
4975 2000-12-13  Havoc Pennington  <hp@pobox.com>
4976
4977         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4978
4979         * gtk/gtktext*.[hc]: update accordingly
4980         
4981 2000-12-13  Havoc Pennington  <hp@pobox.com>
4982
4983         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4984         header file
4985
4986         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4987
4988 2000-12-13  Alex Larsson  <alexl@redhat.com>
4989
4990         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4991         Add support for ps2 intellimouse.
4992
4993         * gdkkeyboard-fb.c:
4994         Move shift-F1 repaint handling to xlate handler only.
4995         
4996         * docs/README.linux-fb:
4997         Add imps2 to docs.
4998         Document the new refresh keys.
4999         
5000 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5001
5002         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5003
5004         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5005         ::position and ::padding.
5006
5007         * gtk/gtkcontainer.c: make ::border_width an INT property.
5008
5009         * gtk/gtkpacker.c: make ::position an INT property.
5010
5011         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5012         guard against NULL h/v scrollbars, since this is used at construction
5013         time.
5014
5015         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5016         internal gtk_clist_constructor().
5017
5018         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5019         gtk_ctree_constructor().
5020
5021         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5022         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5023
5024         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5025         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5026
5027         * gtk/gtkwidget.[hc]:
5028         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5029         and gtk_widget_get().
5030         (gtk_widget_new): use g_object_new_valist().
5031         (gtk_widget_set): use g_object_set_valist().
5032
5033         * gtk/gtkobject.[hc]:
5034         removed gtk_object_arg_get_info(), gtk_object_getv(),
5035         gtk_object_query_args(), gtk_object_newv(),
5036         gtk_object_class_add_signals(),
5037         gtk_object_class_user_signal_new(),
5038         gtk_object_class_user_signal_newv(),
5039         gtk_object_arg_set(), gtk_object_arg_get(),
5040         gtk_object_args_collect(),
5041         gtk_object_default_construct(),
5042         gtk_object_constructed(),
5043         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5044         removed nsignals, signals and n_args members from GtkObjectClass.
5045         (gtk_object_new): use g_object_new_valist().
5046         (gtk_object_set): use g_object_set_valist().
5047         (gtk_object_get): use g_object_get_valist().
5048         
5049         * gtk/gtkcompat.h: define gtk_object_default_construct().
5050         
5051         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5052         g_object_new().
5053
5054         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5055         fucntions, cleaned up method assignments (make sure your structures
5056         are setup properly before calling out). removed all GTK_CONSTRUCTED
5057         hacks ;)
5058
5059 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5060
5061         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5062         off-by-one error in checks. (Dave Lambert)
5063
5064 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5065
5066         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5067         Don't free gdk_fb_keyboard twice.
5068
5069 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5070
5071         * gtk/testgtk.c:
5072         (create_tooltips): 
5073         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5074         use GObject swapped_signal:: properties instead.
5075
5076         * gtk/gtkcellrenderertoggle.c: 
5077         * gtk/gtkcellrenderertextpixbuf.c: 
5078         * gtk/gtkcellrenderertext.c: 
5079         * gtk/gtkcellrendererpixbuf.c: 
5080         * gtk/gtkcellrenderer.c:
5081         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5082         missing warnings for invalid property ids, install properties
5083         with g_object_class_install_property() now.
5084         
5085         * gtk/gtksignal.c:
5086         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5087         
5088 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5089         
5090         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5091         to determine if a window is the focus widget within
5092         its toplevel.
5093
5094         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5095         to be boolean.
5096
5097         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5098         of the case where the container CAN_FOCUS to here instead
5099         of having it in each individual move-the-focus place.
5100
5101         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5102         focusing to be geometric in a much more obvious sense. Arrowing
5103         around is still non-intuitive because it isn't perfect and
5104         because entries, etc, grab the arrow keys, but it at least
5105         usually will do what you expect now.
5106         
5107         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5108         file.
5109
5110         * gtk/gtknotebook.c: Change tabs to be a single item in
5111         the focus chain. Make movement of focus on tabs with arrow
5112         keys wrap around.
5113         
5114         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5115         CHECK_FIND_CHILD macro to give informative error messages
5116         instead of silent returns.
5117
5118         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5119         flag since we handle GdkReturn on the tabs.
5120
5121         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5122         windows rather than sending expose events directly.
5123
5124         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5125         definition for GtkNotebookPage into .c file, since it is private.
5126
5127         * gtk/testgtk.c (create_notebook): Add option for 
5128         testing borderless notebook.
5129
5130         * gtk/testgtk.c (page_switch): Removed egregious poking
5131         around in GTK+ internals.
5132
5133         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5134
5135         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5136         properly through gtk_clist_focus. Make the title headers a
5137         single item in the tab-focus chain, and make left-right wrap
5138         around.
5139
5140         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5141         focus method so that wrapping around works properly.
5142
5143         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5144         that is handled for the widget now. 
5145
5146 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5147
5148         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5149         widgets as TOPLEVEL.
5150
5151         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5152         TOPLEVEL widgets are containers.
5153
5154         * gtk/gtkinvisible.h: Remove useless include.
5155
5156 2000-12-11  Havoc Pennington  <hp@redhat.com>
5157
5158         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5159         Handle chopping off \r\n and 0x2029 in addition to \n before
5160         passing to PangoLayout
5161
5162         * gtk/gtkimcontextsimple.c
5163         (gtk_im_context_simple_get_preedit_string): 
5164         return an empty string if no match is pending
5165
5166         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5167         assertion that the returned preedit string was sane
5168
5169         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5170         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5171         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5172
5173 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5174
5175         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5176         Fix up finalizer to chain to its parent.
5177
5178 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5179
5180         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5181         Clearified the difference between the keyboard types. Wrote a note
5182         about the magic sysrq key to get out of raw mode.
5183
5184 2000-12-09  James Henstridge  <james@daa.com.au>
5185
5186         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5187         member to hold masks for detecting the start of a protocol packet.
5188         (mouse_devs): add packet start masks for ps2 and ms device types.
5189         Left the mask for fidmour blank, as I have no idea what it should
5190         be.
5191         (handle_mouse_io): skip bytes until we get to the start of a
5192         packet.  My Logitech mouse seems to be passing an extra NULL pad
5193         byte, and GPM does a similar thing here.
5194         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5195         this is the ms mouse driver.
5196         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5197         completely broken except for button1.  It was checking the wrong
5198         bit in the packet for the status of the right mouse button, and
5199         wrongly assuming right == button2 rather than 3.  I fixed that and
5200         also added support for middle button (button2).
5201
5202 2000-12-08  Havoc Pennington  <hp@redhat.com>
5203
5204         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5205         that cause a segfault on text insertion
5206
5207         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5208         warning
5209
5210         * gtk/gtktextiter.c (test_log_attrs): use
5211         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5212
5213         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5214         Get log attrs for a line, using a cache stored on the buffer
5215         
5216         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5217         reported by Jeff Franks
5218
5219 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5220
5221         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5222         /dev/ttyS0 -> /dev/mouse
5223
5224 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5225
5226         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5227         Added dummy gdk_fontset_load.
5228
5229 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5230
5231         * docs/README.linux-fb:
5232         * docs/Makefile.am:
5233         Initial GtkFB docs.
5234         
5235         * gdk/linux-fb/Makefile.am:
5236         Define GDK_DATA_PREFIX.
5237
5238         * gdk/linux-fb/gdkmain-fb.c:
5239         Fix typo.
5240         Change default display to /dev/fb0.
5241
5242         * gdk/linux-fb/gdkpango-fb.c:
5243         Add $(prefix)/share/fonts/ to font path.
5244         
5245 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5246
5247         * gdk/linux-fb/gdkkeyboard-fb.c:
5248         New file containing the abstracted keyboard driver. Most code
5249         taken from gdkinput-ps2.c
5250
5251         * gdk/linux-fb/gdkinput-ps2.c:
5252         Removed file.
5253         
5254         * gdk/linux-fb/Makefile.am:
5255         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5256
5257         * gdk/linux-fb/gdkcolor-fb.c:
5258         display->fb was renamed to display->fb_fd.
5259
5260         * gdk/linux-fb/gdkcursor-fb.c:
5261         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5262
5263         * gdk/linux-fb/gdkinput.c:
5264         Moved gdk_input_init here from gdkinput-ps2.c
5265
5266         * gdk/linux-fb/gdkmain-fb.c:
5267         display->fb was renamed to display->fb_fd.
5268         Now the tty and the console is opened here instead
5269         of in the keyboard driver. Also check GDK_VT to see what
5270         tty to open.
5271         Move gdk_beep () here from gdkinput-ps2.c
5272         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5273
5274         * gdk/linux-fb/gdkmouse-fb.c:
5275         Add header.
5276         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5277         Return correct keyboard modifiers.
5278         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5279
5280         * gdk/linux-fb/gdkprivate-fb.h:
5281         Add tty and vt info to display.
5282         Add orignal modeinfo storage to display
5283         Update global functions
5284
5285         * gdk/linux-fb/gdkwindow-fb.c:
5286         Added gdk_fb_window_find_focus().
5287         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5288
5289 2000-12-07  Havoc Pennington  <hp@pobox.com>
5290
5291         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5292         function, noticed by Alex
5293
5294 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5295
5296         * configure.in: Detect freetype properly
5297
5298         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5299         above.
5300
5301 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5302
5303         * gdk/linux-fb/Makefile.am:
5304         Add gdkmouse-fb.c
5305         
5306         * gdk/linux-fb/gdkmouse-fb.c:
5307         New file. Abstracted the mouse drivers a bit.
5308
5309         * gdk/linux-fb/gdkcursor-fb.c:
5310         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5311
5312         * gdk/linux-fb/gdkinput-ps2.c:
5313         Removed old mouse handling code. Moved cursor handling code
5314         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5315         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5316         gdk_mouse_get_info.
5317
5318         * gdk/linux-fb/gdkmain-fb.c:
5319         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5320
5321         * gdk/linux-fb/gdkprivate-fb.h:
5322         Removed public gdk_fb_find_common_ancestor, added and renamed
5323         functions for the new mouse handling code.
5324
5325         * gdk/linux-fb/gdkwindow-fb.c:
5326         Moved gdk_fb_window_send_crossing_events here. added global
5327         variable gdk_fb_window_containing_pointer. made
5328         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5329         renamed to gdk_mouse_get_info.
5330
5331 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5332
5333         * gdk/linux-fb/gdkevents-fb.c:
5334         Update to match latest gmain/gsource changes.
5335
5336         * gdk/linux-fb/gdkinput-ps2.c:
5337         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5338         it links. Will be implemented later.
5339
5340 2000-12-03  Havoc Pennington  <hp@pobox.com>
5341
5342         * gdk/Makefile.am: add gdkkeys.[hc]
5343
5344         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5345         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5346
5347         * acconfig.h, configure.in: add checks and command line options
5348         for XKB
5349
5350         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5351         
5352         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5353         and group in the key event
5354
5355         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5356         field with the low-level hardware key code, and a group
5357         field with the keyboard group
5358
5359         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5360         and declare a couple globals used for keymap handling
5361         
5362         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5363         hold down Shift-Control and type a hex number to get a Unicode 
5364         character corresponding to the hex number
5365         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5366         (return bytes not chars)
5367
5368 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5369
5370         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5371         to avoid waste on 64-bit platforms.
5372
5373 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5374
5375         * INSTALL: Fix link to PNG home, remove reference
5376         to fribidi.
5377
5378         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5379         
5380         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5381         tested.)
5382
5383         * gtk/gtkcheckmenuitem.c: Permanently turn on
5384         always_show_toggle.
5385
5386         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5387         be NULL. (Vladimir Klebanov, #26545)
5388
5389         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5390         some signed/unsigned comparison problems. (#6510,
5391         David Kaelbling)
5392
5393         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5394         return type to boolean (Oskar Liljeblad, #18648)
5395
5396 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5397
5398         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5399         Remove bogus colormap setting.
5400
5401 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5402
5403         * gdk/linux-fb/gdkcolor-fb.c:
5404         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5405
5406         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5407         Must set colormap.
5408         
5409 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5410
5411         * docs/tutorial/gtk-tut.sgml: DND updates
5412
5413 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5414
5415         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5416         Remove old debug g_warning().
5417         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5418         or an implementation, just pass the implementation to draw_drawable_2.
5419         
5420         * gdk/linux-fb/gdkprivate-fb.h:
5421         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5422
5423         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5424         clear and invalidate area when window is destroyed.
5425         (send_map_events): Remove old commented out code.
5426
5427 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5428
5429         * gdk/linux-fb/gdkpango-fb.c:
5430         Use italic instead of oblique in font aliases.
5431         
5432         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5433         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5434         other unsupported functions.
5435
5436 2000-12-04  Havoc Pennington  <hp@redhat.com>
5437
5438         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5439
5440         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5441
5442         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5443
5444         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5445         hack to avoid infinite loops (synthetic expose event) - 
5446         Owen has more appropriate fixes in a branch he'll check in later.
5447
5448         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5449         separator, CR, and CRLF as line ends
5450
5451         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5452         into lines using pango_find_paragraph_boundary(); other bits of
5453         the widget are still going to be broken if the boundary isn't '\n'
5454         though
5455
5456 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5457
5458         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5459         multiply.
5460
5461         * gdk/linux-fb/gdkpango-fb.c:
5462         Copied some 26.6 scaling macros from pango to clean up the rounding.
5463         (pango_fb_font_get_glyph_info): Correct sign on x value.
5464
5465         * gdk/linux-fb/gdkprivate-fb.h:
5466         Removed unreferenced external functions.
5467
5468         * modules/linux-fb/Makefile.am: Use ` instead of '.
5469
5470         * modules/linux-fb/basic.c:
5471         Remove dead code. In particular the dummy lang engine which broke all
5472         pango layouts in GtkFB. Don't include tables-big.i anymore.
5473
5474         * modules/linux-fb/tables-big.i:
5475         Upgrade to latest version from pango. Left for reference, basic_ranges
5476         moved to basic.c.
5477         
5478 2000-12-04  Havoc Pennington  <hp@redhat.com>
5479
5480         Fix bugs Alex found:
5481         
5482         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5483         to "draw"
5484
5485         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5486
5487         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5488
5489         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5490         implementation in here, apparently the expose() implementation was
5491         dead code.
5492
5493 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5494
5495         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5496         Return positive descent.
5497
5498 2000-12-02  Havoc Pennington  <hp@pobox.com>
5499
5500         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5501         method and signal
5502         
5503         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5504         calls gdk_window_process_updates() to push the exposes through
5505         (gtk_widget_class_init): No more draw signal, no
5506         gtk_widget_real_draw()  
5507         
5508         * gtk/gtkbin.c (gtk_bin_draw): remove
5509
5510         * gtk/gtkbox.c (gtk_box_draw): remove
5511
5512         * gtk/gtkbutton.c (gtk_button_draw): remove
5513
5514         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5515
5516         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5517
5518         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5519
5520         * gtk/gtkclist.c (gtk_clist_draw): remove
5521
5522         * gtk/gtkentry.c (gtk_entry_draw): remove
5523
5524         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5525
5526         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5527
5528         * gtk/gtkframe.c (gtk_frame_draw): remove
5529
5530         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5531
5532         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5533
5534         * gtk/gtklayout.c (gtk_layout_draw): remove
5535
5536         * gtk/gtklist.c (gtk_list_draw): remove
5537
5538         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5539
5540         * gtk/gtkmenu.c (gtk_menu_draw): remove
5541
5542         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5543
5544         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5545
5546         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5547
5548         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5549
5550         * gtk/gtkpacker.c (gtk_packer_draw): remove
5551
5552         * gtk/gtkrange.c (gtk_range_draw): remove
5553
5554         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5555
5556         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5557
5558         * gtk/gtktable.c (gtk_table_draw): remove
5559
5560         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5561
5562         * gtk/gtktext.c (gtk_text_draw): remove
5563
5564         * gtk/gtktextview.c (gtk_text_view_draw): remove
5565
5566         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5567
5568         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5569
5570         * gtk/gtktree.c (gtk_tree_draw): remove
5571
5572         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5573
5574         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5575
5576         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5577
5578         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5579
5580         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5581
5582         * gtk/gtkwindow.c (gtk_window_draw): remove
5583
5584 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5585
5586         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5587         a GtkToggleButton is both insensitive and active, it was being
5588         drawn by the GtkButton draw handler which doesn't check the
5589         state. Now it's calling gtk_toggle_button_paint instead.
5590         
5591 2000-12-01  Havoc Pennington  <hp@redhat.com>
5592
5593         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5594         dangling pointers to the appearance attributes from the 
5595         line display
5596
5597         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5598         width/height to mean "full width/height of drawable"
5599
5600         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5601         click to select word/line
5602         
5603         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5604         when getting log attrs. Get a slice, so that pixmaps and stuff
5605         are properly handled.
5606
5607         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5608         paste into the selection (replaces selection now, previously
5609         crashed or added to selection). Reveals longstanding btree bug -
5610         select multiple lines, middle-click on the selection, boom. This
5611         isn't related to my changes though.
5612
5613         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5614         PangoLogAttrs changes
5615         (gtk_entry_move_backward_word): ditto
5616
5617         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5618         functions return bool whether the iter moved onto a
5619         dereferenceable position.
5620  
5621         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5622         functions for motion in terms of display lines.
5623
5624         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5625         get the buffer a mark is inside
5626         
5627 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5628
5629         * gdk/linux-fb/Makefile.am:
5630         * modules/linux-fb/Makefile.am:
5631         Freetype 2 final uses freetype-config
5632
5633         * gdk/linux-fb/gdkpango-fb.c:
5634         Upgrade to use Freetype 2 final.
5635         More flexible support for font aliases, this also fixes a bug with
5636         GtkFontSelector, as the aliases must be visible in the font/family list,
5637         or GtkFontSelector reads uninitialized memory.
5638
5639 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5640
5641         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5642         XGetIMValues to properly terminate variable argument list, and do
5643         NULL return check for ic_values and xim_styles.
5644
5645         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5646         Restore preedit state after XmbResetIC().
5647         
5648         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5649         XvaCreateNestedList() should take XvaNestedList, but not
5650         XvaNestedList*.
5651
5652         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5653         preedit_draw_callback, preedit_caret_callback): Match
5654         "preedit-changed" signal name to "preedit_changed" to be
5655         consistent to the spec.
5656
5657         * gtk/gtkimcontextsimple.c (check_table):
5658         Match "preedit-changed" to "preedit_changed" to be consistent
5659         to the spec.
5660
5661 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5662
5663         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5664         gc->clip_region == NULL>
5665
5666 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5667
5668         Changes by Hans Breuer:
5669         
5670         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5671         Dont't use negative width and height as max_hints. This fixes
5672         Owen's recent testgtk changes for win32.
5673
5674         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5675         gdk_win32_hdc_release): These are exported and may be called with
5676         other drawable types than our GdkDrawableImplWin32 (?).
5677
5678         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5679         so always #define USE_BACKING_STORE.
5680
5681         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5682         of printf for debugging output.
5683
5684         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5685         
5686         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5687
5688         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5689         declaration.
5690
5691         * gtk/gtktexttypes.h: Ditto.
5692
5693         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5694         (GDK_VoidSymbol) also if in case of arg check failure.
5695
5696         * gtk/gtkimcontextsimple.c
5697         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5698         position to the pointer, but to the variable it points to.
5699
5700         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5701
5702         * gtk/gtk.def: Updates.
5703
5704 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5705
5706         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5707         GTK_TYPE_TREE_MODEL.
5708
5709 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5710
5711         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5712         Set the size of the font from the description.
5713         (gdk_text_width): Gross hack that calculates the width
5714         of text by text_length * size/2. This is necessary because
5715         GtkLabel does some ugly gtk_string_width call to calculate
5716         an good size.
5717         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5718
5719 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5720
5721         * docs/tutorial/gtk-tut.sgml: DND updates
5722
5723 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5724
5725         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5726         If you pass width or height == 0 to gdk_window_clear_area they
5727         should be calculated from the window size.
5728
5729 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5730
5731         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5732         a grab, but no grab-cursor, use the cursor from the grabbed
5733         window. (gdk_fb_window_send_crossing_events): Send normal
5734         enter/leave notifications if grab and owner_events == TRUE.
5735
5736 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5737
5738         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5739         Do implicit button grabs, even if the window doesn't
5740         want the event.
5741         (gdk_fb_window_send_crossing_events): If there is a
5742         grab, only the grabbed window gets normal enter/leave
5743         notifications. On ungrab go from grabbed window to current.
5744         Don't send any notification to b when propagating from c -> b.
5745         If setting a grab on window, don't set prev_window.
5746         (handle_mouse_input): Send enter/leave events to the window the
5747         mouse is over, not the grabbed one.
5748         
5749 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5750
5751         * gdk/gdkregion-generic.c: Zap warning.
5752         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5753         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5754
5755 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5756
5757         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5758         The cursor should be hidden if it is part of either the
5759         source or destination region. Not only if it is in both.
5760         (gdk_window_set_transient_for): Silence warnings.
5761
5762 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5763
5764         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5765         The default mode in X is Pie Arcs, therefore that is
5766         what Gtk+ uses.
5767
5768 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5769
5770         * gdk/linux-fb/gdkinput-ps2.c:
5771         Implement correct EnterNotify/LeaveNotify:
5772         (gdk_fb_window_send_crossing_events): New function that sends
5773         all GdkCrossingEvents from the last mouse-window to the specified
5774         destination.
5775         (gdk_fb_window_visibility_crossing): Removed function.
5776         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5777         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5778         instead of gdk_window_get_pointer() for better readability.
5779
5780         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5781         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5782
5783         * gdk/linux-fb/gdkprivate-fb.h:
5784         removed gdk_fb_window_visibility_crossing, added
5785         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5786
5787         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5788         New function that finds the least common ancestor of two windows.
5789         (gdk_window_show, gdk_window_hide):
5790         Use gdk_fb_window_send_crossing_events.
5791         (gdk_fb_window_move_resize): Send configure events to toplevel
5792         windows. Use gdk_fb_window_send_crossing_events.
5793
5794 2000-11-27  Havoc Pennington  <hp@redhat.com>
5795
5796         * gtk/gtkprivate.h (enum): Remove a trailing comma
5797
5798 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5799
5800         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5801         the "changed" callback of the adjustment.  We need to redraw the
5802         spin button's arrows when the adjustment's range changes.
5803         (adjustment_changed_cb): Draw the arrows.
5804         (gtk_spin_button_value_changed): Draw the arrows.
5805
5806 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5807
5808         * gdk/linux-fb/gdkselection-fb.c:
5809         Initial selection implementation.
5810
5811         * gtk/gtkselection.c:
5812         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5813         requestor in gtk_selection_request.
5814         
5815         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5816         Added gdk_selection_property atom.
5817
5818         * gdk/linux-fb/gdkprivate-fb.h:
5819         Export _gdk_selection_window_destroyed.
5820         Removed mask_off_x/y from GdkCursorPrivateFB.
5821         Removed hbearing, added top, left to PangoFBGlyphInfo.
5822
5823         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5824         Call _gdk_selection_window_destroyed
5825         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5826         the root window has been created.
5827         (static_dx_hack, static_dy_hack, compare_draw_rects,
5828         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5829         in region. They are already sorted. Instead just traverse them in
5830         reverse if draw_direction < 0.
5831         
5832         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5833         Double-clicks must be sent after the normal button_press.
5834         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5835         
5836         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5837         Pass _gdk_fb_screen_gc instead of NULL.
5838
5839         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5840         Initialize gdk_selection_property.
5841         (gdk_event_make): Remove unused code.
5842
5843         * gdk/linux-fb/gdkcursor-fb.c:
5844         Make the pixmap for the cursor the same size as the mask. Also remove
5845         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5846         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5847         Now the whole cursor is visible.
5848
5849         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5850         Fix bug where xdest+height instead of ydest+height was used
5851         to calculate if the source and dest overlapped. This fixes the
5852         redraw bug when the main window in testgtk was scrolled when
5853         partially covered by a tall window.
5854         Copy rectangles in region in order depending on draw_direction.
5855         Also moved the draw_direction flipping of start_y and end_y into
5856         the gc functions, as this might not be what all of them want.
5857         (gdk_fb_draw_lines): Support dashed lines.
5858         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5859         so that the text is positioned correctly (was 1 pixel high).
5860
5861         gdk/linux-fb/gdkgc-fb.c:
5862         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5863         all lines were drawn a pixel to short. Also checked the default of
5864         the rest of the values, and they're the same as X now.
5865
5866         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5867         Clean up pixel positioning of the glyphs. Just use bgy->top and
5868         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5869         to all divisions to get correct rounding behaviour.
5870
5871         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5872         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5873         Moved start_y/end_y flip into draw_drawable implementations.
5874         Flip also x rendering when draw_direction < 0.
5875         Remove unneccesary multiply with draw_direction.
5876
5877 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5878
5879         * docs/tutorial/gtk-tut.sgml:
5880           - get rid of gtk_toggle_button_toggled FUD
5881           - start DND section - needs work - based on:
5882                 http://wolfpack.twu.net/docs/gtkdnd/
5883
5884 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5885
5886         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5887         Correct calculation of font metrics. Now GtkEntrys have sane
5888         size.
5889
5890 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5891
5892         * gdk/gdktypes.h:
5893         Add new type GdkSpan
5894         
5895         * docs/reference/gdk/gdk-sections.txt,
5896         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5897         gdk/gdkregion.h:
5898         Implement and document gdk_region_spans_intersect_foreach.
5899
5900         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5901         Add new file gdkrender-fb.c which contains all core
5902         rendering code.
5903         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5904         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5905         (optimized rectangle fillers).
5906
5907         * gdk/linux-fb/gdkdrawable-fb2.c:
5908         Move all rendering code to gdkrender-fb.c.
5909         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5910         Use the new span intersection functions in gdk_fb_fill_spans.
5911         gdk_fb_draw_rectangle() clips filled rectangles and calls
5912         gc->fill_rectangle with the result.
5913         gdk_fb_fill_spans() gets extra argument "sorted".
5914
5915         * gdk/linux-fb/gdkevents-fb.c:
5916         Remove unused includes and defines.
5917         New function gdk_fb_get_time() to get correct time for events.
5918
5919         * gdk/linux-fb/gdkinput-ps2.c:
5920         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5921         Make sure to set the time of all events.
5922
5923         * gdk/linux-fb/gdkmain-fb.c:
5924         Use gdk_fb_get_time ().
5925
5926         * gdk/linux-fb/gdkprivate-fb.h:
5927         New virtual GC calls: fill_span & fill_rectangle.
5928         Export gdk_fb_get_time().
5929         gdk_fb_fill_spans() gets extra argument "sorted".
5930
5931         * gdk/linux-fb/mi*.c:
5932         Use GdkSpan instead of GdkRectangle.
5933         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5934         from XFree 4 source)
5935         
5936 2000-11-22    <jrb@redhat.com>
5937
5938         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5939         reversing the order in an if statement will do.  Doing so managed
5940         to make the treemodelsort half work.  Other half will follow after
5941         I get the insert function fully fixed.
5942
5943 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5944         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5945         more than 2 bits. Besides, I need to implement an evil hack. :)
5946
5947 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5948
5949         * docs/tutorial/gtk-tut.sgml: minor corrections
5950
5951 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5952         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5953           convert to and from relative path's and iters.
5954
5955         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5956           testing sorting functions a bit better.  Currently broken -- will
5957           fix in morning.
5958
5959 2000-11-20  Havoc Pennington  <hp@redhat.com>
5960
5961         * gtk/gtkwidget.c: Documented a bunch of functions in here
5962         (gtk_widget_realize): Warn if you try to realize
5963         a widget with no parent that isn't a toplevel
5964         (gtk_widget_intersect): return a gboolean
5965
5966 2000-11-20  Havoc Pennington  <hp@redhat.com>
5967
5968         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5969         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5970         scrolling to be implemented in GDK to finish. Also, right now
5971         we just size_allocate all children on every layout change,
5972         which is pretty lame. Test commented out of testtext.c, 
5973         until it works better.
5974
5975 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5976
5977         * gdk/linux-fb/gdkdrawable-fb2.c:
5978         Removed unused arguments from gdk_fb_drawable_get_pixel().
5979
5980         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5981         Renamed fidur specific mouse packet data in MouseDevice to
5982         generic. Used it in ps2 mouse handling code to avoid blocking
5983         reads.
5984
5985 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5986
5987         * demos/gtk-demo/main.c: Changed to have the list become
5988         non-italic when the demo window is destroyed through an external
5989         event (like a close button).  Doing so found three bugs in the
5990         widget.
5991
5992         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5993
5994         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5995         we actually set the cell.
5996
5997         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5998
5999         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6000         free a leaked path.  Thanks memprof.
6001
6002 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6003
6004         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6005         off-by-one error when destroying allocated segments
6006         on failure. (Elliot)
6007
6008 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6009
6010         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6011         memleaks found by Evan Martin.
6012
6013 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6014
6015         * Released 1.3.2
6016         
6017         * NEWS: Updates for 1.3.2
6018
6019 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6020
6021         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6022         but in general for window system specific events.
6023
6024         * gtk/gtk.def
6025         * gtk/makefile.mingw.in
6026         * gtk/makefile.msc.in: Update.
6027         
6028         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6029
6030 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6031
6032         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6033         distribute gtk.immodules.
6034
6035         * gtk/Makefile.am (install-data-local): Don't install the
6036         gtk.immodules file created for the uninstalled modules;
6037         instead run gtk-query-immodules after install
6038
6039 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6040
6041         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6042         -rpath to the right install location.
6043
6044         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6045         -export-dynamic.
6046
6047         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6048         properly.
6049
6050 2000-11-15  Havoc Pennington  <hp@pobox.com>
6051
6052         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6053         patch from Mikael Hermansson to temporarily stop blinking while
6054         the user is using the keyboard to type or navigate. 
6055
6056         Also, when blinking, stay on for longer than we stay off. Also,
6057         return from start_cursor_blink if !cursor_visible, to save
6058         checking that flag all over the place before we call
6059         start_cursor_blink.
6060
6061 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6062
6063         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6064         only contain a "fontset" line, which is now ignored.
6065
6066         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6067         double-click-to-select-word work.
6068         
6069 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6070
6071         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6072         Don't move back one char when we are actually at the end of the 
6073         paragraph.
6074
6075 2000-11-15  Robert Brady  <robert@suse.co.uk>
6076
6077         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6078         'o' < 'p'.
6079         
6080         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6081         bind_textdomain_codeset.
6082
6083         (gtk_init_check): Make the warning about translating default:LTR
6084         sterner.
6085         
6086 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6087
6088         * **/Makefile.am : remove unecessary rules for win32-specific
6089         config-substituted targets. If you want these rules, use
6090         --enable-maintainer-mode (called automatically by autogen.sh).
6091         Stops a lot of unneccessary make-time warnings.
6092
6093         * gtk/gtktext{layout,display}.c: Factor in total width as
6094         well as screen when figuring alignment for word-wrap as well as
6095         no wrap; this is necessary to handle lines that cannot be wrapped
6096         at all.
6097
6098 2000-11-15  Havoc Pennington  <hp@redhat.com>
6099
6100         * gtk/testtext.c: Implement essential color cycling feature
6101
6102 2000-11-15  Havoc Pennington  <hp@redhat.com>
6103
6104         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6105         when we invalidate the main window.
6106
6107         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6108         GtkTextView will now invalidate the side windows for us when text
6109         changes.
6110
6111 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6112
6113         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6114         unconditionally, since we may need to update the horizontal
6115         scrollbars even if the height didn't change.
6116
6117         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6118         the extra attrs, since some of them affect size.
6119
6120         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6121         x_offset correctly.
6122
6123 2000-11-15  Havoc Pennington  <hp@redhat.com>
6124
6125         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6126         don't move the first line out into the margin, instead move the
6127         whole paragraph in order to make space for the first line within 
6128         the margin
6129
6130 2000-11-15  Havoc Pennington  <hp@redhat.com>
6131
6132         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6133         xoffset in addition to yoffset, so horizontal scrolling doesn't
6134         break redraws
6135
6136 2000-11-15  Havoc Pennington  <hp@redhat.com>
6137
6138         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6139         from the cursor
6140         (render_layout_line): fix reversed test that caused weird
6141         underlines to get drawn
6142
6143 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6144
6145         * gdk/linux-fb/gdkprivate-fb.h:
6146         Fix debug macros.
6147         
6148 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6149
6150         * gdk/linux-fb/gdkprivate-fb.h:
6151         Added virtual functions set_pixel, get_color,
6152         fill_span and draw_drawable to the GC.
6153         Added global _gdk_fb_screen_gc to use instead of
6154         NULL when drawing to the screen.
6155         Added _gdk_fb_gc_calc_state() prototype.
6156
6157         * gdk/linux-fb/gdkgc-fb.c:
6158         Call _gdk_fb_gc_calc_state() on any gc state change.
6159
6160         * gdk/linux-fb/gdkglobals-fb.c:
6161         Add _gdk_fb_screen_gc
6162                 
6163         * gdk/linux-fb/gdkdrawable-fb2.c:
6164         _gdk_fb_gc_calc_state() calculates best functions
6165         for the GC state and depth.
6166         Moved bpp specialized code to separate functions.
6167         Added optimized 24 bpp AA draw_drawable.
6168
6169         * gdk/linux-fb/gdkevents-fb.c:
6170         Silence gcc warning.
6171
6172         * gdk/linux-fb/gdkimage-fb.c:
6173         Use _gdk_fb_screen_gc
6174
6175         * gdk/linux-fb/gdkwindow-fb.c:
6176         Init and use _gdk_fb_screen_gc
6177
6178         * gdk/linux-fb/mitypes.h:
6179         Remove unused types.
6180
6181 2000-11-14  Havoc Pennington  <hp@pobox.com>
6182
6183         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6184         to pixels
6185
6186 2000-11-14  Havoc Pennington  <hp@pobox.com>
6187
6188         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6189
6190         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6191         unknown char, no real reason we were using a variable. 
6192         Remove gtk_text_unknown_char variable. Fix all the text widget
6193         files accordingly.
6194
6195         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6196         since the Unicode spec seems to prefer that character for our
6197         purposes.
6198
6199 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6200
6201         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6202         value of g_getenv() isn't freeable, so g_strdup it.
6203
6204         * modules/input/inuktitut.c: Inuktitut input method.
6205
6206         * modules/input/Makefile.am: Build this.
6207         
6208 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6209
6210         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6211         of gtk programs.
6212
6213 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6214
6215         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6216         reversed > that was causing Home to go to end of previous line.
6217
6218         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6219         modified-keypresses (leave for bindings.)
6220
6221         * modules/input/Makefile.am: Remove useless -export-dynamic
6222         from module LDFLAGS.
6223
6224 2000-11-14  Havoc Pennington  <hp@redhat.com>
6225
6226         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6227         higher.
6228
6229         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6230         account. Also, render rise, underline, background, etc. for
6231         pixbufs as well as text. Also, draw underlines one pixel higher.
6232
6233         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6234         PangoAttribute for the rise, so it gets drawn properly. Also,
6235         add the GtkTextAppearance attribute for pixbuf/widget segments
6236         as well; we should go ahead and have rise, underline, background,
6237         stipple work for those
6238
6239         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6240         Pango
6241
6242 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6243
6244         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6245
6246         * gtk/gtk.def: Update.
6247
6248         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6249         included.
6250         (gtk_rc_get_im_module_file): Use run-time installation directory
6251         on Win32.
6252
6253         * gdk/win32/rc/gdk.rc: Remove.
6254         * gdk/win32/rc/gdk.rc.in: New file.
6255         * gdk/win32/rc/Makefile.am: New file
6256         * gdk/win32/Makefile.am: Corresponding changes.
6257
6258         * gtk/gtk.rc: Remove.
6259         * gtk/gtk-win32.rc.in: New file.
6260         * gtk/Makefile.am: Corresponding changes.
6261
6262         * configure.in: Corresponding changes.
6263
6264         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6265         has a built gtkcompat.h. Developers using CVS code on Win32 can
6266         hand-edit it from gtkcompat.h.in.
6267
6268         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6269         gtkcompat.h from gtkcompat.h.win32.
6270
6271 2000-11-14  Havoc Pennington  <hp@redhat.com>
6272
6273         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6274         to default to GDK_ACTION_MOVE if the drag is within a single
6275         widget. Defaults to GDK_ACTION_COPY between widgets.
6276
6277 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6278
6279         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6280
6281         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6282
6283         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6284         srcdir != builddir
6285
6286         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6287
6288         * configure.in (GTK_VERSION): Up to 1.3.2
6289
6290         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6291         gtkimcontextxim.h
6292
6293         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6294         missing doc comment.
6295
6296 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6297
6298         * modules/linux-fb/basic.c:
6299         Use the glib iconv wrappers.
6300
6301 2000-11-13  Havoc Pennington  <hp@pobox.com>
6302
6303         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6304         still more bugs.
6305
6306         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6307         scroll the GdkWindows before realization.
6308
6309 2000-11-13  Havoc Pennington  <hp@redhat.com>
6310
6311         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6312         where GC didn't always get updated properly
6313
6314         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6315         of fonts instead of setting the entire font
6316
6317         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6318         setting entire font
6319
6320         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6321
6322         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6323         a bunch of individually-settable font attributes. You can still 
6324         use the "font" and "font_desc" args, they just set all the font
6325         attributes at once.
6326
6327 2000-11-13 Elliot Lee <sopwith@redhat.com>
6328
6329         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6330
6331 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6332
6333         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6334         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6335
6336         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6337         work better.
6338
6339 2000-11-13  Havoc Pennington  <hp@redhat.com>
6340
6341         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6342         the module file.
6343
6344         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6345         dest->language
6346
6347         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6348         settings
6349
6350         * gtk/gtktextview.c: Implement object args and setters/getters for
6351         all the aspects of the GtkTextAttributes that are not set from
6352         GtkWidget attributes. This is spacing, justification, margins,
6353         etc.
6354
6355         (gtk_text_view_set_arg)
6356         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6357         args
6358         (gtk_text_view_class_init): Add args for justify, left_margin,
6359         right_margin, indent, and tabs
6360         
6361
6362         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6363         attribute properly
6364
6365         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6366         replace with indent attribute
6367
6368         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6369         PANGO_SCALE
6370
6371         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6372         rearranging code to do that
6373         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6374         i.e. don't subtract the top_margin first, just to keep
6375         all margin-futzing in one place.
6376
6377         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6378
6379         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6380         special case of last line, Pango now handles this itself.
6381         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6382         Y coordinate
6383         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6384         (find_display_line_above): wasn't moving the byte index as it
6385         iterated over lines, so always returned byte 0. Also, port to use
6386         PangoLayoutIter.
6387         (find_display_line_below): same problem as
6388         find_display_line_above. Also, port to use PangoLayoutIter.
6389
6390 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6391
6392         * gdk/linux-fb/*.[ch]:
6393         Massive reindent to gtk+ standard. My hands hurt.
6394
6395         * gdk/linux-fb/gdkcolor-fb.c:
6396         Move GdkColorPrivateFB from inherited to windowing_data
6397
6398         * gdk/linux-fb/gdkcursor-fb.c:
6399         _gdk_cursor_new_from_pixmap made static
6400
6401         * gdk/linux-fb/gdkdnd-fb.c:
6402         GdkDragContextPrivate moved to windowing_data
6403
6404         * gdk/linux-fb/gdkdrawable-fb2.c:
6405         Removed endian.h, use glib endianness macros instead
6406         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6407         and GDK_DRAWABLE_IMPL_FBDATA
6408
6409         * gdk/linux-fb/gdkfont-fb.c:
6410         Add empty gdk_font_load(). Needed for linking of Gtk+.
6411
6412         * gdk/linux-fb/gdkimage-fb.c:
6413         Removed endian.h, use glib endianness macros instead
6414         Moved GdkImagePrivateFB to windowing_data
6415         gdk_image_new_bitmap didn't always allocate enough
6416         memory.
6417
6418         * gdk/linux-fb/gdkinput-ps2.c:
6419         Added semi-working support for MS serial mice.
6420
6421         * gdk/linux-fb/gdkprivate-fb.h:
6422         s/GdkWindowPrivate/GdkWindowObject/
6423         Removed GdkWindowPrivate typedef
6424         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6425         Removed GDK_DRAWABLE_P
6426         Move GdkColorPrivateFB from inherited to windowing_data
6427         Moved GdkImagePrivateFB to windowing_data
6428
6429         * gdk/linux-fb/gdkvisual-fb.c:
6430         Removed some unused debug code.
6431
6432         * gdk/linux-fb/gdkwindow-fb.c:
6433         Use stock cursors instead of including X headers.
6434         s/GdkWindowPrivate/GdkWindowObject/
6435
6436         * gdk/linux-fb/mitypes.h:
6437         Removed unused types.
6438
6439         * modules/linux-fb/basic.c:
6440         Use the pango fribidi wrappers.
6441
6442 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6443
6444         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6445         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6446         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6447         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6448         GEqualFunc where applicable.
6449         
6450         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6451         pango_font_description_equal as changed in pango.
6452         
6453         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6454
6455         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6456
6457         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6458
6459         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6460
6461         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6462
6463         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6464
6465         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6466         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6467
6468         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6469         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6470
6471 2000-11-12  Havoc Pennington  <hp@pobox.com>
6472
6473         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6474         dir to datadir/gtk+-2.0/demo
6475
6476         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6477         sorts of text widget and Pango font bugs. Urgh.
6478
6479         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6480
6481         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6482         tree that you should double click to see the demo. Fix 
6483         types of variables to reflect changed return values from 
6484         GtkTreeStore and GtkTreeViewColumn constructors.
6485
6486         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6487         newly-created buffer to prepare for GObject semantics
6488
6489         * gtk/testtext.c: don't leak the buffer with GObject semantics
6490
6491         * gtk/testtextbuffer.c: ditto
6492         
6493 2000-11-12  Havoc Pennington  <hp@pobox.com>
6494
6495         Rename this testgtk to gtk-demo to avoid confusion, and 
6496         install it so people can use it as a supplement to 
6497         the documentation.
6498         
6499         * demos/gtk-demo: Moved from demos/testgtk
6500
6501         * demos/testgtk: Removed
6502
6503         * configure.in: make Makefile in gtk-demo
6504         
6505         * demos/gtk-demo/Makefile.am: Install sample source to 
6506         datadir/gtk-demo (maybe there's a better place?), and 
6507         rename the binary to gtk-demo
6508         
6509         * demos/gtk-demo/main.c (load_file): Load installed sample
6510         source if source isn't found in pwd.
6511
6512 2000-11-09  Havoc Pennington  <hp@pobox.com>
6513
6514         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6515         argument to set the char displayed when visibility == FALSE
6516         (gtk_entry_create_layout): If !entry->visible, replace 
6517         all chars with the "invisible char"
6518
6519         * gtk/testgtk.c: Test the invisible_char deal
6520         
6521 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6522
6523         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6524         can't get a native font in the right encoding.
6525
6526 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6527
6528         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6529         respectively.
6530
6531 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6532
6533         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6534         Fix warning when moving between paragraphs.
6535
6536         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6537         delete => delete_from_cursor, insert => insert_at_cursor
6538
6539 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6540
6541         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6542
6543         * modules/input/imthai-broken.c: A Thai input method for use if
6544         Thai keys are really generating Latin1 keysyms.
6545
6546         * modules/input/Makefile.am: Build these.
6547
6548 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6549
6550         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6551         g_filename_{to,from}_utf8 now takes an extra parameter.
6552
6553         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6554         strftime into UTF-8.
6555
6556         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6557         calendars.
6558
6559         (gtk_calendar_paint_day_names): Draw day names in the right 
6560         place.
6561         
6562 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6563
6564         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6565         problem with using result of g_get_charset() backwards -
6566         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6567
6568         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6569         negative min_width/height and max_width/height to
6570         mean "requisition"; this allows setting a window
6571         to be user-resizable in only one direction easily.
6572
6573         * gtk/testgtk.c (create_main_window): Remove hard-coded
6574         usize - set a default size in the vertical direction.
6575
6576 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6577
6578         * gtk/gtkrange.c: Add some missing casts. Support 
6579         2 and 3 button clicks on the arrows to mean 
6580         "move by pages" and "jump to end". (Like gtkspinbutton)
6581
6582 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6583
6584         * gdk/win32/makefile.msc : reflect build module changes
6585
6586         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6587         from GdkPixmap*, cast implementation member instead.
6588
6589         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6590         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6591         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6592         more Gdi functions return value checking. 
6593         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6594         GdkImagePrivateWin32 *.
6595
6596         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6597         menus useable again. Add #pragma message to keep reminded on this issue.
6598         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6599         windows. This allows to enable backing store on Win32!
6600
6601         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6602         in drawable is of impl type. Correct specific type checks appropriate.
6603  
6604         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6605         GDK_WINDOW_DESTROYED before allocating new resources.
6606
6607         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6608
6609         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6610         (gdk_window_foreign_new) initialize parent handle.
6611         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6612
6613         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6614         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6615         problems (e.g. main buttons in testgtk). 
6616
6617 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6618
6619         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6620         gtk_widget_activate for GDK_Return.
6621
6622         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6623         of preedit cursor position.
6624
6625 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6626
6627         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6628         static.
6629
6630 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6631
6632         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6633         out support for multiple locales; that simple doesn't
6634         work reliably with current Xlib
6635
6636         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6637         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6638         Add support for positioning the cursor within the preedit string.
6639
6640 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6641
6642         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6643         at XIM input method module.
6644
6645         * gtk/gtktextview.c: Check for bindings after passing
6646         events to im context filter.
6647
6648 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6649
6650         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6651         empty attribute lists properly.
6652
6653 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6654
6655         * gtk/queryimmodules.c (main): Return non-zero exit
6656         status if errors were encountered querying any
6657         modules.
6658
6659         * modules/input/Makefile.am (moduledir): remove
6660         leftover bin program target.
6661
6662         * docs/make-todo: Fix typo in error message.
6663
6664 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6665
6666         * configure.in: Add modules/input/Makefile
6667
6668 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6669
6670         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6671         don't include gtkthemes.h.
6672
6673         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6674         to point
6675
6676         * gtk/Makefile.am: Add new .c and .h files, build 
6677         gtk-query-immodules and use it to create a gtk.immodules
6678         file for use of test programs.
6679
6680         * gtk/gtkpreview.c: remove extra blank line.
6681
6682 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6683
6684         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6685         Add the ability to add extra tables beyond the default
6686         one, and also the ability to have compose sequences 
6687         that are prefixes of other compose sequences. 
6688
6689         * gtk/gtkimcontextsimple.c: Export a preedit string which
6690         consists of possible candidates for keystrokes that have
6691         been entered but not yet committed.
6692
6693         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6694         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6695
6696         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6697         Add a function to add input-method switching menu items
6698         to a menu.
6699
6700         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6701         when switching input methods.
6702
6703         * gtk/gtkimcontextsimple.[ch]: Change the format of
6704         the compose table to allow compose tables of different
6705         lengths / sequence.
6706
6707 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6708
6709         * gtk/gtkimmodule.[ch]: Support routines for loading
6710         GtkIMContext implementations dynamically at runtime.
6711
6712         * modules/input/imcyrillic-translit.c: A sample input
6713         method (based on GtkIMContextSimple with an extra table),
6714         which demonstrates preedit strings and the module
6715         system for input modules
6716
6717         * gtk/queryimmodules.c: Program to query the available
6718         input modules and write the results into a file.
6719          
6720         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6721         extra config options "im_module_file" (cache file for
6722         input method modules), and "im_module_path" - path
6723         to look for modules when generating cache file.
6724
6725         This doesn't scale.
6726
6727 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6728
6729         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6730         generic code from gtkthemes into a new abstraction
6731         GtkModule which has the logic for implementing
6732         a loadable module which implements a number of 
6733         GObject types.
6734
6735 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6736
6737         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6738         a class into an interface  
6739         
6740         * gtk/gtkoldeditable.[ch]: Move the old editable
6741         implementation into here, so legacy widgets can
6742         still rely on the implemenation. GtkOldEditable
6743         exports GtkEditable. Make selection handling
6744         code use new text conversion functions (and
6745         handle UTF-8 as a side-effect). Use GtkClipboard
6746         for CLIPBOARD.
6747
6748         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6749         Adopt to match above changes.
6750
6751         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6752         avoid GtkOldEditable implementation. Restructure
6753         to reduce number of places that modify state directly.
6754         Move to GtkBindingSet. Display the preedit string.
6755         Queue recomputation of PangoLayout and scroll position
6756         to improve effiency of doing complex changes naively.
6757         Add a menu with cut/copy/paste and input method selection.
6758
6759 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6760
6761         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6762         to set preedit string and attributes; display preedit string by
6763         inserting string and attributes at cursor when creating the
6764         GtkTextLineDisplay.
6765
6766         * gtk/gtktextlayout.c: Move all conversions between byte
6767         positions in PangoLayout and GtkTextIter into new functions
6768         line_display_iter_to_index/index_to_iter that properly
6769         handle the preedit string.
6770
6771         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6772         it to return const char * (eventually will end up
6773         as GCONST char *, most likely.)
6774
6775         * gtk/gtktextview.[ch]: Handle the preedit string, call
6776         gtk_im_context_reset() as necessary, add a menu to switch
6777         input methods.
6778         
6779         * gtk/gtktextlayout.[ch]: Remove useless
6780         gtk_text_layout_get_log_attrs() function.
6781
6782 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6783
6784         * gdk/gdk.def
6785         * gtk/gtk.def: Update.
6786
6787         * gdk/win32/*.c: Add last argument to g_type_register_static()
6788         calls.
6789
6790         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6791
6792         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6793         generated by older wheel mouse drivers. Get the correct y
6794         coordinate from WM_MOUSEWHEEL messages.
6795
6796         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6797         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6798         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6799         Debugging functions.
6800
6801         * gdk/win32/gdkprivate-win32.h: Declare them.
6802
6803         * gdk/win32/gdkinput-win32.h: Add declaration for
6804         gdk_input_window_destroy().
6805
6806         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6807
6808 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6809
6810         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6811         function to help handle keeping things in sync.
6812
6813 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6814
6815         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6816         BOXED marshallers.
6817
6818         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6819         (gtk_list_store_class_init): use the new BOXED marshallers.
6820
6821         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6822         new_with_values to new_with_types.
6823         (gtk_tree_store_get_column_type): add this.
6824         (gtk_tree_store_class_init): use the new BOXED marshallers.
6825
6826         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6827         mirror some POINTER marshallers.
6828
6829 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6830
6831         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6832         allow more interesting iterators.  Also, made the lifecycle of
6833         iterators more explicit.
6834
6835         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6836
6837         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6838         types.
6839
6840 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6841
6842         * demos/testgtk/menus.c:
6843         Changes to make the new testgtk compile after
6844         gtk_menu_append was removed.
6845
6846         * gdk/linux-fb/gdkdrawable-fb2.c
6847         (gdk_fb_get_depth, gdk_fb_get_visual,
6848         gdk_drawable_impl_fb_class_init): Implement
6849         these drawable functions. Now GtkImages work again.
6850
6851         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6852
6853         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6854         
6855         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6856         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6857         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6858         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6859
6860 2000-11-08  Havoc Pennington  <hp@pobox.com>
6861
6862         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6863         visible_set args, don't know where these had gone, I thought they
6864         used to be there
6865
6866         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6867         now we can test the feature and see that it's totally broken.
6868
6869 2000-11-08  Havoc Pennington  <hp@pobox.com>
6870
6871         Make DND copy pixbufs and tags when source and target share a 
6872         tag table.
6873         
6874         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6875         in-process GTK_TEXT_BUFFER_CONTENTS target
6876         (gtk_text_view_drag_data_received): Paste from
6877         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6878
6879 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6880
6881         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6882         API changes.
6883
6884         * gtk/gtkmenu.c: Add support for scrolling menus.
6885         Remove gtk_menu_append/prepend/insert, these have been moved to
6886         gtkcompat.h as #defines.
6887
6888         * gtk/gtkcompat.h.in:
6889         Add compatibility #defines for gtk_menu_append/prepend/insert
6890
6891         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6892         GtkMenuPositionFunc gets an extra argument push_in.
6893         gtk_menu_append/prepend/insert removed.
6894         
6895         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6896         positioning behaviour to fit to scrolling menus.
6897
6898         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6899         into menuitem->submeny. That is wrong, and broke torn
6900         off submenus of torn off menus, since they were unrealized
6901         when the first menu was unrealized.
6902
6903         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6904         gtk_menu_shell_select_item() since these need to be overridden in
6905         GtkMenu.
6906
6907         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6908         positioning behaviour to fit to scrolling menus.
6909         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6910         the current item so that it is prelighted when the menu pops up.
6911         This is a workaround to the fact that the menu doesn't get the
6912         initial enter event (due to grabs).
6913
6914         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6915         s/gtk_menu_append/gtk_menu_shell_append/
6916
6917         * gtk/gtknotebook.c:
6918         s/gtk_menu_insert/gtk_menu_shell_insert/
6919
6920         * gtk/testgtk.c (create_menu, create_menus):
6921         Create the first menu with 50 items so that menu scrolling
6922         can be tested.
6923         
6924         
6925         Patch from Jonathan Blandford  <jrb@redhat.com>
6926
6927         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6928         system to handle size requests.  First, we ask what the size of
6929         the toggle is.  Then, when allocating the size, we allocate the
6930         toggle_size first.  This way we can have multiple menu-item
6931         classes w/o needing a seperate class for each.
6932
6933         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6934         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6935
6936         * gtk/gtkcheckmenuitem.c
6937         (gtk_check_menu_item_toggle_size_request): New function to handle
6938         the toggle size-request.
6939
6940 2000-11-07  Havoc Pennington  <hp@redhat.com>
6941
6942         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6943         Half-ass somewhat fix this function, so that scrolling to the
6944         insertion point works. Pango hacking is in the future to really
6945         fix it.
6946
6947         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6948         length of data, no longer used.
6949
6950         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6951         method contents in here, get rid of destroy method
6952         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6953         that were backward. Remove debug spew.
6954         (cut_or_copy): Make the clipboard work with insert_range to
6955         preserve tags and pixbufs, not just the primary selection.
6956
6957 2000-11-07  Havoc Pennington  <hp@redhat.com>
6958
6959         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6960         to gtk_text_mark_get_visible
6961
6962         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6963         bug that was generating an invalid iterator
6964
6965         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6966         ensure_char_offsets() in front of code placing the iter in an
6967         invalid state.
6968
6969         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6970         make override_location arg const
6971         (paste): Replace the selection if we paste into the 
6972         current selection
6973
6974         * gtk/gtkselection.h: Remove "GtkSelectioData"
6975         (struct _GtkSelectionData): move the definition here.
6976
6977         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6978         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6979
6980         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6981
6982         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6983         (gtk_text_buffer_insert_range_interactive): implement
6984         (gtk_text_buffer_get_tags): Remove, replaced by
6985         gtk_text_iter_get_tags()
6986
6987         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6988         limit parameter, to avoid infinite linear scan.
6989         (gtk_text_iter_backward_search): Add search limit
6990         (gtk_text_iter_forward_find_char): Add search limit
6991         (gtk_text_iter_backward_find_char): Add search limit
6992
6993 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6994
6995         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6996         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6997         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6998         gdk/linux-fb/gdkwindow-fb.c:
6999         use g_object_new() instead of g_type_create_instance() which
7000         is a private function for fundamental type implementations.
7001
7002         * gdk/linux-fb/gdkinput-ps2.c:
7003         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7004         instead just store the current modifier state. Add a (somewhat broken)
7005         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7006         Rename exported function gdk_input_ps2_get_mouseinfo to
7007         gdk_input_get_mouseinfo.
7008
7009         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7010         gdk/linux-fb/gdkwindow-fb.c:
7011         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7012         
7013
7014 2000-11-02  Havoc Pennington  <hp@redhat.com>
7015
7016         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7017         use stock buttons. Should be 100% source compatible, appropriate
7018         filesel fields now point to dialog->vbox and dialog->action_area.
7019         On the bizarre side, dialog->action_area and filesel->action_area
7020         are not the same widget.
7021         (gtk_file_selection_init): Put some padding around the selection
7022         entry, so it isn't touching the GtkDialog separator.    
7023
7024         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7025         use stock buttons, etc. Should also be source compatible.
7026         Set the dialog default title in _init not _new().
7027         
7028         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7029         Use stock buttons; don't put a button box inside the existing
7030         dialog button box. Don't bother with push/pop colormap anymore.
7031
7032         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7033         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7034         for message dialog, and necessary for the font selection and color
7035         selection with help and apply buttons.
7036         
7037         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7038         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7039         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7040         between buttons, put less padding around the action area.
7041         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7042         This will also exit the loop if the widget is hidden.
7043         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7044         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7045         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7046         special-case delete event.
7047
7048         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7049         formatting
7050         
7051 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7052
7053         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7054         button to temporarily disable position recording in the
7055         "saved position" test.
7056
7057 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7058
7059         * gtk/gtkthemes.c: added compat code that temporarily implements
7060         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7061         going to be revamped by owen's upcoming GtkModule patches, but
7062         untill then people want gtk to build, right? ;)
7063
7064 2000-11-04  Havoc Pennington  <hp@pobox.com>
7065
7066         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7067         list
7068
7069         * docs/Changes-2.0.txt: Add note about
7070         gtk_container_get_toplevels()
7071
7072         * gtk/gtktextview.h: formatting
7073         
7074         * gtk/gtktextview.c: don't start descriptions with "Returns",
7075         confuses gtk-doc
7076
7077 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7078
7079         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7080         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7081
7082 2000-11-03  Havoc Pennington  <hp@redhat.com>
7083
7084         * gtk/gtktexttagtable.c: Docs
7085         (gtk_text_tag_table_size): return a signed int
7086
7087         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7088         (gtk_text_tag_event): make the event_object a GObject
7089
7090         * gtk/gtktextview.c: Write API docs for all functions.
7091
7092         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7093         for gtk_text_view_get_window_type() called on one of the private
7094         windows.
7095
7096         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7097         directly, call get_buffer() which demand-creates a default
7098         buffer. So gtk_text_view_new() can be used to create a view with a
7099         default buffer in it, if you just want an empty text box users can
7100         put data in. Useful for GUI builders also.
7101
7102 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7103
7104         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7105         the charset encodign portion MUST be in lowercase.
7106         * gtk/gtkrc.az: added file for Azeri language
7107
7108 2000-11-03  Havoc Pennington  <hp@redhat.com>
7109
7110         Get widgets working on the btree/buffer side. Display of them 
7111         still doesn't work.
7112         
7113         * gtk/gtktextview.c: start implementing child widget stuff
7114
7115         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7116
7117         * gtk/gtktextlayout.c: handle embedded widgets
7118
7119         * gtk/gtktextdisplay.c: handle embedded widgets
7120
7121         * gtk/gtktextchild.c: Implement all the child anchor goo
7122
7123         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7124         function
7125
7126         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7127         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7128         creating a child anchor or a pixbuf segment.
7129         (gtk_text_btree_create_child_anchor): new function
7130         (gtk_text_btree_unregister_child_anchor): new function
7131
7132         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7133         allocate_child signal on GtkTextLayout
7134
7135         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7136         values
7137         (gtk_text_iter_get_child_anchor): new function
7138
7139         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7140         default handler for the changed signal, which calls
7141         gtk_text_buffer_set_modified(), instead of just always emitting
7142         changed then calling set_modified() manually. I guess this is
7143         maybe more flexible. It seems logical.
7144
7145 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7146
7147         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7148         now.
7149
7150         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7151
7152 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7153
7154         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7155         been marked static.
7156
7157 2000-11-02  Havoc Pennington  <hp@redhat.com>
7158
7159         * gtk/testgtk.c (create_labels): had a test backward
7160
7161         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7162         fields, so the dest GC ends up with the correct clip origin, 
7163         etc. Fixes a bug where colored labels didn't redraw 
7164         properly.
7165
7166 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7167
7168         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7169         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7170         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7171         Add last argument to t_type_register_static call.
7172         
7173         * gdk/linux-fb/gdkdrawable-fb2.c:
7174         Add last argument to t_type_register_static call.
7175         export the get_image drawable virtual function.
7176
7177         * gdk/linux-fb/gdkimage-fb.c:
7178         Add last argument to t_type_register_static call.
7179         rename gtk_image_get to _gdk_fb_get_image and
7180         export it for use by gdkdrawable-fb2.
7181
7182         * gdk/linux-fb/gdkprivate-fb.h:
7183         export _gdk_fb_get_image.
7184
7185         * gdk/linux-fb/gdkselection-fb.c:
7186         Add new api call stubs.
7187
7188         * gtk/Makefile.am:
7189         Missing ( in linux-fb part.
7190
7191         * modules/linux-fb/Makefile.am:
7192         Must link with gdk_pixbuf or get unresolved symbol.
7193
7194 2000-11-01  Havoc Pennington  <hp@pobox.com>
7195
7196         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7197         GTK_TYPE_TEXT_ITER and BOXED marshallers
7198
7199         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7200
7201         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7202         
7203         * gtk/gtk-boxed.defs: add GtkTextIter
7204
7205         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7206         properly use OBJECT and BOXED
7207
7208 2000-11-01  Havoc Pennington  <hp@redhat.com>
7209
7210         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7211
7212         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7213         before returning it. 
7214         
7215 2000-11-01  Havoc Pennington  <hp@redhat.com>
7216
7217         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7218         Clip the rectangle to be rendered to the drawable, since
7219         get_from_drawable() requires a region within the drawable
7220
7221 2000-11-01  Havoc Pennington  <hp@redhat.com>
7222
7223         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7224         from coordinates.
7225
7226 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7227
7228         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7229         it isn't NULL.
7230
7231 2000-11-01  Havoc Pennington  <hp@pobox.com>
7232
7233         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7234         on a label
7235         (gtk_label_finalize): unref the attr list if any.
7236
7237         * gtk/testgtk.c (create_get_image): close test on second click
7238         (make_message_dialog): close dialog if it exists
7239
7240         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7241
7242         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7243         gdk-pixbuf
7244
7245         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7246         from Pango markup format
7247         (gtk_label_set_markup_with_accel): ditto but with accelerator
7248         parsing
7249
7250         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7251
7252         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7253         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7254         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7255         call gdk_window_get_origin().
7256
7257         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7258         implement GDK_PIXBUF_ALPHA_FULL
7259         
7260 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7261
7262         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7263         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7264         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7265         multiple handlers respectively, instead of only treating the
7266         first handler found (bug reported by owen).
7267
7268 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7269
7270         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7271
7272         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7273
7274         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7275         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7276         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7277
7278         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7279         widget.  Needs writing someday.
7280
7281         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7282         the docs.
7283
7284 2000-10-30  Havoc Pennington  <hp@redhat.com>
7285
7286         * gtk/gtktextview.h, gtk/gtktextview.c:
7287         Rename delete_at_cursor delete_from_cursor, and 
7288         move to move_cursor.
7289
7290 2000-10-30  Havoc Pennington  <hp@redhat.com>
7291
7292         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7293         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7294         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7295         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7296         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7297         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7298         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7299         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7300         gtktexttypes.h, gtktextview.c, gtktextview.h:
7301
7302         Massive reindentation and reformatting. Arg alignment and comments
7303         still need fixing in various places.
7304
7305 2000-10-30  Havoc Pennington  <hp@redhat.com>
7306
7307         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7308         to be named insert_at_cursor and delete_at_cursor so C++ can
7309         handle them.
7310
7311 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7312
7313         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7314         to get a double directory separator in case the home directory
7315         ends with one. This would cause trouble especially on Windows,
7316         where the path will be confused with the syntax for an an UNC
7317         (network share) path \\server\share\path.
7318         (gtk_rc_add_initial_default_files): Ditto.
7319
7320 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7321
7322         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7323
7324         * gtk/gtktextview.c: Use correct marshallers.
7325
7326 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7327
7328         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7329         use new iter stuff, and added all the appropriate signals et al.
7330
7331         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7332         code is internal to gtk only.
7333
7334 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7335
7336         * gtk/gtk.def
7337         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7338         glib-genmarshal etc.
7339
7340 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7341
7342         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7343         parallel builds.
7344
7345 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7346
7347         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7348
7349 2000-10-27  Robert Brady  <robert@suse.co.uk>
7350
7351         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7352         en_GB (British), ia (Interlingua).
7353
7354 2000-10-26  Havoc Pennington  <hp@redhat.com>
7355
7356         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7357
7358         Fixed output of:
7359         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7360         
7361         * gtk/gtktextsegment.c (char_segment_new): rename
7362         (_char_segment_new_from_two_strings): rename
7363         (_toggle_segment_new): rename
7364         
7365         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7366         (make_clipboard_widget): make it static
7367         (text_get_func): static
7368         (text_clear_func): static
7369
7370         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7371         static
7372         (hex_changed): make it static
7373         (hsv_changed): make it static
7374         (opacity_entry_changed): make it static
7375
7376         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7377         (toggle_segment_check_func): rename with _gtk
7378
7379         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7380         (_widget_segment_new): rename
7381         (_widget_segment_add): rename
7382         (_widget_segment_remove): rename
7383         (_widget_segment_ref): rename
7384         (_widget_segment_unref): rename
7385
7386         * gtk/gtktextmark.c (_mark_segment_new): Rename
7387         _gtk_mark_segment_new   
7388
7389 2000-10-26  Havoc Pennington  <hp@redhat.com>
7390
7391         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7392         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7393         types
7394
7395         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7396         marshaller types
7397
7398         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7399         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7400         license on these files.
7401
7402         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7403         work.
7404
7405         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7406         runtime random number different for each tree, instead of 
7407         a constant I made up.
7408
7409 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7410
7411         * gtk/Makefile.am: buncha cleanups, kludged build sources
7412         dependencies with a Makefile: oldest-source-stamp dependancy
7413         for the moment. automake is really fighting us here, with
7414         intentionally not allowing user-defined rules or dependancies
7415         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7416
7417         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7418         to public headers. tehy have a comment stating that they are
7419         "semi-public" aren't included by gtk.h and if enums popup there,
7420         they can be /*< skip >*/-ed.
7421
7422         * gtk/gtktextlayout.h: 
7423         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7424         added LGPL... <SIGH>
7425
7426 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7427
7428         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7429         GtkTreeIter.  Added iterators everywhere.
7430
7431         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7432
7433         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7434
7435         * gtk/gtktreestore.c: Changed to use the iterators.
7436
7437         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7438         iterators tomorrow.
7439
7440         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7441         iterators tomorrow.
7442
7443         * gtk/treestoretest.c: Changed to use iterators.
7444
7445         * demos/testgtk/main.c: Moved to use the new iterator system.
7446
7447 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7448
7449         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7450         localization misbehaviour.
7451
7452         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7453         a useless type without copy/free.
7454
7455         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7456         of GTK_TYPE_CTREE_NODE.
7457
7458 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7459
7460         * gtk/gtksignal.c:
7461         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7462         applicable.
7463
7464         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7465         gtk_selection_data_copy and gtk_selection_data_free
7466         do GtkSelectionData work as params in signals.
7467
7468 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7469
7470         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7471         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7472         couldn't they at least give it a non-standard name?
7473         
7474         * gtk/gtktextlayout.c: arg! yet another implementation of
7475         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7476
7477         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7478         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7479         home. now i know this _is_ a conspiracy.
7480
7481         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7482         ::state-changed.
7483
7484         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7485         (gtk_accel_group_create_add): marshaller signature fixups.
7486
7487         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7488         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7489
7490         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7491         anymore.
7492
7493 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7494
7495         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7496         due to the signal system changes, it wouldn't build currently. to
7497         be fixed soon.
7498
7499         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7500
7501         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7502         so it needs gtk_marshal_VOID__ENUM() instead of
7503         gtk_marshal_NONE__UINT().
7504
7505         * gdk/gdk*.c: adapted type registration functions.
7506
7507         * gtk/gtkbindings.c:
7508         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7509         gone.
7510
7511         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7512
7513         * gtk/gtkobject.c:
7514         (gtk_object_destroy):
7515         (gtk_object_shutdown): fixed recursion guards. basically we have to
7516         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7517         is called during ::destroy, and avoid recursion there.
7518
7519         * gtk/gtktypeutils.c:
7520         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7521         boxed_copy/boxed_free. this needs a more general solution based on a
7522         publically installed code-generator utility.
7523
7524         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7525         glib's gobject has support for that now.
7526         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7527
7528 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7529
7530         * gtk/gtksignal.[hc]:
7531         * gtk/gtkmarshal.[hc]:
7532         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7533         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7534         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7535         care of that.
7536
7537         * *.c: marshaller name fixups.
7538
7539         * gtk/gtkmarshal.list: added a comment briefing the format.
7540
7541 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7542
7543         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7544         compatibility macros here now. more specifically, most of
7545         the API is preserved (yes, _most_, nonwithstanding the
7546         following exceptions listed, the API is stil lHUGE ;)
7547         things that got removed completely:
7548         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7549         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7550         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7551         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7552         gtk_signal_remove_emission_hook().
7553         non-functional functions variants:
7554         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7555         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7556         not supported anymore.
7557         (gtk_signal_compat_matched): new internal function to aid
7558         implementation of the compatibility macros, it  provides
7559         functionality to block/unblock/disconnect handlers based
7560         on func/data.
7561
7562         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7563
7564         * *.c: adaptions to new type registration API signatures.
7565
7566 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7567
7568         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7569
7570 2000-10-25  Robert Brady  <robert@suse.co.uk>
7571
7572         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7573         gdk_property_delete): If window == NULL, assume the root window.
7574         (restoring the behaviour that was in 1.2).
7575         
7576         * gtk/testtext.c (save_buffer): Allow creation of new files when
7577         saving.
7578
7579         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7580         calls to read().
7581
7582 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7583
7584         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7585
7586         * gdk/win32/gdkdrawable-win32.c
7587         * gdk/win32/gdkimage-win32.c
7588         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7589         X11 backend.
7590
7591         * gdk/win32/gdkcc-win32.c
7592         * gdk/win32/gdkcolor-win32.c
7593         * gdk/win32/gdkfont-win32.c
7594         * gdk/win32/gdkinput-win32.c
7595         * gdk/win32/gdkmain-win32.c
7596         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7597
7598 2000-10-24  Havoc Pennington  <hp@redhat.com>
7599
7600         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7601         it a static function
7602
7603         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7604         redraw text when a tag is applied to it.
7605
7606         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7607         (gtk_text_tag_affects_nonsize_appearance): private functions to
7608         see if a tag requires various kinds of redraw/layout to be queued
7609         up.
7610
7611         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7612
7613         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7614         at the start of the buffer, so search works by default
7615
7616         * gtk/gtktextiter.c (lines_match): init match_start always
7617
7618         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7619         function, get iter at a line + a byte index
7620
7621         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7622         to set byte position within a line
7623         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7624
7625 2000-10-23  Havoc Pennington  <hp@redhat.com>
7626
7627         * gtk/testtext.c: Re-enable the "find" dialog
7628
7629         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7630         
7631         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7632         the arguments to gdk_draw_drawable were in the wrong order
7633         (gdk_window_paint_init_bg): This function was ignoring the
7634         init_region, instead of clipping to it, so the entire backing
7635         pixmap was cleared on every begin_paint()
7636         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7637         was in here again, the loop kept using the same GtkWindowPaint
7638         over and over.
7639         (gdk_window_begin_paint_region): Fix a bug where we had two
7640         x_offset instead of x_offset and y_offset
7641
7642         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7643         before we get the image.
7644         (gdk_draw_drawable): get the composite before we draw the drawable.
7645         (gdk_drawable_real_get_composite_drawable): default
7646         get_composite_drawable implementation that returns the drawable 
7647         itself
7648
7649         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7650         get_composite_drawable virtual function
7651
7652         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7653         list-walking bug
7654
7655         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7656         make this work if the source drawable is a GdkDrawableImplX11
7657         instead of a public drawable type. This is really broken; the
7658         problem is that GdkDrawable needs a virtual method get_xid(), but
7659         of course that doesn't work in practice. Enter RTTI.
7660
7661         Also, improve mismatched depth message.
7662
7663         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7664         GdkPixmap
7665
7666         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7667         install _gdk_x11_get_image as our implementation of get_image
7668         
7669         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7670         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7671
7672         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7673         gdk_drawable_get_image
7674
7675         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7676
7677         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7678         get_image
7679
7680         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7681         trailing semicolon after for loop
7682
7683 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7684
7685         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7686         where font_desc for widget's context lagged widget's font_desc by
7687         one step.
7688
7689 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7690
7691         * gdk/win32/gdkgc-win32.c
7692         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7693
7694         * gtk/makefile.mingw.in
7695         * gtk/gtk.def: Updates.
7696
7697         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7698         library.
7699
7700         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7701
7702         * gtk/makefile.msc: Remove
7703
7704         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7705
7706         * gtk/Makefile.am: Add it.
7707
7708         * configure.in: Generate it.
7709
7710         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7711         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7712         something even if not implemented, to satisfy picky MSVC.
7713
7714         Patches by Hans Breuer:
7715         
7716         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7717         SetBkMode() and SetTextAlign() before calling
7718         pango_win32_render().
7719
7720         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7721         Set hcliprgn to NULL after destroying it.
7722         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7723
7724         * gdk/win32/gdkgeometry-win32.c
7725         (_gdk_windowing_window_queue_antiexpose): More effective
7726         implementation.
7727
7728         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7729         depth as default, not the visual's.
7730
7731         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7732         against empty title.
7733
7734         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7735         IMAGE_PRIVATE_DATA.
7736
7737         * gdk/win32/gdkimage-win32.c: Use it.
7738
7739 2000-10-22  Robert Brady  <robert@suse.co.uk>
7740
7741         * configure.in: Check for bind_textdomain_codeset
7742
7743         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7744         present, make use of it.
7745
7746         Add a translatable string "default:LTR" which, if translated
7747         to "default:RTL", will cause the default direction to be
7748         Right-to-Left.
7749
7750         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7751         direction if marked as flippable.
7752
7753         * gtk/gtkhscale.c: Mark widget as flippable.
7754         
7755 2000-10-04  Havoc Pennington  <hp@redhat.com>
7756
7757         * gtk/testgtk.c (create_buttons): create some stock buttons
7758         with the default accel group
7759         (create_image): test some new GtkImage features
7760         (make_message_dialog): test GtkMessageDialog
7761         (create_modal_window): fix someone's bizzarro indentation
7762
7763         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7764         GTK_WIN_POS_CENTER_ON_PARENT. 
7765         Add "destroy with parent" setting, which means the window goes
7766         away with its transient parent.
7767         (gtk_window_get_default_accel_group): get the default accel group
7768         for the window.
7769         (gtk_window_set_destroy_with_parent): set/unset destroy with
7770         parent flag
7771         (gtk_window_read_rcfiles): invalidate icon set caches
7772         after reloading rcfiles 
7773
7774         * gtk/gtkenums.h (GtkWindowPosition): add
7775         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7776         on its parent window when the dialog is mapped for the first time.
7777
7778         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7779         a simple message dialog class
7780         
7781         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7782         handler to emit response signal, and maybe later it would
7783         honor a hide_on_delete flag - though that isn't there yet.
7784         Set border width on the vbox to 2, so we get some padding.      
7785         Use a button box for the action area.
7786         (gtk_dialog_key_press): synthesize a delete event if Esc
7787         is pressed and the GtkWidget key press handler didn't 
7788         handle the escape key.
7789         (gtk_dialog_new_with_buttons): new function creates a dialog
7790         with some default buttons in it.
7791         (gtk_dialog_add_action_widget): add an activatable widget
7792         as a button in the dialog - you can also add a non-activatable
7793         widget by accessing the action area directly.
7794         (gtk_dialog_add_button): add a simple button - stock ID or 
7795         label - to the action area
7796         (gtk_dialog_response): emit response signal
7797         (gtk_dialog_run): block waiting for the dialog, return 
7798         the response. Override normal delete_event behavior, so that 
7799         delete_event does nothing inside gtk_dialog_run().
7800
7801         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7802         emitted when an action widget is clicked or the dialog gets
7803         delete_event
7804
7805         * gtk/gtk.h: add gtkmessagedialog.h
7806
7807         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7808
7809 2000-10-18  Havoc Pennington  <hp@redhat.com>
7810
7811         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7812         where any number of empty lines would get skipped
7813
7814         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7815         edge.
7816
7817         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7818         warning about invalid iterators (explain more thoroughly)
7819         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7820
7821         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7822         big
7823
7824         * demos/*.c: Add error handling
7825
7826         * gtk/gtktextbuffer.c: don't modify const iterators
7827
7828         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7829
7830         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7831         on file load
7832
7833         * gtk/gtkiconfactory.c: Update to reflect addition of error
7834         handling to gdk-pixbuf loaders
7835
7836 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7837
7838         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7839         move to new modularized testgtk.
7840
7841 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7842
7843         * gtk/gtktreeview.c: Draw the arrows correctly.
7844
7845         * gtk/gtktreemodel.c: Added user docs.
7846
7847         * gtk/gtk.h: remove gtktreedatalist.h.
7848
7849         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7850         parent when generating my type.
7851
7852         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7853         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7854
7855 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7856
7857         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7858         GtkTreeModel from object to interface.
7859
7860 2000-10-16  Havoc Pennington  <hp@redhat.com>
7861
7862         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7863         compilation
7864
7865 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7866
7867         * gtk/gtktreeselection.c: Add API documentation to all public
7868         functions.
7869
7870         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7871         functions.
7872
7873 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7874
7875         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7876         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7877         docs to all public functions.
7878
7879         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7880         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7881         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7882         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7883         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7884         issue.
7885
7886 2000-10-14  Robert Brady  <robert@suse.co.uk>
7887
7888         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7889
7890 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7891
7892         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7893         values other then G_TYPE_STRING.
7894         * gtk/gtktreeselection.c: Minor commenting updates.
7895         * gtk/gtktreeview.c: Format updates.
7896
7897 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7898
7899         * README.win32: Update.
7900
7901         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7902         lines that had been deleted by mistake (?).
7903
7904         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7905         also the case fg==white and bg==black (but still not randomly
7906         coloured cursors). Thanks to Wolfgang Sourdeau.
7907
7908         * gdk/win32/*.c: Silence gcc -Wall.
7909
7910         * gtk/gtk.def: Add missing entry points.
7911
7912         Fixes by Hans Breuer:
7913
7914         * gdk/makefile.msc
7915         * gdk/win32/makefile.msc: Update.
7916
7917         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7918         some MSVC thing, presumably), cause breakpoint on failures. Add
7919         GDK_NOR case. Call g_log_set_always_fatal.
7920
7921         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7922         should be pased by reference.
7923         
7924         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7925         
7926         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7927
7928         * gdk/win32/gdkevents-win32.c
7929         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7930
7931         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7932         implementation object.
7933
7934         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7935         not just windows.
7936         
7937         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7938         Use the wrapper object.
7939         
7940 2000-10-06  Havoc Pennington  <hp@redhat.com>
7941
7942         * Makefile.am (SRC_SUBDIRS): contrib subdir
7943
7944         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7945         so it can be used in Xlib version
7946
7947         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7948         tree
7949
7950         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7951         change from 1.0 tree that returns first frame of animation
7952         if the loaded file is an animation.
7953
7954         * contrib: add new directory to hold stuff that comes with GTK+
7955         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7956         
7957         * configure.in: add contrib/*
7958
7959 2000-10-05  Havoc Pennington  <hp@redhat.com>
7960
7961         * demos/testpixbuf-save.c: add pixbuf save test
7962
7963         * demos/Makefile.am: add testpixbuf-save.c
7964
7965 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7966
7967         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7968         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7969         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7970         * gtk/gtktreeselection.[ch]: Replaced
7971         "node_selected"/"node_unselected" signal with "selection_changed"
7972         signal.
7973
7974 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7975
7976         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7977         tree widget.
7978
7979 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7980
7981         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7982         drawing.
7983
7984 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7985
7986         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7987         Move list pointer forwards before removing item from
7988         list. (Crash reported by Salmaso Raffaele)
7989
7990         * gdk/gdkwindow.h: Remove spurious trailing ,
7991
7992         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7993         dependencies on uninstalled libraries, sorry folks.
7994
7995 2000-10-04  Havoc Pennington  <hp@redhat.com>
7996
7997         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7998         gtk/gtkiconfactory.c: Fix copyrights    
7999
8000         * demos/testpixbuf.c: add inline pixbuf test
8001         
8002 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8003
8004         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8005         Add gdk_window_iconify.
8006
8007         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8008         (gdk_window_set_geometry_hints): Add win_gravity
8009         to geometry structure.
8010
8011         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8012         Implement _NET_WM_PING.
8013
8014         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8015         Set _NET_WM_PID on the client leader.
8016
8017         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8018         Handle UTF-8 better.
8019
8020         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8021         UTF-8 better, set _NET_WM_NAME as well. Only set
8022         icon name if it hasn't previously been explicitely 
8023         set.
8024
8025 2000-10-03  Havoc Pennington  <hp@redhat.com>
8026
8027         * gtk/testtextbuffer.c: clean up trailing whitespace,
8028         add extensive tests for tag toggle iteration.
8029         
8030         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8031         distance
8032
8033         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8034         optimize case where the tag root is on level 1
8035         (gtk_text_line_previous_could_contain_tag): attempt to implement
8036         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8037         functionality
8038
8039         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8040         Implement this, though not very efficiently.
8041
8042         * gtk/gtktextiterprivate.h: reformat
8043
8044         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8045         iterator
8046
8047         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8048         this to properly revalidate the iterators.
8049
8050         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8051         properly at the end of the line (and therefore on empty lines)
8052
8053         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8054         maybe we should return a value...
8055
8056 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8057
8058         * config.h.win32: Guard definition of alloca(). glib.h now handles
8059         that.
8060
8061         * gdk/gdk.def
8062         * gtk/gtk.def: Add new entry points.
8063
8064         Changes just to make GTK+ build without errors on Win32. No hope
8065         of it working in its current state, though...:
8066         
8067         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8068         some functions from the X11 backend, just to make GTK+ build.
8069
8070         * gdk/makefile.mingw.in
8071         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8072         number. Add new object files.
8073
8074         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8075         GetMessageTime to get timestamp (where on X11 uses
8076         gdk_x11_get_server_time()).
8077
8078 2000-10-02  Havoc Pennington  <hp@pobox.com>
8079
8080         * gtk/gtktextview.c: text_window_* weren't static and should have
8081         been.
8082         Start work on child widgets; not yet complete, syncing to 
8083         office computer.
8084
8085         * gtk/gtktextchild.h: change this to contain a public interface,
8086         starting work on child interfaces.
8087         * gtk/gtktextchildprivate.h: move private interfaces here
8088
8089         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8090
8091         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8092         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8093         gtk/gtktextmark.c: copyright notices
8094
8095         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8096         internal functions      
8097
8098         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8099         internal function
8100
8101         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8102         Reformatting    
8103
8104 2000-09-30  Havoc Pennington  <hp@pobox.com>
8105
8106         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8107         NULL start/end pointers
8108
8109         * gtk/gtktextbuffer.c: Write some docs
8110         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8111         NULL, so you can just check whether there's a selection.        
8112
8113         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8114         cleanup_line or segments_changed ourselves, it gets done 
8115         in unlink_segment
8116
8117         * gtk/gtktextmark.h:
8118         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8119         
8120         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8121
8122         * gtk/gtktextmark.c: delete some more old Tk cruft
8123
8124         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8125         mark before removing it, so we can emit MARK_DELETED with a valid
8126         pointer.
8127         (gtk_text_buffer_mark_set): hold ref across signal emission
8128
8129         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8130         whining about attempts to delete special marks
8131
8132         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8133         underscore, since it's internal.
8134
8135         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8136         now implemented in terms of iterators in gtktextiter.h
8137
8138         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8139         New function, destructively sets contents of buffer. Also 
8140         a convenient way to clear the buffer by setting text to ""
8141
8142         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8143         multiline string literal
8144
8145         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8146         text changes.
8147
8148         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8149         is not dereferenceable
8150         (gtk_text_iter_forward_lines): fix return value
8151
8152 2000-09-29  Havoc Pennington  <hp@redhat.com>
8153
8154         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8155
8156         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8157         that set border window size to have nicer name
8158         (gtk_text_view_mark_set_handler):  Fix this to have the 
8159         right signature.
8160
8161         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8162
8163         * gtk/testtext.c: Update with API changes, put line numbers on 
8164         both sides.
8165         
8166         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8167         with this
8168
8169         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8170         pixbuf; delete a big block of #if 0 Tk code
8171
8172         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8173         insert_pixmap with insert_pixbuf
8174
8175 2000-09-29  Martin Baulig  <baulig@suse.de>
8176
8177         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8178         confusion with the GdkPixbuf of the GNOME 1.x platform.
8179
8180 2000-09-29  Havoc Pennington  <hp@pobox.com>
8181
8182         * gtk/gtktextview.c: Implement the side windows.
8183
8184         * gtk/testtext.c: Implement simple line numbering in the 
8185         left side window; seems to make scrolling sloooow. Oops.
8186         Also, cursor blink is for some reason causing redraws
8187         of the line numbers. Should investigate...
8188
8189 2000-09-28  Havoc Pennington  <hp@redhat.com>
8190
8191         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8192         scrolling child windows, and draw focus rectangle properly.
8193         
8194         (gtk_text_view_buffer_to_window_coords):
8195         Coordinate transformation to deal with all these freaking windows
8196         and offsets
8197         (gtk_text_view_window_to_buffer_coords): transform the other way
8198
8199         * gtk/testtext.c (create_buffer): Update to match Pango API change
8200
8201         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8202         anonymous tags
8203         (foreach_unref): don't emit remove signal from finalize, just
8204         set tag's parent to NULL
8205
8206 2000-09-26  Havoc Pennington  <hp@redhat.com>
8207
8208         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8209         Fix some warnings       
8210
8211 2000-09-26  Havoc Pennington  <hp@redhat.com>
8212
8213         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8214         headers into the private header list
8215
8216         * Makefile.am (pkgconfig_DATA): install pkg-config files
8217
8218         * configure.in: add pkg-config files
8219
8220         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8221
8222         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8223         outstanding icon caches on theme change.
8224
8225         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8226         important types:
8227
8228         (GtkIconSource): Specification for creating a pixbuf 
8229         appropriate for a direction/state/size triplet from 
8230         a source pixbuf or filename
8231
8232         (GtkIconSet): List of GtkIconSource objects that are used to
8233         create the "same" icon (e.g. an OK button icon), and cache for
8234         rendered icons
8235
8236         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8237         up the icon set for a given stock ID.  GTK maintains a stack of
8238         GtkIconFactory to search, and applications or libraries can add
8239         additional icon factories on top of the stack
8240         
8241         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8242         the set of GtkIconSource specified for a given stock ID into 
8243         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8244         RcStyle, under the specified stock ID.
8245
8246         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8247         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8248         This allows people to theme how prelight, insensitive, etc. are
8249         done.
8250
8251         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8252         icon factories for a style, and return the resulting 
8253         icon set if any.
8254
8255         (gtk_style_render_icon): Render an icon using the render_icon 
8256         method in the GtkStyleClass.
8257
8258         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8259         Use the style for a given widget to look up a stock ID, get the
8260         icon set, and render an icon using the render_icon method 
8261         of the style
8262
8263         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8264         (contains information about a stock item), the built-in stock item
8265         IDs, and functions to add/lookup stock items.
8266
8267         * gtk/stock-icons/*: Stock icons that come with GTK
8268
8269         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8270         a button based on a GtkStockItem
8271         (gtk_button_new_accel): Takes a uline string and accel group, and
8272         installs the accelerator.
8273
8274         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8275         image-display widget.
8276
8277 2000-09-25  Havoc Pennington  <hp@redhat.com>
8278
8279         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8280
8281         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8282         Fix a bug when removing node data, we didn't properly 
8283         re-splice the linked list after removing the data.
8284
8285         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8286         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8287
8288         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8289
8290         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8291         for the layout from the GtkTextTag.
8292
8293         * gtk/gtktexttypes.h: delete tab and search cruft, 
8294         remove g_convert() in favor of GLib version
8295
8296         * gtk/gtktexttypes.c: remove tab implementation from here,
8297         move to Pango
8298
8299         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8300         tab stuff using new PangoTabArray from Pango
8301
8302         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8303         unused border_width stuff
8304
8305 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8306
8307         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8308         glib) and now useless utf_to_latin1() latin1_to_utf()
8309
8310         * gtk/gtktextview.[ch]: Change ::move_insert and
8311         ::delete_text action signals to ::move and ::delete;
8312         create the signals with the right enumeration type,
8313         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8314         C-v bindings, change Home, End to move to beginning/end
8315         of line, Add C-Home C-End to move to beginning/end
8316         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8317         combine ::scroll_text into ::move; use new GtkSelectionData
8318         functions to simplify DND text handling.
8319         
8320         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8321         deletion enumerations here, rename enumeration values to 
8322         be consistently plural.
8323
8324         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8325         for cut/copy/paste and primary selection.
8326
8327         * gtk/gtktextbuffer.[ch]: Remove excess time and
8328         'interactive' arguments from cut/copy/paste;
8329         rename cut to cut_clipboard, etc; remove
8330         gtk_text_buffer_get_clipboard_contents().
8331
8332         * gtk/gtktextlayout.[ch]: Add 
8333         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8334         line ends.
8335
8336         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8337         Functions to set or get a UTF-8 string on the selection
8338         data.
8339
8340         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8341         interfaces.
8342
8343         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8344         created widgets - one of these is useless if we don't.
8345
8346         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8347         a public function clear all targets registered for the
8348         widget.
8349
8350         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8351         Never call gtk_widget_realize() - that was just asking
8352         for bizarre side-effects.
8353
8354         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8355         gdk_selection_owner_set even if the widget is the
8356         same so that we reliably update the timestamp on
8357         the server.
8358
8359         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8360         gdk_x11_get_server_time() function.
8361         
8362         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8363         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8364         Add some tricky filtering on serial numbers for
8365         selection clear events to fix up long-standard
8366         race condition FIXME's in gtkselection.c.
8367
8368         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8369         routines to convert from utf8 to compound text or
8370         STRING and from a text property to UTF-8.
8371
8372         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8373         a convenience function gdk_get_current_event_time().
8374
8375         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8376         and free selection_data->data properly
8377
8378 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8379
8380         * gtk/gtkthemes.c: Remove some unecessary includes.
8381
8382 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8383
8384         * gtk/gtktextdisplay.c
8385         * gtk/gtktextlayout.c
8386         * gtk/gtktexttag.c
8387         * gtk/gtktexttag.h
8388         * gtk/testtext.c: Change the overstrike property to strikethrough,
8389         to closer match pango.
8390
8391 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8392
8393         * gtk/gtktextview.c: Fix up visibility so that focus,
8394         cursor_visible and blink interact properly.  Reenable cursor blink
8395         which had been roughly disabled. Make blink and focus
8396         properly per-view.
8397
8398         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8399         Add a flag for whether to display insertion cursor and
8400         a function to set the flag.
8401
8402         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8403         get_line_y() to get_line_yrange(), to be a bit more generally
8404         useful.
8405
8406 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8407
8408         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8409           do stop_navigating_submenu, to clear last timeout properly.
8410           Also in gtk_menu_motion_notify move ignore_enter above
8411           the conditional to make it always happen as suggested by Owen
8412
8413 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8414
8415         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8416
8417         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8418         w32api headers.
8419
8420         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8421         declarations.
8422
8423         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8424         (gdk_win32_get_colormap): A line had been deleted by mistake.
8425
8426         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8427         (gdk_event_translate): Handle more virtual keycodes to be able to
8428         generate GDK events for Control-comma, Control-period, etc.
8429
8430         * gtk/gtk.def: Add some missing entry points.
8431
8432 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8433
8434         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8435         Doc comment fixing. (Mostly non-matching parameter names.)
8436
8437         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8438         comments a little to avoid looking like a doc comment.
8439
8440         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8441         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8442         conversions be changed to GError?)
8443
8444         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8445         Move private #defines into .c file.
8446
8447         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8448         order of argument addition, remove duplicates.
8449
8450         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8451         parent class is FrameClass, not BinClass.
8452
8453         * gtk/gtk.h: Add gtkinvisible, which was missing.
8454         (It's occasionalyl useful for client apps, if seldom.)
8455
8456         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8457         #define.
8458
8459 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8460
8461         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8462         coordinates when creating window, instead of GDK-space
8463         coordinates. (Avoid BadValue on too large windows.)
8464
8465 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8466
8467         * configure.in (use_mmx_asm): Remove conftest* after use along the
8468         lines of AC_TRY_COMPILE.        
8469         
8470         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8471         of g_dirname, which is deprecated.
8472         (gtk_rc_parse_any): Removed calls to
8473         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8474
8475         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8476         Removed calls to g_hash_table_{freeze,thaw}, as they are
8477         deprecated now.
8478
8479         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8480         instead of g_basename.
8481         
8482 2000-09-04 Elliot Lee <sopwith@redhat.com>
8483         
8484         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8485         ANSI warning.
8486
8487 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8488
8489         * gtk/gtkwidget.h:  Add some documenting comments about 
8490           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8491           just as owen said on irc.
8492
8493         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8494           set HAS_DEFAULT.  Only set it if there isn't another window
8495           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8496           it if the widget is not the focused window with RECEIVES_DEFAULT.
8497           This fixes weird double default bugs in dialogs which has things
8498           call gtk_window_set_default at times.
8499
8500 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8501
8502         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8503         Nils Barth and David Santiago to improve submenu
8504         navigation. The patch does this by creating a triangular
8505         region from the point where the pointer leaves the
8506         menu to the submenu.  While the pointer is in
8507         that region and a timeout has not expired, events 
8508         that would cause the active submenu to change are
8509         ignored.
8510
8511 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8512
8513         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8514         moving a toplevel window immediately after sizing it would
8515         result in it being sized back to the old size since 
8516         impl->width, impl->height aren't updated until we hear
8517         back from the server. There is still a (longstanding) bug
8518         here that gdk_window_get_size() will give the wrong size
8519         until we do hear back.
8520
8521 2000-08-31  Havoc Pennington  <hp@redhat.com>
8522
8523         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8524         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8525         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8526         Rename GtkTextStyleValues to GtkTextAttributes
8527
8528 2000-08-31  Havoc Pennington  <hp@pobox.com>
8529
8530         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8531         for rapid testing whether an iterator is the end iterator
8532         (gtk_text_btree_new): init end line cache
8533         (gtk_text_line_is_last): use fast cached line to 
8534         see if we're the last line.
8535         (get_last_line): use cached line here too, should 
8536         speed up some random unrelated code.
8537         
8538 2000-08-30  Havoc Pennington  <hp@pobox.com>
8539
8540         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8541         signals.
8542
8543         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8544         delete_text signals. This allows the signals to be used for
8545         implementing undo.
8546
8547         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8548         provide "interactive" argument when emitting insert_text or
8549         delete_text signal.
8550         
8551 2000-08-30  Havoc Pennington  <hp@pobox.com>
8552
8553         * gtk/gtktextbuffer.c: Docs
8554
8555 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8556
8557         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8558         from switch statements, since Tor removed the enumeration
8559         value.
8560         
8561         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8562         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8563
8564 2000-08-29 Elliot Lee <sopwith@redhat.com>
8565         * */*.h: Use G_GNUC_CONST.
8566
8567 2000-08-27  Havoc Pennington  <hp@pobox.com>
8568
8569         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8570         minor indentation fixes, inserted some FIXME about stuff I
8571         realized was broken while documenting it.
8572         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8573         GTK convention  
8574
8575 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8576
8577         * gtk/testgtk.c (create_styles): Fix double free of
8578         font desc.
8579
8580 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8581
8582         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8583         
8584         * gtk/testgtk.c (create_styles): Add a test for modifying
8585         the style through gtk_widget_modify_*.
8586
8587         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8588         a function to get the current modifier style.
8589
8590         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8591         of the passed in GtkRcStyle instead of ref'ing it.
8592
8593         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8594
8595 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8596
8597         * gdk/gdkimage.h
8598         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8599         shared memory image+pixmap GdkImage type, or
8600         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8601         I am dropping that.
8602
8603         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8604         actually call gtk_init_abi_check(), passing also
8605         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8606
8607         * gtk/gtk.def
8608         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8609         New functions, used to check that the GTK+-using code has been
8610         compiled using the correct compiler and switches. In particular,
8611         with gcc one has to use the -fnative-struct switch as GTK+ is
8612         compiled with that.
8613
8614 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8615
8616         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8617         ->prev fields when merging lists. (Found simultaneously
8618         by Pawel Salek and Jakub Jelinek)
8619
8620 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8621
8622         * gdk/gdk.def
8623         * gtk/gtk.def: Add missing entries.
8624
8625         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8626         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8627
8628         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8629         function. Dummy implementation at this point.
8630
8631         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8632         rules. Undefine GTK_COMPILATION when compiling the test programs.
8633         
8634         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8635
8636 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8637
8638         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8639         to convert back and forth from UTF-8 and the "system" (or "current
8640         locale") charset when necessary. Indentation/spacing cleanup.
8641
8642 2000-08-10  Havoc Pennington  <hp@redhat.com>
8643
8644         * Makefile.am (snapshot): Change the format of the snapshot
8645         version to match glib
8646
8647         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8648         from EXTRA_DIST since it doesn't seem to exist
8649
8650 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8651
8652         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8653         version of the directory name (not the UTF-8 one) when building
8654         the path name to stat().
8655
8656 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8657
8658         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8659         PANGO_ATTR_SHAPE set.
8660
8661 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8662
8663         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8664         Peter Osterlund to simplify the code while keeping the
8665         functionality the same.
8666
8667 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8668
8669         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8670         is_viewable() test further inside the function, since removing the 
8671         window from the redraw list without clearing ->update_area
8672         was also very broken.
8673
8674 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8675
8676         * configure.in: Check for <unistd.h>.
8677
8678 2000-08-01  Martin Baulig  <baulig@suse.de>
8679
8680         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8681         to display the message that this is a development version of GTK+.
8682
8683 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8684
8685         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8686         was depending on widget->allocation instead of the width of text_area,
8687         which was incorrect for subclasses like GtkSpinButton.
8688
8689         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8690         with width == 1 tests that should be width == -1.
8691
8692 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8693
8694         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8695         (broken, Elliot, every single window blank on X) custom code with call
8696         to gdk_window_is_viewable() which a) prevents code duplicate and
8697         b) works. 
8698
8699 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8700
8701         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8702         to get the GDK_PARENT_ROOT() macro to work.
8703         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8704         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8705         of, windows that aren't shown.
8706         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8707         pointer grab stuff.
8708
8709 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8710
8711         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8712           s/gtk_main_iteration/g_main_iteration/
8713
8714           Did this already in change:
8715                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8716           don't know how it got reverted.
8717
8718 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8719
8720         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8721         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8722
8723         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8724         not gdk_pixbuf.
8725
8726 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8727
8728         * configure.in,po/{sp,sr}.po: Added Serbian files
8729
8730 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8731
8732         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8733
8734         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8735         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8736         GIOChannel implementation.
8737
8738         * gdk/win32/gdkinput.c
8739         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8740
8741         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8742         definition to match prototype.
8743
8744         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8745
8746 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8747
8748         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8749         function, to allow handling image formats that cannot be detected
8750         by looking at content alone.
8751
8752 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8753
8754         * docs/tutorial/*.gif *.jpg *.eps
8755           Update these to the same look-n-feel.
8756           Why does including images in DocBook suck so badly?
8757
8758 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8759
8760         * gtk/gtktable.c: applied patch from Phil Thompson
8761         <phil@river-bank.demon.co.uk> that enables space settings for
8762         the last row/columns as well.
8763
8764 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8765
8766         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8767         updates the license headers to the GNU Lesser General Public License,
8768         as well as updating the copyright year to 2000.
8769
8770 2000-07-26  Robert Brady  <rwb197@zepler.org>
8771
8772         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8773           and po/Makefile, was installing and looking for them under gtk20
8774           and gtk2 respectively.
8775
8776 2000-07-25  Havoc Pennington  <hp@redhat.com>
8777
8778         * gtk/testtext.c: Comment out some stuff that depends on the rest
8779         of my patches.
8780
8781 2000-07-25  Havoc Pennington  <hp@redhat.com>
8782
8783         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8784         buffer
8785
8786 2000-07-25  Havoc Pennington  <hp@redhat.com>
8787
8788         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8789         widget changes.
8790
8791         * gtk/gtktextview.h: To be consistent with usage of "line"
8792         throughout the API to mean "newline-terminated thingy", change
8793         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8794         to MOVEMENT_LINE.
8795
8796         (GtkTextView): Add flags for default editability, and whether to
8797         show the cursor. Add functions to get/set that. Add 
8798
8799         (gtk_text_view_get_iter_location): new function
8800
8801         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8802         gtktextlayout.h
8803         (g_convert): Add g_convert temporarily, will go in glib in a bit
8804         
8805         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8806         GtkTextTagTableForeach instead of brokenly using GHFunc.
8807         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8808
8809         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8810         moved to public header.
8811
8812         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8813         "invisible", since "elide" was a bad name.
8814         (gtk_text_tag_get_priority): Added
8815
8816         (GtkTextStyleValues): put this in public header, along with
8817         functions to use it.
8818
8819         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8820         longer include gtktextbtree.h.
8821
8822         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8823         gtk_text_mark_deleted
8824
8825         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8826         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8827         to make this possible. Now we only need to install
8828         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8829         (However the Makefile.am isn't changed yet because of the
8830         logistics of merging gtk-hp-patches piecemeal)
8831
8832         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8833         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8834         gtk_text_iter_get_line is now used in the public API for a
8835         different purpose.
8836
8837         * gtk/gtktextiter.h: Clean up function names to be more
8838         consistent. Always call char offset "offset" and byte index
8839         "index". A "line" is always a line number. 
8840
8841         (gtk_text_iter_is_last): new function, more efficient than 
8842         the existing way to check
8843         (gtk_text_iter_is_first): new function, also more efficient
8844
8845         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8846
8847         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8848         gtk_text_iter_forward_char, etc.
8849
8850         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8851         forward_find_tag_toggle, since this isn't a linear search
8852
8853         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8854
8855         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8856         New functions, search for a buffer substring.
8857
8858         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8859         interactive and default editable (since we need to store that info
8860         until we receive the selection data).
8861
8862         Remove all the _at_char and at_line etc. versions of functions;
8863         only have iterator versions.
8864
8865         Add _interactive() versions of functions, that consider the
8866         editability of text. (FIXME add interactive flag to the 
8867         insert/delete signals per Darin's suggestion)
8868
8869         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8870         tag table if necessary
8871
8872         Remove declaration of gtk_text_buffer_get_iter_from_string
8873
8874         (_gtk_text_buffer_get_btree): private/internal function, added.
8875         
8876
8877         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8878         (gtk_text_line_is_last): new function
8879
8880 2000-07-25  Havoc Pennington  <hp@redhat.com>
8881
8882         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8883         using GtkProgressBar. See Changes-2.0.txt for details.
8884
8885         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8886         "pulse_step" which are the equivalent of
8887         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8888         Implement new API.
8889         
8890         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8891         (use_text_format) to mark whether text set on the progress bar is
8892         a format string. Deprecate entire GtkProgress interface.
8893
8894         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8895         (gtk_progress_build_string): make this a no-op if use_text_format
8896         is FALSE
8897
8898         * docs/Changes-2.0.txt: Describe progress bar changes.
8899
8900 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8901
8902         * Makefile.am: Include the build directory.
8903
8904         * configure.in: Generate build/Makefile, build/win32/Makefile,
8905         gdk/, gdk/win32/, and gtk/makefile.mingw.
8906
8907         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8908         Add GETTEXT_PACKAGE.
8909         
8910         * gdk/gdk.def
8911         * gtk/gtk.def: Updates.
8912
8913         * gdk/gdkfont.h
8914         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8915         need them any longer.
8916
8917         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8918
8919         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8920         PANGOWIN32_LIBS and gdk_pixbuf.
8921
8922         * gdk/win32: Compiles, but no doubt doesn't work at all.
8923
8924         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8925
8926         * gdk/win32/gdkinput.c: New file, temporarily.
8927         
8928         * gdk/win32/gdkinput-win32.h: New file
8929
8930         * gdk/win32/gdkinputprivate.h: Remove.
8931
8932         * gdk/win32/gdkpango-win32.c: New file.
8933
8934         * gtk/makefile.mingw.in: New file
8935
8936         * gtk/makefile.cygwin: Removed
8937         
8938         * gtk/Makefile.am: Update accordingly.
8939
8940         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8941         made externally visible.
8942
8943         * gtk/gtkmain.c: Use it.
8944         
8945         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8946         is enough.
8947
8948         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8949
8950 2000-07-24 Elliot Lee <sopwith@redhat.com>
8951         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8952         individual backends already.
8953         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8954         again. Yes, there really is a good reason for this, if you are using the gdkregion
8955         internals, and if you're not, why do you care?
8956         * gdk/gdkwindow.c: Fix inverted condition
8957         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8958         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8959         * gtk/gtkrange.c: Redraw trough when moving.
8960         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8961         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8962
8963 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8964
8965         * configure.in: Check for mkstemp and sigsetjmp. Output
8966         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8967
8968         More work on GDK for Win32. Still in an intermediate state.
8969
8970         * gdk/makefile.cygwin
8971         * gdk/win32/makefile.cygwin: Removed.
8972         
8973         * gdk/makefile.mingw.in
8974         * gdk/win32/makefile.mingw.in: New files.
8975
8976         * gdk/Makefile.am
8977         * gdk/win32/Makefile.am: Generate and distribute them.
8978
8979         * gdk/win32/gdkwindow-win32.h
8980         * gdk/win32/gdkdrawable-win32.h
8981         * gdk/win32/gdkpixmap-win32.h: New files.
8982
8983         * gdk/win32/gdkcolor-win32.c
8984         * gdk/win32/gdkcursor-win32.c
8985         * gdk/win32/gdkdrawable-win32.c
8986         * gdk/win32/gdkgc-win32.c
8987         * gdk/win32/gdkimage-win32.c
8988         * gdk/win32/gdkprivate-win32.h
8989         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8990         Rename fields and variables called xcursor, xid, etc (these names
8991         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8992
8993 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8994
8995         * gtk/gtkentry.[ch]: Fix some problems with vertical
8996         alignment.
8997
8998         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8999         char/byte confusion.
9000
9001 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9002
9003         * gtk/gtktextview.c (changed_handler): Fix bug where
9004         redraw wasn't being done properly when height of
9005         dirty region changed.
9006
9007         * demos/Makefile.am: Remove various references to
9008         -lgmodule
9009
9010 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9011
9012         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9013         PangoAttrShape to reserve space for pixmaps, add 
9014         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9015         in the display functions.
9016         
9017         * gtk/testgtk.c (create_layout): Set some more exotic
9018         scrolled window options
9019
9020         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9021         Add function to set the shadow type of a window, to allow
9022         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9023         which don't draw their own frame.
9024
9025 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9026
9027         * docs/tutorial/package-db-tutorial.sh: New file for
9028           packaging DocBook format tutorial
9029
9030 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9031
9032         * docs/tutorial/gtk-tut.sgml: Minor updates
9033
9034         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9035
9036 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9037
9038         * gtk/gtksignal.c: Fix C++ comment.
9039
9040         * gtk/gtkimmulticontext.c
9041         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9042         don't return value from void functions.
9043
9044         * gtk/gtk.def: Add gtk_rc_style_unref.
9045
9046 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9047
9048         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9049         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9050         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9051         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9052         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9053         gtk/gtktypeutils.h: Include files outside of the extern "C"
9054         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9055         <vakatov@peony.nlm.nih.gov>.
9056
9057 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9058
9059         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9060           Completes first pass. Hurrah!
9061
9062 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9063
9064         * docs/tutorial/gtk-tut.sgml: More clean ups.
9065
9066 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9067
9068         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9069         paint the background of the text area which was accidentally
9070         removed at some point.
9071
9072         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9073           
9074          - Move most of the functionality from the theme vtable
9075            into GtkRcStyleClass and GtkStyleClass. The moved
9076            vtable functions were changed a bit in the move to
9077            work better in their new home.
9078
9079          - Get rid of the engine and engine_data fields from
9080            GtkRcStyle and GtkStyle; instead the theme
9081            engine derives theme-specific subclasses of GtkRcStyle
9082            and GtkStyle
9083
9084          - Add extra dlsym() found entry point to themes,
9085            theme_create_rc_style().
9086
9087         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9088         in gtk_style_real_copy.
9089
9090         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9091         to register a type associated with an engine. (The engine
9092         won't be unloaded as there is an instance of the type.)
9093
9094
9095 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9096
9097         * docs/tutorial/gtk-tut.sgml: Clean ups.
9098
9099 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9100
9101         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9102           of cleaning up to do.
9103
9104 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9105
9106         * gdk/testgdk.c: New file, quick hack to test backends for
9107         pixel-by-pixel correctness of the most simple graphic operations.
9108
9109 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9110
9111         * Really release 1.3.1
9112         
9113         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9114         include structure.
9115
9116 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9117
9118         * Released 1.3.1
9119
9120 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9121
9122         * gtk/gtktextlayout.c: use FALSE for size_only most
9123         of the time when calling gtk_text_layout_get_line_display()
9124         to avoid causing double reshapes when a redraw follows
9125         immediately after.
9126
9127 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9128
9129         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9130         appropriate region and gdk_window_process_updates() so trough
9131         updating doesn't lag behind the window being scrolled.
9132
9133         * gdk/gdkgc.c: Make parent_class pointer static.
9134          
9135 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9136
9137         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9138         include <string.h>.
9139          
9140         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9141         cut-and-paste error in computing memory offset for 4 channels.
9142
9143 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9144
9145         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9146         gtk_rc_append_default_pixmap_path(), since it wasn't
9147         adding an interesting path and we don't have a meaningful
9148         default for this value.
9149
9150 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9151
9152         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9153         gtk-config to gtk-config-2.0 move gtk_.m4 to
9154         gtk-2.0.m4
9155
9156         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9157         gdk/Makefile.am demos/Makefile.am: Change 
9158         library names to libgtk-1.3.la, etc, so that we
9159         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9160
9161         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9162         gdk/Makefile.am gdk/x11/Makfile.am
9163         Move include files into /usr/include/gtk-2.0, 
9164         /usr/lib/gtk-2.0/include/
9165          
9166         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9167         gtk/gtkintl.h: Change package for gettext from 
9168         gtk+ to gtk20. Put hack in autogen.sh to modify
9169         po/Makefile.in.in after gettextize to make this
9170         possible.
9171
9172         * gtk+.spec: Some updates, not tested.
9173
9174         * gdk-pixbuf/Makefile.am: Move loaders into
9175         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9176
9177         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9178         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9179         to THEMENAME/gtk-2.0/. Move engine directory  to
9180         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9181         
9182 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9183
9184         Win32 changes, still doesn't build though.
9185
9186         * gdk/makefile.cygwin
9187         * gdk/win32/makefile.cygwin
9188         * gtk/makefile.cygwin: Updates.
9189
9190         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9191         default values for fg and bg pixel as X11 does (0 and 1), not
9192         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9193         Use 0 for pen width by default (treated as 1 anyway later, but for
9194         apps that might check the value in the GdkGC).
9195         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9196         interface to gdk_gc_predraw and _postdraw.
9197
9198         * gdk/win32/gdkwin32.h
9199         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9200
9201         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9202         extraneous semicolon.
9203
9204         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9205
9206         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9207         not the Win32 bitspixel value.
9208
9209         * gdk/win32/gdkcc-win32.c:
9210         * gdk/win32/gdkcolor-win32.c 
9211         * gdk/win32/gdkprivate-win32.h
9212         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9213         GDK object structure.
9214
9215 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9216
9217         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9218         * docs/tutorial/gtk_tut_it.sgml (name): 
9219         * docs/tutorial/gtk_tut_fr.sgml (name): 
9220         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9221         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9222
9223 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9224
9225         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9226           small changes.
9227
9228 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9229
9230         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9231         a bug here, never been here and never fixed anything ;(
9232         (don't segfault if tree->root_tree is NULL, which happens prior
9233         to widget realization, but puke instead).
9234
9235 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9236
9237         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9238         add the necessary tokens.
9239
9240         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9241         (gtk_rc_style_to_style): copy thicknesses.
9242         (gtk_rc_init_style): apply thicknesses.
9243         (gtk_rc_parse_style): parse xthickness and ythickness.
9244
9245         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9246
9247         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9248         (gdk_window_new): 
9249         (_gdk_windowing_window_init): 
9250         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9251         (gdk_pixmap_create_from_data): 
9252         (gdk_bitmap_create_from_data): 
9253         (gdk_pixmap_new): 
9254         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9255         (gdk_image_new): 
9256         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9257         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9258         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9259         (gdk_colormap_get_system): 
9260         (gdk_colormap_new): 
9261         * gdk/gdkwindow.c (gdk_window_init): 
9262         * gtk/gtkstyle.c (gtk_style_new):
9263         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9264         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9265         * gtk/gtkrc.c (gtk_rc_style_new):
9266         use g_object_new() instead of g_type_create_instance() which
9267         is a private function for fundamental type implementations.
9268
9269 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9270
9271         * configure.in: Add check for db2html
9272
9273 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9274
9275         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9276         hack to set glib_debug_objects based on gtk_debug_flags.
9277
9278 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9279
9280         * INSTALL.in: Update the Prerequisites section.
9281
9282         * Makefile.am demos/Makefile.am docs/Makefile.am
9283         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9284         gdk/linux-fb/Makefile.am: Dist fixes
9285
9286 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9287
9288         * NEWS: 10,000 foot view of 1.3.1 changes.
9289
9290 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9291
9292         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9293         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9294         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9295         gdk/x11/gdkmain-x11.c: 
9296
9297         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9298         as a return value of gdk_*_grab(). Previously, we just
9299         returned the X11 values directly.
9300
9301 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9302
9303         * gdk/x11/Makefile.am: Patch from George Lebl to 
9304         install all the headers in the right place.
9305
9306 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9307
9308         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9309           initial conversion to DocBook.
9310
9311 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9312
9313         * README.win32: Improve a bit.
9314
9315         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9316         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9317         Alt+0nnn on the numpad (used to enter characters by numeric code
9318         from current DOS or ANSI codepage) working correctly, as in other
9319         Windows apps.
9320
9321         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9322         same argument validity tests as in X11 version.
9323         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9324
9325         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9326         definitions in case missing from headers.
9327
9328         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9329         destroy the window-specific cursor.
9330         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9331         calling GetModuleHandle(NULL).
9332         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9333         with CopyCursor before setting it as the window-specific
9334         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9335         also its Windows cursor) after calling this function. Destroy any
9336         previous window-specific cursor.
9337
9338 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9339
9340         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9341         font charset is iso8859-1, not iso-8859-1.
9342
9343 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9344
9345         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9346         Use g_get_charset() instead of g_get_codeset().
9347
9348         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9349         Comment out some strdup'ing functions to keep timj
9350         happy until we finish fighting this out.
9351
9352 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9353
9354         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9355         <= width or height.
9356
9357         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9358         from 1.2 for parent/child states.
9359
9360         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9361         of typos.
9362
9363         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9364         event structures, replace with a generic axes field. Replace 
9365         deviceid/sourec with GdkDevice *device.
9366
9367         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9368         to extract particular axis use value from event. (Also
9369         can be used for normal X/Y.)
9370
9371         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9372         allow for arbitrary number of axes, namespace everything
9373         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9374         everywhere.
9375
9376         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9377         Get rid of the gdk_input_vtable setup if favor of simply
9378         defining the functions in gdkinput-none/gxi/xfree.c in
9379         a similar fashion to the way that the port structure is 
9380         done.
9381
9382         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9383         for new event structures. 
9384
9385         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9386         new device interfaces.
9387
9388 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9389
9390         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9391         set the initial text.
9392
9393         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9394         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9395         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9396         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9397
9398         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9399         pango_layout_set_font_description to simplify.
9400
9401 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9402
9403         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9404         pango_layout_set_font_description to simplify.
9405
9406 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9407
9408         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9409         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9410         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9411
9412         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9413         PANGO_PIXELS() macro.
9414
9415 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9416
9417         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9418         that returns a PangoContext owned by the widget and updated to
9419         match future changes in the widget. Also, make 
9420         gtk_widget_create_pango_layout() use this context. If we ever
9421         add a ::changed signal to PangoContext, this will make things
9422         much more convenient. 
9423
9424         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9425         in the appropriate places instead of destroying the layouts and
9426         creating new ones.
9427
9428         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9429         in a few strategic places.
9430
9431 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9432
9433         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9434         gtk_widget_size_request() on reparented child, if one. Otherwise,
9435         queue_resize() on the child never results in it getting size-requested
9436         at all.
9437
9438         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9439         in option menus, so that (with luck) people won't copy it into
9440         their apps in the future.
9441
9442         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9443         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9444         a lot of problems with changing the size of the menu's menu
9445         items after adding it to the option menu.
9446
9447         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9448
9449         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9450         the text direction for a widget changes.
9451
9452         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9453         ::direction_changed to get rid of various hacks.
9454
9455 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9456
9457         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9458         name.
9459
9460 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9461
9462         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9463         flag to the structure. Do not call XFreePixmap on pixmaps created
9464         by gdk_pixmap_foreign_new().
9465
9466 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9467
9468         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9469         value using GdkRGB functionality given GdkColormap and GdkColor.
9470         (name not final, waiting for inspiration.)
9471         
9472         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9473         set the foreground/background of a GC using the GC's colormap
9474         and GdkRGB. (name not final, waiting for inspiration.)
9475
9476         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9477         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9478
9479         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9480         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9481         purely a function of the corresponding colormap. Make
9482         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9483
9484         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9485         gdk_pixbuf_*create_from_xpm_* in terms of
9486         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9487         code.
9488
9489         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9490         advantage of the new draw_rgb_32_image_dithalign.
9491
9492         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9493
9494         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9495         on each created GC.
9496
9497         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9498
9499         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9500         which we initialize from the drawable when the GC is created,
9501         if the drawable has a colormap.
9502
9503         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9504
9505         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9506
9507         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9508
9509 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9510
9511         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9512         actually returning expose events, make sure to set
9513         the count field properly.
9514
9515         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9516         accidentally reintroced bug which always cleared
9517         the graphics_exposures value. 
9518
9519 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9520
9521         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9522
9523 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9524
9525         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9526
9527 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9528
9529         * docs/faq/gtk-faq.sgml: Start of Section 6.
9530
9531 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9532
9533         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9534         
9535         (Fixes problem with drawing childless frames. Pointed out
9536         by and a first patch from Anders)
9537         
9538         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9539         compute a child_allocation, even if we don't have a child.
9540
9541         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9542         Always chain to the parent's impl, even if we don't have a child.
9543
9544 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9545
9546         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9547         use multiple parts of it instead of creating a bunch of separate
9548         segments, since the maximum number of segments per system is not
9549         large. (This might be worth backporting to GTK+-1.2.x if we make a
9550         new release )
9551
9552         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9553         structure in preparation for per-colormap GdkRGB.
9554
9555         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9556         to False when we get EINVAL from shmget so that the caller of
9557         gdk_image_new can retry with a smaller segment size.
9558
9559 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9560
9561         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9562
9563 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9564
9565         * configure.in: make the current version number 1.3.1 (binary age 0,
9566         interface age 0).
9567         
9568         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9569         gtkcompat.h is all we want.
9570
9571         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9572         GLib primitive types. fixed g_type_register_fundamental() argument
9573         ordering.
9574
9575         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9576         compiles.
9577
9578         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9579         object code cleanup, comment trigraph fixes, etc...
9580
9581 2000-06-23  Havoc Pennington  <hp@redhat.com>
9582
9583         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9584         instead of making up a bogus name for first_para_mark
9585
9586         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9587         0 as a context ID
9588
9589 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9590
9591         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9592
9593 2000-06-21  Havoc Pennington  <hp@pobox.com>
9594
9595         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9596         we didn't check window->bg_pixmap != GDK_NO_BG.
9597
9598         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9599         gdk-pixbuf
9600
9601 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9602
9603         * docs/faq/gtk-faq.sgm: Move file to here.
9604           TODO: Update Makfile.am 
9605
9606 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9607
9608         * docs/gtk-faq.sgm: Add Section 2
9609
9610 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9611
9612         * docs/gtk-faq.sgm: New file. Start of DocBook
9613           version of the FAQ.
9614
9615 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9616
9617         * configure.in (GDK_PIXBUF_MAJOR): Define version
9618         numbers for GDK_PIXBUF_*, as they get substituted
9619         into a header file. Need to consider versioning
9620         for gdk-pixbuf more carefully later.
9621
9622 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9623
9624         Work with srcdir != builddir.   
9625         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9626         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9627         * demos/testpixbuf.c: Likewise.
9628         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9629         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9630         <gdk/x11/gdkx.h>.
9631         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9632         "gdk-pixbuf.h".
9633         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9634
9635 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9636
9637         * TODO.xml: Change 1.4 version numbers to 2.0.
9638
9639 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9640
9641         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9642         fixups to GTK+ standard.
9643
9644 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9645
9646         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9647         gdk-pixbuf.
9648
9649         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9650         fixups for GObject.
9651
9652         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9653         gdk-pixbuf with GDK dependencies moved into GDK.
9654         
9655         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9656         move gdk-pixbuf-loader here until GObject has signals.
9657
9658         * demos/: New directory of demos. Move demos from
9659         gdk-pixbuf here.
9660
9661         * demos/pixbuf-init.c: Small bit of code to check for
9662         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9663         set GDK_PIXBUF_MODULEDIR appropriately.
9664
9665         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9666         define which no longer makes sense.
9667
9668 2000-06-21  Havoc Pennington  <hp@redhat.com>
9669
9670         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9671         gtk_get_default_language
9672
9673         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9674         new function to get the default language
9675
9676         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9677         s/gtk_text_view_style_values/gtk_text_style_values/
9678
9679         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9680         Add a "language" field to tags.
9681
9682         (gtk_text_tag_set_arg): Fix bug in setting
9683         "bg_full_height_set" tag.
9684
9685 2000-06-21  Havoc Pennington  <hp@redhat.com>
9686
9687         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9688         in the interfaces
9689
9690         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9691         stuff instead when possible.
9692
9693         * gtk/gtktexttypes.h: Delete some unused constants
9694
9695         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9696         testtextbuffer.c: use glib instead of custom unicode routines
9697
9698 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9699
9700         * docs/es/: Removed mistakenly added generated sgml
9701
9702         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9703         Remove outdated info files.
9704
9705         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9706         Moved tutorial files into subdir
9707
9708         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9709         subdir.
9710
9711         * docs/man/gtk_button.pod: Remove. (contents will be
9712         integrated into gtk-reference button page.)
9713
9714         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9715         docs/faq/Makefile.am: Adjust for new organization
9716
9717 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9718
9719         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9720         not $(MKINSTALLDIRS)
9721
9722 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9723
9724         * gtk/testgtk.c (create_text): Finish the job Elliot started
9725         of removing font setting test for text widget. (Since text widget
9726         and GdkFont are not deprecated, and cause portability problems.)
9727
9728 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9729
9730         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9731         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9732         Remove use of libunicode in favor of new GLib functions.
9733
9734         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9735         nano-x, framebuffer. The X11 include is just a hack until we get
9736         the necessary functions in gdkcolor.h, so there is no reason to
9737         add other includes of platforms.
9738
9739         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9740         window bigger than the screen change.
9741
9742         * gtk/testgtk.c: Revert some random changes from Elliot
9743         that had no particular point and were causing testgtkrc
9744         not to function correctly.
9745         
9746         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9747         because GdkSegment and GdkRegionBox have the same fields,
9748         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9749         results in clearer code.
9750
9751         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9752         gdk_input_translate_coordinates): Fix missed GdkObjectification
9753
9754 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9755
9756         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9757         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9758
9759 2000-06-20  Havoc Pennington  <hp@redhat.com>
9760
9761         * modules/linux-fb/Makefile.am: Make this compile
9762         without framebuffer enabled
9763
9764         * gdk/linux-fb/Makefile.am: Add conditional to not build
9765         framebuffer unless specified in configure
9766
9767         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9768         the size of the target instead of source if -1 was passed for
9769         width/height
9770
9771         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9772         width/height confusion.
9773
9774 2000-06-19  Havoc Pennington  <hp@redhat.com>
9775
9776         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9777         GDK_DRAWABLE_XID. In the future, we probably want to make it
9778         faster with G_DISABLE_CHECKS turned on.
9779
9780 2000-06-14  Havoc Pennington  <hp@redhat.com>
9781
9782         * gdk/Makefile.am: add gdkpixmap.c
9783
9784         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9785         s/gdk_image_init/_gdk_windowing_image_init
9786
9787         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9788         ref/unref
9789
9790         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9791
9792         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9793         GdkWindowType is now non-deprecated; 
9794         change gdk_window_get_type() compat to be
9795         gdk_window_get_window_type().
9796
9797         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9798
9799         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9800         virtual GObject. Make all functions call into the vtable.
9801         Move gdk_image_put() guts in here. Remove GdkDrawableType
9802         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9803         draw_image, get_depth, get_size, set_colormap, get_colormap,
9804         get_visual added to the vtable.
9805         
9806         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9807         GObject. Virtualize everything. 
9808         (gdk_gc_new_with_values): remove check for destroyed window,
9809         because now GdkWindow::create_gc will check this.
9810         (gdk_gc_set_values): New function to set GC values, this 
9811         was already implemented but wasn't in the header
9812
9813         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9814
9815         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9816         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9817         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9818         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9819         _gdk_windowing_window_init, rename gdk_image_init to
9820         _gdk_windowing_image_init.
9821         
9822         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9823         (gdk_draw_layout): Remove check for destroyed window, 
9824         because all the drawable methods already check it.
9825         
9826         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9827         Add gdkpixmap.c which contains implementation of GdkDrawable
9828         virtual table (by chaining to a platform-specific implementation
9829         object).
9830         
9831         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9832         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9833         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9834         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9835         GdkColormapPrivate. 
9836
9837         * gdk/gdktypes.h: #include <glib-object.h>
9838
9839         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9840         Move most functionality to platform-specific implementation
9841         object. GdkWindow itself now handles the backing store, then
9842         chains to the platform-specific implementation.
9843         (gdk_window_get_window_type): return GdkWindowType of the window.
9844         (gdk_window_peek_children): New routine, returns the children of 
9845         a GdkWindow
9846         (gdk_window_get_children): Was in X11-specific code and did 
9847         XQueryTree. Changed to simply return a copy of window->children; 
9848         so it can go in cross-platform code.
9849         
9850         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9851
9852         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9853         GdkColormap; just changed to use the new private data instead
9854         of casting to GdkColormapPrivate.
9855
9856         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9857         gdk_cursor_new().
9858
9859         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9860         (private data member in the GObject). 
9861         (xdnd_manager_source_filter): Function had broken 
9862         error handling, fix it (use gdk_error_trap_push).
9863
9864         * gdk/x11/gdkdrawable-x11.c: This file now implements
9865         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9866         base class is purely for the convenience of the X port,
9867         and not part of the interface to cross-platform GDK.
9868
9869         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9870         
9871         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9872         specific to X, and returned by the create_gc virtual method
9873         of GdkDrawableImplX11. 
9874         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9875         rather than gchar, this was also changed in the GdkGC vtable.
9876         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9877         mask is 0, return immediately, instead of checking every flag.
9878         This is faster, and keeps us from segfaulting if values is NULL
9879         and the mask contains some nonzero flags.
9880
9881         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9882         GdkWindow.
9883
9884         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9885         GdkWindowPrivate is gone.
9886
9887         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9888
9889         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9890         remove the image_put stuff that got transferred to GdkDrawable.
9891         
9892         * gdk/x11/gdkinput.c: renamings
9893
9894         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9895
9896         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9897
9898         * gdk/x11/gdkprivate-x11.h: indentation fixes
9899
9900         * gdk/x11/gdkproperty-x11.c: renamings
9901
9902         * gdk/x11/gdkselection-x11.c: renamings
9903
9904         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9905         implements the platform-specific "impl" object.
9906         Moved gdk_window_get_children to gdk/gdkwindow.c
9907
9908         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9909         that no longer exist. Add declaration of GdkGCX11 object here.
9910         Fix all the macros to still work. 
9911
9912         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9913         GdkDragContext from the boxed types since they are now GObjects.
9914
9915         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9916         moved xthickness/ythickness into the instance. GtkStyleClass
9917         functions are now in the standard vtable for GtkStyle, so you have
9918         to create a GObject subclass to write a theme engine.
9919         (gtk_style_copy): fixed a leaked PangoFontDescription
9920         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9921         can be the standard GObject function.
9922         
9923         * Throughout GTK:
9924         s/style->klass->[xy]thickness/style->[xy]thickness
9925         s/pango_layout_unref/g_object_unref/
9926
9927         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9928         
9929         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9930         accessing GDK internals.
9931
9932         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9933         accessing GDK internals.
9934
9935 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9936
9937         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9938
9939         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9940         problem by calculating event position relative to the trough
9941         rather than the slider.
9942         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9943
9944         * gdk/gdkgc.h: Add GDK_NOR.
9945
9946         * configure.in, Makefile.am: Add modules top level dir
9947         * configure.in: Only use pangox library if building x11 target.
9948         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9949
9950 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9951
9952         * gtk/gtkcolorsel.c: Change private class member to be named
9953         private_data throughout the file.
9954
9955         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9956         private_data to avoid clashing with keyword.
9957
9958 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9959
9960         * gdk/gdkdnd.h: Add comment to remove warning.
9961
9962 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9963
9964         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9965         Byelorussian language; changed the Makefile and file names 
9966         to reflect that.
9967
9968 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9969
9970         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9971         rather than gdk_window_hide; this makes things work
9972         correctly if the window is programmatically hidden while
9973         iconified.
9974
9975 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9976
9977         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9978         cut and paste typo where wrong pixmap was being
9979         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9980
9981 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9982
9983         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9984         Add helper function to compute format / bytes 
9985         relationship. Use in a couple places to fix up
9986         errors which assume 8 * format.
9987
9988         * gtk/gtkselection.c (gtk_selection_request): Use 32
9989         rather than 8 * sizeof (GdkAtom), to work correctly
9990         on Alpha.
9991
9992 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9993
9994         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9995         libgtk.la
9996         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9997         versions
9998
9999         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10000         checking macros return NULL since the function has a return value.
10001
10002 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10003
10004         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10005         GTK+ from building at all.
10006
10007         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10008
10009 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10010
10011         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10012         gtk/Makefile.am: make it possible to configure gtk for different
10013         targets on the same platform. The library name is now 
10014         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10015         flag. Only the x11 target compiles right now.
10016         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10017         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10018         * gdk/nanox/gdk*generic*: delete generic region code.
10019         * gdk/linux-fb/gdk*generic*: delete generic region code.
10020         * README.nanox: update information.
10021         
10022 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10023
10024         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10025         prepend not append. (Pointed out by Brett Hall.)
10026
10027 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10028
10029         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10030
10031 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10032
10033         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10034         need this later, and this makes sure that the atexit for
10035         glib gets called after that for GDK, so atexits are
10036         properly ordered for object leak checking.
10037
10038         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10039
10040         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10041         pango_x_shutdown_display()
10042
10043         * gtk/simple.c (main): Close window on destroy.
10044
10045 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10046
10047         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10048         to treat initial creation different from setting with 
10049         regards to the graphics-exposures parameter, so add a parameter
10050         indicating whether this is initial or not.
10051
10052 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10053
10054         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10055         to sort of work by adding an extra return_exposes arg
10056         to gdk_event_translate() - it might be better to simply
10057         deprecate the function altogether and force people to rewrite
10058         without it. gdk_window_scroll() handles most of it, and where
10059         gdk_window_scroll() doesn't work, simply redrawing more does.
10060
10061         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10062         assertion.
10063
10064         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10065
10066         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10067         bunch of pretty much useless /* Print debugging info */ comments 
10068         which had drifted away from the code they were commenting.
10069
10070 2000-06-02  Havoc Pennington  <hp@pobox.com>
10071
10072         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10073         is in working order.
10074         
10075         * gtk/testtext.c: Change to reflect anonymous mark API
10076
10077         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10078
10079         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10080         field, which was unused.
10081
10082         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10083         saves some typing.
10084
10085         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10086
10087         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10088         flag on the insertion point and selection bound
10089
10090         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10091         make mark-manipulation functions take a GtkTextMark* instead of a
10092         mark name.
10093         
10094         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10095         GtkTextMarkBody; will be used to detect attempts to delete
10096         the permanent marks (insert and selection bound)
10097
10098         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10099
10100 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10101
10102         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10103         flag to on.
10104
10105         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10106         Honor DOUBLE_BUFFRED_FLAG
10107
10108         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10109         function to set the DOUBLE_BUFFERED flag.
10110
10111         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10112         or not exposes done on the widget should be double-buffered.
10113
10114         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10115         to be what would be expected. (Fixes problem with a
10116         g_return_if_fail() validating a TextDirection enumeration)
10117
10118 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10119
10120         * gtk/gtkwidget.c: Remove all references to 
10121         offscreen flag which was no longer used.
10122
10123         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10124
10125         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10126         for non-null label_widget->parent.
10127
10128         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10129         which no longer was used.
10130
10131         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10132
10133         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10134         for null arguments.
10135
10136         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10137         check for destroyed windows.
10138
10139 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10140
10141         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10142         the slave context there.
10143
10144         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10145         identical to GtkWindow.
10146
10147 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10148
10149         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10150         pangox to here, so we can write them independent of rendering
10151         system, using GDK primitives.
10152
10153         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10154         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10155         since we have a rendering-system independent implementation in
10156         terms of draw_glyphs().
10157         
10158         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10159         function to render a single line.
10160
10161         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10162         into ../gdkpango.c, which simplifies things, since we
10163         don't have to deal with raw X gc's.
10164
10165 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10166
10167         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10168         get the logical attributes for a given GtkTextLine.
10169
10170 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10171
10172         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10173         g_locale_get_codeset() to g_get_codeset() change.
10174
10175 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10176
10177         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10178         descriptions.
10179
10180         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10181         the entry.
10182
10183         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10184         redoing (vastly simplifying) for Pango. Still needs quite
10185         a bit of work. (Size selection is currently poor. List of 
10186         predefined sizes is not a good idea, since all of these
10187         sizes won't necessarily be distinct.)
10188
10189 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10190
10191         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10192         CODESET results for LANG=C.
10193
10194 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10195
10196         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10197         which takes a stringized pango font description;
10198         ignore the older 'font' and 'fontset' declarations.
10199
10200         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10201         field with a GdkFont derived via gdk_font_from_description(),
10202         for compatibility. (Should we just remove it entirely?
10203         Probably too much compatibility breakage, but people
10204         should be migrating to the new Pango stuff as quickly
10205         as possible.)
10206
10207 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10208
10209         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10210
10211 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10212
10213         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10214         redoing; there are some bugs in size allocation right
10215         now, the semi-existant distinction between header / day
10216         fonts was removed, but, with Pango, could actually
10217         be made functional in a nice way.
10218         
10219         * gtk/testcalender: Move calender from examples into this
10220         directory as a test program. (We really need to restrcture
10221         testgtk into a whole directory full of tests for every
10222         widget or functionality group, separated into multiple .c
10223         files.)
10224
10225 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10226
10227         * gtk/testgtk.c (file_exists): Fix stupid typo that
10228         was keeping RC file from being loaded.
10229
10230         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10231         RC file font code.
10232
10233 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10234
10235         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10236         Add function to load a GdkFont from a PangoFontDescription.
10237
10238 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10239
10240         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10241         variable should be of type GdkEventPrivate.
10242
10243 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10244
10245         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10246         to have any widget for the label, use a GtkLabel widget
10247         to display the text. (Based partially on a patch from
10248         Anders Carlson.)
10249
10250         (Quite a bit of code reorganization - strip 90% of the
10251         guts out of gtkaspectframe and add a single virtual
10252         func to GtkFrameClass - compute_child_allocation.)
10253
10254 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10255
10256         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10257         (Removed clist->row_center_offset field because caching
10258         it wasn't saving time or code, added private function
10259         _gtk_clist_create_cell_layout()).
10260
10261 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10262
10263         * gtk/gtkaccellabel.c: Pangoized.
10264
10265         * gtk/[hv]ruler.c: Pangoized
10266
10267 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10268
10269         * gtk/gtkfilesel.c (gtk_file_selection_init):
10270         Use gtk_clist_set_column_auto_resize() to remove need
10271         need for manual column width computations.
10272
10273 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10274
10275         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10276         ensuring Pango correctness, and considerably simplifying the
10277         code.
10278         
10279         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10280
10281         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10282         getting of numbers of lines.
10283
10284         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10285         to the actual requested width of the lable, not to the wrap
10286         width we set.
10287
10288         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10289
10290         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10291           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10292
10293         * gtk/gtktextview.c: Fix structure inheritance.
10294
10295         * gtk/gtkprogressbar.c: Pangoize.
10296
10297 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10298
10299         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10300         in a function.
10301
10302         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10303         bug with computing line tops.
10304
10305         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10306
10307 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10308
10309         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10310         and y_offset coordinates to do what we need now. (The offset between
10311         buffer and layout coordinates has been reintroduced, but is a 
10312         bit different than before.)
10313
10314         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10315         handle the adjustments ourselves, and scroll as necessary using
10316         the new gdk_window_scroll().
10317         
10318         The advantage of this is that when we are incrementally revalidating,
10319         we are essentially rearranging things around the visible portion
10320         of the screen. With the old setup, the visible portion of the
10321         screen was moved around in the layout, so scrolling and redrawing
10322         to track that caused jumping of the display. Since we now
10323         control the scrolling ourselves, we can suppress this and
10324         only redraw when things actually change.
10325
10326 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10327
10328         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10329         the region not just redisplay it after-all, since we store the
10330         cursors in the LineDisplay. (Ugly interactions here between
10331         GtkLayout and GtkTextBTree here.)
10332         
10333         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10334
10335 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10336
10337         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10338         Added function to scroll contents of a window while keeping the
10339         window constant. Works by XCopyArea or guffaw-scrolling depending
10340         on the details of how the window is set up. (guffaw-scrolling
10341         still needs to be filled in.)
10342
10343 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10344
10345         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10346         move the debugging that was tied to a global variable
10347         to that.
10348
10349         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10350
10351         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10352         validated flag, in line data instead of setting height/width to
10353         -1. This allows us to perform operations with partially invalid
10354         buffer (using the old size for invalid lines) and thus to do
10355         incremental vaidation. Keep height/width aggregates up to date
10356         when deleting text and rebalancing the tree.
10357
10358         * gtk/gtktextbtree.[ch]: Add functions validate a line
10359         (gtk_text_btree_validate_line), and to validate up
10360         to a number of pixels (gtk_text_btree_validate).
10361
10362         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10363         that indicates that something is changed and a revalidation
10364         pass is needed. Change ::need_repaint to ::changed, and
10365         make it take old and new yranges instead of a rectangle.
10366
10367         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10368         the line_data_destroy() function from 
10369         gtk_text_btree_add_view() to a virtual function in 
10370         GtkTextLayout
10371
10372         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10373         since we are handling partial repaints in a different fashion
10374         now.
10375
10376         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10377         of the selection instead of queueing a repaint on the
10378         entire widget.
10379
10380         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10381         get_selection_bounds() down to btree, make the function
10382         in buffer a wrapper around the btree function.
10383
10384         * gtk/gtktextlayout.[ch]: Add functions to check if the
10385         layout is valid and to recompute either a range of pixels
10386         aroudn a line or a certain total number of pixels.
10387
10388         * gtk/gtktextlayout.[ch]: Cache a single line display;
10389         now that we only redraw the needed portions, the hit rate
10390         for this cache is quite high.
10391         
10392         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10393         on the screen so that when re-laying-out the buffer, we can
10394         keep the same place. This requires connecting to ::value_changed
10395         on the adjustments
10396
10397         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10398         the buffer after we receive an ::invalidated signal.
10399         
10400 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10401
10402         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10403         to max of allocation and layout size, not just to the
10404         layout size.
10405
10406         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10407         Invalidate window so it gets redrawn properly.
10408
10409         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10410         to mean the entire window.
10411
10412         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10413         into public header.
10414
10415 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10416
10417         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10418         to get the name of a mark.
10419
10420         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10421         to find the paragraph from a y position.
10422
10423 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10424
10425         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10426         nodes have width/height >= 0, not > 0.
10427
10428 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10429
10430         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10431         Add a size_only flag, so when we only need the size, we don't create
10432         useless appearance attributes.
10433
10434         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10435         duplicate setting of font description.
10436
10437         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10438
10439 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10440
10441         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10442         EXTRA_DIST. It does not work well when the file that
10443         everything depends on is not in the tarball.
10444
10445 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10446
10447         * gtk/testgtk.c: Some hacks and fixes so that it basically
10448         works when not sitting in the GTK+ build tree.
10449
10450 2000-05-03  Havoc Pennington  <hp@redhat.com>
10451
10452         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10453         Properly determine the ordering of the tag root and the current
10454         line within the tree. Previous algorithm only worked if the tag
10455         root's immediate parent was the common root of both the current
10456         line and the tag root.
10457
10458 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10459
10460         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10461         alignment.
10462
10463         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10464         the widget text directional dynamically.
10465
10466         * gtk/gtktextview.[ch]: Added functions to get and set default
10467         wrap mode.
10468
10469 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10470
10471         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10472         in cursor location computation.
10473
10474 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10475
10476         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10477         vadjusment values properly when layout gets smaller.
10478
10479         * gtk/gtktextview.c (need_repaint_handler): Areas being
10480         passed in are far completely inaccurate, and sometimes
10481         too small, so, for now, just queue a redraw on the
10482         whole visible region.
10483
10484 2000-04-25  Havoc Pennington  <hp@redhat.com>
10485
10486         * gtk/gtktextbtree.c (summary_destroy): new function to 
10487         destroy tag summary nodes
10488         (gtk_text_line_next_could_contain_tag): this function was 
10489         totally broken if the line passed in wasn't below the tag
10490         root. Fix it.
10491         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10492         "wildcard" case, we have to do a linear scan. Blah.
10493         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10494         we have to do the linear scan
10495         (tag_removed_cb): When a tag is removed from the tag table, 
10496         remove the GtkTextTagInfo node from the btree.
10497         (gtk_text_btree_spew): Implement the spew function, for 
10498         our debugging pleasure.
10499
10500 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10501
10502         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10503         a problem with referring to the wrong buffer.
10504
10505         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10506
10507         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10508         font description to gtk_style_new() - otherwise things
10509         don't work without a .gtkrc file.
10510
10511         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10512         tags table if we create it ourself, too.
10513
10514         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10515         it was conflicting with XKB modifiers.
10516
10517         * gtk/gtktextview.[ch]: Add simple support for 
10518         GtkIMContext.
10519
10520 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10523         with deletion from last commit.
10524
10525 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10526
10527         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10528         in the context from the current locale.
10529         
10530         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10531         context, not hardcoded value.
10532
10533         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10534         not logical.
10535
10536 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10537
10538         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10539         attributes - that doesn't handle partial-glyph selection
10540         properly. Instead use new pango_layout_line_get_x_ranges()
10541         functionality to draw the selection.
10542
10543         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10544         now properly handles out-of-range coordinates.
10545
10546         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10547
10548         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10549         public.
10550
10551         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10552         for paragraphs opposite to the base direction of the widget.
10553
10554         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10555
10556         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10557         causes Arabic words to reshape as you cursor through.
10558
10559         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10560         cursor position when moving vertically with the arrow keys and
10561         scrolling with page-up/page-down. (Arrow keys save only the X,
10562         scrolling saves both X and Y.)
10563
10564         This means you can line-up / line-down or page-up / page-down
10565         without losing your place, and also that moving vertically
10566         with the cursor keys keeps the same X position, not the same
10567         character count:
10568
10569         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10570         arrow keys move by display lines, not paragraphs.
10571
10572 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10573
10574         * gtk/gtklayout.c: Make sure that the bin window is at least
10575         as big as the allocation. (Should we also make sure that the
10576         bin window is big enough to completely cover widget->window?)
10577
10578         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10579         function to get the onscreen rectangle.
10580
10581         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10582         for offsets in window coordinates.
10583
10584 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10585
10586         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10587         confusion.
10588
10589         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10590         from the widget direction.
10591
10592         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10593         Add a "direction" attribute.
10594
10595         * gtk/gtktextview.c: global s/tkxt/text_view/.
10596
10597         * gtk/testtext.c: Added long block of text in Arabic, to test out
10598         the direction attributes. (Some problems with the shaping system
10599         for arabic become obvious - like the fact the cursor splits words
10600         into unjoined pieces.)
10601
10602 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10603
10604         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10605
10606         * gtk/gtktextlayout.c: Fix up alignment.
10607
10608         * gtk/testtext.c: Add some tests for centering, wrapping.
10609
10610 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10611
10612         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10613         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10614         If we wrote GTK+-specific layout-render function this could just replace
10615         the draw_layout() operation in the vtable.
10616
10617         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10618         pango_layout_get_cursor_pos() and use that function.
10619
10620         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10621         is a non-static symbol.
10622
10623         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10624         with gtk_text_btree_find_line_by_y()
10625
10626         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10627         renderer that handles GtkTextAppearance attributes.
10628
10629         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10630
10631           - Move the values in the style that don't affect geometry into a
10632             GtkTextAppearance structure.
10633           - Change underline to take a PangoUnderline and "font" a string
10634             representation of a font description
10635           - Add a "font_desc" attribute which takes a FontDescription structure.
10636
10637         * gtk/gtktextlayout.[ch]:
10638
10639           - Get rid of the display-line list per each line. Instead, we
10640             generate, on demand, a GtkTextLineDisplay structure which]
10641             contains a PangoLayout * and other necesary information
10642             (offsets, cursor locations) for displaying a paragraph.
10643           - Get rid of the code to wrap lines, create display chunks,
10644             etc. Instead, we just go through a paragraph and convert
10645             it into the necessary inputs to a PangoLayout.
10646           - Implement a new attribute type, GtkTextAttrAppearance. This
10647             holds a GtkTextAppearance, and is used to pass colors, 
10648             stipple, etc, through from the layout to the display without
10649             having to use lots and lots of individual attributes.
10650           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10651             in terms of PangoLayout functions.
10652         
10653         * gtk/gtktextview.c: 
10654          
10655           - Handle passing the necessary PangoContext to the layout
10656           - Some fixups in painting to deal with the automatic backing store
10657             and offsetting of GTK+-1.4
10658           - Add a style_set handler so that the default style reacts
10659             properly to theme changes.
10660         
10661         * gtk/gtktext?*.[ch]: Random code-style fixes.
10662
10663         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10664
10665 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10666
10667         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10668         in original form preparatory to Pango-ization and gdkimcontext-ization.
10669
10670 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10671
10672         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10673         so that we can derive from gtkimcontext in language bindings properly.
10674
10675 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10676
10677         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10678         Add a compose table including (almost) all the compose combinations
10679         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10680         data in the XIM implementation.
10681
10682         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10683         Moved functions to convert keyvalues from and to unicode here from
10684         the win32 port and made them public.
10685
10686 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10687
10688         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10689
10690 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10691
10692         * gtk/gtkimcontext.[ch]: Base class for new input context system
10693
10694         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10695         the real input context implementation to be loaded from modules
10696         and switched on the fly.
10697
10698         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10699         context that just does direct keysymbol => unicode translation.
10700
10701         * gtk/gtkentry.[ch]: Start switching editing over to using
10702         GtkInputContext. (No handling of preedit yet.)
10703
10704 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10705
10706         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10707         many substitutions. (klass should not be subsituted.)
10708
10709 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10710
10711         * configure.in: Add checks for Pango
10712
10713         * configure.in docs/Makefile.am: Add test for sgml2html
10714         and allow 'make dist' without building html, but print out
10715         warnings in that case. (For making snapshots)
10716
10717         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10718         Add Pango libraries and C flags
10719
10720         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10721         Add function (gdk_draw_layout) to draw a pango layout.
10722
10723         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10724         for getting Pango contexts for GDK.
10725
10726         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10727
10728         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10729         editing.
10730
10731         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10732         keysym => unicode translations. More languages can be added
10733         here, but real input-method support is needed.
10734
10735         * docs/Changes-1.4.txt: Added note about entry behavior.
10736         
10737         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10738         to set the reading direction for a widget and the global direction.
10739         Add test which allows toggling the global direction. Two private
10740         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10741
10742         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10743           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10744
10745         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10746
10747         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10748         underlining now handled by Pango.
10749
10750         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10751         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10752         is temporary.)
10753
10754         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10755         convenience functions for creating contexts and layouts for widgets.
10756
10757         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10758
10759 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10760
10761         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10762         titles to be active, even if they aren't visible.
10763         (gtk_clist_column_titles_passive):  Ditto.
10764
10765 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10766
10767         * gtkmenu.c:
10768         * gtkmenu.h:
10769         * gtktypeutils.h: Spelling/grammar fixes in comments.
10770
10771 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10772
10773         * gdk/nanox/*.h: add missing header files.
10774
10775 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10776
10777         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10778         send_event to TRUE.
10779         (gtk_drawing_area_size): queue a resize.
10780
10781 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10782
10783         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10784         the handlers, also invalidate them. bug nailed down by Karl Nelson
10785         <kenelson@ece.ucdavis.edu>.
10786
10787 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10788
10789         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10790         "(nil)" foundries, patch from Grigorios Magklis.
10791
10792         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10793         on non-available fonts, based on a patch by Grigorios Magklis
10794         <maglis@cs.rochester.edu>.
10795
10796 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10797
10798         * gdk/x11/gdkregion-generic.c: If a region does not have any
10799         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10800         instead of GDK_OVERLAP_RECTANGLE_IN.
10801
10802 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10803
10804         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10805         OFFSCREEN, as it is no longer necessary.
10806
10807 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10808
10809         * gtk/gtkcolorsel.c: Patch from David Santiago
10810         <mrcooger@cyberverse.com> to change things so that the 
10811         indicator of the active palette entry is done independently,
10812         not via the focus, since it should always be visible.
10813
10814 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10815
10816         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10817         refcount leaks as in the X11 backend.
10818
10819         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10820         cosmetics.
10821
10822         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10823         backend. Add _gdk_windowing_window_destroy().
10824
10825         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10826         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10827         either, but these probably do exist on nanox?)
10828         
10829         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10830         which isn't necessarily defined by <math.h>.
10831
10832         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10833         ancestry past GtkObject.
10834
10835         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10836         from DLL on Win32.
10837
10838         * gtk/gtk.def: Update corresponding to recent changes.
10839
10840         * gtk/makefile.{cygwin,msc}: Updates.
10841
10842 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10843
10844         * docs/Changes-1.4.txt: A bit of editing.
10845
10846         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10847         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10848         to clear the update area for the window, and clear it
10849         when hiding a window.
10850
10851         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10852         if window destroyed.
10853
10854         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10855
10856         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10857         gdk_window_destroy() to the generic code, since there was a lot of 
10858         window-system-independent logic it in. Add a function:
10859         
10860          _gdk_window_destroy() 
10861
10862         to the internal API to destroy a window without unreferencing it.
10863         Add a function:
10864
10865          _gdk_windowing_window_destroy()
10866
10867         That does the windowing-system-dependent part of destroying 
10868         the window.
10869
10870 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10871
10872         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10873
10874 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10875
10876         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10877         Make gtk_widget_shape_combine_mask() keep a reference count on
10878         the pixmap since it keeps it around.
10879
10880 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10881
10882         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10883         leak.
10884
10885         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10886         leak with event filters.
10887
10888 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10889
10890         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10891         signal handlers with the right data arguments. (Fixes
10892         some warnings when a widget was repeatedly set as a drag
10893         destination.)
10894
10895         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10896         window so we can avoid avoid setting the DND properties on the
10897         toplevel window repeatedly.
10898
10899 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10900
10901         * gdk/win32/gdkwin32.h: Define more message types missing from
10902         mingw headers.
10903
10904         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10905         call gdk_window_destroy_notify(). It was never called. This
10906         probably meant that the GdkWindow was never freed. Thanks Owen for
10907         noticing (!).
10908
10909         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10910         window as destroyed before calling DestroyWindow(). DestroyWindow()
10911         causes a call to the window procedure (gdk_WindowProc), which
10912         calls gdk_event_translate(), which calls
10913         gdk_window_destroy_notify(), which gets confused unless the window
10914         is set as destroyed.
10915
10916         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10917         this function to indicate it's win32 only. Put inside #ifdef
10918         G_ENABLE_DEBUG.
10919
10920         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10921         debugging function. (gdk_event_translate:) Add a default branch
10922         that uses the above function to print debug messages with all
10923         Windows messages symbolically.
10924
10925         * gdk/win32/gdkprivate-win32.h: Declare it, and
10926         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10927
10928 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10929
10930         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10931         public header file.
10932
10933 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10934
10935         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10936
10937         * gtk/gtktext.c: made the adjustments no-construct args, simply
10938         provide default adjustments.
10939         (gtk_text_destroy): release adjustments.
10940
10941         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10942         adjustment argument non-construct.
10943
10944         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10945         instead of in finalize.
10946         (gtk_progress_get_text_from_value): 
10947         (gtk_progress_get_current_text): 
10948         (gtk_progress_set_value): 
10949         (gtk_progress_get_percentage_from_value): 
10950         (gtk_progress_get_current_percentage): 
10951         (gtk_progress_set_percentage): 
10952         (gtk_progress_configure): ensure an adjustment is present.
10953
10954 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10955
10956         * gtk/gtkcolorsel.[hc]:
10957         * gtk/gtkcolorseldialog.[hc]:
10958         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10959         their parent implementation, use bit fields for boolean values, don't
10960         create unused widgets, usage of glib types, braces go on their own
10961         lines, function argument alignment, #include directives etc. etc. etc..
10962
10963         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10964
10965 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10966
10967         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10968
10969         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10970         of NULL.
10971
10972         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10973         to freed data.
10974         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10975
10976         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10977         to NULL when the toplevel is getting destroyed.
10978         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10979         (gtk_menu_destroy): 
10980         (gtk_menu_init): store the information of whether we have to
10981         readd the initial child ref_count during destruction in a new
10982         GtkMenu field needs_destruction_ref_count.
10983
10984         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10985         here, those reading: learn from my mistake! ;)
10986         in order for set_?adjustment to support a default adjustemnt if
10987         invoked with an adjustment pointer of NULL, the code read (pseudo):
10988         if (v->adjustment) unref (v->adjustment);
10989         if (!adjustment) adjustment = adjustment_new ();
10990         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10991         now imagine the first unref to actually free the old adjustment and
10992         adjustment_new() creating a new adjustment from the very same memory
10993         portion. here, the latter comparision will unintendedly fail, and
10994         all hell breaks loose.
10995         (gtk_viewport_set_hadjustment):
10996         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10997         after unreferencing it.
10998
10999         * gtk/gtkcontainer.[hc]: removed toplevel registration
11000         functions: gtk_container_register_toplevel(),
11001         gtk_container_unregister_toplevel() and
11002         gtk_container_get_toplevels() which had wrong semantics
11003         anyways: it didn't reference and copy the list.
11004
11005         * gtk/gtkwindow.c: we take over the container toplevel registration
11006         bussiness now. windows are registered across multiple destructions,
11007         untill they are finalized. the initial implicit reference count
11008         users are holding on windows is removed with the first destruction
11009         though.
11010         (gtk_window_init): ref & sink and set has_user_ref_count, got
11011         rid of gtk_container_register_toplevel() call. add window to
11012         toplevel_list.
11013         (gtk_window_destroy): unref the window if has_user_ref_count
11014         is still set, got rid of call to
11015         gtk_container_unregister_toplevel().
11016         (gtk_window_finalize): remove window from toplevel list.
11017         (gtk_window_list_toplevels): new function to return a newly
11018         created list with referenced toplevels.
11019         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11020
11021         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11022         adjustment a non-construct arg.
11023         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11024         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11025         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11026
11027         * gtk/gtkrange.c: added some realized checks.
11028         (gtk_range_destroy): get rid of the h/v adjustments in the
11029         destroy handler instead of finalize. remove timer.
11030         (gtk_range_get_adjustment): demand create adjustment.
11031
11032         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11033         we simply create them on demand now and get rid of them in
11034         the destroy handler.
11035         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11036         destroy handler instead of finalize.
11037         (gtk_viewport_get_hadjustment): 
11038         (gtk_viewport_get_vadjustment): 
11039         (gtk_viewport_size_allocate): demand create h/v adjustment
11040         if required.
11041
11042         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11043         gtk_widget_real_destroy () functionality.
11044         (gtk_widget_real_destroy): reinitialize with a new style, instead
11045         of setting widget->style to NULL.
11046
11047 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11048
11049         * gtk/gtkcalendar.c:
11050         * gtk/gtkbutton.c: ported _get_type() implementation over to
11051         GType, either to preserve memchunks allocation facilities,
11052         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11053
11054         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11055         over. prepare for ::destroy to be emitted multiple times.
11056         removed reference tracer magic. chain into GObjectClass.shutdown()
11057         to emit ::destroy signal.
11058
11059         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11060         fundamental.
11061
11062         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11063         cludge.
11064
11065         * gtk/gtksocket.c:
11066         * gtk/gtkplug.c:
11067         * gtk/gtklayout.c:
11068         * gtk/gtklabel.c:
11069         * gtk/gtkargcollector.c:
11070         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11071         not being a fundamental anymore, and to work with the new
11072         type system (nuked fundamental type varargs clutter).
11073
11074         * gtk/*.c: install finalize handlers in the GObjectClass
11075         part of the class structure.
11076         changed direct GTK_OBJECT()->klass accesses to
11077         GTK_*_GET_CLASS().
11078         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11079
11080         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11081         GType. made most of the GTK_*() type macros and Gtk* typedefs
11082         simple wrappers around macros and types provided by GType.
11083         most notably, a significant portion of the old API vanished:
11084         GTK_TYPE_MAKE(),
11085         GTK_TYPE_SEQNO(),
11086         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11087         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11088         GTK_TYPE_ARGS,
11089         GTK_TYPE_CALLBACK,
11090         GTK_TYPE_C_CALLBACK,
11091         GTK_TYPE_FOREIGN,
11092         GtkTypeQuery,
11093         gtk_type_query(),
11094         gtk_type_set_varargs_type(),
11095         gtk_type_get_varargs_type(),
11096         gtk_type_check_object_cast(),
11097         gtk_type_check_class_cast(),
11098         gtk_type_describe_tree(),
11099         gtk_type_describe_heritage(),
11100         gtk_type_free(),
11101         gtk_type_children_types(),
11102         gtk_type_set_chunk_alloc(),
11103         gtk_type_register_enum(),
11104         gtk_type_register_flags(),
11105         gtk_type_parent_class().
11106         replacements, where available are described in ../docs/Changes-1.4.txt.
11107         implemented compatibility functions for the remaining API.
11108
11109         * configure.in: depend on glib 1.3.1, use gobject module.
11110
11111 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11112
11113         * TODO.xml: Various updates to current status.
11114
11115 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11116
11117         * gtk.m4: Print out version when test succeeds.
11118
11119 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11120
11121         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11122         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11123         
11124         (Original triangle color selector from Simon Budig
11125         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11126         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11127         Santiago <mrcooger@cyberverse.com>)
11128
11129         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11130         out into a separate widget.
11131
11132         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11133         and opacity controls.
11134
11135 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11136
11137         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11138         snuck in prematurely.
11139
11140 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11141
11142         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11143         had deleted a ! operator by mistake, which caused
11144         GDK_SELECTION_CLEAR events never to be generated, which caused
11145         only the first copy to the clipboard from an gtkeditable to
11146         actually cause a copy to the Windows clipboard.
11147
11148 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11149
11150         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11151         compilation, too. Current mingw gcc distributions include the
11152         necessary headers. Also the necessary IIDs are now in mingw
11153         headers/libraries, and own definitions unnecessary.
11154
11155         More hacking on OLE2 DND, still doesn't work though, and thus
11156         ifdeffed out.
11157
11158         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11159         here, too.
11160
11161 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11162
11163         * gdk/nanox/*: nano-X port work in progress.
11164         * gdk/simple.c: simple test for Gdk.
11165         * README.nanox: notes about the port: read this first!
11166         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11167         with nano-X.
11168
11169 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11170
11171         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11172         gdk_window_clear() into common code, implement in terms of
11173         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11174         not redirected to the backing rectangle.
11175
11176 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11177
11178         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11179         EXTRA_DIST. It does not work well when the file that
11180         everything depends on is not in the tarball.
11181
11182 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11183
11184         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11185         with recursion where process_updates() is called from
11186         an expose handler. (GtkTextView is highly broken in
11187         doing this, but it should work, so it is a nice test
11188         case.)
11189
11190 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11191
11192         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11193         handle the case where updates are queued during processing of
11194         updates.
11195
11196 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11197
11198         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11199         window is on gdk_display - use that instead of segfaulting.
11200
11201 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11202
11203         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11204         broken and require an empty arg, give it to them.
11205
11206 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11207
11208         * gtk/gtklabel.h: indentation fixes.
11209
11210 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11211
11212         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11213         draw too narrow or too low arcs, they seem to fail, at least with
11214         some display drivers.
11215
11216         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11217
11218         Large changes to the Win32 backend, partially made necessary by
11219         the changes to the backend-independent internal
11220         structures. Attempts to implement similar backing store stuff as
11221         on X11. The current (CVS) version of the Win32 backend is *not* as
11222         stable as it was before the no-flicker branch was merged. A
11223         zipfile with that version is available from
11224         http://www.gimp.org/win32/. That should be use by "production"
11225         code until this CVS version is usable. (But note, the Win32
11226         backend has never been claimed to be "production quality".)
11227
11228         * README.win32: Add the above comment about versions.
11229
11230         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11231
11232         * gdk/gdk.def: Update.
11233
11234         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11235         presumably be replaced by some more better mechanism as 1.4 gets
11236         closer to release shape.
11237
11238         * gdk/makefile.{cygwin,msc}: Update.
11239
11240         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11241         internal headers. Change code according to changes in these. Use
11242         gdk_drawable_*, not gdk_window_* where necessary.
11243
11244         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11245         our old DND.
11246
11247         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11248         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11249         Use correct function name in warning messages.
11250
11251         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11252         GSourceFuncs gdk_event_prepare and gdk_event_check.
11253         (gdk_event_get_graphics_expose): Do implement, use
11254         PeekMessage. Thanks to Hans Breuer.
11255         (event_mask_string): Debugging function to print an GdkEventMask.
11256         (gdk_pointer_grab): Use it.
11257
11258         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11259         (old) book I used claimed was Hangul actually is CJK Unified
11260         Ideographs Extension A. Also, Hangul Syllables were missing.
11261         Improve logging.
11262
11263         * gdk/win32/gdkgc-win32.c: Largish changes.
11264
11265         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11266         g_win32_getlocale() from GLib, and not setlocale() to get current
11267         locale name.
11268
11269         * gdk/win32/gdkprivate-win32.h
11270         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11271         gdkwin32.h, similarily as in the X11 backend.
11272
11273         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11274         assignment was used instead of equals in if test. Thanks to Hans
11275         Breuer.
11276
11277         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11278         the X11 version.
11279
11280         * gdk/win32/makefile.{cygwin,msc}
11281         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11282         path to the Win32 headers that works also with the mingw compiler.
11283
11284         * gtk/gtkstyle.c: Include <string.h>.
11285
11286 2000-04-26  Havoc Pennington  <hp@redhat.com>
11287
11288         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11289         replacing the broken gtk_label_get ()
11290
11291 2000-04-15  Havoc Pennington  <hp@pobox.com>
11292
11293         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11294         this keeps scanner scripts from getting confused.
11295
11296         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11297         data, rather than void
11298
11299 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11300
11301         * gtk/gtkclist.c (gtk_clist_motion)
11302         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11303         with is_hint FALSE, get x and y from the event. They used to be
11304         used uninitialised. The Win32 backend never sends motion events
11305         marked as hints. This for instance fixes the annoying file and
11306         font selector behaviour in the Win32 version.
11307
11308 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11309
11310         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11311         gtk_private_n_signals variables, they are used by some software,
11312         sigh.
11313
11314         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11315         installation directory from the Registry, where the installer
11316         should have put it.
11317
11318 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11319
11320         * gdk/x11/Makefile.am: Fix problem with installation directory for
11321         gdkx.h
11322
11323         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11324         <mrcooger@cyberverse.com> so that when selecting menus with the
11325         mouse, the first item will not be selected, but when selecting
11326         with an accelerator, or navigating left-right on a menubar with
11327         the menus popped up, the first item will be selected.
11328
11329 2000-04-05  Dan Damian  <dand@dnttm.ro>
11330
11331         * configure.in: Added "ro" to ALL_LINGUAS.
11332
11333 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11334
11335         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11336         indentation.
11337
11338         * Makefile.am (EXTRA_DIST): Fix typo.
11339
11340         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11341         to catch gdkconfig.h
11342
11343         * gtk/gtkitemfactory.c: Added FIXME.
11344
11345 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11346
11347         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11348         s/return_if_fail/return_val_if_fail/g and add a return value.
11349
11350 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11351
11352         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11353         merge slipup.
11354
11355         * gdk/gdkinput.h: Fix missing line from merge.
11356
11357 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11358
11359         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11360         instead of gdkprivate.h.
11361
11362 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11363
11364         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11365         parent class to correctly be GtkDialogClass.
11366
11367 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11368
11369         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11370         toplevel windows and their immediate children by their parents,
11371         since the size of toplevel windows is out of our immediate
11372         control and we don't get any real benefit from trying to track
11373         this size for clipping.
11374
11375         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11376         for input_only windows.
11377
11378         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11379         to fix some hacks and make sure that we don't try to set the
11380         background of input only windows.
11381
11382 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11383
11384         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11385         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11386         stuff that we've traditionally exposed.
11387
11388         * gdk/**.c: Use gdkinternals.h where appropriate.
11389
11390         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11391         not include gdkprivate-x11.h, move all stuff of conceivable public
11392         interest into gdkx.h; keep all really private stuff in
11393         uninstalled header gdkprivate-x11.h.
11394
11395         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11396         image->image_put on windows through a new function _gdk_window_draw_image()
11397         to allow us to do backing store for images. (Sort of ugly)
11398
11399         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11400         contexts locally so that we can offset them properly when drawing 
11401         onto backing pixmaps.
11402
11403         * gdk/gdkinput.h: Reindented
11404
11405         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11406         pixmap or color for the window, so we can properly initialize
11407         our double-buffer pixmaps, and also so that we temporarily set
11408         a background of None while scrolling.
11409
11410         * gdk/gdkregion.h: Revise region boolean operators to have an
11411         interface that is actually convenient - switch from creating new
11412         regions on every op, to "methods" that modify existing regions
11413         (A = A OP B). 3 argument forms which allow dest == src, would also
11414         be possible, but the current interfaces seem to map nicely
11415         onto what needs to be done. (There is quite a lot of region
11416         code in GDK now.)
11417
11418         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11419         operator.
11420
11421         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11422         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11423         to 32 bit coordinates, modify it to be mostly GTK+ style
11424         and to have interfaces that match gdkregion.h.
11425
11426         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11427         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11428         create a backing pixmap and redirect all drawing to
11429         that backing pixmap until a matching gdk_window_end_paint().
11430
11431         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11432         Create a special drawable class for GtkWindow's that 
11433         redirects the drawing to the backing pixmap as necessary
11434         and then calls the real operations in _gdk_windowing_window_class.
11435
11436         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11437         Store invalid region for each window. Generate expose events for invalid
11438         region in an idle. This replaces both the expose compression
11439         and the redrawing queuing in GTK+. It is both more efficient and
11440         simpler than either one individually and far more so then the
11441         combination.
11442
11443         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11444         Emulate 32 bit coordinates for windows with 16 bit coordinates
11445         by offsetting drawing, guffaw scrolling techniques and
11446         mapping/unmapping child windows as necessary.
11447
11448         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11449         where, when invalid regions are processed, the region is stored,
11450         and if expose events come in that are detectably duplicate
11451         the processed exposes (by comparison of event serial numbers),
11452         the stored region is subtracted out of those exposes.
11453
11454         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11455         regions newly exposed when scrolling or resizing windows.
11456         This, combined with forcing processesing of queued invalidated
11457         regions, gives nice flicker-free scrolling.
11458
11459         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11460         invalidated regions after every scroll.
11461
11462         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11463         emulation in GDK. Its, for all practical purposes just a
11464         GtkViewport/GtkFixed hybrid now.
11465
11466         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11467         (16-bit) structures as necessary instead of just casting.
11468
11469         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11470         in terms of the structures from gdkregion-generic.c, using appropriate
11471         offsets from GDK to X11 coordinates. Cache clip mask and
11472         origin and ts origin locally and only flush to the server
11473         when drawing, to avoid constantly setting and resetting these
11474         values when offsetting GC's for scrolling and backing pixmaps.
11475
11476         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11477
11478         * gtk/gtkcontainer.c: Call process_all_updates at end
11479         of resizing to reduce flicker. (Avoids having redraw
11480         lag arbitrarily behind resize under some circumstances)
11481
11482         * gtk/gtkentry.c: Remove old backing store code, and simply take
11483         advantage of the new backing store capabilities of GDK.
11484
11485         * gtk/gtkmain.c: Simple implementation of widget backing
11486         store - simply push a paint while handling each expose.
11487         (Should really be configurable widget for widget.)
11488         
11489         * gtk/gtkwidget.c: Remove all the old complicated redraw
11490         code, and simply invalidate the GDK windows from
11491         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11492         debugged complexity ... gone to the winds.)
11493
11494         Remove all the code for suppressing expose events while
11495         resizes are pending; this isn't needed since the invalid
11496         areas won't be processed until after the resizes are
11497         processed, since they are in a lower priority idle.
11498
11499 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11500
11501         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11502         and height of dest rectangle for non-intersecting rectangles.
11503
11504 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11505
11506         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11507         for GdkRectangle.
11508
11509 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11510
11511         * gdk/gdk{events,image,private,types,window}.h
11512          gdk/x11/gdkinputprivate.h: Change all coordinates
11513          from int16 to int. Also, Change width and height from
11514          unsigned to signed to avoid all the stupid C 
11515          signedness bugs.
11516
11517 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11518
11519         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11520         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11521         Add some more detailed checking.
11522
11523         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11524         New function to retrieve the depth of a drawable.
11525
11526         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11527         field, reorder fields to save memory. 
11528
11529 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11530
11531         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11532         of the background image instead of scaling the background down to
11533         a line.
11534
11535         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11536         which temporarily set slider to wrong size.
11537
11538         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11539         queue_clear().
11540
11541 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11542
11543 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11544
11545         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11546
11547 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11548
11549         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11550         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11551
11552         * gdk/win32/gdkfont-win32.c
11553         * gdk/win32/gdkproperty-win32.c
11554         * gdk/win32/gdkselection-win32.c
11555         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11556         now declared such.
11557
11558 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11559
11560         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11561
11562 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11563
11564         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11565         is called without trapping X errors.
11566
11567 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11568
11569         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11570         way into the fontset lists.
11571
11572 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11573
11574         * gtk/gtkthemes.h: add extern "C" scope.
11575
11576 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11577
11578         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11579         to make appends to the list constant. (gtk-guy-990901-0.patch)
11580
11581 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11582
11583         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11584         for the typename hash table.
11585
11586 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11587
11588         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11589         to make sure we never divide by zero. 
11590         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11591
11592 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11593
11594         * gtk/gtkfontsel.c: Apply patch from
11595         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11596         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11597
11598         Also, some cleanups in atom handling.
11599
11600 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11601
11602         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11603         not GtkWidget.
11604
11605 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11606
11607         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11608         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11609         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11610         more guint wrap-around bugs before going to bed.
11611
11612 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11613
11614         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11615         guint wrap arounds in allocation.width.
11616
11617         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11618         process untill we fit the allocation given.
11619
11620 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11621
11622         * gtk/gtkwidget.c:
11623         (gtk_widget_unrealize): guard widget access with ref/unref
11624         around signal emission.
11625         (gtk_widget_hide): same here, but also check its destroyed
11626         state before queueing a resize.
11627
11628 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11629
11630         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11631         of gtk_default_insensitive_bg as insensitive base color.
11632
11633         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11634         to the widget's state.
11635         (gtk_text_realize): same here.
11636         (gtk_text_state_changed): same here.
11637         (draw_bg_rect): compare background color against base[] from
11638         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11639
11640 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11641
11642         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11643         grabs are active, unless a delete event is send to the toplevel
11644         of the currently grab holding widget.
11645
11646 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11647
11648         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11649         debugging g_print's.
11650
11651 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11652
11653         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11654         ever make the scrolled-window requisition ever depend on the 
11655         visibility state of the scrollbars for the AUTOMATIC policy. 
11656         This breaks the GTK+ requisition model, and causes loops.
11657
11658 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11659
11660         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11661         the default font to avoid problems with XFree86-4.0 where the
11662         default charset is iso10646-1, not iso8859-1.
11663
11664 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11665
11666         * acinclude.m4
11667         * config.guess
11668         * config.sub
11669         * ltconfig
11670         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11671
11672         * gtk/Makefile.am: minor cosmetic consistency tweak
11673
11674 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11675
11676         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11677         the activate_time to 0, so that we handle a quick
11678         press/release press/release properly and don't suppress
11679         the second release. (Red Hat bug #7545)
11680
11681 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11682
11683         * gtk/gtkctree.c (row_delete):
11684         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11685         bugs with destruction notifier, *always* update internal
11686         structures *before* calling user code.
11687
11688 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11689
11690         A few more fixes for bug #5487, #2051, #2677.
11691         * gtk/gtkclist.c : 
11692         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11693         not GDK_BUTTON_PRESS.
11694         (resync_selection): resync only if selection_mode is
11695         GTK_SELECTION_EXTENDED
11696         * gtk/gtkctree.c (resync_selection): same here
11697
11698 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11699
11700         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11701         gdk_drag_get_selection() and gtk_menu_detach().
11702
11703         [ From Jeroen Ruigrok/Asmodai ]
11704
11705 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11706
11707         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11708         page->tab_label can be NULL.
11709
11710 2000-01-25  Havoc Pennington  <hp@pobox.com>
11711         
11712         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11713         arg is boolean
11714
11715         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11716
11717         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11718
11719         * gdk/gdkproperty.c (gdk_property_get): return boolean
11720
11721         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11722
11723         * gdk/gdkim.c (gdk_im_ready): return boolean
11724
11725         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11726
11727         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11728         glib clash, should fix glib)
11729
11730         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11731         (gdk_get_show_events): return gboolean, and canonicalize 
11732         to TRUE/FALSE
11733
11734         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11735         colormap is private
11736         (gdk_colors_alloc): gboolean whether to be contiguous
11737         (gdk_color_equal): return gboolean since we are a predicate
11738         and not a qsort() (this looks semi-wrong due to glib breakage,
11739         IMO glib should be fixed)
11740         
11741         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11742         (gdk_get_use_xshm): return gboolean
11743         (gdk_pointer_is_grabbed): return gboolean
11744
11745         * gdk/gdk.h: Change prototypes to match all the above changes,
11746         and re-run egtk-format-protos as required.
11747
11748 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11749
11750         * gtk/gtkctree.c (resync_selection): 
11751         * gtk/gtkclist.c (resync_selection):
11752
11753         Return immediately if clist->drag_pos < 0. This is a workaround
11754         for the corrupt state that the clist gets into when a
11755         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11756
11757         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11758         
11759         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11760         variable from recent commit.
11761
11762 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11763
11764         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11765
11766 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11767
11768         * gtk/Makefile.am: prefix all autogenerated source that get build in
11769         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11770         in builddir. since we subsequently cd into srcdir for autogeneration,
11771         the paths have to be stripped from the target file names, thusly we
11772         use $(@F) as target names now.
11773         put a comment about configure.in's --disable-rebuilds option,
11774         which can be used for non-writable source directories, for development
11775         setups though, srcdir has to be *writable*.
11776
11777 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11778
11779         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11780           Finish the job of allowing event to be NULL.
11781           (Fixes bug #4283, reported by Chris Blizzard)
11782
11783         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11784           things so that the cursor appears on screen, properly
11785           take into account INNER_BORDER.
11786           (Fixes bug #4754, reported by Antonio Campos)
11787
11788 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11789
11790         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11791           show the tab_label unless it itself is visible.
11792
11793           gtk/gtknotebook.c (gtk_notebook_size_request):
11794           Do a better job of making sure that the visibility
11795           of the tab label corresponds to whether it should
11796           be mapped or not.
11797
11798 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11799
11800         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11801           Use the requisition, not the allocation, since the
11802           allocation has not necessarily been computed yet.
11803           (Pointed out by Eugene Osintsev)
11804
11805 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11806
11807         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11808           style/base[GTK_STATE_INSENSITIVE] both to
11809           gtk_default_insensitive_bg!
11810           (Bug #2187, reported by Jonathan Blandford)
11811
11812         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11813           Add Alt_L, Alt_R to list of invalid accelerators.
11814           (Bug #3736, reported by Vlad Harchev)
11815
11816 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11817
11818         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11819         bugs which occured after an attempt to open 
11820         invalid home directory left cmpl_state->reference_dir == NULL.
11821
11822          - completion on files in home directory didn't work
11823          - completion on an empty string caused  segfault
11824
11825          (Bug #3678, reported by Steve Ratcliffe)
11826
11827         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11828         cut and paste error that was causing scales to
11829         be incorrectly positioned.
11830         (Bug #2956,
11831          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11832
11833 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11834
11835         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11836         when checking for dcgettext, if we've found we needed
11837         it for dgettext.
11838 +
11839 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11840
11841         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11842         queue_clear on NO_WINDOW widgets during a reparent,
11843         since at that point the window and widget heirarchies
11844         are out of sync. This stops crashing in some cases
11845         (the scrolled window reparent test, for instance), and
11846         _probably_ won't cause drawing errors.
11847
11848         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11849         test do what it was supposed to do and be robust against
11850         window closings, etc. (Bug #2443)
11851
11852 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11853
11854         * gtk/gtkentry.c: Fix return values on mouse events.
11855         (Bug #2686, Sky <seb_sky@yahoo.com>)
11856
11857         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11858         (pointed out by George Lebl)
11859
11860         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11861         (From Ettore Perazzoli  <ettore@helixcode.com>)
11862  
11863 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11864
11865         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11866         clicks between rows or outside calender area correctly.
11867         (Patch from Damon Chaplin)
11868
11869         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11870         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11871           Call destroy function when overwriting existing data. 
11872           (Pointed out by Damon Chaplin)
11873
11874 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11875
11876         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11877           which was causing problems on various systems with Xmu.
11878           This hasn't been needed for a very long time.
11879           (Fixes #1185 3167)
11880
11881 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11882
11883         * gdk/gdki18n.h: Include <ctype.h> when defining
11884           gdk_isw* in terms of is* as a fallback.
11885           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11886
11887 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11888
11889         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11890           realize the widget when it is size allocated!
11891           (old, old bug)
11892
11893         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11894           Removed unused call to gdk_window_get_size() that
11895           showed up when the above was fixed.
11896
11897 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11898
11899         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11900           fix up widget->window when the widget is a
11901           NO_WINDOW container widget.
11902
11903 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11904
11905         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11906           to account for the fact that feof() does _not_ 
11907           return TRUE on errors, and thus avoid infinite loops
11908           when trying to use gdk_pixmap_create_from_xpm()
11909           on unreadable values.
11910
11911 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11912
11913         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11914
11915 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11916
11917         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11918           gdk_gc_set_dashes to take gint8 instead of gchar to
11919           make it clearer that it is _not_ a NULL terminated string.
11920
11921         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11922           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11923           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11924           arguments.
11925
11926 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11927
11928         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11929         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11930         background size relative to our allocation, guard against small
11931         allocations, we may have not yet been size allocated.
11932
11933 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11934
11935         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11936         not just version == 3. We implement all 3 + most of 4 - 
11937         (we don't support matching text/plain;charset=iso-8859-1
11938         to a dest that expects text/plain). We'll still advertise
11939         3 to be safe, but any client implementing version >= 3
11940         must interoperate with 3.
11941         
11942 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11943
11944         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11945         background and gc members, add a warning in gtk_tooltips_set_color()
11946         indicating that this function is deprecated.
11947
11948 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11949
11950         * docs/gtkfaq.sgml: FAQ Update:
11951           - Minor cleanups (Emmanuel, me)
11952           - New questions:
11953                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11954                 How can I retrieve the text from a GtkMenuItem? (timj)
11955                 How do I validate/limit/filter the input to a GtkEntry? (me)
11956                 Memory does not seem to be released when I free the list
11957                         nodes I've allocated (timj)
11958
11959 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11960
11961         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11962         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11963         for which it is no use to call GetLastError onWin9x.
11964         (gdk_other_api_failed) New function, for general error
11965         reporting without calling GetLastError.
11966         (gdk_win32_api_failed) OTOH, this function always calls
11967         GetLastError. (gdk_win32_last_error_string) Remove this function,
11968         GLib has the equivalent now.
11969
11970         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11971         call them with function name, file name and line number in the
11972         arguments.
11973
11974         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11975         functions.
11976         
11977         * gtk/gtk.def: Add some missing entry points.
11978
11979         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11980         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11981         
11982         Fixes by Hans Breuer:
11983
11984         * gdk/makefile.msc: Update for debugging.
11985
11986         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11987         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11988         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11989         in the dash_list.
11990
11991         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11992         the x11 backend.
11993
11994         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11995
11996         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11997
11998 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11999
12000         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12001         just pixel value of background colour.
12002
12003         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12004         containing code snippet previously duplicated in a couple of
12005         places.
12006         
12007         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12008         gdk_colormap_color.
12009
12010         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12011         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12012         events for autorepeated Shift, Control and Alt keys. Use
12013         gdk_colormap_color.
12014
12015         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12016         pointer is inside the window the cursor of which we are setting,
12017         call SetCursor immediately.
12018
12019         * gdk/win32/makefile.cygwin
12020         * gtk/makefile.cygwin: If we don't have the build number stamp
12021         file, use zero.
12022
12023         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12024         gtk_paned_set_gutter_size as empty.
12025
12026         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12027         
12028 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12029
12030         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12031           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12032           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12033           docs/gtk_tut.sgml docs/gtk.texi TODO:
12034
12035           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12036
12037 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12038
12039         * gtk/gtkcalendar.c: Implement num_marked_dates,
12040           and don't emit mutiple day_selected signals on
12041           month_prev.
12042
12043 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12044
12045         * docs/make-todo (lineno): let title and logo be configurable so
12046         that GNOME can use this script too.
12047
12048         * TODO.xml: added logourl and a title
12049
12050 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12051
12052         * TODO.xml: Added some UI items, and an explanatory
12053         comment at the top of the file.
12054
12055 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12056
12057         * TODO.xml: some updates, added abunch of new entries.
12058         a note for those fiddeling with this file, when done
12059         with it, invoke:
12060         $ ./docs/make-todo TODO.xml >/dev/null
12061         and correct output errors before comitting changes.
12062
12063 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12064
12065         * TODO.xml: Added XML-structured TODO file.
12066         * docs/make-todo: python script to turn TODO.xml into
12067           pretty XML output. 
12068
12069 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12070
12071         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12072         the function to let it draw the seven dots, instead of the old,
12073         much maligned, method.
12074         (draw_dot): New function to draw a dot.
12075
12076         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12077         to draw the handle inside the border width as opposed to outside.
12078         Use paint function instead of gdk_draw_point.
12079
12080         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12081         to draw the handle inside the border width as opposed to outside.
12082         Use paint function instead of gdk_draw_point.
12083
12084         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12085         Change indenting to be more GTK like.
12086
12087 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12088
12089         * docs/gtk_tut.sgml: New section on GtkCalendar
12090         * examples/calendar: Update example code
12091
12092 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12093
12094         * docs/gtkfaq.sgml: FAQ Update
12095
12096 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12097
12098         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12099         to prevent the scroll event to be propagated upwards.
12100
12101 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12102
12103         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12104         OwnerGrabButtonMask from button entries for
12105         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12106
12107         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12108         to the event mask (which will result in button/press release
12109         being added to the event mask on Unix) so scrolling works
12110         for layouts in scroll windows.
12111
12112         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12113
12114         Patch from Anders Carlsson  <andersca@gnu.org> to add
12115         a scroll event.
12116
12117         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12118         scrolling to the "Test Scrolling" part of testgtk.
12119  
12120         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12121  
12122         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12123         it against GDK_SCROLL.
12124  
12125         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12126         way of mouse wheel scrolling.
12127  
12128         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12129  
12130         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12131  
12132         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12133  
12134         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12135         gdk_event_mask_table.
12136  
12137         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12138         GdkEventScroll handler.
12139  
12140         * gdk/gdkevents.h: Added GdkEventScroll structure.
12141  
12142 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12143
12144         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12145         and Anders Carlsson to change the Paned widgets so that they
12146         can be dragged from anywhere along the length. Also change
12147         the way that this is drawn to make this apparent.
12148
12149         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12150         from George Lebl to check that option_menu->menu is present
12151         before getting history.
12152
12153 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12154
12155         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12156         before the assertion for non-NULL segment list.
12157
12158         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12159         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12160         machine, but it might be display driver dependent. Sigh, so make
12161         sure the stipple is that size. Does Windows suck or what?
12162
12163         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12164         places.
12165
12166 2000-02-13  Havoc Pennington  <hp@pobox.com>
12167
12168         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12169         refcount to 1
12170         (gdk_cursor_new): init refcount to 1
12171
12172         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12173
12174 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12175
12176         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12177         so that we don't have to do unnecessary settings to the HDC.
12178
12179         * gdk/win32/gdkdrawable-win32.c
12180         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12181         gdk_gc_predraw.
12182
12183         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12184         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12185         GDI paths, call WidenPath to get the outline of the stroken path,
12186         and then fill the outline (with the brush that was built from the
12187         stipple).
12188
12189         * gdk/win32/gdkgc-win32.c: Factor out common code from
12190         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12191         gdk_win32_gc_values_to_win32values. Use correct colour for
12192         SetBkColor() (Until now the code actually used a random colour in
12193         the call to SetBkColor()... but that didn't show up as not many
12194         GDI APIs use the background colour. Pattern (opaque stippled)
12195         brushes do.)
12196
12197         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12198         gdk_win32_api_failed): New functions for error logging.
12199
12200         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12201         WIN32_API_FAILED to call them, passing function or file name and
12202         line number.
12203
12204         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12205
12206         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12207         GdkColor for foreground and background in GdkGCWin32Data.
12208
12209         * gdk/makefile.cygwin: Link in the resource object separately.
12210
12211         * gdk/win32/rc/gdk.rc
12212         * gtk/gtk.rc (New file)
12213         * gdk/win32/makefile.cygwin
12214         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12215         as in GLib.
12216
12217 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12218
12219         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12220         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12221         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12222         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12223         parameters given and cursor->ref_count. coding style fixups.
12224
12225         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12226         not GtkWidget.
12227         
12228         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12229         fix up widget macros and add _GET_CLASS() variant.
12230         
12231         * gtk/*.c: some GtkType fixups.
12232
12233 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12234
12235         * gdk/win32/gdkproperty-win32.c
12236         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12237         were reversed.
12238
12239 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12240
12241         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12242         g_filename_to_utf8 to convert the font names Windows gives us from
12243         whatever is the default codepage to UTF-8.
12244         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12245         in the other direction.
12246
12247         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12248         error in debugging output.
12249
12250 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12251
12252         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12253         and height parameters to gdk_window_clear_area(). Not minus one.
12254
12255 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12256
12257         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12258         checks if the widget passed to gtk_drag_get_data() was not the
12259         dest widget.
12260
12261 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12262
12263         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12264         g_filename_from_utf8 functions (which were added a moment ago to
12265         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12266         size buffers.
12267
12268         gtk_file_selection_get_filename returns the filename in the C
12269         runtime encoding. It calls g_filename_from_utf8, but copies the
12270         returned string to a static buffer, which is returned. I think
12271         this is better than returning the result from g_filename_from_utf8
12272         directly, which would mean all apps that use it would have to free
12273         the return value. Or should this function care about this issue at
12274         all? Maybe a new function with clearly defined semantics.
12275
12276         * gtk/gtkfilesel.h: Add comment about
12277         gtk_file_selection_get_filename returning the filename in the C
12278         runtime's encoding.
12279
12280         * README.win32
12281         * gdk/gdk.def
12282         * gdk/makefile.{cygwin,msc}
12283         * gtk/gtk.def: Updates.
12284
12285         * gdk/gdkcursor-win32.c: Initialise refcount.
12286
12287 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12288
12289         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12290
12291 2000-01-30  Havoc Pennington  <hp@pobox.com>
12292
12293         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12294         destroy
12295
12296         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12297
12298         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12299         implemented in platform-specific code
12300
12301         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12302
12303         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12304         underscore in front
12305
12306         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12307         put an underscore in front
12308
12309         * gdk/gdkcursor.c: new file, implements
12310         gdk_cursor_ref/gdk_cursor_unref
12311
12312         * gdk/gdkcursor.h: Refcount GdkCursor
12313
12314         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12315
12316 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12317
12318         * gdk/gdkwindow.h
12319         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12320
12321 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12322
12323         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12324         structures to properly inherit from GtkWidget not GtkBin.
12325
12326 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12327
12328         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12329         (bug #5178 - Peter Wainright)
12330         
12331         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12332         so that it will be installed.
12333         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12334
12335 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12336
12337         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12338         for the GtkStyleClass vtable const.
12339
12340         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12341         take a const string argument like GtkTranslateFunc. This will
12342         require changes in use code.
12343
12344 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12345
12346         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12347         semantics (to mimic the X11 backend, which just calls XClearArea)
12348         is to check for zero width (and height), and in that case use the
12349         window's width minus x (height minus y). This fixes for instance
12350         some redraw problems with gtkclist, which were easily noticeable
12351         in the gtk file selection widget.
12352
12353         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12354         windows.
12355
12356 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12357
12358         * configure.in
12359         * gdk/Makefile.am
12360         * gdk/x11/Makefile.am
12361         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12362         (bug #5177).
12363         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12364         out later.
12365
12366 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12367
12368         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12369         WM_MOVE for iconified or invisible windows. This fixes various
12370         problems when minimising windows. Thanks to Bernd Herd.
12371
12372 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12373
12374         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12375         backend's draw_lines method, not draw_points.
12376
12377 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12378
12379         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12380         before Owen's reorganisation: Don't have queued_events and
12381         queued_tail statics in this file, but use gdk_queued_events and
12382         gdk_queued_tail. This makes exposure event compression work again.
12383
12384         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12385         seem to be needed?
12386
12387 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12388
12389         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12390         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12391         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12392         doesn't do anything.
12393
12394         * gdk/gdk.def: Add gdk_xid_table_insert.
12395
12396         * gdk/win32/gdkprivate-win32.h
12397         * gdk/win32/gdkevents-win32.c
12398         * gdk/win32/gdkinput-win32.c
12399         
12400         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12401         extension_events field in the GdkWindowWin32Data struct. Use only
12402         the extension_events field in GdkWindowPrivate. Previously one was
12403         set, and the other one tested, which broke tablet
12404         functionality. Thanks to Keishi Suenaga for pointing this out.
12405
12406 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12407
12408         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12409         When handling a single character (text length == 1), don't handle
12410         it as if it was UTF-8.
12411
12412 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12413
12414         * Makefile.am: Distribute README.win32.
12415         
12416         * gdk/Makefile.am
12417         * gdk/win32/Makefile.am: Distribute Win32 files.
12418
12419         * gdk/makefile.msc: New file.
12420
12421         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12422         after label).
12423
12424         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12425         gdk_error_code as GDKVAR, as they are referred outside GDK.
12426
12427         * gdk/win32/makefile.msc: Update.
12428
12429         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12430         tweaks. Check only if at least one of those Unicode subrange bits
12431         we care for is set. If no code page bits are set, guess (wildly)
12432         based on the charset.
12433
12434         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12435
12436         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12437         non-NULL.
12438
12439         * gtk/gtkdnd.c
12440         * gtk/gtklayout.c
12441         * gtk/gtkplug.c
12442         * gtk/gtkselection.c
12443         * gtk/gtksocket.c
12444         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12445         appropriate. There must be a cleaner way to handle this?
12446
12447         * gtk/gtkrc.c: Must include windows.h on Win32.
12448
12449         * gtk/testgtk.c: No need to include gdkx.h.
12450
12451         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12452
12453 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12454
12455         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12456         the rbearing is set to the same as the width, but this should be
12457         fixed.
12458
12459 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12460
12461         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12462         function. If Windows doesn't tell us what Unicode subranges a font
12463         covers, guesstimate based on the codepages it covers. This will
12464         hopefully help those Windows versions or fonts that don't give us
12465         any useful Unicode subrange information with GetTextCharsetInfo.
12466         Call this function in gdk_font_load_internal.
12467
12468         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12469         minor changes.
12470
12471 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12472
12473         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12474         New function, long needed.
12475
12476 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12477
12478         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12479         only_if_exists argument of gdk_atom_intern to
12480         bool.
12481
12482 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12483
12484         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12485         Fix two copy&paste errors.
12486
12487         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12488         win32 has changed.
12489
12490         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12491         GdkWin32SingleFont struct.
12492
12493         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12494         subranges of loaded fonts. Clear font signature first, in case
12495         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12496         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12497
12498         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12499         Unoffset clip region.
12500
12501 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12502
12503         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12504         event->any.window before calling filter functions.
12505
12506 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12507
12508         * gtk/gtkgamma.h: Adapt cast macros to standard.
12509
12510 [ Merges from 1.2 ]
12511
12512 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12513
12514         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12515         If translation does not include a '/', use entire
12516         translation instead of crashing.
12517
12518 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12519
12520         * docs/gtk_tut.sgml:
12521         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12522
12523 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12524
12525         * gtk/gtkselection.c (gtk_target_list_remove): Use
12526         g_list_remove_link, not g_list_remove.
12527
12528         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12529         
12530 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12531
12532         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12533         statement upon unselection (how the heck did that slip in?).
12534
12535 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12536
12537         * gtk/gtktext.c (gtk_text_freeze): 
12538         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12539         in frozen state (and aparently crashes). patch provided by Anders
12540         Melchiorsen <and@kampsax.dtu.dk>.
12541
12542 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12543
12544         * fix insensitive default/focus widget activation,
12545         reported by Matt Goodall <mgg@isotek.co.uk>.
12546
12547         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12548         (gtk_window_activate_default):
12549         (gtk_window_activate_focus):
12550         return handled=FALSE for actiavtion of insensitive default
12551         widgets. return handled=TRUE for activation of insensitive
12552         focus widgets. don't activate in either case.
12553
12554 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12555
12556         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12557         and $glib_cflags to match library order and in the
12558         theory that an old version of GLib is more likely to
12559         be in the include directory for X then vice-versa.
12560         (Bug #2776)
12561
12562 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12563
12564         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12565         to determine the locale for fontsets, not LC_MESSAGES;
12566         the user may want English messages with a handling
12567         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12568         will still be broken) (Bug #2891)
12569
12570 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12571
12572         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12573
12574 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12575
12576         * gtk/gtkrc.ko: Changed the Korean default fontset.
12577
12578 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12579
12580         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12581         where when scrolling to the left or top double exposes
12582         were done, causing major slowdowns.
12583
12584 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12585
12586         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12587         names to lowercase and alphanumeric, before looking
12588         them up.
12589
12590         * gtk/Makefile.am: Install codeset variant gtkrc files
12591         with normalized names.
12592
12593 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12594
12595         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12596         popup menus when the menu is already visible, but its parent
12597         is still hidden, (happens after tornoff window got hidden).
12598
12599 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12600
12601         * gtk/Makefile.am (install-data-local): Fix
12602         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12603         deleted, causing error messages on install.
12604
12605 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12606
12607         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12608         the handle as well, since we now sometimes ignore
12609         exposes on the handle while resizing.
12610
12611 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12612
12613         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12614         extra g_free introduced in one of the last one or two 
12615         commits.
12616
12617 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12618
12619         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12620         consistent, put each style that a gtkrc.* file creates
12621         in a unique namespace, remove old files before installing.
12622
12623 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12624
12625         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12626         gtk_rc_init is called multiple times. (Yes, people who
12627         do that have bugs in their code.)
12628
12629 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12630
12631         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12632         Remove it since it's generated by the Makefile anyway
12633
12634 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12637         device->info.axes for core pointer.
12638
12639 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12640
12641         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12642         idle_id, to deal with obsolete, broken C libraries.
12643
12644 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12645
12646         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12647         allocation->x/y twice!
12648
12649         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12650         consistent with gtk_vscale_pos_trough().
12651
12652 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12653
12654         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12655         be queueing a resize on a toplevel container between
12656         the time we show it and when we map it. So, we need
12657         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12658         use GTK_WIDGET_DRAWABLE() for child windows.
12659
12660 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12661
12662         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12663         (fixes bug #2144)
12664
12665 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12666
12667         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12668         container DRAWABLE (instead of VISIBLE), so we don't queue
12669         resizes on non-toplevel containers.
12670
12671 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12672
12673         * gtk/gtkselection.[ch]: Make the data argument
12674         const guchar *.
12675
12676 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12677
12678         * gtk/gtkwindow.c: Try to behave sensibly if 
12679         the focus widget is the window itself. (Should
12680         we allow this at all?)
12681
12682 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12683
12684         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12685         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12686         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12687         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12688         in prototypes and implementations consistent (Tomas Ogren).
12689
12690         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12691         before the widget is unparented (reported by damon).
12692
12693         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12694         since we provide unsigned data anyways.
12695
12696 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12697
12698         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12699         the call to gtk_tooltips_layout_text() until later.
12700
12701         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12702         Call gtk_widget_ensure_style() before using the style.
12703
12704 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12705
12706         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12707         for old widgets that don't propagate draws to all
12708         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12709
12710 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12711
12712         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12713         for a redraw but just the widget that requested the resize.
12714
12715 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12716
12717         * gtk/gtkcontainer.c: added new widget level method
12718         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12719         reallocate_redraws : 1 to reflect the setting, exported this through
12720         the argument system as a boolean ::reallocate_redraws.
12721
12722         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12723         on the widget because the allocation changes, do so as well for
12724         widget->parent if the parent has reallocate_redraws set to TRUE.
12725         with that containers requesting reallocation redraws get automatically
12726         redrawn if their children changed allocation (this unfortunately
12727         affects also other children that didn't change allocation, but we
12728         cannot work around that before 1.3).
12729
12730 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12731
12732         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12733         _and_ height are >0 (not _or_).
12734
12735         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12736         instead of gtk_container_queue_resize(), which is a core gtk internal
12737         function (must have been on crack when i queued that).
12738
12739         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12740         we can check more reliably if we want to discard expose events.
12741         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12742         flag.
12743         
12744         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12745         we simply trust these events. for deciding whether to discard exposes,
12746         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12747         
12748 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12749
12750         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12751         queues of areas that are completely off screen.
12752
12753         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12754         logic for handleboxes.
12755
12756         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12757         check on width/height.
12758
12759 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12760
12761         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12762         we are fine with using $@ the way we do (if we actually encounter
12763         brokeness with $@ in VPATH builds because of additional path prefixes,
12764         we need to use $(@F) actually).
12765
12766 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12767
12768         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12769         short lived bugs, that would allow language bindings to do surgeries
12770         to our guts.
12771
12772 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12773
12774         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12775         where comparison was being done against an uninitialized
12776         value causing intermittant results depending on
12777         compiler flags. Also make it clearer that we aren't
12778         ever initializing the child as 0x0 (though this will
12779         be caught in gtk_widget_size_allocate())
12780
12781 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12782
12783         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12784         gtk_window_unset_transient_for() call after we do checks
12785         involving the old transient parent.
12786         [ From Lance Capser <lmc@cyberhighway.net> ]
12787
12788 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12789
12790         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12791         an empty file.
12792
12793 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12794
12795         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12796         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12797
12798 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12799
12800         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12801         `$@' is valid only in the build dir, not after we've done 
12802         `cd $srcdir'.  Also use `test -f' instead of less portable
12803         `test -e'.
12804
12805 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12806
12807         * gtk/gtktext.c (correct_cache_insert): Rewrite
12808          for simplicity, and hopefully correctness.
12809          (Fixes bug #1322, which was a segfault when
12810           on some insertions with the properties around
12811           the insertion set up just wrong.)
12812
12813         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12814          a "changed" signal, clamp the new value to the adjustment
12815          bounds to avoid segfaulting if someone tries to change
12816          the adjustment to a bogus value. (Bug #1795)
12817
12818 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12819
12820         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12821         for children, for toplevel windows handle them
12822         like delete_event.
12823
12824         * gtk/gtkplug.c: Add an unrealize handler so that
12825         we unref plug->socket_window when we are done
12826         with it.
12827
12828 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12829
12830         * gtk/gtktext.c (clear_area): Fix stupid signedness
12831          problem that was causing background to sometimes
12832          be misaligned.
12833
12834 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12835
12836         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12837         
12838         * gtk/gtkmenu.c (gtk_menu_position): Make
12839          sure we never position menus with negative x, y,
12840          since gtk_widget_set_uposition() can't handle that.
12841
12842         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12843          Modify the positioning code a bit so that we always
12844          put the top-left corner onscreen. (This is for
12845          UI reasons, gtk_menu_position() now takes care of
12846          gtk_widet_set_uposition() brokeness.)
12847
12848 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12849
12850         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12851
12852 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12853
12854         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12855           RC style that is passed in. The lack of the ref
12856           before was a bug. If people worked around this
12857           bug, this will introduce a slight memory leak
12858           in their code. The code should typically look like:
12859
12860             rc_style = gtk_rc_style_new ();
12861             [...]
12862             gtk_widget_modify_style (widget, rc_style);
12863             gtk_rc_style_unref (rc_style);
12864
12865         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12866           the style if it was already set.
12867
12868         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12869           style if it was set before.
12870
12871 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12872
12873         * gtk/testgtk.c (main): Add a check to see if we
12874           are being run from the correct directory and
12875           to quit nicely if we are not.
12876
12877         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12878           static.
12879
12880 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12881
12882         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12883
12884         * gtk/gtkwindow.c:
12885         queue resizes unconditionally (gtk_widget_queue_resize will figure
12886         what to do if the window is not realized).
12887         (gtk_window_move_resize): only recenter the window
12888         for GTK_WIN_POS_CENTER_ALWAYS.
12889         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12890         the same way as GTK_WIN_POS_CENTER.
12891
12892 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12893
12894         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12895         with (!(info->last_flags & GDK_HINT_POS)) instead of
12896         (!info->last_flags & GDK_HINT_POS).
12897
12898         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12899         new_height unconditionally, because we use these values even if
12900         !default_size_changed && !hints_changed.
12901         comented the (default_size_changed || hints_changed) case with
12902         respect to resize rejects from the window manager.
12903
12904         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12905         in the zvt condition hack, since this includes the window hints, set
12906         the hints after the handling_resize case.
12907
12908         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12909         window is initially shown with to the geometry.
12910
12911 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12912
12913         * gtk/gtkwindow.c (gtk_window_move_resize):
12914         s/size_changed/default_size_changed/g so i know what's
12915         really going on (frying brain on smaller flame now).
12916
12917 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12918
12919         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12920         we have size_changed upon handling_resize. this is a gross
12921         workaround for the broken zvt widget and should be removed in
12922         1.3 again (search for FIXME).
12923         Owen provided an accurate comment for this:
12924
12925         /* We could be here for two reasons
12926          *  1) We coincidentally got a resize while handling
12927          *     another resize.
12928          *  2) Our computation of size_changed was completely
12929          *     screwed up, probably because one of our children
12930          *     is broken. It's probably a zvt widget.
12931          *
12932          * For 1), we could just go ahead and ask for the
12933          * new size right now, but doing that for 2)
12934          * might well be fighting the user (and can even
12935          * trigger a loop). Since we really don't want to
12936          * do that, we requeue a resize in hopes that
12937          * by the time it gets handled, the child has seen
12938          * the light and is willing to go along with the
12939          * new size. (this happens for the zvt widget, since
12940          * the size_allocate() above will have stored the
12941          * requisition corresponding to the new size in the
12942          * zvt widget)
12943          *
12944          * This doesn't buy us anything for 1), but it shouldn't
12945          * hurt us too badly, since it is what would have
12946          * happened if we had gotten the configure event before
12947          * the new size had been set.
12948          */
12949
12950 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12951
12952         * gtk/gtkrc.c: deal properly with the fact that RC
12953           style lists may include rc styles more than once.
12954
12955         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12956           unused static function.
12957
12958         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12959           stack of directories of RC files currently being
12960           parsed and implicitely add them to pixmap path.
12961           
12962           This fixes a bug where the directory would get
12963           appended then overwritten by pixmap_path declarations.
12964
12965           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12966
12967         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12968           theme's exit function. (Patch from Peter Wainwright,
12969           bug #1454)
12970
12971         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12972           Add a destroy() handler to take care of removing
12973           group for menu item. (Fixes bug #1197)
12974
12975         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12976           in warning message.
12977
12978 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12979
12980         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12981         roundtrip to figure window's width and height, since we know that
12982         anyways from widget->allocation.
12983
12984 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12985
12986         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12987           the hints after we request the new size.
12988
12989 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12990
12991         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12992           GTK_WIDGET_REALIZED() assertion - we can compute the
12993           hints before we are realized.
12994
12995         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12996           hint changing so that we have a value of hints_changed
12997           when we decide whether to constrain the window size.
12998
12999         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13000
13001         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13002         change back to G_MAXINT.
13003
13004 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13005
13006         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13007         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13008         contain uncluttered values.
13009         (gtk_window_compute_hints): simply assert that window is realized
13010         and that geometry_info is valid, since we rely on this anyways.
13011         (gtk_window_constrain_size): major cleanups to the code.
13012         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13013         for the base size, instead of the minimums. use 32767 as max width
13014         and height (like in gtkwindow.c) instead of G_MAXINT.
13015
13016 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13017
13018         * cleaned up the GtkContainer.need_resize flag handling mess, we
13019         only need to force resize requests when we were prematurely
13020         realized, or our widget tree was modified when we were temporarily
13021         hidden. handling these cases directly upon showing the window (i.e.
13022         while the GdkWindow is still unmapped) avoids the need to wait for
13023         a configure event response and therefore makes the GUI more snappier
13024         and avoids blank windows during the roundtrip.
13025
13026         * gtk/gtkwidget.c:
13027         (gtk_widget_hide): 
13028         (gtk_widget_show): don't queue resizes on toplevels, they know how
13029         to deal with matters.
13030
13031         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13032         flag directly for not visible resize containers and spare us unecessary
13033         signal emissions.
13034
13035         * gtk/gtkwindow.c:
13036         (gtk_window_realize): if we need to enforce premature size allocation,
13037         queue a container resize so we are correctly resized later on.
13038         (gtk_window_init):
13039         (gtk_window_size_request):
13040         don't freak around with the ->need_resize flag,
13041         gtk_container_queue_resize() will care about that.
13042         (gtk_window_show):
13043         handle initial resizing issues here, we can handle matters better in
13044         this place, especially since we know that our GdkWindow is still
13045         unmapped.
13046         (gtk_window_move_resize):
13047         don't care about ->need_resize at all.
13048         handle size changes properly that occoured while we waited for a
13049         configure event.
13050
13051 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13052
13053         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13054         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13055         Move the hint setting code from gtk_widget_set_uposition
13056         to here; set the hints so that we respect any previously
13057         set geometry hints.
13058
13059         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13060         change the window hints here or move the window here,
13061         let that happen in gtk_window_move_resize().
13062
13063 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13064
13065         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13066         to already queued resizes (and therefore redraws) on a widget, check
13067         its anchestry as well.
13068
13069         * gtk/gtkcontainer.c:
13070         (gtk_container_queue_resize): clear resize widgets for resize
13071         containers before aborting prematurely. this is especially important
13072         for toplevels which may need imemdiate processing or their resize
13073         handler to be queued.
13074         (gtk_container_dequeue_resize_handler): added new internal function for
13075         gtkwindow.c.
13076
13077         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13078         configure event, take possible changes in window position into account
13079         as well.
13080         if we request a new window size, queue up a resize handler that will
13081         last until the configure event response arrives.
13082         combined the ->need_resize case (initial show) with the general size
13083         (hints) changed case and added even more comments.
13084         if !auto_shrink, only revert to the old allocation if the new size
13085         is smaller than the current allocation.
13086
13087 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13088
13089         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13090                            gtk_window_set_geometry_hints
13091                            gtk_window_set_default_size):
13092         When hints are set, queue a resize so that the hints will
13093         be eventually reset on the toplevel.
13094
13095         * gtk/gtkwindow.c (gtk_window_show): Use
13096         gtk_window_compute_default_size(). Clear the need_resize flag
13097         on the initail map so that we don't unnecessarily trigger the
13098         resize code.
13099
13100         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13101         into separate functions. Compare the hints we are setting
13102         with what we set last time so that we can accurately
13103         tell when we need to reset the hints.
13104
13105         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13106         function to figure out the size from requisition
13107         and default_size.
13108
13109         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13110         from fvwm to constrain a size to the geometry hints.
13111
13112         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13113         to compare two sets of geometry hints.
13114
13115         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13116         from gtk_window_set_hints(), just compute the hints,
13117         don't set them.
13118
13119         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13120         code from gtk_window_move_resize() to separate function,
13121         rationalize a bit.
13122
13123 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13124
13125         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13126         structure into a new private structure.
13127
13128         * gtkrc.c: Split GtkRcStyle into public/private.
13129         In the private part, add a list of pointers to the
13130         RcStyle lists this RcStyle participates in.
13131
13132         * gtkrc.c: When a RcStyle is free, remove all
13133         lists referencing it from the 
13134         realized_style_ht hash, and free those lists.
13135         
13136         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13137         gtk_rc_init(), since that adds the default styles
13138         to the list of parsed RC files again.
13139
13140         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13141         
13142 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13143
13144         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13145         checks that ensure that a widget's allocation is at least 1 in width
13146         and height. (GNOME note: this doesn't affect old panel code anymore,
13147         because GtkSocket will request width and height of at least 1 since
13148         Fri Jul 23).
13149
13150         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13151         allocated yet (happens if the user realizes the window prematurely),
13152         size request and allocate it.
13153         (gtk_window_size_allocate): guard against guint underflows.
13154
13155 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13156
13157         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13158         in gtk_built_sources, so gtk.defs gets built prior to all other
13159         sources.
13160
13161 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13162
13163         * gtk/Makefile.am:
13164         invoke indent on gtkmarshal.*. 
13165         rewrote source generation rules, use COPYING as oldest source tag for
13166         a piggyback rule to generate all sources from (don't touch it ;).
13167         major cleanups, strip spaces on build rules for GNU Make.
13168
13169         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13170         source and target files from commandline arguments. don't invoke indent.
13171
13172 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13173
13174         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13175         notebook after switch to avoid drawing problems.
13176         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13177         
13178         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13179         show them instead. 
13180         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13181
13182 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13183
13184         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13185         notebook after switch to avoid drawing problems.
13186         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13187         
13188         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13189         show them instead. 
13190         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13191
13192 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13193
13194         * gtk/gtkwindow.c:
13195         we use window->need_resize from configure_event now, to indicate that
13196         the gtkwindow should keep its allocation (e.g. because the user resized
13197         the window through window manager handles). resize_count is now reliably
13198         used to figure whether we got the allocation we requested from the
13199         window manager.
13200         configure events get queued as resizes now, the real stuff (size
13201         computation and allocation) now only goes on in gtk_window_move_resize().
13202         GtkWindow's requisition now contains its *real* requisition (like all
13203         other widgets), *not* taking usize into account.
13204         geometry_info->last_{width|height} is now updated from set_hints() only
13205         so it always contains the last hints we set for the window manager.
13206         made some event handlers return TRUE instead of FALSE.
13207         the overall code should be much more straight forward now, and the
13208         significant code portions are accompanied by comments now.
13209         (gtk_window_set_hints):
13210         removed requisition argument and made it
13211         fetch the requisition through gtk_widget_get_child_requisition.
13212         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13213         does that now.
13214         (gtk_window_show):
13215         ensure that the widget is realized before calling 
13216         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13217         ensure that we got properly size requested and allocated before
13218         realization.
13219         (gtk_window_configure_event):
13220         ignore plain window moves, or reallocate the widget tree through the
13221         resize queue otherwise.
13222         (gtk_window_move_resize):
13223         mostly rewrote this function to figure window manager hints more
13224         reliably, coalesce window moves and resizes to reduce configure events
13225         and do actuall size allocations.
13226
13227 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13228
13229         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13230         that have a resize pending, because a redraw is already queued for them.
13231
13232         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13233         hack to clear resize_widgets.
13234
13235         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13236         for resize containers prior to size allocation. (this is also a bit
13237         ugly, but avoids side effects for stopped emissions and is thus more
13238         reliable).
13239         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13240
13241         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13242         function from gtk_tooltips_expose, as we connect to ::expose_event
13243         *and* ::draw now.
13244
13245 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13246
13247         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13248         checks.
13249         (gtk_target_list_unref): Likewise.
13250
13251         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13252
13253 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13256         guard against division by zero. (Fixes bug #1339)
13257
13258 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13259
13260         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13261         Prevent the trivial leak of information of allowing
13262         word motion when the entry is not visible.
13263
13264 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13265
13266         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13267         modality to error dialog as well as confirmation dialogs.
13268         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13269
13270 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13271
13272         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13273         tree->view_lines.
13274         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13275
13276         * gtk/Makefile.am (install-data-local): Solaris apparently
13277         has various troubles with ln -f; use rm first instead.
13278         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13279
13280 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13281
13282         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13283         use `cp' followed by `rm' (the `rm' was already there).
13284
13285 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13286         
13287         * configure.in: Fix autoconf warnings about cross compilation by
13288         trying to provide sane defaults for AC_TRY_RUN.
13289         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13290         put them into $(srcdir) when generated. Also add a dependency of
13291         gtksignal.h on gtkmarshal.h for -j builds. 
13292         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13293
13294 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13295
13296         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13297         GDK_THREADS_{LEAVE,ENTER} pair.
13298         (From Paul Fisher <pnfisher@redhat.com>)
13299
13300 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13301
13302         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13303         width and height are always >0 (owen).
13304
13305 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13306
13307         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13308         change that assured that a widget's allocated with and height are
13309         always >1, since this breaks *buggy* panel code. unfortunately this
13310         back-breaks the gimp's color selector.
13311
13312         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13313         allocation is always >0 in width and height, before sending the
13314         configure event; this is a *gross* hack to get the gimp back to work.
13315         
13316         * marked both cases with TODO-1.3
13317
13318 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13319
13320         * gtk/gtktext.c: Don't display wrap indicators when
13321         text is not editable and word wrap is on.
13322
13323 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13324
13325         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13326         option menus here as they are not derived from menu shell, assure that
13327         the option menu has a menu we can add items to.
13328
13329 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13330
13331         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13332         width/height to (gint) before calculations and check against < 0 to
13333         avoid guint wraparounds.
13334
13335 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13336
13337         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13338         width and height is never zero. sanity check both dimensions against
13339         32767 and issue a warning if the allocation is greater than that.
13340
13341 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13342
13343         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13344         to g_main_pending() as well.
13345
13346 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13347
13348         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13349         call to g_main_iteration() - since that will regrab
13350         GTK+ lock to process events.
13351
13352 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13353
13354         * gtk/gtkwindow.c
13355         - Regularize with the rest of GTK+ by making widget->requisition
13356           not reflect the set_usize()
13357         - Always recompute geometry hints, then check if they
13358           changed before sending them to the X server. The
13359           previous checks for changes would fail in a number
13360           of circumstances. 
13361
13362 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13363
13364         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13365
13366 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13367
13368         * gtk/gtkdnd.c:
13369         - Code cleanups
13370         - Instantaneously update on modifier key presses
13371         - Allow cancellation of the drag with Escape.
13372
13373 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13374
13375         * gtk/testgtk.c (create_handle_box): Set the policy
13376         to auto_shrink - otherwise the appearance is rather
13377         strange when flipping between horizontal and vertical.
13378
13379 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13380
13381         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13382         (gtk_window_set_default_size): don't change a value if it's < 0.
13383         queue a resize.
13384
13385 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13386
13387         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13388
13389 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13390
13391         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13392         add an extra "/" when concating "/" + filename.
13393         (From Matt Grossman <mattg@oz.net>)
13394
13395 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13396
13397         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13398         for fg_gc if we set it for drawing pixmap.
13399
13400 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13401
13402         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13403         
13404         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13405         already set, call old engine's destroy function and
13406         unref the old engine.
13407
13408 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13409
13410         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13411
13412 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13413
13414         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13415
13416 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13417
13418         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13419         expand behaviour changed.
13420
13421         * gtk/gtklabel.c (gtk_label_set_pattern):
13422         (gtk_label_set_justify):
13423         (gtk_label_set_line_wrap):
13424         don't bother invoking queue_clear, the reallocation does
13425         that for us, always free_words so the upcoming resize will
13426         relayout the label's contents.
13427
13428 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13429
13430         * applied argument implementation patches from Elena Devdariani
13431         <elena@cogent.ca>.
13432
13433         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13434         ::space_style, ::relief
13435         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13436         * gtk/gtkpreview.c: ::expand
13437         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13438         * gtk/gtknotebook.c: ::homogeneous
13439         * gtk/gtklabel.c: ::wrap
13440         * gtk/gtklist.c: ::selection_mode
13441         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13442         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13443         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13444         * gtk/gtkclist.c: ::sort_type
13445         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13446         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13447
13448 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13449
13450         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13451         comment.
13452
13453 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13454
13455         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13456         counting right when we have to attach a new style
13457         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13458
13459         * gtk/gtkstyle.c: Documented the refcounting
13460         peculularities of gtk_style_attach.
13461
13462 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13463
13464         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13465         window types.
13466
13467         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13468         of GTK_TOPLEVEL for creating the window.
13469
13470 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13471
13472         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13473         the last argument (reported by Per Winkvist).
13474         
13475 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13476
13477         Fixes for invisible XOR lines (Frank Loemker
13478         <floemker@TechFak.Uni-Bielefeld.DE>)
13479         
13480         * gtk/gtkclist.c (gtk_clist_realize): Always use
13481         a non-zero pixel for GDK_XOR.
13482
13483         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13484         Use GDK_INVERT instead of GDK_XOR.
13485
13486 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13487
13488         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13489         signals if h/voffsets differ from adjustment values.
13490         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13491
13492 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13493
13494         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13495         ::selection-done emissions up to the topmost menu shell.
13496
13497 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13498
13499         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13500         the user data on the window before destroying it.
13501
13502         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13503         unrealize handler to take care of destroying 
13504         notebook->panel properly. 
13505         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13506
13507         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13508         of g_new and g_realloc to stop memory leak. (Actually,
13509         we could just use g_realloc(), but I'm not 100% sure
13510         that is portable).
13511         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13512
13513 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13514
13515         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13516
13517         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13518         for fontsets.
13519
13520         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13521         with bin/button confusion.
13522
13523 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13524
13525         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13526         and show how preselection of radio items is done.
13527
13528 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13529
13530         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13531         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13532         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13533         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13534         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13535         * gtk/gtktable.c (gtk_table_attach): 
13536         * gtk/gtklist.c (gtk_list_insert_items): 
13537         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13538         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13539         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13540         * gtk/gtkbin.c (gtk_bin_add): 
13541         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13542         * gtk/gtkfixed.c (gtk_fixed_put): 
13543         * gtk/gtklayout.c (gtk_layout_put):
13544         general fixups to container_add logic. always realize child if
13545         child->parent is realized, only map the child and queue a resize
13546         if child and child->parent are both visible.
13547
13548 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13549
13550         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13551         instead of gtk_container_foreach to walk and unrealize children, so
13552         composite children get also unrealized.
13553         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13554         (gtk_widget_map): assert that the widget is visible (basic constrain).
13555         (gtk_widget_real_map): assert that the widget is realized (basic
13556         constrain).
13557
13558 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13559
13560         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13561
13562 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13563
13564         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13565         file for iso-8859-2 locales.
13566
13567         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13568
13569 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13570
13571         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13572          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13573          Remove some suspicious and useless lines. 
13574
13575 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13576
13577         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13578         width,height = 0, 0 to mean - here to edge of window,
13579         instead of -1, -1, since the former is all we support.
13580
13581 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13582
13583         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13584         when removing from quit_functions list.
13585
13586 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13587
13588         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13589
13590 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13591
13592         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13593          When redrawing characters on non-visible entry, use appropriate
13594          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13595
13596 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13597
13598         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13599         from drag coordinates.
13600         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13601         use drag_dest_cell.
13602
13603         * gtk/gtktree (drag_dest_cell)
13604         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13605         (Bug #1129)
13606
13607 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13608
13609         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13610         translate_* fields.
13611         (gtk_item_factory_finalize): invoke translate_notify independant from
13612         translate_data.
13613         (gtk_item_factory_set_translate_func): likewise.
13614         (gtk_item_factory_destroy): only remove ifactory pointer from those
13615         widgets that belong to us (stupid me).
13616
13617 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13618
13619         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13620         rc_style list when lookup succeeeds.
13621
13622 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13623
13624         * gtk/gtkctree.c (resync_selection): 
13625         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13626         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13627         bug.
13628
13629 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13630
13631         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13632         Add some missing GDK_THREADS_ENTER()/LEAVE around
13633         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13634
13635 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13636
13637         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13638         rather than emit_by_name.
13639
13640         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13641         on the widget across multiple signal emissions.
13642         (gtk_editable_delete_text): same here.
13643         (gtk_editable_class_init): set widget_class->activate_signal after
13644         editable_signals[ACTIVATE] has been created.
13645
13646 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13647
13648         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13649         position here prematurely -- we might not have the
13650         right ->min_position and ->max_position yet.
13651
13652 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13653
13654         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13655         Add error traps so if the other end of the connection
13656         dies, we survive.
13657
13658         * gtk/gtkselection.c (gtk_selection_notify): Clean
13659         up properly when selection property retrieval fails.
13660         
13661         * gtk/gtkselection.c (gtk_selection_request): Correctly
13662         reject SelectionRequest notifies where the handler
13663         returns no data.
13664
13665 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13666
13667         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13668         when we've previously highlighted.
13669
13670         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13671         emit two "drag_leave" signals for Motif drops.
13672
13673         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13674         back the correct status messages when dropping from
13675         Motif onto a proxy window that is rejecting the
13676         drop.
13677
13678 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13679
13680         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13681         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13682         to compare two argument values. added gtk_arg_to_valueloc() to set a
13683         variable from an arg through its location (pointer).
13684
13685         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13686         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13687         as gfloat*, uchars are collected as guchar*, ints are collected as
13688         gint*, etc...
13689
13690 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13691
13692         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13693         Include <string.h> instead of <strings.h>.
13694
13695         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13696         (actually, a lot more duplicate includes occur if
13697          you trace through the sequence of #include's)
13698         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13699         
13700 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13701
13702         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13703         gtk-a-higuti-990322-[0-3]
13704
13705         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13706         that was causing -DX_LOCALE not to work.
13707
13708         * gtk/gtkrc.c (gtk_rc_init):
13709         X_LOCALE will never have LC_MESSAGES defined
13710
13711 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13712
13713         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13714         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13715
13716         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13717         left/right as well (gtk-michael-980726-0.patch.gz).
13718
13719         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13720         for pointer values, use gchar instead of char. fixed uline allocation
13721         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13722         chunks instead of G_ALLOC_ONLY.
13723         (gtk_label_size_request): always alter requisition as passed and leave
13724         widget->requisition alone.
13725         (gtk_label_set_text): allow NULL strings.
13726         (gtk_label_new): likewise.
13727
13728 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13729
13730         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13731
13732 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13733
13734         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13735         *and* mapped (i.e. drawable).
13736         (gtk_bin_expose): only send exposes to drawable children.
13737
13738         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13739         (gtk_box_expose): only send exposes to drawable children.
13740
13741         * gtk/gtkhscale.c (gtk_hscale_draw): 
13742         * gtk/gtkvscale.c (gtk_vscale_draw):
13743         hm, this is an ugly one. we first compute the size of our trough area
13744         here (window relative) and then check intersection with the draw_area
13745         which is parent relative because we're a NO_WINDOW widget, so we need
13746         to offset the trough area by allocation.x and allocation.y before the
13747         check. (this must not be done for the background area though, since
13748         that's already computed parent relative).
13749
13750 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13751
13752         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13753         unrealize title buttons.
13754
13755 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13756
13757         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13758         (gtk_clist_column_title_active): 
13759         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13760
13761         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13762         zero initialize event, removed superfluous gdk_window_get_pointer call
13763
13764         * gtk/gtklist.c (gtk_list_vertical_timeout)
13765         (gtk_list_horizontal_timeout): removed superfluous
13766         gdk_window_get_pointer call
13767
13768 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13769
13770         * plugging problems reported by "Bruce Mitchener, Jr."
13771         <bruce@puremagic.com> due to a purify session.
13772
13773         * gtk/gtkstyle.c:
13774         (gtk_style_ref): 
13775         (gtk_style_unref): assert ref_count to be > 0.
13776
13777         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13778         the requisition.
13779         (gtk_clist_set_shift): likewise.
13780
13781         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13782         adjustments.
13783
13784         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13785         event before sending it and set send_event to TRUE (which needs to
13786         be done for *all* synthesized events).
13787         (gtk_list_vertical_timeout): likewise.
13788
13789         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13790         leaks.
13791
13792         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13793         to TRUE when synthesizing events.
13794
13795 [ *** end of merges from 1.2 *** ]      
13796         
13797 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13798
13799         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13800         (or copied from gdkconfig.h.win32 on Win32, sigh).
13801
13802         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13803
13804         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13805
13806         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13807
13808         * gdk/gdkconfig.h.win32: New file.
13809
13810         * gdk/win32/makefile.cygwin: Build just a static archive here.
13811
13812         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13813         for the DLL from the static archive built above.
13814
13815         * gdk/gdk.def: Moved here from the win32 subdirectory.
13816
13817         * gdk/win32/*: Adapt for the changed private struct organisation.
13818
13819         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13820
13821 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13822
13823         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13824         for wheel mice (buttons 4 and 5).
13825
13826 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13827
13828         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13829         drawables use just the pixel field in the foreground and
13830         background GdkColor of the GdkGC.
13831
13832         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13833         GdkColors containing uninitialized (red,green,blue) fields, and
13834         just the pixel field filled in, and furthermore in the
13835         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13836         It thus turns out that we really don't need to have the full
13837         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13838         it later to have just the pixel values.
13839
13840 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13841
13842         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13843
13844 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13845
13846         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13847         New question on GtkLabel background colors.
13848
13849         * docs/gtk_tut.sgml:
13850           - Correct the example code callback
13851             function definitions.
13852           - Update the gtkdial example code, from Frans van Schaik.
13853           - Update setselection.c to current API.
13854
13855         * examples/Makefile examples/*/*.c: Update to code
13856         listed in tutorial.
13857
13858 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13859
13860         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13861         subrange table (from the "Developing International Software for
13862         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13863         block... Get the loaded font's charset correctly.
13864
13865         (Note that this, and the other *-win32.c files, still really are
13866         the old ones, the win32 subdirectory is not ready for compilation
13867         yet after the reorg.)
13868
13869 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13870
13871         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13872         check.
13873
13874 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13875
13876         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13877         on results of XQueryDeviceState().
13878
13879 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13880
13881         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13882         we need to accesss only ->children. We need an accessor
13883         for the children.
13884
13885         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13886         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13887         to get rid of gdkx.h include.
13888         
13889         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13890         and random references to 'None'.
13891
13892         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13893         Get rid of unused #include <gdk/gdkx.h>
13894
13895         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13896         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13897         gdkconfig.h.
13898
13899 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13900
13901         * gdk/win32/gdkdraw.c
13902         * gdk/win32/gdkfont.c
13903         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13904         following yesterday's changes. (Unrelated to Owen's reorg.)
13905
13906 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13907
13908         * gdk/x11/gdkinput-gxi.c: Add missing include,
13909           fix GdkWindowPrivate => GdkDrawablePrivate.
13910
13911         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13912
13913         * gdk/x11/Makefile.am (xinput_sources): Add missing
13914         backslash to fix building with --with-xinput=none
13915
13916 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13917
13918         Move all X specific code into the x11/ directory.
13919         Aside from shuffling things around, did the following:
13920
13921        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13922          gdk_arg_context_* - a simple argument parsing system
13923          in the style of popt.
13924
13925        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13926          gdk/x11/gdkprivate-x11.h:
13927          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13928          add ->klass and ->klass_data fields. The klass_data
13929          field points to an auxilliary structure that is
13930          windowing system dependent.
13931
13932        * gdk/gdkfont.c: Make most of the measurement functions
13933          simply wrappers around gdk_text_extents().
13934
13935        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13936          _gdk_font_strlen() function that hides the weird
13937          behavior in gtk+-1.[02] where a string is interpreted
13938          differently for 8-bit and 16-bit fonts.
13939
13940        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13941          to store common code for synthesizing double/triple
13942          press events.
13943         
13944        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13945          Make all the function that modify an existing GC
13946          simply wrappers around gdk_gc_set_values().
13947          
13948        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13949          for throwing out later.
13950
13951        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13952          GdkImagePrivate and GdkColormapPrivate to have a
13953          windowing system dependent part (GdkFontPrivateX etc.)
13954          that "derives" from the system-independent part.
13955
13956        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13957          Got rid of the included-source-files for XInput in
13958          favor of automake conditionals. (Which didn't exist
13959          when XInput support was originally added.)
13960
13961        * gdk/gdkrgb.c: Remove the visual id from the debugging
13962          statements since that is X11 specific; print out
13963          type/depth info instead.
13964          
13965
13966 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13967
13968         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13969         loading duplicates of hashed fonts.
13970
13971         * gdk/gdk.c (gdk_keysym_convert_case): rename
13972         gdk_XConvertCase to gdk_keysym_convert_case, allow
13973         results to be NULL in the GTK+ style.
13974
13975         * gdk/gdkcompat.h: Started compatibility header
13976         for renames.
13977
13978 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13979
13980         * gdk/win32/gdkprivate.h: New font private structures, related to
13981         fontsets.
13982
13983         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13984         gdk_font_list_free(). On X11, will just be wrappers to
13985         XListFonts() and XFreeFontNames(). On Win32, the code previously
13986         in gtkfontsel.c is now here.
13987
13988         New function gdk_font_xlfd_create(). On X11 will get the FONT
13989         property of the font (for GDK_FONT_FONTs), or call
13990         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13991         builds a XLFD style name from the font information in the LOGFONT
13992         struct(s).
13993
13994         New function gdk_font_xlfd_free(), which correspondingly frees the
13995         string returned by gdk_font_xlfd_create().
13996
13997         Implement fontsets on Win32. Add a function that iterates over a
13998         wide char string and calls a callback function for each substring
13999         of wide chars from the same Unicode subrange (and thus probably
14000         available in the same real font).
14001
14002         Improve the XLFD emulation a bit.
14003
14004         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14005
14006         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14007         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14008         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14009         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14010         ImmGetCompositionStringW() to get the composed Unicode chars.
14011
14012         * gdk/win32/gdkgc.c
14013         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14014         struct changes.
14015
14016         * gdk/win32/gdk.def: Add the new functions.
14017
14018 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14019
14020         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14021         get the Platform SDK to get <dimm.h>.
14022
14023         * gdk/win32/gdkevents.c: More event handling fixes and
14024         simplification. Never generate motion events with is_hint true. We
14025         used to do that on bogus grounds earlier. Windows sends
14026         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14027         moved, ignore these.
14028
14029         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14030
14031         * gdk/win32/gdkglobals.c
14032         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14033         the TrackMouseEvent function, and use it.
14034
14035         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14036         char before calling WideCharToMultiByte in order to get a string
14037         for the window title.
14038
14039         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14040
14041         * gdk/win32/gdk.def: Remove obsolete functions.
14042
14043         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14044         /nodefaultlib and /defaultlib switches.
14045
14046         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14047
14048 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14049
14050         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14051         EuroSign).
14052
14053         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14054         same type as GdkWChar, especially on Win32.
14055
14056         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14057
14058         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14059         before passing to Windows GDI for drawing etc. Convert to the
14060         system default codepage before passing to Windows as window
14061         titles.
14062
14063         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14064         support changing input locale on the fly.
14065
14066         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14067         on-the-fly changes. Convert incoming characters from the current
14068         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14069         on the current input language. Use keysym<->Unicode mapping tables
14070         and functions borrowed from xterm sources.
14071
14072         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14073         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14074         Manager) if available. IMEs and the Active IMM are available under
14075         the disguise of Chinese, Korean and Japanese support for IE and
14076         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14077         support is present in all editions (as long as you install it).
14078
14079         Call DispatchMessage from gdk_events_queue() (and thus
14080         gdk_WindowProc()), instead of duplicating the code in
14081         gdk_WindowProc().
14082
14083         Reworked the grab handling and propagation code, factored out
14084         duplicated code snippets into separate functions. Other cleanups,
14085         too.
14086
14087         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14088         the <dimm.h> header describing the Active IMM.
14089
14090         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14091         just do the same as for "single" fonts.
14092
14093         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14094         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14095         the new keysyms from gdkkeysyms.h.
14096
14097         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14098         fontset, so that gtkentry uses wide characters.
14099
14100         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14101         GTk+'s system directory "gtk+", not "gtk".
14102
14103 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14104
14105         * docs/gtkfaq.sgml: FAQ update
14106
14107 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14108
14109         * gdk/win32/gdkprivate.h: Add more font private data.
14110
14111         * gdk/win32/gdkfont.c
14112         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14113         fonts and strings. Now works much better. You still have to
14114         have a correct font selected, though. No fontset emulation yet.
14115
14116 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14117
14118         * gtk/maketypes.awk: Use G_OS_WIN32.
14119
14120         * gtk/gtk.def: Add some missing entry points. Also some non-public
14121         ones, but PyGTK porter claims to need them.
14122
14123         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14124         built-in type generation.
14125
14126 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14127
14128         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14129         GDK_FONT_FONT fonts (which is all we have for now, we don't
14130         emulate fontsets). The X11 version uses plain XDrawString in that
14131         case, too. The string passed to gdk_draw_text_wc seems to be in
14132         fact (at least, when used by gtkentry and gtktext) either in a
14133         single-byte charset, or a DBCS. Not Unicode.
14134
14135         This fixes the problem in gtkfontsel, where even if you had
14136         selected a font with a non-Latin1 charset (windows-greek, for
14137         instance), the preview still used Latin-1 glyphs.
14138
14139         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14140         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14141         (gdk_font_load): Recognize the demibold etc weights, even if we
14142         don't have the corresponding constants in the headers.
14143         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14144         version. Should save font resources a bit, when we don't have
14145         multiple HFONTs for the same font.
14146
14147         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14148         version.
14149
14150 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14151
14152         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14153         X values
14154
14155 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14156
14157         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14158         layout support (as mentioned on
14159         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14160
14161 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14162
14163         * gtk/fnmatch.c
14164         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14165
14166 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14167
14168         * configure.in (ALL_LINGUAS): Added Galician (gl)
14169
14170 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14171
14172         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14173
14174         * gdk/win32/gdkcompat.c: New file, actually provide an
14175         implementation for the deprecated functions. (Just temporarily.)
14176
14177         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14178
14179         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14180
14181         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14182
14183 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14184
14185         * configure.in: Added "uk" to ALL_LINGUAS.
14186         
14187 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14188
14189         * configure.in: correct checking for BeOS check
14190
14191         * gdk/gdktypes.h
14192         * gtk/fnmatch.c
14193         * gtk/gtkfilesel.c
14194         * gtk/gtkitemfactory.c
14195         * gtk/gtkmain.[ch]
14196         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14197
14198 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14199
14200         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14201         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14202         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14203         by Bulgarian). 
14204
14205 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14206
14207         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14208         Fix a reference to window_private->destroyed.   
14209
14210         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14211         (ugly) setting of an internal GdkWindow member to use
14212         a _slightly_ cleaner macro.
14213
14214         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14215         GdkDrawablePrivate and GdkWindowPrivate.
14216         Add extra macros for accessing GDK_DRAWABLE_ components.
14217
14218         * *.[ch]: Massive adjustments for the above, use the
14219         new macros in a lot of places.
14220
14221 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14222
14223         * gdk/gdktypes.h: Make GdkDrawable the base type,
14224         not GdkWindow.
14225
14226 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14227
14228         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14229
14230 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14231
14232         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14233
14234 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14235
14236         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14237         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14238
14239         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14240
14241         * docs/gtk-config.1: Now autogenerated.
14242         * docs/Changes-1.4.txt: started
14243         
14244 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14245
14246         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14247         to #ifdef also here.
14248
14249         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14250         Owen did to the X11 backend.
14251
14252         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14253         ScrollWindowEx when blitting inside a window, it can't be correct
14254         in the general case.
14255
14256         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14257         WM_GETMINMAXINFO is easier.
14258
14259         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14260         depth equal to the bitspixel value, not the visual's depth.
14261
14262         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14263         to 24 even if the bitspixel value is 32.
14264
14265         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14266         need to check for depth==32 when bpp==32, depth will always be 24.
14267
14268 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14269
14270         * docs/Changes-1.4.txt: Started
14271         
14272         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14273
14274         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14275         
14276         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14277         into C file.
14278         
14279         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14280         header to gdkinputprivate.h.
14281
14282         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14283         unused since before 1.2.
14284
14285 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14286
14287         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14288         expand possible hex escapes in the font family (put there by
14289         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14290         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14291         On Win32, add hex escapes here, too.
14292
14293 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14294
14295         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14296         to #ifdef GDK_WINDOWING_X11.
14297
14298 [ Merges from gtk-1-2 ]
14299
14300 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14301
14302         * configure.in: fixed "GNU Make" check to pass with new make version
14303         3.77.95.
14304
14305 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14306
14307         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14308         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14309         AM_PATH_GTK() macros don't get confused by the -pre1.
14310
14311 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14312
14313         * configure.in (REBUILD): Change check for perl5
14314           to check explicitely for v >= 5.002. (5.001
14315           does not work with our scripts.)
14316
14317 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14318
14319         * configure.in: evaluate $PERL for the perl version check. added
14320         --disable-rebuilds to give the user an option to completely disable
14321         any source autogeneration rules.
14322
14323 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14324
14325         * configure.in: evaluate $ac_make when checking for GNU Make.
14326
14327 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14328
14329         * docs/Makefile.am: added generation.txt.
14330
14331         * Makefile.am: require automake 1.4, build README from README.in and
14332         INSTALL from INSTALL.in in dist-hook.
14333         
14334         * README.in:
14335         * INSTALL.in: new files to autogenerate README and INSTALL from.
14336
14337         * configure.in: figure whether we have GNU Make
14338
14339         * docs/generation.txt: minor additions/corrections.
14340
14341 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14342
14343         * docs/gtkfaq.sgml: FAQ Update
14344
14345 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14346         
14347         * configure.in: Fix autoconf warnings about cross compilation by
14348         trying to provide sane defaults for AC_TRY_RUN.
14349
14350 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14351
14352         * ltconfig
14353         * ltmain.sh: upgrade to libtool 1.3.3
14354
14355 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14356
14357         * INSTALL: Indicate that the --with-glib= configure
14358         time flag is unsupported.
14359
14360 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14361
14362         * docs/generation.txt: Added a file that gives
14363         documenation about the autogeneration process for
14364         various autogenerated files.
14365         
14366 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14367
14368         * configure.in (LIBS): Look for libgmodule in the
14369         right location.
14370
14371 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14372
14373         * docs/gtk_tut.sgml: Removed references to
14374         code examples in my directory on gtk.org as
14375         they should all be in the tutorial now.
14376
14377         * docs/gtk_tut.sgml: Added sources for dial-test
14378         and scribble-xinput programs that were previously
14379         missing.
14380
14381 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14382
14383         * TODO: Added entry about menu keyboard navigation, removed
14384         some finished items.
14385
14386 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14387
14388         * acinclude.m4: Standardize on func_dgettext
14389         not func_gettext, so that the checks for dgettext
14390         actually are paid attention to.
14391
14392 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14393
14394         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14395         directly, rather than repeating the checks for
14396         gettext.
14397
14398         * INSTALL: Added information about gettext and
14399         NLS support.
14400
14401         * acinclude.m4 (LIBM): Check for dgettext, not
14402         just gettext. This should hopefully fix things wrt
14403         systems with old versions of GNU gettext installed.
14404
14405 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14406
14407         * configure.in (LIBS): Look for libgmodule in the
14408         right location.
14409
14410 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14411
14412         * autogen.sh: add --enable-maintainer-mode
14413
14414         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14415
14416 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14417
14418         * docs/gtk-config.1.in:
14419           docs/Makefile.am:
14420           configure.in: gtk-config is now generated.
14421
14422         * docs/gtk-config.1: Removed, now generated.
14423
14424 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14425
14426         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14427         handle CreateNotify itself, still put out a debuging message for
14428         --gdk-debug=events. made the ReparentNotify debugging message more
14429         verbose.
14430         wrap xcoords translation for ConfigureEvents into an error trap,
14431         a destroy event may already be pending, and in that case, the
14432         actuall coordinate values are not at all critical.
14433
14434 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14435
14436         * gdk/gdkcc.c: Stop leaking the color_hash all over
14437         the place. Simplify and improve the logic.
14438
14439 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14440
14441         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14442         for prototypes and function implementations consistent (reported
14443         by Tomas Ogren).
14444
14445 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14446
14447         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14448         send_event set in debugging output.
14449         (gdk_compress_exposures): default initialize the event so we don't
14450         operate on bogus values (namely send_event).
14451
14452 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14453
14454         * gdk/gdkwindow.c: When we receive an unexpected
14455         destroy notify on one of our windows, don't just
14456         warn about it, also mark our windows as destroyed.
14457
14458 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14459
14460         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14461           name => font and name => fontset hashes. The 
14462           name => fontset hash is a _big_ win since we
14463           weren't previously caching fontsets at all and loading
14464           fontsets is expensive. The name => font hash
14465           is less of a win, but it does save us from doing
14466           repeated XQueryFont calls on the same font.
14467
14468         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14469           list so we can remove font/fontset from hash.
14470
14471 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14472
14473         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14474           and slightly confusing test. [ XInternAtom (,,TRUE)
14475           will never return None ].
14476
14477 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14478
14479         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14480           gdk/gdkwindow.c (gdk_window_set_hints):
14481
14482         Don't omit setting the properties if flags == 0 -
14483         there may be an existing set of properties there
14484         already. (Very old bug. Would it be better to
14485         delete the property instead?)
14486
14487         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14488           spelling error in comment.
14489
14490 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14491
14492         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14493           to avoid stomping over gdk_error_warnings.
14494
14495         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14496           as (bits_per_pixel + 7) / 8. This gives the same
14497           result as before for multiples of 8, but actually
14498           a "reasonable" value for 1bit or 4bit displays.
14499
14500 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14501
14502         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14503         GNU Make.
14504
14505 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14506
14507         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14508         discarding configure events.
14509
14510 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14511
14512         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14513         refcount is greater than zero.
14514
14515         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14516
14517         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14518
14519         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14520
14521         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14522
14523 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14524
14525         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14526         that format 32 => sizeof(item) == 4. It really is
14527         sizeof(long).
14528
14529 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14530
14531         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14532         core dump at all on X IO errors, only core dump
14533         if --enable-debug for X errors.
14534
14535 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14536
14537         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14538         unknown window:" message. disabled ConfigureNotify discarding code,
14539         because it led to events being processed out of order.
14540
14541 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14542
14543         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14544
14545         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14546         we export this function, supress error warnings and don't reset the
14547         error code in the first half of this function.
14548
14549         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14550         code (instead of just -1) so gdk_error_trap_pop() reveals something
14551         actually informative about the error that happened.
14552
14553         * gdk/*.c:
14554         don't rely on gdk_error_code being -1 if an error occoured, but just
14555         gdk_error_code != 0.
14556
14557 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14558
14559         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14560         pointer *before* invoking the filter function, so we at least don't
14561         crash if a filter is removed that is currently executed. window filters
14562         *really* need to be made truely reentrant at some point.
14563
14564 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14565
14566         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14567         PropertyNotify debug messages.
14568
14569 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14570         
14571         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14572         
14573         * gdk/gdkim.c: Fix cut-and-paste errors for 
14574         x/y and PreeditAttributes/StatusAttributes.
14575
14576 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14577
14578         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14579         G_MAXINT to 2^16 to alleviate overflow problems in
14580         various window managers.
14581
14582 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14583
14584         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14585         for fontsets.
14586
14587 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14588
14589         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14590         Initialize size_hints.x and size_hints.y because kwm
14591         brokenly pays attention to them.
14592         (Bug #1181 -  Lars Heete <hel@admin.de>)
14593
14594 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14595
14596         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14597         return value of gdk_list_visuals(). 
14598         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14599
14600 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14601
14602         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14603         XSetIMValues to (void *) when comparing to NULL, to workaround
14604         the problem of some compilers barfing since older X headers don't
14605         have the prototype for it.
14606
14607 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14608
14609         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14610         for pseudocolor where colormap->colors was double
14611         allocated.
14612
14613         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14614         color value in the hash table with the pixel filled
14615         in so when we do later hash table lookups, the color
14616         value is correct.
14617         
14618 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14619
14620         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14621         making the call
14622
14623 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14624
14625         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14626         pointed out by Morten Welinder <terra@diku.dk>.
14627
14628 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14629
14630         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14631           default filter from the list
14632
14633 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14634
14635         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14636           default filter from the list
14637
14638 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14639
14640         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14641
14642         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14643         g_strdup_printf instead of calcing the length separately
14644
14645 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14646
14647         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14648         that we don't do in many other places. (Fixing duplicate 
14649         #include of config.h)
14650
14651         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14652         Otherwise, #ifndef XINPUT_NONE check in the latter
14653         doesn't work. (Bug #546)
14654
14655 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14656
14657         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14658         "None" case insensitive.
14659
14660 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14661
14662         * gdk/gdkselection.c: 
14663         Add error traps so if the other end of the connection
14664         dies, we survive.
14665
14666 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14667
14668         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14669         dest_xid field into two fields - one for the window
14670         to send in messages, one to indicate the last looked
14671         up window for caching purposes. This is needed, so
14672         that Leave messages get the correct window.
14673
14674 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14675
14676         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14677         Fix warning created by people mucking around
14678         with the gsource API.
14679
14680         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14681         Change mapping between GIOCondition and GdkInputCondition
14682         to match the way the Linux kernel does it. This should
14683         fix problems where closed pipes were no longer signalling
14684         GDK_INPUT_READ on systems with a native poll().
14685
14686 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14687
14688         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14689         explicitly for the string "None" - it is in the XPM
14690         spec and some servers treat unknown colors in odd ways
14691         (like asking the user!)
14692
14693 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14694
14695         * gdk/gdkevents.c: made "->" into a "." of previous change so
14696         it compiles
14697
14698 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14699
14700         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14701         window field of the event structure before calling
14702         user filters.
14703
14704 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14705
14706         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14707         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14708
14709 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14710
14711         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14712         intermediate text property - prevents major memory
14713         leak when gdk_use_mb.
14714         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14715
14716 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14717
14718         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14719         gtk-a-higuti-990322-[0-3]
14720
14721         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14722         sizeof(wchar_t) != sizeof (GdkWChar)
14723
14724         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14725         that was causing -DX_LOCALE not to work.
14726
14727         * gtk/gtkrc.c (gtk_rc_init):
14728         X_LOCALE will never have LC_MESSAGES defined
14729
14730         * gdk/gdk.c (gdk_init_check):
14731         Remove --xim-preedit and --xim-status from argv properly.
14732
14733         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14734         that the client window is present on the X server
14735         before we pass it to the input method.
14736
14737 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14738
14739         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14740         if --display is specified on the command line, than
14741         the drag window will not be created on that display.
14742         
14743 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14744
14745         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14746         lookups with only_if_exists == TRUE were inserting
14747         bogus values into the atom cache.
14748
14749 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14750
14751         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14752         then reset it to NULL.
14753
14754         * gdk/gdkcolor.c:
14755         (gdk_colors_free): 
14756         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14757         key for g_hash_table_remove() in both functions, this prevents us
14758         from accessing possibly uninitialized portions of a GdkColor structure
14759         where we are only interested in its pixel value.
14760
14761 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14762
14763         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14764         font hash table, if we have a GdkFontPrivate entry for this font
14765         already, simply increment its reference count, provided by Olaf Dietsche
14766         <olaf.dietsche+list.gtk@netcologne.de>.
14767
14768 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14769
14770         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14771         just to be sure.
14772
14773         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14774         unused variables, leftovers from the X11 version.
14775
14776         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14777
14778         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14779         downcase fields on X11.
14780
14781 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14782         
14783         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14784         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14785
14786 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14787
14788         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14789
14790         * gtk/makefile.msc: Correct path to libintl.
14791
14792         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14793         use of gint vs. int, and gint vs. gboolean in headers and
14794         definitions. Use GtkType for the *_get_type functions. Note that
14795         these changes preserve binary compatibility.
14796
14797         * gdk/gdk.c
14798         * gdk/win32/gdk.c
14799         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14800
14801         * gtk/gtkmain.c
14802         * gtk/gtkclist.c
14803         * gtk/gtkmenufactory.c
14804         * gtk/gtknotebook.c
14805         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14806         vs. gboolean.
14807
14808         * gtk/gtkcolorsel.[ch]
14809         * gtk/gtkcombo.[ch]
14810         * gtk/gtkdrawingarea.[ch]
14811         * gtk/gtkgamma.[ch]
14812         * gtk/gtkhandlebox.[ch]
14813         * gtk/gtkhpaned.[ch]
14814         * gtk/gtkhruler.[ch]
14815         * gtk/gtkplug.[ch]
14816         * gtk/gtkpreview.[ch]
14817         * gtk/gtkruler.[ch]
14818         * gtk/gtksocket.[ch]
14819         * gtk/gtkstatusbar.[ch]
14820         * gtk/gtktoolbar.[ch]
14821         * gtk/gtkvbbox.[ch]
14822         * gtk/gtkvpaned.[ch]
14823         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14824         functions.
14825
14826         * gtk/gtkgamma.h: Fix bug, missing () in call of
14827         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14828
14829 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14830
14831         * gdk/gdkcolor.c (gdk_colormap_new)
14832         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14833         colormap->colors was allocated twice.
14834
14835         * gdk/win32/gdk.c: Remove some unused stuff.
14836
14837         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14838         colormap.
14839
14840         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14841         * gtk/gtklabel.h (gtk_label_get_type)
14842         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14843         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14844         in a couple of places, not guint.
14845
14846 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14847
14848         * configure.in,po/et.po: added Estonian language file
14849
14850 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14851
14852         * configure.in,po/da.po: added Danish file
14853
14854 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14855
14856         * docs/gtkfaq.sgml: Minor FAQ Update
14857
14858 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14859
14860         * docs/gtkfaq.sgml: FAQ update
14861
14862 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14863
14864         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14865         way to get window contents continually refreshed while resizing. I
14866         didn't like the effects myself, so it's not on by default.
14867
14868         * gdk/win32/gdkprivate.h: New flag variable
14869         gdk_event_func_from_window_proc, FALSE by default.
14870
14871         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14872         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14873         are passed --gdk-event-func-from-window-proc.
14874
14875         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14876         and we have am event_func, call it instead of enqueing the event.
14877
14878 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14879
14880         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14881         Kelley: Set expose_count in GdkEventExposes correctly.
14882
14883         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14884         MULTIPLE_WINDOW_CLASSES).
14885
14886         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14887         for bug in NT, apparently NT *does* draw the end pixel, too, in
14888         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14889
14890 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14891
14892         Improvements by Hans Breuer: 
14893
14894         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14895
14896         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14897         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14898         window contents while dragging" is turned on. Allocate at least
14899         one unique class for every GdkWindowType. If support for single
14900         window-specific icons is ever needed (eg. Dialog specific), every
14901         such window should get its own class.
14902
14903 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14904
14905         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14906         error that caused crashes.
14907
14908 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14909
14910         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14911         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14912         bugs when for instance part of the window was outside the
14913         display. Thanks to Philippe Colantoni for finding and fixing this.
14914
14915 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14916
14917         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14918         endpoint calculations which were totally wrong. (A little RTFMing
14919         helps a lot ;-)
14920
14921         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14922         from a separate directory, not from gettext, because of licensing
14923         issues (we want to use the LGPL version).
14924
14925         * README.win32: Mention the intl from glibc vs from gettext issue.
14926
14927 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14928
14929         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14930         in the key event handling: Now AltGr chars work again. Also,
14931         now Alt-digits are passed up as well as Control-digits.
14932         Pass keypad plus and minus as normal plus and minus.
14933
14934 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14935
14936         * docs/gtkfaq.sgml: FAQ Update
14937
14938 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14939
14940         * README.win32
14941         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14942         the Wintab SDK.
14943
14944         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14945         OK, but getting closer. Guard against bogus tilt data from Wacom
14946         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14947         enable easier building without Wintab.
14948
14949         * gdk/win32/gdkinput.h
14950         * gdk/win32/gdkevents.c 
14951         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14952         
14953         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14954         code. As we have just one visual on Win32, no sense to have it in a
14955         table, and no need for the hash table.
14956
14957         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14958         better on white background.
14959
14960 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14961
14962         * README.win32: Update gcc build instructions. Mention gettext is
14963         GPL.
14964
14965         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14966         supported cursor size with GetSystemMetrics.
14967
14968         * gdk/win32/gdkfont.c
14969         * gtk/gtkfontsel.c: Guard against some font weight and charset
14970         symbols being undefined (in mingw32 headers).
14971
14972         * gdk/win32/makefile.cygwin
14973         * gtk/makefile.cygwin
14974         * gtk/gtkthemes.c: No longer need to have differently named
14975         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14976
14977 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14978
14979         * docs/gtkfaq.sgml: Long awaited FAQ update.
14980
14981 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14982
14983         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14984         it. Obscure bit manipulation needed.
14985
14986         * gdk/win32/gdkevents.c: Logging.
14987         
14988         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14989         style (file name include compiler name) for theme engines.
14990
14991 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14992
14993         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14994
14995         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14996         events. The key.string wasn't zero-terminated, still we strdup'ed
14997         it in gdk_event_copy(). Synthesize crossing events for button
14998         events before possible propagation.
14999
15000         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15001
15002         * gdk/win32/makefile.cygwin
15003         * gtk/makefile.cygwin: Use new DLL naming style for the
15004         GCC-compiled ones.
15005
15006         * gdk/win32/makefile.msc
15007         * gtk/makefile.msc: Cosmetics mostly.
15008
15009         * gtk/gtk.def: Add missing entry points.
15010
15011         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15012
15013 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15014
15015         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15016         or height is zero. Don't print a warning if Pie or Arc fails, they
15017         always fail (?) for very narrow ellipses.
15018
15019         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15020         the part or the destination window corresponding to source area
15021         outside of the source drawable's boundary.
15022
15023         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15024         anything if less than two points.
15025
15026         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15027         return NULL. Gtk cut-and-paste inside a single program works
15028         better this way. (It always gets the clipboard contents from
15029         Windows, not from its own copy, which is cleared anyway. I can't
15030         say I fully understand what happens... Emulating the X selection
15031         and property stuff is a bit of a mess.)
15032
15033         * gdk/win32/gdkevents.c
15034         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15035
15036         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15037         that never got deleted). Revamp gdk_region_shrink.
15038
15039         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15040         after use.
15041
15042         * gtk/gtk.def: Add some missing entry points.
15043
15044         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15045         component.
15046
15047 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15048
15049         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15050         Control-digits specially.
15051
15052 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15053
15054         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15055
15056 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15057
15058         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15059         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15060         finding this.)
15061
15062 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15063
15064         * gtk+.spec.in: Corrected some typos in files section.
15065         
15066 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15067
15068         * README.win32: Mention using GNU gettext.
15069         * config.h.win32: Enable NLS stuff.
15070         * gtk/makefile.msc: Use GNU gettext.
15071         * gdk/win32/gdkdnd.c: Minor header reorg.
15072         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15073         cosmetics.
15074         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15075         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15076
15077 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15078
15079         * acinclude.m4
15080         * config.guess
15081         * config.status
15082         * ltconfig
15083         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15084
15085 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15086
15087         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15088         SafeAdjustWindowRectEx. Don't override all calls to
15089         AdjustWindowRectEx by it, but use it only in two places: When
15090         creating a new top-level window and when moving a top-level
15091         window.
15092
15093         Use screen coordinate rectangle, not client rectangle, in
15094         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15095         when we try to place a window so that the decoration (mainly,
15096         title bar) isn't visible.
15097
15098         These changes fix the bug that showed up for instance as the
15099         GIMP's saved top-level windows moving right and down (by an amount
15100         equal to the window decoration) for each session. This bug showed
15101         up also in testgtk's "Saved Position".
15102
15103         gdk_window_resize also redone a bit.
15104
15105 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15106
15107         * gtk/testgtkrc: Add (commented out) Windows-style theme
15108         include line.
15109
15110         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15111
15112 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15113
15114         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15115         gdkx.h to a gdk subdirectory, so that applications can include
15116         these with <gdk/*.h> without trouble.
15117
15118         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15119         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15120         have their bitmap destroyed.
15121
15122         * gdk/win32/gdk.def: Add gdk_root_parent.
15123
15124 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15125
15126         * configure.in
15127           gtk-config.in
15128           ltconfig
15129           ltmain.sh     
15130           gtk/Makefile.am: changes to compile nicely (with xlib) 
15131           on BeOS
15132
15133 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15134
15135         * acinclude.m4
15136         * config.guess
15137         * config.sub
15138         * ltconfig
15139         * ltmain.sh: upgrade to libtool 1.3
15140
15141 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15142
15143         * gtk/gtkclist.c:
15144         * gtk/gtkctree.c: merges from gtk-1-2
15145
15146 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15147
15148         Support added for building using a GNU toolchain on Win32,
15149         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15150
15151         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15152         * config.h.win32: Changes for gcc.
15153         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15154         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15155         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15156         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15157         Protect shl stuff unavaiilable with mingw32 headers.
15158         * gdk/win32/gdkevents.c: Fix typo.
15159         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15160         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15161         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15162         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15163         the mingw32 headers.
15164         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15165         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15166         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15167         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15168         Test for NATIVE_WIN32, not _MSC_VER.
15169         * gtk/gtkmain.c: No use warning about developer version on Win32,
15170         there aren't any non-developer versions anyhow.
15171         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15172         * gtk/makefile.msc: Use pthread from another directory. Minor other
15173         changes. 
15174
15175 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15176
15177         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15178           default filter from the list
15179
15180 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15181
15182         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15183          when gtk_widget_grab_default() is called for a widget that
15184          is not within a GtkWindow.
15185
15186 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15187
15188         * docs/gtk_tut.sgml, examples/clist.c: use a
15189           scrolled window in the clist example. Minor
15190           tutorial fixes.
15191
15192 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15193
15194         * docs/gtk_tut.sgml: Style check from David King
15195           <dking@youvegotmail.net>
15196
15197 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15198
15199         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15200         compile with unknown value of GDK_WINDOWING
15201
15202 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15203
15204         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15205         after the rule is fired.
15206         (install-exec-local): Install gdkconfig.h only if the contents are
15207         different from the currently installed gdkconfig.h.
15208
15209 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15210
15211         * gdk/Makefile.am (configexecincludedir): Rename from 
15212         configincludedir so that gdkconfig.h will be installed 
15213         as part of `make install-exec'. 
15214
15215 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15216
15217         * acinclude.m4
15218         * config.guess
15219         * config.sub
15220         * ltconfig
15221         * ltmain.sh: upgrade to libtool 1.2f
15222
15223         * autogen.sh: libtool is not required to autogen gtk+
15224
15225         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15226         needed)
15227
15228 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15229
15230         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15231         declaring gdk variables exported/imported from the DLL. New image
15232         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15233         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15234         GDK_DRAG_PROTO_OLE2.
15235
15236         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15237         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15238         declared only for the Win32 version, but could be in the X11
15239         version as well. (Needed for a Xlib-less gdk_imlib.)
15240         gdk_color_hash should have only one parameter. Declare
15241         gdk_threads_mutex with GDKVAR.
15242         
15243         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15244         just one parameter.
15245
15246         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15247         per pixel, not bits.
15248
15249         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15250         Fetch bpp (which means bits-per-pixel here) from another place on
15251         Win32. Accept also depth==32 (which we might get on Win32) with
15252         bpp==32.
15253
15254         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15255         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15256         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15257         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15258         in the backend-dependent directory, not in the common gdk
15259         directory.
15260
15261         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15262         headers.
15263
15264 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15265
15266         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15267         want to use the Gtk+ devel version (which is true, and yes - even i am
15268         currently working with the 1.2.x branch). so everyone reading this, you
15269         probably want to issue
15270         cvs checkout -r glib-1-2 glib
15271         and
15272         cvs checkout -r gtk-1-2 gtk+
15273         as your next two comands.
15274
15275 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15276
15277         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15278         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15279
15280         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15281         file. strongly deprecated the GTK_HAVE_* macros, we provide
15282         GTK_CHECK_VERSION() for people that need to check for certain
15283         Gtk+ versions.
15284
15285         * gtk/gtkcompat.h: removed this from CVS.
15286         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15287         idea right from the start, it just didn't seem like that back then.
15288
15289 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15290
15291         * merges from gtk-1-2:
15292
15293 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15294
15295         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15296         item factory class has been created.
15297         (gtk_item_factory_parse_rc): likewise.
15298
15299         * gtk/gtkmenu.c:
15300         keep proper references for old_active_menu_item.
15301         (gtk_menu_reparent): unset the usize of the new parent,
15302         so the menu can sanely be size requested and we don't get nasty screen
15303         artefacts upon next reparentation.
15304         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15305         enter notify. only synthesize enter notifies if the pointer really is
15306         inside the event window.
15307         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15308         (gtk_menu_popup): move the background setting stuff into
15309         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15310
15311         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15312         gtk_menu_shell_select_item() to select the new item.
15313         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15314         do the right thing for deselection as well.
15315
15316 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15317
15318         * gtk/gtkwidget.[hc]:
15319         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15320         are locked.
15321
15322         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15323         existing accelerators if the widget's accelerators are locked.
15324
15325 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15326
15327         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15328
15329         * gtk/gtkmenu.c: truely forward key press and key release events to
15330         the menu widget from the toplevel or tearoff window. we can't simply
15331         connect to that, we need to stop further processing of the events as
15332         well.
15333
15334 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15335
15336         * gtk/gtkmenu.c:
15337         (gtk_menu_key_press): pass event->keyval, event->state to
15338         gtk_accelerator_valid, instead of event->keyval twice.
15339         refuse to install single letter accelerators for menus that use
15340         single letter shortcuts.
15341
15342         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15343         gtk_menu_ensure_uline_accel_group().
15344
15345         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15346         which will always return an uline accel group, made
15347         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15348         yet created.
15349
15350 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15351
15352         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15353
15354         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15355         Leave button sensitive, trap  button_press, button_release,
15356         motion_notify, enter_notify and leave_notify events instead.
15357         (gtk_clist_column_title_active): disconnect event handler.
15358         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15359         Guillaume Laurent <glaurent@worldnet.fr>
15360
15361 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15362
15363         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15364         width/height mixups.
15365
15366         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15367         if needed.
15368
15369 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15370
15371         * gtk/testgtk.c (create_item_factory): unref the item factory after
15372         window's destruction.
15373
15374         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15375         count on the menu shell around the menu item's activation, since the
15376         signal emission may cause menu shell destruction.
15377
15378         * gtk/gtkitemfactory.c:
15379         the previous code leaked one accel group per menu. we use
15380         gtk_menu_get_uline_accel_group() now to fix that, and with that
15381         also create the underline accelerator group of the menus only if
15382         required (i.e. an underline accelerator has been specified).
15383         (gtk_item_factory_construct):
15384         (gtk_item_factory_create_item): removed code that would create an
15385         extra accel group for the menu (and leak references).
15386         (gtk_item_factory_create_item): adapted the underline accelerator
15387         installation code to properly feature gtk_menu_get_uline_accel_group().
15388
15389         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15390         menu->accel_group, this may return NULL if the accelerator group
15391         hasn't been set yet.
15392         added gtk_menu_get_uline_accel_group() to retrive the underline
15393         accelerator group of the menu, this will be created on demand
15394         and proper care is taken about its reference count.
15395
15396         * gtk/gtkitemfactory.h:
15397         * gtk/gtkitemfactory.c:
15398         dumped the approach of keeping a widgets by action list on the
15399         factory since the factory<->widget destroy negotiation didn't work
15400         and would be hard to get going at all. instead we keep a list of
15401         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15402         persistant throughout a program's life time).
15403         also, i removed the static const gchar *key_* variables, and made
15404         them inline strings (they weren't actually used anyways).
15405         (gtk_item_factory_add_item): update ifactory->items.
15406         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15407         the item factory pointer from the remaining ifactory widgets).
15408         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15409         list to find the widget.
15410         (gtk_item_factory_get_item): new function that works around
15411         gtk_item_factory_get_widget() limitations, this function will only
15412         return menu items, even for <Branch> entries.
15413
15414 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15415
15416         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15417         font hash table, if we have a GdkFontPrivate entry for this font
15418         already, simply increment its reference count, provided by Olaf Dietsche
15419         <olaf.dietsche+list.gtk@netcologne.de>.
15420
15421         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15422         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15423
15424 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15425
15426         * gtk/gtkcontainer.c:
15427         (gtk_container_add_with_args):
15428         (gtk_container_addv):
15429         (gtk_container_add): before adding a child to a conatiner, make sure
15430         it is (default) constructed, this is neccessary because under certain
15431         circumstances the child will get relized and mapped immediatedly, in
15432         which case it has to be constructed already.
15433
15434 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15435
15436         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15437         values > 1 as TRUE also.
15438
15439 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15440
15441         * README.win32: New file.
15442                 
15443         * configure.in: Check for lstat.
15444
15445         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15446         completeness.
15447
15448         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15449
15450         * gtk/gtk.def: Removed CRs.
15451
15452         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15453         ..\gdk\win32).
15454
15455         * gdk/win32/makefile.msc: Correct upwards relative paths.
15456         
15457 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15458
15459         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15460           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15461           it was connecting a void function to expose_event and the int
15462           returning function to the draw signal
15463
15464 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15465
15466         * configure.in:
15467         Use correct path to libgmodule.la when ref'ing uninstalled copy
15468         of glib.  (Already in stable branch, Bug #417)
15469
15470 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15471
15472         Win32 merge and general portability stuff:
15473                 
15474         * acconfig.h,configure.in: Check for <sys/time.h>.
15475
15476         * gdk/win32: New directory (actually, been there for a while).
15477         
15478         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15479         NATIVE_WIN32, and use these. Always case fold on Win32. No
15480         backslashed escapes on native Win32.
15481
15482         * gtk/{gtk.def,makefile.msc}: New files.
15483
15484         * gtk/Makefile.am: Add above new files.
15485         
15486         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15487         instead of <strings.h>.
15488
15489         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15490         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15491         <unistd.h> appropriately.
15492
15493         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15494         Use ABS() (from <glib.h>) instead of abs().
15495         
15496         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15497         of gtk (and thus glib) headers, so that WIN32 will be
15498         defined. With MS C, include <direct.h> for mkdir prototype.
15499
15500         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15501         some casts, needed by MS C.
15502
15503         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15504         implemented).
15505
15506         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15507         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15508         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15509
15510         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15511                 
15512         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15513         the event is not a hint, or its window is not the slider. Needed
15514         on Win32, at least.
15515
15516         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15517         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15518         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15519         a subdirectory of the Windows directory as gtk system
15520         configuration directory.
15521
15522         * gtk/gtkselection.c: No chunks on Win32.
15523
15524         * gtk/gtksocket.c: Not implemented on Win32.
15525
15526         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15527
15528         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15529
15530         * gtk/maketypes.awk: Declare variables with a macro that expands to
15531         necessary export/import magic in the case of Win32.
15532                 
15533         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15534
15535 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15536
15537         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15538         since those were meant only for gdki18n.h.  
15539         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15540         for widechar tests.
15541         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15542
15543 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15544
15545         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15546         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15547
15548         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15549         installed) to CFLAGS.
15550
15551         * gdk/Makefile.am: Add rules for gdkconfig.h.
15552
15553         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15554         APIs.
15555
15556         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15557         gdkx.h anyway when compiling for X11.
15558         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15559         general): Merge in Win32 version.
15560         
15561         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15562         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15563         expansion (if we don't have HAVE_PWD_H), allow for drive
15564         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15565         included code from Craig Setera's port to Win32 (the one that uses
15566         X11, and the cygwin dll), even if it probably will be abandoned.
15567
15568         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15569         the user entered one herself.  This way one can complete *.h and
15570         don't get matches on any .help files, for instance.
15571         
15572 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15573
15574         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15575         font hash table, if we have a GdkFontPrivate entry for this font
15576         already, simply increment its reference count, provided by Olaf Dietsche
15577         <olaf.dietsche+list.gtk@netcologne.de>.
15578
15579         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15580         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15581
15582 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15583
15584         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15585         the number of calls to gdk_draw_point() (and thus to X) by
15586         clipping the points by hand.
15587
15588         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15589         the clip parameter.
15590         (gtk_handle_box_paint): Only paint the handle if the expose area
15591         intersects it.
15592
15593 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15594
15595         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15596
15597 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15598
15599         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15600         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15601
15602 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15603
15604         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15605          textmode (O_TEXT) for OS/2 version.
15606
15607 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15608
15609         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15610         GtkSpinButton, "input" and "output", to make the output more flexible.
15611         The user has to provide a mapping between adjustment->value and the
15612         output string (and vice versa, if the spin button is editable). 
15613         See testgtk for examples.
15614
15615 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15616
15617         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15618         new one.
15619         
15620         * configure.in: set gtk+ version to 1.3.0.