]> Pileus Git - ~andy/gtk/blob - ChangeLog
Patch from Juan Pablo Mendoza Mendoza to fix things so clicking inside
[~andy/gtk] / ChangeLog
1 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
4         to fix things so clicking inside selection leaves cursor
5         at point where clicked. (#50324)
6
7         * gtk/gtksettings.c (gtk_settings_class_init): Restore
8         sane value for default double click time.
9
10         * tests/testtext.c (test_init): Really path to input modules.
11
12 2001-05-03  Sven Neumann  <sven@convergence.de>
13
14         * demos/testpixbuf-save.c: include target-specific headers as
15         done in testpixbuf-drawable.c
16
17 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
18
19         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
20         new_text_length appropriately when we run into the 
21         size limit for the entry. (#53445, reported by Jeff Franks)
22
23         * tests/testgtk.c (create_entry): Remove most of the
24         property toggle buttons. Replace with a "Props" button
25         that brings up a property editor.
26
27         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
28         Split the property editor code out for reuse, improve.
29
30 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
31
32         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
33         trap errors around calls to XSetInputFocus since we have
34         no way of knowing reliably whether we are viewable or
35         not. (#53947)
36
37 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
38
39         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
40         fix bug in dropping columns.  Moving columns now basically works
41         modula some fine tuning.
42
43 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
44
45         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
46         autoscroll support.  It mostly works, but could use some fine
47         tuning.
48         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
49         Actually move the column.
50
51 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
52
53         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
54           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
55           New default theme! A slighly improved version of the 2.0 Raleigh
56           theme, with Windows-esque focus/drawing default. 
57           (GtkWidget::interior_focus defaults to TRUE.)
58
59         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
60
61 2001-04-30  Havoc Pennington  <hp@pobox.com>
62
63         * tests/testtext.c (line_numbers_expose): fix to work with
64         gtk_paint_layout change
65
66 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
67
68         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
69           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
70           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
71           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
72
73         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
74           with GtkWidget::interior_focus = TRUE better.
75
76         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
77         ::default_outside_border for more flexibility.
78
79         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
80         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
81         change that had to be made with g_object_get.
82
83 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
84
85         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
86         (gtk_tree_view_move_column_after): Clean up interface. 
87
88 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
89
90         * gtk/gtkpacker.h:
91         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
92          to gtkenum.h.
93
94         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
95         handled in switch).
96
97         * gtk/Makefile.am:
98         (gtk.defs): generate enum portions with  glib-mkenums.
99         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
100         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
101         
102         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
103         addition.
104
105         * docs/Changes-2.0.txt: keep a note on signal handlers now
106         not getting emitted during the emission they were connected within.
107
108 2001-04-28  Havoc Pennington  <hp@pobox.com>
109
110         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
111
112 2001-04-24  Havoc Pennington  <hp@redhat.com>
113
114         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
115         (gtk_text_layout_move_iter_to_next_line): fix these two for
116         invisible text, lots of other stuff still hosed.
117
118         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
119         new function, replaces the get/set palette stuff. This function 
120         is intended for use by libgnomeui which should set the hook to a
121         thing which sets the palette in GConf, and we need the
122         GConf-to-xsettings proxy which will result in the change being
123         propagated back to the GTK app.
124
125         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
126         about unusable signals that it may be because the signal has 
127         parameters.
128
129         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
130         style, otherwise gtkrc.c won't know to create a new GtkStyle for
131         it.
132         (gtk_widget_modify_color_component): call
133         gtk_widget_modify_style() so the rc style will get copied.
134         (gtk_widget_modify_font): ditto
135
136         * gtk/gtkrc.c: make a couple variables static
137
138         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
139         help button by default, since it does nothing
140
141         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
142         around with UI
143
144         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
145         so we can have tooltips
146
147         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
148         can have tooltips
149
150         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
151         GDK_ENABLE_BROKEN, because its memory behavior is completely
152         hosed.
153
154         * gtk/gtknotebook.c: remove key press handler, replace with
155         binding set, add numeric keypad support
156
157         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
158
159         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
160
161         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
162         addition to plain Delete
163
164         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
165         GDK_KP_Enter in addition to GDK_Return
166
167         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
168         activate on entry instead of key press
169         (gtk_font_selection_on_clist_key_press): get
170         rid of this signal handler, not needed with new font sel.
171
172         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
173         no-longer-needed emit_stop_by_name(), just return TRUE
174
175         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
176         cruft, this widget is no longer focusable.
177
178         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
179         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
180         move_slider action signal, add binding set for vscale/hscale, in
181         the process support numeric keypad
182
183         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
184         make GDK_Return and GDK_KP_Enter activate the entry via 
185         binding set, instead of hardcoded.
186
187 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
188
189         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
190         code.  Some documentation added.
191
192 2001-04-27  Havoc Pennington  <hp@redhat.com>
193
194         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
195
196         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
197
198         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
199         line/para separators
200         (gtk_entry_create_layout): set single paragraph mode on the layout
201
202         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
203         spacing between the image and label; instead, inside a button box 
204         the button will get extra space that will go there, but if people 
205         configure button box for 0 chubbiness, then there's no spacing.
206
207         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
208         and min/max size style properties, so people can tune their
209         chubbiness.
210
211         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
212         functions
213
214         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
215         space_style, and button_relief into style properties, remove
216         functions for setting them
217         
218         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
219         it back down
220
221         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
222         types from gtk_widget_style_get
223
224         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
225         with a style property.
226
227         * gdk/x11/gdkevents-x11.c: namespace the settings
228
229         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
230
231         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
232         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
233         be used. Also, translate doc strings for settings. Also, namespace
234         the double-click-time property. Also, remove bell properties crap.
235
236 2001-04-27  Sven Neumann  <sven@gimp.org>
237
238         * Makefile.am: before creating links, check if pkg-config files
239         exist for the default target. Otherwise link to the pkg-config files
240         that got installed with this build.
241
242 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
243
244         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
245         dragging code.  Revealed some (potential) GdkWindow bugs.
246
247         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
248         _gdk_window_init_position to the end of reparent to fix the case
249         of reparenting when new_x != old_x and new_y != old_y.
250
251 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
252
253         * gtk/gtkentry.c (strstr_len): Fix optimization that
254         was correct for the use here, but completely incorrect
255         in general.
256
257 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
258
259         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
260         until patch adding gtk_window_set_size() is recommitted. 
261
262         * **Makefile.am configure.in gdk/x11/gdkim-11.c
263           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
264           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
265           (#10784)
266
267 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
268
269         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
270         window == NULL in a number of cases.
271
272         * tests/testdnd.c: Set module path for gdk-pixbuf.
273
274 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
275
276         * gtk/Makefile.am xembed.h: File containing #defines
277         for XEMBED protocol.
278
279         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
280
281         - Change protocol from old plug/socket specific protocol
282           to XEMBED draft
283         - Various fixes to work with GTK+-2.0
284
285         Still quite a bit of work to do here to handle initiation
286         from the socket side (as specified by XEMBED), to handle
287         the more advanced features of XEMBED, and to figure out
288         a good way to handle same-app embedding with less overhead
289         than using full XEMBED.
290
291 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
292
293         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
294         track of whether the toplevel has the focus; only send
295         focus-in events to the focus widget when the window
296         actually has the focus.
297
298 2001-04-25  Havoc Pennington  <hp@pobox.com>
299
300         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
301         were still in the header
302
303 2001-04-24  Alexander Larsson  <alexl@redhat.com>
304
305         * gtk/gtkclist.[ch]:
306         * gtk/gtkctree.c:
307         When there is a row highlighted for D'n'D it must alse
308         be painted hightlighted on exposes. Otherwise exposes from
309         the icon being dragged will mess up the hightlight.
310
311         * gtk/gtkfontsel.c:
312         Don't recenter selected font when exposing the font family
313         clist. This means you can now actually scroll the font family
314         list.
315
316         * gtk/gtknotebook.c:
317         Fix focus movement on scrolling tabs that are placed on the left
318         and right.
319
320 2001-04-21  Havoc Pennington  <hp@pobox.com>
321
322         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
323         empty/invisible lines.
324
325         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
326         (gtk_text_iter_set_visible_line_index): new functions to set
327         indexes excluding invisible text
328
329         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
330         index
331
332         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
333         (gtk_text_iter_get_visible_line_offset): new functions to 
334         get indexes excluding invisible text
335
336         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
337         bunch of extra padding that served no purpose
338
339         * gtk/gtkdialog.c: Make all the spacings configurable via style
340         properties, for chubbiness configuration in themes
341
342         * tests/testtext.c: fix path to the immodules.
343         
344 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
345
346         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
347         got munched by #endif.
348
349         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
350
351         * gtk/gtktreeview.c: Refactored code to clean up a number of
352         events.
353
354         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
355         values to make consistent with other functions.  Spotted by Jeff
356         Franks <jcf@tpg.com.au>.
357
358         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
359         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
360
361 2001-04-23  Sven Neumann  <sven@gimp.org>
362
363         * gtk/Makefile.am
364         * gtk/gtkplug.c
365         * gtk/gtksocket.c: on request of Owen, reverted my last change 
366         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
367
368 2001-04-23  Sven Neumann  <sven@gimp.org>
369
370         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
371         compile for non-X11 targets again
372
373 2001-04-20  Alexander Larsson  <alexl@redhat.com>
374
375         * gtk/gtkcolorsel.[ch]:
376         API Change. Take GdkColor arguments instead of gdouble *.
377         Leave the old gtk_color_selection_set_color for compatibility,
378         but marked deprecated.
379         Do correct rounding when converting RGB <-> HSV.
380         
381         * gtk/gtkcolorseldialog.c:
382         * tests/testgtk.c:
383         Use new GtkColorSelection API.
384
385         * gtk/gtkhsv.c:
386         Fix problem selecting colors in triangle when Hue is 330.
387         Fix some black dots around the HSB triangle.
388         
389         * gtk/gtkfilesel.c:
390         return FALSE from the focus_in_event handler to fix focus problems.
391
392 2001-04-18  Havoc Pennington  <hp@redhat.com>
393
394         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
395         set, so keybindings are configurable    
396         (gtk_window_activate_default): Change to activate the focus widget
397         instead if there's a focus widget, to be consistent with the
398         behavior that previously existed in key_press_event
399
400 2001-04-18  Havoc Pennington  <hp@redhat.com>
401
402         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
403
404 2001-04-18  Havoc Pennington  <hp@redhat.com>
405
406         Close bug #50615:
407         
408         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
409         the layout
410
411         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
412
413         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
414
415         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
416         
417         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
418         to blue for base, in addition to bg
419         
420 2001-04-18  Havoc Pennington  <hp@redhat.com>
421
422         * tests/testgtk.c (create_image): allow shrinking the image window
423         to test that we clip to allocation.
424
425         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
426         #9845
427
428         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
429
430 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
431
432         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
433         mode on shm segments to 0600. We'll see who complains.
434
435         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
436         _gdk_windowing_window_destroy() AFTER recursing through
437         children.
438
439         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
440         testsocket_child on X.
441
442         * tests/testsocket[_child].c: Fix uses of
443         gtk_window_get_default_accel_group().
444
445         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
446
447         * gdk/gdkimage.c: (gdk_image_get):
448         Deal with the possibility that XGetImage() might return NULL.
449         Allocate the GdkImagePrivate structure only after XGetImage()
450         succeeds in order not to dereference a NULL ximage pointer.  This
451         prevents a core dump when XGetImage() fails - which is unlikely,
452         but can happen due to race conditions accessing the geometries of
453         drawables.  An x error will still be triggered, but the gdk image
454         wrapper at least wont seg fault.
455         
456 2001-04-18  Havoc Pennington  <hp@redhat.com>
457
458         * gtk/gtkimage.c: fix to properly queue resizes when the image is
459         set
460
461         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
462         if the insertion point isn't editable
463
464         * demos/gtk-demo/images.c: Added a GtkImage demo
465
466         * demos/gtk-demo/drawingarea.c: drawing area demo
467         
468         * demos/gtk-demo/menus.c (create_menu): cleanups
469
470 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
471
472         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
473           gdk/x11/gdkevents-x11.c: Introduce an extra child
474         of toplevel windows that serves to hold the focus to
475         avoid events being delivered to embedded windows.
476
477         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
478         some extra variables to clean up code and reduce the
479         number of casts.
480
481         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
482         guint for 1 bit bit fields, not gboolean.
483
484 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
485
486         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
487         not TRUE. (Fixes #52925)
488
489 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
490
491         * Released 1.3.4
492
493         * NEWS: Updated
494
495         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
496         use GTK_TYPE_ENUM.
497
498 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
499
500         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
501
502         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
503         names to compatibility #defines so docs work.
504
505         * gtk/gtkenums.h: Remove GtkMenuFactoryType
506
507         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
508
509         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
510
511         * tests/testgtkrc: No magenta cursors, please.
512
513         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
514
515         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
516         
517 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
518
519         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
520         grabs, since they are no longer necessary.
521
522         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
523         by signal_connect() and call gtk_button_pressed() rather
524         than signal_connect_after().
525
526         * tests/testgtk.c: Restore radio menu items to combos 
527         since they'll look OK with Raleigh, and it is easier
528         than finishing the process of removing them that was
529         started earlier.
530
531 2001-04-16  Hans Breuer  <hans@breuer.org>
532
533         * gdk/gdk.def :
534         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
535
536         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
537         we are interested in the functions return value not the function address
538         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
539
540         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
541
542 2001-04-14  Hans Breuer  <hans@breuer.org>
543
544         * gdk/gdk.def :
545         * gdk/makefile.msc : updated
546
547         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
548         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
549         (the testgtk::text backgound pixmap is drawn again)
550         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
551         Win32 Pango change
552         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
553
554         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
555         Not sure if the returned settings have the right unit, because I couldn't
556         find any docs for the X version ...
557
558         * gtk/gtk.def :
559         * gtk/makefile.msc.in : updated
560
561 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
562
563         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
564         wording problems. (Compared to version from Johannes Stezenbach to
565         check correctness.)
566
567 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
568
569         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
570         this to compile.
571
572 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
573
574         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
575         not pixbufpos.
576
577         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
578
579         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
580         are unsigned insts, therefore use g_value_set_uint.
581         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
582
583 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
584
585         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
586
587         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
588         GTK_TYPE_STRING.
589
590         * gtk/gtktreeview.c: New functions to allow initial column
591         dragging work.
592
593         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
594
595         * tests/testtreefocus.c: give dave some love.
596
597         * tests/testtreesort.c: Modify test to check really long samples.
598
599 2001-04-11  Alexander Larsson  <alexl@redhat.com>
600
601         * gtk-2.0.m4: Pass pkg-config options
602         before the other args so it works even if
603         POSIXLY_CORRECT is set.
604
605 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
606
607         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
608         0, interface 0).
609
610 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
611
612         * gtk/gtkcalendar.c (gtk_calendar_button_press):
613         check for action_func != NULL
614
615 2001-04-04  Sven Neumann  <sven@gimp.org>
616
617         * tests/testgtk.c (test_init): corrected path to gtk.immodules
618
619 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
620
621         * Released Gtk+-1.3.3.
622
623 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
624
625         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
626
627 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
628
629         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
630         files to/from source dir. (if we don't stay in builddir, we
631         can't reach make-inline-pixbuf.
632
633         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
634         deps.
635
636         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
637         ages 0).
638
639 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
640
641         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
642         moved to the GtkTreeSortable interface.
643
644         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
645         Make more efficient (fixes #50262).
646
647 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
648
649         * NEWS: Updated.
650
651         * configure.in: Remove support for uninstalled glib.
652
653         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
654         so as not to stop emission.
655
656         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
657         is no longer supported.
658
659         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
660         into tests, change build order to build modules before
661         gtk/.
662
663         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
664         to here.
665
666 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
667
668         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
669         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
670         GPatternSpec. this is actually unlikely to cause breakage in
671         third-party apps since except for gle, pretty much ever caller
672         passes NULL here.
673
674         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
675
676         * *.c: use g_pattern_*() API.
677
678         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
679
680         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
681         directions aren't passed in.
682
683         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
684         functionality to be usable from gtkstyle.c as well, give precedence
685         for conversion to user-supplied parsers.
686         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
687
688         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
689         _gtk_settings_parse_convert() for rcporperty value conversion.
690
691 2001-04-03  Alexander Larsson  <alexl@redhat.com>
692
693         * gdk/linux-fb/gdkevents-fb.c:
694         Add empty gdk_setting_get().
695
696 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
697
698         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
699         variable names.
700         
701         * gtk/makeenums.pl: touch this so enum files get remade.
702
703 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
704
705         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
706         work again when not sorted.
707
708         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
709         and "expand_row" signal, closing bug 52578.
710
711         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
712         support.
713
714         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
715         support.
716
717 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
718
719         * gdk/gdkevents.h: Add GdkEventSetting event for notification
720         of changes to system settings, gdk_setting_get() to retrieve
721         a single system setting.
722
723         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
724         to the draft XSETTINGS mechanism.
725
726         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
727         XSETTINGS.
728
729         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
730         of GDK settings changes to the GtkSettings object.
731
732         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
733         double-click-timeout property to GDK.
734
735         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
736         Define GDK boxed types here.
737
738         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
739         gdk/gdkenumtypes.[ch] for enum definitions.
740
741         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
742         * gtk/gtk-boxed.defs: Comment out GDK types
743         * gtk/gtktypeutils.h: Remove GDK types
744         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
745
746 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
747
748         * Applied patch from Ron Steinke to add signal accumulators
749         so that signals with the convention 'TRUE return means
750         handled' stop emission on a TRUE return.
751
752         * gtk/gtkmain.[ch]: Add private accumulator 
753         _gtk_boolean_handled_accumulator, used throughout GTK+.
754         
755         * gtk/gtkspinbutton.c: Add accumulator for ::output.
756
757         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
758         
759         * gtk/gtkwidget.c: Add accumulators for event signals,
760         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
761         for ::mnemonic-activate.
762
763         * gtk/gtkwindow.c: Add accumulator for ::frame_event
764
765 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
766
767         * gtk/gtkwidget.c: Add missing include.
768
769 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
770
771         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
772         marshaller.
773
774         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
775         "changed" signal to "range_changed".
776
777         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
778         removing a tree from one model would remove all trees from that
779         model.
780         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
781         changed signal instead.
782
783 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
784
785         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
786         chaining up to parent impl, since we have a INPUT_ONLY
787         window.
788
789         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
790         foreground color for the cursor.
791
792 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
793
794         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
795         param spec when caching property values, since we unref it
796         later when we free the style.
797
798         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
799         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
800
801 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
802
803         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
804         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
805         stupidity.
806
807 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
808
809         [ First pass at adding style properties. Still needs some definite
810         fine-tuning. ]
811
812         * gtk/gtkbutton.c: Add ::default_spacing style property.
813          
814         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
815         ::indicator_spacing style properties.
816
817         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
818         style properties.
819
820         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
821         rather than a normal property.
822
823         * gtk/gtkwidget.c: Add an ::interior_focus style property to
824         draw focus inside buttons, in the Windows/Java Metal/etc. style.
825
826         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
827         Honor ::interior_focus.
828         
829         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
830         TRUE.
831
832         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
833         Add ::slider_width, ::trough_border, ::stepper_size,
834         ::stepper_spacing style properties.
835
836         * gtk/gtkscale.[ch] Add ::slider-length style property.
837
838 2001-04-02 Alexander Larsson   <alexl@redhat.com>
839
840         * gdk/linux-fb/gdkwindow-fb.c:
841         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
842         warnings that were spewed on startup.
843
844         * gtk/gtkwindow-decorate.c:
845         gtk_window_reposition -> _gtk_window_reposition
846
847 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
848
849         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
850         Add boxed type for GtkRequistion. Use it for ::size-request.
851
852         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
853         Add a new GtkBorder structure useful for geometry properties
854         for widgets. Add corresponding GTK_TYPE_BORDER.
855         
856         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
857         Support automatic parser selection like
858         gtk_settings_install_property_parser().
859
860         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
861         functionality for use by gtk_widget_class_install_style_property.
862         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
863
864 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
865
866         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
867         g_param_spec_unichar(). 
868
869 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
870
871         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
872         _NET window managers.
873
874         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
875
876 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
877
878         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
879         bad needs to be nuked, not just deprecated.
880
881         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
882         gtk_widget_popup().
883
884         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
885         
886         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
887         widget.
888         
889         * docs/Changes-2.0.txt: updates.
890         
891 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
892
893         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
894         for (i = 0; i < 100; i ++)
895           g_print ("I will confirm it compile before committing\n");
896
897 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
898
899         * gtk/gtktreestore.c: Initial work on implementing the
900         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
901
902 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
903
904         * gtk/gtkwidget.c: fixed a bunch of notifications, added
905         reference counts around emissions where the widget is used afterwards.
906         added freeze/thaws around multiple properties being notified.
907         (_gtk_widget_get_aux_info): cleanups.
908         
909         * gtk/gtksettings.c (gtk_settings_install_property): provide
910         default parsing functions for gdkcolor, enums and flags.
911
912         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
913         applied by owen.
914         backed out gtk_window_get_location(), gtk_window_set_location(),
915         gtk_window_get_size() and gtk_window_set_size(), these
916         have to be sorted out wrg x/y/width/height/default_with/default_height
917         properties.
918         kept a flag in GtkWindowGeometryInfo to handle user
919         resetting default sizes.
920         cleaned up ZVT comments.
921         bunch of assorted bug fixes, notification fixes.
922         (_gtk_window_reposition): make this a really internal function.
923         
924         * gtk/testgtk.c: fixups.
925         
926 2001-03-31  Hans Breuer  <hans@breuer.org>
927
928         * config.h.win32.in : disable USE_MMX for msvc build cause
929         the assembler doesn't fit and is out of my scope. Disable
930         USE_GMODULE for msvc build as wel. The right way to share
931         binaries on win32 would be to use libtiff.dll etc. To reduce
932         installation hassles IMO it's better to include all fileformats
933         builtin to gdk-pixbuf
934
935         * gdk-pixbuf/makefile.msc : new file
936
937         * gdk/gdk.def : updated
938
939         * gdk/win32/gdkevents-win32.c : don't erase the background if
940         .no_bg is set. It improves the scrolling (e.g. of testgtk main
941         buttons
942         * gdk/win32/gdkgeometry-win32.c : added comment about the above
943
944         * gdk/win32/gdkwindow-win32.c : added three new functions like
945         the X version. Only one is implemented, because the other two
946         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
947         be default behaviour on win32 anyway ...
948
949         * gtk/gtk.def : updated
950
951         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
952         from where it was built and add an additional rule to automagically
953         build gtkmarshal.[hc]
954
955         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
956         before array access for the current entry isn't finished
957
958         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
959         use g_return_val_if_fail
960
961         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
962         for the static array, but let the compiler calculate it. It
963         makes me wonder if gcc isn't capable to catch bugs like this ...
964
965 2001-03-31  James Henstridge  <james@daa.com.au>
966
967         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
968         constant "-1" in the aux info structure.
969
970 2001-03-30  Alexander Larsson  <alexl@redhat.com>
971
972         * gtk/gtkbutton.c (gtk_button_get_property):
973         * gtk/gtklabel.c:
974         Remove leaks.
975         
976         * gtk/gtkcontainer.c:
977         * gtk/gtkhscale.c:
978         * gtk/gtkhscrollbar.c:
979         * gtk/gtklayout.c:
980         * gtk/gtkmisc.c:
981         * gtk/gtkprogress.c:
982         * gtk/gtkprogressbar.c:
983         * gtk/gtkrange.c:
984         * gtk/gtktable.c:
985         * gtk/gtkviewport.c:
986         * gtk/gtkvscale.c:
987         * gtk/gtkvscrollbar.c:
988         * gtk/gtkwidget.c:
989         Property patches, based on patches from John Margaglione and Lee Mallabone.
990
991 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
992
993         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
994         adjustment. Cleaned redundant preconditions (spin != NULL). Added
995         inline API function docs.
996         (gtk_spin_button_new_with_range): New convenience constructor.
997         (gtk_spin_button_set_increments): New adjustment helper.
998         (gtk_spin_button_set_range): New adjustment helper.
999
1000         * gtk/testgtk.c : added test of the new convenince constructor and
1001         value_changed signals.
1002
1003 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1004
1005         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1006         listen to the reorder signal.
1007
1008 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1009
1010         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1011         to get the aux info structure fo the widget.
1012
1013         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1014         above function.
1015
1016         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1017
1018         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1019         to get the size of the window manager frame, basically the same
1020         code that gdk_window_get_root_origin() had
1021         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1022
1023         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1024         gdk_window_resize() if the window is realized and resizeable
1025
1026         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1027         typo so that setting gravity works
1028
1029         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1030         allocation if auto_shrink is on, even if the default size
1031         has not changed.
1032
1033         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1034         g_return_if_fail
1035
1036 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1037
1038         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1039         reordering/sorting work.  Now pretty much works.
1040
1041         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1042         reorder mostly work.  Still need to get the parity correct.
1043
1044         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1045         signal, so I can listen for the sort_column_changed signal so I
1046         can change my "sort_indicator" property.  Cool.
1047
1048 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1049
1050         [ Patch from Havoc Pennington, hp@redhat.com ]
1051
1052         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1053         Add functions gdk_window_begin_resize_drag/begin_move_drag
1054         to start resizing or moving a toplevel window. This
1055         is done either using the _NET_WM_MOVERESIZE protocol,
1056         or, if that isn't present, by emulation.
1057
1058         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1059         to export the above to GTK+-land.
1060
1061         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1062         
1063         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1064         Move this function into gdkwindow, since we need it
1065         when implementing fallback resizing.
1066
1067         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1068         Fix typo when setting gravity.
1069
1070         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1071         Add an optional (but on by default) resize grip for resizing 
1072         the parent window.
1073
1074 01-03-29  Alexander Larsson  <alexl@redhat.com>
1075
1076         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1077         Don't return TRUE from the event handler, that blocks all
1078         event signals on the tooltip widget. Now you can press buttons
1079         in toolbars again.
1080
1081 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1082
1083         * gtk/testtext.c (create_buffer): Add missing NULL on
1084         valist.
1085
1086         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1087         c-n-p problem with INCONSISTENT property.
1088
1089         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1090
1091         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1092         hook.
1093
1094         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1095         signal as a hook for extending the default popup menu
1096
1097         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1098         use radio menu items for the input method menuitems
1099
1100         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1101         inserted unicode from Ctrl-Shift-hex input method
1102
1103         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1104         validatation here, already done at GtkTextBuffer level.
1105
1106         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1107         popup_menu run action signal and Shift+F10 and Menu keybindings.
1108
1109         * gtk/gtkentry.c: implement a default handler for popup_menu
1110
1111         * gtk/gtktextview.c: implement a default handler for popup_menu
1112
1113         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1114         from a key event
1115         
1116         * gtk/gtklabel.c: remove "trailer" cruft
1117
1118 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1119
1120         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1121         handle reordering of trees.  Seems to mostly work w/ the exception
1122         of the parity flag.
1123
1124         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1125         signal.
1126
1127 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1128
1129         * gtk/gtkwidget.h: c++ fixes.
1130
1131 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1132
1133         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1134         memory.
1135
1136 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1137
1138         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1139         Nils Barth fixing event return values. (#51041)
1140
1141         * gtk/gtkwidget.c: Fix some return values for default
1142         functions.
1143
1144         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1145         return values for trough_keys functions.
1146
1147         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1148         value for add_accelerator (shoudl have been a void
1149         return.)
1150
1151         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1152         Fix return type of EVENT.
1153
1154         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1155         signal return a boolean.
1156
1157 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1158
1159         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1160         reordered signal.
1161
1162         * tests/testtreesort.c (main): fix spelling.
1163
1164 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1165
1166         * gtk/gtkliststore.c: More work on implementing sortable
1167         interface.
1168
1169 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1170
1171         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1172         reference the widgets in the resulting list. (#11821)
1173         This makes this consistent with gtk_container_children.
1174
1175         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1176         uses of gtk_window_list_toplevels.
1177
1178 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1179
1180         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1181         a virtual function to set whether the IM context should use 
1182         the preedit string. (#51922)
1183         
1184 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1185
1186         * gdk/gdkpango.h: Remove stale FIXME comment.
1187
1188 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1189
1190         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1191         Fixed bug that returned NULL if a filename was selected.
1192
1193 2001-03-24  Havoc Pennington  <hp@pobox.com>
1194
1195         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1196         to contain the word "theme"
1197
1198 2001-03-24  Havoc Pennington  <hp@pobox.com>
1199
1200         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1201         slower but finer-grained
1202         (gtk_hsv_focus): get initial focus on the ring or triangle 
1203         according to tab direction
1204
1205         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1206
1207 2001-03-23  Havoc Pennington  <hp@pobox.com>
1208
1209         * gtk/gtkhsv.c: make this somewhat key-navigable
1210
1211         * gtk/gtkfontsel.c: mnemonics
1212
1213         * gtk/gtkgamma.c: mnemonics
1214
1215         * gtk/gtkcolorsel.c: add mnemonics to labels
1216
1217 2001-03-22  Havoc Pennington  <hp@pobox.com>
1218
1219         Applied big patch from Seth Lytle to fix event handler return
1220         values, slightly modified.
1221
1222         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1223         handled.
1224         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1225         select_day
1226
1227         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1228         (gtk_clist_button_release): return TRUE if handled
1229
1230         * gtk/gtkcolorsel.c (mouse_release):
1231         (palette_activate): 
1232         (palette_press): 
1233         (palette_new): 
1234         (mouse_press): 
1235         (get_screen_color): 
1236         fixed return type (void to gboolean), return TRUE,
1237         added GTK_SIGNAL_FUNC cast
1238
1239         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1240         (void to gboolean), and return TRUE
1241         (gtk_combo_button_release): changed return value to TRUE after
1242         gtk_grab_add on combo->popwin
1243
1244         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1245         collapse or expand
1246
1247         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1248         button/motion
1249
1250         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1251         press/release and motion that trigger act
1252
1253         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1254
1255         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1256         for GDK_Return
1257         
1258         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1259         (gtk_list_button_release): return TRUE if selection
1260
1261         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1262         press
1263
1264         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1265         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1266
1267         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1268         nothing triggered
1269         (gtk_notebook_button_release): return TRUE if we do anything
1270
1271         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1272         (gtk_spin_button_button_release): return TRUE or chained retval
1273
1274         * gtk/gtktext.c (gtk_text_button_press): 
1275         (gtk_text_button_release): return TRUE
1276         (gtk_text_key_press): remove redundant retval code
1277         
1278         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1279         and sensitive
1280         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1281         TRUE if sensitive
1282
1283         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1284         return TRUE
1285
1286 2001-03-23  Havoc Pennington  <hp@redhat.com>
1287
1288         * gtk/testgtk.c: fix warnings
1289
1290         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1291
1292         * gtk/gtktextview.c: fix warnings
1293
1294         * gtk/gtktext.c (find_cursor_at_line): fix warning
1295
1296         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1297
1298         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1299         of this function
1300
1301         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1302         fix warning
1303
1304         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1305
1306         * gtk/gtkfontsel.c: fix warning
1307
1308         * gtk/gtkcolorsel.c: fix warnings
1309
1310 2001-03-23  Havoc Pennington  <hp@redhat.com>
1311
1312         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1313
1314         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1315
1316         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1317         and deprecated gtk_check_menu_item_set_show_toggle().
1318         
1319         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1320
1321         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1322
1323         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1324
1325 2001-03-23  Havoc Pennington  <hp@redhat.com>
1326
1327         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1328         some docs
1329
1330 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1331
1332         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1333         this.
1334
1335         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1336         set_cell to set_value
1337
1338         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1339         set_cell to set_value
1340
1341 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1342
1343         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1344         fix braino.
1345         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1346         support.
1347
1348         * gtk/gtktreeview.c: Addition of initial sortable support.
1349
1350         * gtk/gtktreestore.c: Addition of initial sortable support.
1351
1352         * gtk/gtkliststore.c: Addition of initial sortable support.
1353
1354         * gtk/gtkmarshal.list: yet another marshaller.
1355
1356         * gtk/gtktreedatallist.[ch]: shared code between the store models
1357         for handling sorting headers.
1358
1359 2001-03-22  Havoc Pennington  <hp@redhat.com>
1360
1361         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1362         (gtk_container_unset_focus_chain): Add ability to override the 
1363         focus chain for a container explicitly
1364
1365 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1366
1367         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1368         added PROP_MNEMONIC_WIDGET.
1369
1370         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1371         (gtk_window_remove_mnemonic): 
1372         (gtk_window_add_mnemonic): fixed assertions.
1373         (gtk_window_activate_mnemonic): constrain modifier checks to those
1374         permitted by gtk_accelerator_get_default_mod_mask().
1375         got rid of gtk_window_get_default_accel_group().
1376
1377         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1378         activatable widgets either by focussing or a warning.
1379         added a signal accumulator to ::activate_mnemonic which stops the
1380         emission once a handler returned TRUE.
1381
1382 2001-03-22  Havoc Pennington  <hp@pobox.com>
1383
1384         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1385         the stock item label
1386
1387         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1388
1389         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1390
1391         * demos/gtk-demo/*.c: Add mnemonics all over the place
1392
1393         * gtk/gtklabel.h: mark parse_uline deprecated
1394
1395 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1396
1397         * gtk/gtkitemfactory.[ch]:
1398         Add support for stock and normal imagemenuitems.
1399         
1400         * gtk/testgtk.c:
1401         Add some tests for mnemonics, stock toolbars, stock
1402         and image menuitems in itemfactory and gdk_window_scroll.
1403
1404 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1405
1406         * gtk/gtkbutton.[ch]:
1407         * gtk/gtkdialog.c:
1408         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1409         removed accel_group argument. Renamed gtk_button_new_accel() to
1410         gtk_button_new_with_mnemonic() and removed accel_group argument.
1411
1412         * gtk/gtkcheckbutton.[ch]:
1413         New function gtk_check_button_new_with_mnemonic().
1414
1415         * gtk/gtkentry.c:
1416         Override activate_mnemonic and just grab focus.
1417
1418         * gtk/gtkitemfactory.c:
1419         Don't add menu uline accel group, instead use mnemonics support.
1420
1421         * gtk/gtklabel.[ch]:
1422         New support for mnemonics.
1423
1424         * gtk/gtkmarshal.list:
1425         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1426
1427         * gtk/gtkmenu.[c]:
1428         * gtkmenushell.c:
1429         Use mnemonics instead of accel groups for uline
1430         support in menu items.
1431         Removed gtk_menu_get_uline_accel_group() and
1432         gtk_menu_ensure_uline_accel_group().
1433
1434         * gtk/gtkmenuitem.c:
1435         Override activate_mnemonic to handle switching between
1436         menu items if there are collisions.
1437         
1438         * gtk/gtknotebook.c:
1439         Connect to activate_mnemonic on the tab_label, so that
1440         activating it switches to that notebook page.
1441
1442         * gtk/gtkwidget.[ch]:
1443         Add activate_mnemonic signal. New function
1444         gtk_widget_activate_mnemonic() to emit it.
1445         Default implementation does activate/grab_focus.
1446
1447         * gtk/gtkwindow.[ch]:
1448         Add support for mnemonics in windows.
1449         New functions:
1450         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1451         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1452
1453         * gtk/testgtk.c:
1454         Update to function name changes.
1455         
1456 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1457
1458         * gtk/gtkimagemenuitem.[c]:
1459         Add gtk_image_menu_item_new_from_stock()
1460
1461 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1462
1463         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1464         Fix buglet in meeting.
1465
1466 2001-03-19  Havoc Pennington  <hp@redhat.com>
1467
1468         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1469         add a bunch of accessor functions. This is because we have
1470         reasonable expectations of extending what fields it contains in
1471         the future.
1472
1473         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1474         changes
1475
1476         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1477         GtkIconSource   
1478
1479 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1480
1481         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1482         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1483
1484         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1485           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1486           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1487           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1488         Change float to double everywhere with the exception of 0<->1.0 alignment
1489         and GtkCurve.
1490
1491 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1492
1493         * gdk/win32/gdkdrawable-win32.c
1494         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1495         output.
1496
1497         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1498         gdkwin32.h.
1499
1500 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1501
1502         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1503         print_event_state, print_event): Use preprocessor macro to make
1504         code more compact. Print also GDK_WINDOW_STATE events.
1505         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1506         
1507         * gtk/gtk.def
1508         * gtk/makefile.mingw.in: Update.
1509
1510         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1511         to catch also Cygwin.
1512
1513 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1514
1515         * gtk/gtkspinbutton.[hc]: added rc-style argument
1516         GtkSpinButton::shadow_type.
1517         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1518         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1519         rc-style settings.
1520
1521         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1522
1523         * gtk/gtkwidget.c: quark cleanups.
1524
1525         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1526         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1527         to create_rc_style() (we don't do cloning in standard OO sense).
1528         added per rc style properties.
1529         
1530         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1531         property values and for caching those. some cleanups.
1532         
1533         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1534         
1535         * gtk/gtksettings.[hc]: new file for global rc-file properties
1536         (at least currently, should get extended to support X properties
1537         and other communication mechanisms).
1538         
1539         * gtk/gtkwidget.[hc]: added style property support:
1540         (gtk_widget_class_install_style_property_parser): install style
1541         property pspec with parser function for rc-file values other
1542         than LONG, DOUBLE or STRING.
1543         (gtk_widget_class_install_style_property): same as above without
1544         parser (parsers are going to be needed quite infrequently).
1545         (gtk_widget_style_get_property): retrive style property value.
1546         (gtk_widget_style_get_valist): same as above with varargs support,
1547         has NOCOPY semantics.
1548         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1549
1550 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1551
1552         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1553         "row_activated" signal.
1554
1555         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1556         stupidity.  Lets actually pass in the row with this signal...
1557
1558 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1559
1560         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1561
1562         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1563
1564         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1565         everything into the ::destroy function, and freed a lot more.
1566
1567 2001-03-16  Havoc Pennington  <hp@redhat.com>
1568
1569         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1570         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1571         are now allowed.
1572
1573 2001-03-16  Havoc Pennington  <hp@redhat.com>
1574
1575         * Applied patch from Nils Barth (bug # 51041) to 
1576         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1577         in various places.
1578
1579 2001-03-15  Havoc Pennington  <hp@redhat.com>
1580         
1581         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1582         for properties to set on the tag.
1583
1584         * gtk/testtext.c: fixups to reflect create_tag change
1585         
1586         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1587         background/foreground stipple are objects, not boxed.
1588
1589         * demos/gtk-demo/textview.c: intellihancing
1590
1591 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1592
1593         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1594         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1595
1596 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1597
1598         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1599         Fix sign error with queued region translations.
1600
1601 2001-03-15  HideToshi Tajima  <tajima@happy>
1602
1603         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1604         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1605         * gtk/gtkentry.c (update_im_cursor_location): 
1606         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1607         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1608         set_cursor_pos to set_cursor_location in GtkInputContext class
1609
1610 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1611
1612         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1613         the location of the cell relative to its area.
1614         * gtk/gtkcell*: modified for above change
1615         * gtk/gtktreeview.c: modified for above change.
1616
1617 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1618
1619         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1620          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1621         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1622
1623 2001-03-14  Havoc Pennington  <hp@redhat.com>
1624
1625         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1626         
1627         * gtk/gtk.h: remove gtkdata.h
1628
1629         * gtk/Makefile.am: remove gtkdata
1630         
1631         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1632         not "disconnect" on the adjustments.
1633         
1634         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1635         GtkData
1636
1637         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1638         not GtkData
1639
1640         * configure.in: handle case where X render exists, but Pango lacks
1641         Xft support.
1642
1643 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1644
1645         * gtk/gtktoolbar.[ch]:
1646         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1647         to add stock items to toolbars.
1648
1649         * gtk/Makefile.am:
1650         Remove ../gdk/gdkim.h from gdk_headers.
1651
1652 2001-03-15  Sven Neumann  <sven@gimp.org>
1653
1654         * gdk/gdkim.h: removed
1655         
1656         * gdk/gdkprivate.h
1657         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1658
1659 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1660
1661         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1662         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1663         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1664         set_cursor_pos() virtual method
1665
1666         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1667         (gtk_im_context_xim_set_cursor_pos): add implementation for
1668         set_cursor_pos() method
1669
1670         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1671         position to input methods
1672
1673 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1674
1675         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1676         code a lot.
1677
1678         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1679         g_mem_chunk.
1680         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1681         (_gtk_tree_data_list_node_to_value): Fix to switch on
1682         G_TYPE_FUNDAMENTAL.
1683         (_gtk_tree_data_list_value_to_node): Fix to switch on
1684         G_TYPE_FUNDAMENTAL.
1685         (_gtk_tree_data_list_node_copy): Fix to switch on
1686         G_TYPE_FUNDAMENTAL.
1687
1688 2001-03-12  Havoc Pennington  <hp@redhat.com>
1689
1690         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1691         to convert to new property API. Also, change default_width and
1692         default_height get_property to return 0 as the flag value for
1693         "unset"; -1 is not a valid value for these fields.
1694
1695 2001-03-12  Havoc Pennington  <hp@redhat.com>
1696
1697         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1698         enum with registration for icon sizes, instead of strings.
1699
1700         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1701         gtkwidget.c: Fix to reflect GtkIconSize
1702         
1703 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1704
1705         Make GtkFB compile and link.
1706         
1707         * gdk/linux-fb/gdkdrawable-fb2.c:
1708         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1709         
1710         * gdk/linux-fb/gdkwindow-fb.c:
1711         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1712         Added gdk_window_shape_combine_region.
1713         Added assorted placeholders for unimplemented new GdkWindow API calls.
1714
1715 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1716
1717         * gtk/gtkfilesel.c:
1718         Add more test when converting filenames from/to utf-8.
1719         Don't allow entering text in the filename entry which isn't allowed in
1720         a filename. Just beep instead.
1721
1722 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1723
1724         * gtk/gtkclist.c:
1725         Scroll using gdk_window_scroll(). Don't wait for exposes.
1726         Move the column headers in an order that makes them flash less.
1727
1728 2001-03-10  Hans Breuer  <hans@breuer.org>
1729
1730         * gdk/gdk.def : updated
1731
1732         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1733         to offseting the clip_mask at the right place
1734
1735         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1736         for all the gdkClasses, especially not for the input_only case.
1737         Otherwise flickering wont be avoidable, because we don't get
1738         WM_ERASEBKGND message for these windows.
1739
1740         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1741         and fixed massive redraw problems apparently triggered by Alexanders 
1742         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1743         but it seems to work quite well :-)
1744
1745         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1746         prototype
1747
1748 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1749
1750         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1751         (gtk_list_store_set_cell): Fix a stupid typo.
1752
1753 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1754
1755         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1756         select_all not work if you're in SINGLE mode (it doesn't make that
1757         much sense, anyway.)
1758
1759         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1760         handle types more sanely.
1761         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1762         (_gtk_tree_data_list_node_copy): handle types more sanely.
1763
1764         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1765         GValue better. Converts the type as well.
1766
1767         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1768         GValue better. Converts the type as well.
1769
1770 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1771
1772         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1773         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1774         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1775         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1776
1777         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1778         gdk_im/gdk_ic.
1779
1780 2001-03-09  Hans Breuer  <hans@breuer.org>
1781
1782         * gdk/gdk.def : updated
1783
1784         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1785         for their palette
1786
1787         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1788         removing
1789
1790         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1791         removing and implemented Havoc's GdkWindow state functions; 
1792         stick/unstick only as no-op, cause I don't know how to emulate 
1793         on win32 ...
1794
1795         * gtk/gtk.def : updated
1796
1797         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1798
1799         * gtk/gtktypeutils.c : #include <string.h>
1800
1801         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1802
1803 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1804
1805         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1806         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1807         not a boxed.
1808
1809 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1810
1811         * docs/Changes-2.0.txt:
1812         Document expose event->region change and that gtk_widget_event
1813         doesn't allow passing expose events.
1814
1815         * gdk/gdkevents.h:
1816         Add region to expose event.
1817         
1818         * gdk/gdkevents.c:
1819         Handle event->region in gdk_event_copy() and gdk_event_free().
1820
1821         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1822         Generate expose_event->region when creating expose events.
1823
1824         * gdk/x11/gdkevents-x11.c:
1825         Generate expose events with regions when translating X events.
1826
1827         * gtk/gtkcontainer.[ch]:
1828         Default expose handler that propagates expose events to NO_WINDOW
1829         children. New function gtk_container_propagate_expose()
1830
1831         * gtk/gtkwidget.[ch]:
1832         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1833         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1834         expose events. New function gtk_widget_send_expose() to send expose
1835         events. New function gtk_widget_region_intersect() to calculate
1836         window/region intersections.
1837         
1838         * gtk/gtkmain.c (gtk_main_do_event):
1839         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1840         Use gtk_widget_send_expose() to send expose events.
1841         
1842         * gtk/gtkbin.c:
1843         * gtk/gtkbox.c:
1844         * gtk/gtkfixed.c:
1845         * gtk/gtkimagemenuitem.c:
1846         * gtk/gtklist.c:
1847         * gtk/gtkpacker.c:
1848         * gtk/gtktable.c:
1849         * gtk/gtktree.c:
1850         Remove expose handler, using the default container implementation
1851         instead.
1852         
1853         * gtk/gtkbutton.c:
1854         * gtk/gtkcheckbutton.c:
1855         * gtk/gtkeventbox.c:
1856         * gtk/gtkfixed.c:
1857         * gtk/gtkhandlebox.c:
1858         * gtk/gtklayout.c:
1859         * gtk/gtklistitem.c:
1860         * gtk/gtkmenu.c:
1861         * gtk/gtkmenubar.c:
1862         * gtk/gtkmenuitem.c:
1863         * gtk/gtknotebook.c:
1864         * gtk/gtkoptionmenu.c:
1865         * gtk/gtkpaned.c:
1866         * gtk/gtkscrolledwindow.c:
1867         * gtk/gtktogglebutton.c:
1868         * gtk/gtktoolbar.c:
1869         * gtk/gtktreeitem.c:
1870         * gtk/gtkviewport.c:
1871         Chain expose handler to parent class handler. Use
1872         gtk_container_propagate_expose() to propagate exposes.
1873
1874         * gtk/gtkclist.c (check_exposures):
1875         * gtk/gtktext.c (process_exposes):
1876         Use gtk_widget_send_expose instead of gtk_widget_event.
1877
1878 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1879
1880         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1881
1882 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1883
1884         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1885         unref the nodes.   Fixes bug #50058.
1886
1887         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1888         "::ref_iter" to "::ref_node".
1889         (gtk_tree_model_unref_node): change "::unref_iter" to
1890         "::unref_node". Fixes bug #50064.
1891
1892 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1893
1894         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1895         support for invisible cells.
1896          (gtk_tree_view_bin_expose): ditto
1897
1898 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1899
1900         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1901         on gobjects.
1902
1903         * tests/testtreefocus.c (main): New test file.
1904
1905         * tests/testtreeview.c: update to latest glib changes.
1906
1907         * tests/testtreecolumns.c: update to latest glib changes.
1908
1909 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1910
1911         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1912
1913 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1914
1915         * *.c: added accumulator data argument to g_signal_newc()
1916         functions.
1917
1918         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1919         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1920         * gtk/treestoretest.c (make_window):
1921         s/g_signal_connect/g_signal_connectc/.
1922
1923         * gtk/gtktextbuffer.c: completed signal arg fixups,
1924         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1925
1926 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1927
1928         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1929         G_CONST_RETURN.
1930
1931         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1932         ::hierarchy-changed signal when a widget changes
1933         from anchored to unanchored or vice versa.
1934         (anchored means 
1935          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1936         Use a private flag to keep track of this efficiently.
1937
1938 2001-03-07  Havoc Pennington  <hp@redhat.com>
1939
1940         * gtk/testgtk.c (create_spins): uglify so that size request gets
1941         tested.
1942
1943         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1944         request on values for upper/lower, completes #6152
1945
1946 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1947
1948         * Makefile.am: Remove gtk-config-2.0 again.
1949         (Grrrr, pkg-config. And stops make loops.)
1950
1951 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1952
1953         * gtk/gtksignal.[hc]: removed old emission hook API.
1954         
1955         * docs/Changes-2.0.txt: fixed sections.
1956         
1957         * gtk/gtktextbuffer.c: signal arg fixups.
1958
1959 2001-03-07  Havoc Pennington  <hp@redhat.com>
1960
1961         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1962
1963         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1964         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1965         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1966         validation and the redraw which is higher priority than the
1967         validation.
1968
1969 2001-03-07  Havoc Pennington  <hp@redhat.com>
1970
1971         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1972         (gtk_entry_set_property): remove trailer
1973
1974         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1975         (gtk_entry_get_width_chars): new functions, to set size request to 
1976         a given number of characters
1977
1978         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1979
1980         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1981         (gtk_dialog_get_has_separator): new function
1982         (run_delete_handler): fix to not emit "response" signal
1983         because we already did in the delete event handler installed
1984         at dialog creation time.
1985         
1986         * gtk/gtkdialog.h: add a has_separator property,
1987         add GTK_DIALOG_NO_SEPARATOR flag
1988
1989 2001-03-07  Havoc Pennington  <hp@redhat.com>
1990
1991         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1992         off decorations for a window.
1993
1994         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1995         changes
1996
1997         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1998         to get location of PangoLayout inside the label, closes #51198
1999
2000         * gtk/testgtk.c (create_bbox): fix up button box usage
2001
2002         * gtk/testcalendar.c (create_calendar): fix up button box usage
2003
2004         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2005
2006         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2007
2008         * gtk/gtkhbbox.h: deprecations
2009
2010         * gtk/gtkvbbox.h: deprecations
2011
2012         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2013         emulate deprecated gtk_button_box_get_spacing
2014
2015         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2016         the "set global default" functions
2017         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2018         GtkBox base class
2019
2020         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2021
2022         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2023         render the icon, return the missing image icon.
2024
2025         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2026         image icon if the load fails.   
2027
2028         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2029         when no image is found; should be the Netscape "missing image"
2030         icon eventually but for now is a random image
2031
2032         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2033         role for the session manager
2034
2035         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2036
2037         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2038         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2039
2040         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2041
2042 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2043
2044         * gtk/*.c: marshaller fixes.
2045         
2046         * gtk/gtkmarshal.list: extreme cleanup.
2047
2048         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2049         param spec for now.
2050
2051         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2052         where appliable.
2053
2054         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2055         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2056         which are not reference counted:
2057         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2058         PangoFontDescription, GtkTreeIter and GtkTreePath.
2059
2060 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2061
2062         * gtk/gtktreeselection.h: 
2063         * gtk/gtktreemodel.c:
2064         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2065         file should be included directly, and gobject/gmarshal.h
2066         as well as gtk/gtkmarshal.h even can't be included directly.
2067
2068         * Makefile.am: grr, install gtk-config-2.0.
2069
2070         * gtk/testgtk.c:
2071         * gtk/simple.c:
2072         * gtk/gtkmenu.c:
2073         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2074         passing "*signal*::*" args to gtk_widget_set().
2075         
2076         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2077         
2078         * gtk/*.c: removed trailer arg from property setters and getters.
2079         macro fixups.
2080
2081 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2082
2083         * gtk/gtklabel.c (set_markup): Removed warning
2084
2085 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2086
2087         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2088         field to allow you to hide cell renderers.
2089
2090         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2091
2092         * gtk/gtktreeview.c: Add support for invisible cells.
2093
2094 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2095
2096         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2097         Add "clicked" signal back to columns.
2098
2099         * ChangeLog: remove conflict markers.
2100
2101 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2102
2103         * gtk/gtkbutton.c: Add animation of activation by, on 
2104         activate, pressing the button, and adding a timeout that 
2105         releases the button after 250ms or on key release and
2106         emits ::clicked. (#51501)
2107
2108         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2109         action area, we connect to ::clicked instead of ::activate
2110         so the dialog stays up through the animation.
2111
2112 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2113
2114         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2115         check the ignore_enter flag for the menu shell that
2116         the item is actually a child of, not for attached
2117         submenus. (#51536)
2118
2119 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2120
2121         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2122         special key-press grab handling for widgets within
2123         GtkWindows. Otherwise, fall through to normal case.
2124
2125         This prevents key events being sent twice to GtkInvisible
2126         widgets, which can cause all sorts of mischief.
2127
2128 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2129
2130         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2131         widget is in effect, give the grab widget a first
2132         crack at KEY_PRESS/RELEASE events. (#424)
2133
2134 2001-03-06  James Henstridge  <james@daa.com.au>
2135
2136         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2137         offset for the window_state_event to point at window_state_event
2138         rather than no_expose_event.
2139
2140 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2141
2142         * gtk/gtkimmodule.h: fix busted /* comment */
2143
2144 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2145
2146         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2147         object properties.
2148
2149 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2150
2151         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2152         add object properties.
2153
2154         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2155         to add object properties.
2156
2157         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2158         object properties.
2159
2160         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2161         add object properties.
2162
2163         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2164         object properties.
2165
2166 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2167
2168         * gtk/gtktreemodel.c: renamed "child_toggled" to
2169         "has_child_toggled".
2170
2171         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2172         handle new signal name.
2173
2174         * gtk/gtktreestore.c: Updated to handle new signal name.
2175         * gtk/gtklisttore.c: Updated to handle new signal name.
2176         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2177
2178 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2179
2180         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2181         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2182
2183 2001-03-05  Michael Natterer  <mitch@gimp.org>
2184
2185         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2186         pixbuf-engine coincidentially also failed to make one of it's
2187         parent_class pointers static, causing overwriting of GtkLabel's
2188         parent_class pointer in pixbuf_style_class_init().
2189         (Will commit the fix to the pixbuf-engine too).
2190
2191 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2192
2193         * gdk/gdkwindow.h:
2194         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2195         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2196         gdk_window_set_icon_list for net wmspec functionality.
2197
2198         * gdk/x11/gdkwindow-x11.c:
2199         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2200         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2201         gdk_window_set_icon_list.
2202         Added gdk_wmspec_change_state helper function and used it in the code.
2203         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2204
2205         * gtk/gtkdialog.c (gtk_dialog_init):
2206         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2207
2208         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2209         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2210
2211         * gtk/gtkwindow.c:
2212         new function gtk_window_set_type_hint.
2213         On realize, set type hint and modal hint.
2214
2215         * gtk/gtkwindow.h:
2216         Added type_hint field and gtk_window_set_type_hint.
2217
2218 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2219
2220         * gtk/gtklabel.[ch]:
2221         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2222         New function gtk_label_get_accel_keyval () to get the underline accelerator
2223         of the label. Setting the label pattern overrides other attributes.
2224
2225 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2226
2227         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2228         Added missing initializers to gtk_rc_style_init().
2229
2230 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2231
2232         * gtk/gtktextview.c: fixed bug #51097 about setting 
2233         gtk_text_view_set_border_window_size() if the widget is 
2234         already realized.
2235
2236 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2237
2238         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2239
2240         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2241         comment. Won't do to have duplicated doc comments between
2242         the platform subdirs.
2243
2244 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2245
2246         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2247           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2248
2249         Detectable auto-repeat - make a repeating key generate
2250         press/press/press/release instead of press/release pairs.
2251
2252         If we have Xkb and XkbSetDectableAutoRepeat supports
2253         that, we do it that way. Otherwise, when we get
2254         a release event, we check ahead with XPending to see
2255         if the next key is a KeyPress with the same keycode
2256         and timestamp. (Not 100% reliable, but pretty close.)
2257           
2258 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2259         
2260         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2261         special key-press grab handling for widgets within
2262         GtkWindows. Otherwise, fall through to normal case.
2263  
2264         This prevents key events being sent twice to GtkInvisible
2265         widgets, which can cause all sorts of mischief.
2266  
2267 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2268  
2269         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2270         widget is in effect, give the grab widget a first
2271         crack at KEY_PRESS/RELEASE events. (#424)
2272  
2273 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2274
2275         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2276         to extend the selection. (Roughly based on patch
2277         from Jay Cox, #50939)
2278
2279         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2280         to properly handle previous GDK_BUTTON_PRESS. 
2281         (Patch from Jay Cox, #50938)
2282
2283         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2284         '\0' back along with the deleted text. (#51148)
2285
2286 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2287
2288         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2289         the group when extracting it from the X keyboard event.
2290
2291         * modules/input/Makefile.am modules/input/imipa.c: 
2292         Simple module for entering IPA. (Do we need a 
2293         gtk-stupid-input-tricks CVS module?)
2294
2295 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2296
2297         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2298         const.
2299
2300         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2301
2302         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2303         is no focus widget for the dialog currently, grab the focus as well
2304         as the default.
2305
2306         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2307         the action area's children to iterate through, not the
2308         dialog's children.
2309
2310 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2311
2312         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2313         Add plug-socket tests. (Won't work worth a darn until I commit
2314         the rest of the plug-socket changes, but no reason these
2315         can't go into CVS now.)
2316
2317 2001-03-02  Havoc Pennington  <hp@redhat.com>
2318
2319         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2320         _gdk_region_get_xrectangles()
2321
2322         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2323
2324         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2325
2326         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2327         function, contributed by Ron Steinke    
2328
2329         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2330         gdk_net_wm_supports
2331
2332         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2333         New function, contributed by Ron Steinke
2334
2335         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2336         used to line up the text in the entry when using the entry for
2337         editable sheet cell hacks
2338
2339         * gtk/testgtk.c (create_entry): test the activate_default setting
2340         on GtkEntry
2341
2342         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2343         cause the entry to activate the default button for a dialog when 
2344         activated
2345         (gtk_entry_get_activates_default): new function
2346
2347 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2348
2349         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2350         Hwang to move call to sync_selection() up a few lines
2351         to before the row list is modified, to fix crash when
2352         removing rows in the undo_selection list.
2353
2354         (Test case provided by Daniel Elstner:
2355
2356         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2357
2358 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2359
2360         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2361         of tree->root_tree in parent_set rather than _map(), 
2362         fixing #50892 in a bit better manner.
2363
2364 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2365
2366         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2367
2368 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2369
2370         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2371         gtk_default_draw_shadow.
2372
2373 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2374
2375         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2376         warning, make warnings more verbose, treat a error
2377         in shmat as permanent, and don't try again.
2378         (#51163, Ed Randall.)
2379
2380 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2381
2382         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2383         delay for the first click before starting to scroll.
2384         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2385
2386         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2387         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2388
2389 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2390
2391         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2392         cleanup to remove some references to unused
2393         ->xoffset, ->yoffset.
2394
2395 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2396
2397         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2398         mask. (#51039, fix from Martin Maierhofer)
2399
2400 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2401
2402         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2403         for unshifted + and shifted = for non-us keyboards.
2404         Make <Control>+ and <Control>- work as well as 
2405         <Control>KP_Plus, <Control>KP_Minus for recursive
2406         open/close.  (#2682, René Seindal)
2407
2408 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2409
2410         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2411         the active menu item before deactivating the menu,
2412         so gtk_menu_popdown doesn't change the history. (#50964)
2413         
2414 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2415
2416         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2417         draw lines with text_gc rather than black_gc.
2418         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2419
2420 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2421
2422         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2423         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2424         less interrelated then it was, but it still requires the
2425         GtkTreeView to map it.
2426
2427         * test/testtreecolumn.c: Now I can add a column to one view,
2428         remove it, add it to the another view, remove it, then re-add it
2429         to the first.  Nifty.
2430
2431 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2432
2433         * docs/tutorial/gtk-tut.sgml: Minor corrections
2434
2435 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2436
2437         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2438         GtkRowReference.
2439
2440 2001-02-28  Havoc Pennington  <hp@redhat.com>
2441
2442         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2443         draw_default
2444         (gtk_widget_draw_focus): remove this function; we could instead
2445         make it just gtk_widget_draw(), but in most cases I think the
2446         result would be broken user code, so think it's better to have
2447         that code not compile and get fixed
2448         (gtk_widget_draw_default): ditto
2449
2450         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2451         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2452         
2453         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2454         widgets lose/get the default, instead of calling draw_default
2455         
2456         * docs/Changes-2.0.txt: note about all this
2457
2458         Then fixed every widget in GTK, I won't list all the filenames.
2459
2460 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2461
2462         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2463         _gtk_tree_row_reference_deleted.
2464         (inserted_callback): Proxy out to
2465         _gtk_tree_row_reference_inserted.
2466         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2467         get around signal emission ordering problem.
2468
2469         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2470         fix to work with SINGLE 
2471         (_gtk_tree_selection_internal_select_node): Major sanitization on
2472         selections.  SINGLE now seems to work.
2473
2474         * tests/Makefile.am: add testtreecolumn.c:
2475
2476         * tests/testtreecolumn.c: New test.  Mostly points out selection
2477         bugs currently, but will test columns later.
2478
2479         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2480         selection bug.  I hate touching this code -- it's scary.
2481
2482 2001-02-26  Havoc Pennington  <hp@redhat.com>
2483
2484         * gtk/testgtk.c: test the window state stuff
2485
2486         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2487         window come to the user's attention as if it were just created
2488         (gtk_window_iconify): new function
2489         (gtk_window_deiconify): new function
2490         (gtk_window_stick): new function
2491         (gtk_window_unstick): new function
2492         (gtk_window_maximize): new function
2493         (gtk_window_unmaximize): new function
2494
2495         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2496
2497         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2498
2499         * gdk/x11/gdkevents-x11.c: create window state events when
2500         appropriate
2501         (gdk_wmspec_supported): new function
2502
2503         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2504         iconification before showing the window
2505         (gdk_window_deiconify): new function
2506         (gdk_window_stick): new function
2507         (gdk_window_unstick): new function
2508         (gdk_window_maximize): new function
2509         (gdk_window_unmaximize): new function
2510
2511         * gdk/gdkwindow.c: store the window state in the window; 
2512         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2513         window->mapped.
2514         (gdk_window_get_state): return the current window state
2515
2516         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2517         (gdk_event_get_state): handle GDK_WINDOW_STATE
2518         (gdk_synthesize_window_state): function to create the window state
2519         events
2520
2521         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2522         event, for changes to "window state" such as maximized, sticky, 
2523         etc.
2524         
2525         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2526         focuses a window
2527
2528         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2529         finds out if we support a given WM spec hint
2530
2531 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2532
2533         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2534
2535 2001-02-25  Hans Breuer  <hans@breuer.org>
2536
2537         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2538         cause we want to loose those prototypes only in the latter case
2539
2540         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2541         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2542         impl member variable instead
2543
2544         * gtk/gtk.def : updated
2545
2546         * gtk/gtklist.c : 
2547         * gtk/gtkmenus.c : include <string.h> for memset ()
2548
2549         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2550         for everthing built here, but for gtk-x.x.dll only. This solves
2551         problem of indifferent gtk type definitions
2552
2553 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2554
2555         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2556
2557 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2558
2559         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2560         column that is exposed.
2561
2562         (_gtk_tree_view_update_size): Changed name from set_size, and
2563         changed function to do more work, and not force people calling it
2564         to figure out the size.  Simplifies a lot of code elsewhere.
2565
2566 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2567
2568         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2569         return solid masks for xpms that have no transparent color.
2570         This makes the ..._create_from_xpm... API backwards
2571         compatible.
2572
2573 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2574
2575         * README.win32: Update. Mention the gtk-1-3-win32-production
2576         branch.
2577
2578         * gdk/win32/bdfcursor.c: New file. A program that generates
2579         xcursors.h. Thanks to Stefan Ondrejicka.
2580
2581         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2582         compact format.
2583
2584         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2585
2586         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2587         function, uses xcursors.h.
2588         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2589         cursor from inline data instead of using LoadCursor() to generate
2590         it from a resource.
2591
2592         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2593         event, must check the Windows message for mouse button state, as
2594         the GDK event state might not have been built if it is
2595         undelivered. Remove one goto.
2596
2597         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2598         SetCursor() if the current cursor as returned by GetCursor() is
2599         the window's previous cursor. The ChildWindowFromPoint() test
2600         apparently didn't work correctly.
2601
2602         * gdk/win32/rc/*.cur: Remove.
2603
2604         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2605
2606         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2607
2608         * gtk/makefile.{mingw,msc}.in: Updates.
2609
2610 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2611
2612         * gtk/gtktreemodel.h: add functions for signal emission.
2613
2614         * gtk/gtktreestore.c: move to use above functions instead of
2615         g_signal_emit.
2616
2617         * gtk/gtkliststore.c: ditto
2618
2619 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2620
2621         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2622         GObject instead of GtkObject.
2623
2624         * gtk/gtkliststore.c: ditto.
2625
2626         * gtk/gtktreemodelsort.c: ditto.
2627
2628         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2629         GtkTreeModelIface, instead of in each model.
2630
2631 2001-02-21  Havoc Pennington  <hp@redhat.com>
2632
2633         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2634         unbreak this function
2635
2636         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2637         properties
2638
2639         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2640         properties
2641
2642         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2643         properties
2644
2645         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2646         mean unset the max length
2647
2648 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2649
2650         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2651         Changed name to be set_cell_data_func to make it clear what
2652         the functino does.  Close bug #51069.
2653
2654 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2655
2656         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2657         have memory actually freed.  Keeps box running longer.
2658
2659 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2660         
2661         * gtk/gtkseparatormenuitem.[ch]:
2662         Added new menu separator item. The drawing and size handling
2663         is still done in GtkMenuItem, but the API is a bit more sane.
2664         
2665         * gtk/Makefile.am:
2666         Add gtkseparatormenuitem.[ch].
2667
2668         * gtk/gtk.h:
2669         Add gtkseparatormenuitem.h.
2670         
2671         * gtk/gtkentry.c:
2672         * gtk/gtkmenufactory.c:
2673         * gtk/gtktextview.c:
2674         Use the new API for menu separators.
2675         
2676         * demos/gtk-demo/menus.c (create_menu):
2677         Add some GtkSeparatorMenuItem demo code.
2678
2679 2001-02-20  Havoc Pennington  <hp@redhat.com>
2680
2681         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2682         Lee Mallabone
2683
2684         * gtk/gtkarrow.c: Convert to new property API, patch from 
2685         Lee Mallabone
2686
2687 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2688
2689         * tests/testtreeview.c (toggled_callback): fix to reflect change
2690         in GtkTreeModelStore.
2691
2692 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2693
2694         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2695         function to create an icon set from a pixbuf.
2696
2697 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2698
2699         * gtk/gtkcellrenderertext.[ch]:
2700         Add a "markup" property.
2701
2702         * gtk/treestoretest.c:
2703         Use the markup property, remove some leftover stuff from
2704         GtkTreeModelMapping.
2705
2706 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2707
2708         * gtk/gtklabel.c (gtk_label_set_selectable):
2709         Queue a redraw if the selectable setting was changed.
2710
2711 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2712
2713         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2714         Actually copy the whole gc, not just the public parts.
2715         
2716         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2717         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2718         labels.
2719
2720 2001-02-19  Havoc Pennington  <hp@pobox.com>
2721
2722         * gdk/gdkwindow.c: docs
2723
2724         * gdk/gdkrgb.c: docs
2725
2726         * gdk/gdkregion-generic.c: docs
2727
2728         * gdk/gdkgc.c (gdk_gc_set_values): docs
2729
2730         * gdk/gdkdraw.c: docs
2731
2732         * gdk/gdkdrawable.h: deprecate drawable get/set data
2733
2734 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2735
2736         * demos/gtk-demo/dialog.c: Add simple new demo.
2737
2738 2001-02-19  Havoc Pennington  <hp@redhat.com>
2739
2740         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2741         insert_child_anchor signal, bug #50245
2742
2743         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2744         from create_child_anchor, so the anchor is passed in
2745
2746         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2747         (_gtk_widget_segment_new): have the child anchor object passed in, 
2748         instead of creating it.
2749
2750         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2751         to gtk_text_buffer_get_modified
2752
2753 2001-02-19  Havoc Pennington  <hp@redhat.com>
2754
2755         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2756         changed GLib without fixing GTK
2757
2758         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2759         functions to have an underscore in front. Most of them should 
2760         probably just go away, but for starters don't export them.
2761         Bug #50482
2762
2763 2001-02-19  Havoc Pennington  <hp@redhat.com>
2764
2765         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2766         excluded by default
2767
2768         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2769         clean up the old code a bit
2770
2771         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2772         inconsistent state
2773
2774         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2775         draw inconsistent state
2776
2777         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2778         (create_menu): add inconsistent test
2779
2780         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2781         new function
2782         (gtk_check_menu_item_get_inconsistent): new function
2783         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2784         state (using etched in for now)
2785
2786         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2787         draw inconsistent state
2788
2789         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2790         function, used when the user has selected a range of stuff in
2791         different states
2792         (gtk_toggle_button_get_inconsistent): accessor for that
2793         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2794         don't know what else to do)
2795
2796 2001-02-19  Hans Breuer <hans@breuer.org>
2797
2798         * gtk/gtk.def : updated exported symbols
2799
2800         * gtk/makefile.msc.in : updated
2801
2802         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2803         a colormap, when invoked from testgtk::entry. I'm not sure where
2804         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2805         avoids immediate crashing ...
2806
2807         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2808         any objections ?
2809
2810         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2811         0 parameter. At least msvc doesn't like macros with var args. 
2812         I simply removed the extra 0, was it a feature or a typo ?
2813
2814         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2815         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2816         because the value assignment to the internal struct wasn't working.
2817         I'm not absolutely sure. The problem could have been resolved by
2818         changing the "func" declartion in the struct, but was the pointer
2819         to the function pointer intended ?
2820
2821         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2822
2823         * gdk/gdk.def : updated exported symbols
2824
2825         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2826         only use SetDIBitsToDevice if there is a palette at the drawable
2827         and the image is GDK_VISUAL_PSEUDO_COLOR
2828
2829         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2830
2831         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2832
2833         * gdk/*/makefile.msc : updated
2834
2835 2001-02-19  Havoc Pennington  <hp@redhat.com>
2836
2837         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2838         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2839
2840         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2841         (gdk_key_repeat_restore): nuke
2842
2843         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2844         (gdk_init_check): no atexit func
2845
2846         * gdk/gdkrgb.h: mark some stuff deprecated
2847
2848         * gdk/gdkcolor.h: mark some stuff deprecated
2849         
2850         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2851
2852         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2853
2854 2001-02-16  Havoc Pennington  <hp@redhat.com>
2855
2856         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2857         scroll steps.
2858
2859         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2860         steps, and add Ctrl-arrow shortcuts for paging visually as with
2861         HScale, since Page Up and Page Down move logically.
2862
2863         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2864         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2865         
2866         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2867         steps
2868         (gtk_range_scroll): handle the visual steps
2869
2870         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2871         scroll steps
2872
2873         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2874         steps, not the logical ones.
2875
2876         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2877         (scroll_vertical): handle up/down steps
2878
2879 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2880
2881         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2882         Copy data and free data with free().
2883
2884         * gdk-pixbuf/gdk-pixbuf.c:
2885         * gdk-pixbuf/io-jpeg.c:
2886         * gdk-pixbuf/io-png.c:
2887         Use g_try_malloc/g_free instead malloc/free.
2888         
2889         * gdk-pixbuf/test-gdk-pixbuf.c:
2890         Must... initialize... gobject...
2891         
2892         * gdk-pixbuf/pixops/timescale.c:
2893         * gtk/gtkcalendar.c:
2894         Use g_malloc instead of malloc.
2895         
2896 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2897
2898         * gtk/testgtkrc:
2899         Comment out property assignments, these don't work yet.
2900
2901 2001-02-17  Havoc Pennington  <hp@pobox.com>
2902
2903         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2904         bit.
2905
2906 2001-02-17  Havoc Pennington  <hp@pobox.com>
2907
2908         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2909         shadowed variables that had broken size request in some cases,
2910         leading to bogus tooltips (#50996)
2911
2912 2001-02-06  Jon K Hellan  <hellan@acm.org>
2913
2914         Implement fast browsing of tooltips, bug #50619
2915         
2916         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2917         and last_popdown
2918         
2919         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2920         use_sticky_delay and last_popdown.
2921         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2922         time of popdown.
2923         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2924         is NULL.
2925         (gtk_tooltips_recently_shown): New static function.  Return true
2926         if < sticky_delay has elapsed since last popdown.
2927         (gtk_tooltips_event_handler): Display window after sticky_delay
2928         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2929         since last popdown.
2930         
2931 2001-02-17  Havoc Pennington  <hp@pobox.com>
2932
2933         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2934         instead of (). #6394
2935
2936         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2937         G_CONST_RETURN, make it return by reference, #50473
2938         
2939 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2940
2941         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2942         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2943         setup fields contain garbage (e.g. subwindow, breaking
2944         gdk_drawable_ref() upon event copy).
2945         (gtk_menu_stop_navigating_submenu_cb): same here.
2946
2947         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2948         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2949         * gtk/gtkclist.c (vertical_timeout): 
2950         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2951         default-zero-intialization for unions to memset(,0,), as unions are
2952         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2953         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2954
2955         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2956         g_closure_sink() warning.
2957
2958         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2959         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2960         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2961         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2962         
2963 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2964
2965         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2966         gtk_*_store_get, and moved to GtkTreeModel.
2967
2968         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2969
2970         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2971
2972         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2973
2974         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2975         set the func.
2976
2977         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2978         freeze/thaw notify between setting all the properties for a cell.
2979
2980         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2981
2982 2001-02-15  Havoc Pennington  <hp@redhat.com>
2983
2984         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2985         the X coordinates so they're with respect to the line, rather than 
2986         with respect to the layout.
2987
2988         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2989         Mallabone
2990
2991         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2992         and inverted test
2993
2994         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2995         #50806
2996
2997         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2998
2999         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3000         gtk_text_iter_is_end
3001
3002         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3003         rename gtk_text_buffer_get_end_iter
3004
3005         * gtk/testgtk.c (create_labels): Add test for selectable
3006
3007         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3008         the selection stuff. This code is kind of broken since it doesn't 
3009         use the theme engine.
3010
3011         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3012         fix infinite loop and y offset problem
3013         (gdk_draw_layout_line_with_colors): fix foreground color handling
3014
3015         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3016         that makes the label selectable.
3017         
3018         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3019         layout when the style is set, since fonts etc. could have changed.      
3020
3021 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3022
3023         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3024
3025         * gtk/gtktreemodelsimple.[ch]: removed.
3026
3027 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3028
3029         * gtk/gtktreemodelmapping.[ch]:
3030         New files. Implement GtkTreeModelMapping.
3031         
3032         * gtk/Makefile.am:
3033         Add gtktreemodelmapping.[ch].
3034         
3035         * gtk/gtk.h:
3036         Add gtktreemodelmapping.h
3037
3038         * gtk/treestoretest.c:
3039         Test the GtkTreeModelMapping
3040
3041 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3042
3043         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3044         have a demo, we might as well pass in real values.  Thanks to
3045         clahey for pointing this out.
3046
3047 2001-02-14  Havoc Pennington  <hp@pobox.com>
3048
3049         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3050         "static" to a private function
3051         (gtk_image_menu_item_class_init): remove destroy handler,
3052         add "image" object property
3053
3054 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3055
3056         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3057         Add a shortcut if the window and the current clip_region doesn't
3058         overlap. This is needed when there are a lot of windows in a
3059         window. The layout test in testgtk is a good test.
3060
3061         * gdk/linux-fb/gdkwindow-fb.c:
3062         Whitespace fix.
3063
3064 2001-02-13  Sven Neumann  <sven@convergence.de>
3065
3066         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3067
3068 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3069
3070         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3071         Don't reference last_cursor if it is null. Fixes crash when rotating
3072         the screen before having moved the mouse.
3073
3074         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3075
3076         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3077
3078         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3079         when using 90 or 270 degrees rotation.
3080
3081 2001-02-12  Havoc Pennington  <hp@pobox.com>
3082
3083         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3084         it always set the foreground, even if we were only using
3085         a stipple.
3086         (gdk_draw_layout_line_with_colors): new function, allow
3087         override colors
3088         (gdk_draw_layout_with_colors): new function, allow override
3089         colors
3090         (gdk_pango_layout_line_get_clip_region): function to get the clip
3091         region for a logical text range
3092         (gdk_pango_layout_get_clip_region): get the clip region for a
3093         logical text range
3094
3095         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3096         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3097         the right number of arguments.
3098
3099         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3100         enhance the function to check that node data corresponds to a 
3101         view still belonging to the tree.
3102
3103         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3104         GtkTreePath
3105         (gtk_tree_view_inserted): ditto
3106         (gtk_tree_view_child_toggled): ditto
3107
3108         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3109         simplify this code.
3110
3111         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3112         a PangoAttrList
3113
3114         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3115
3116         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3117
3118         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3119         size in the size request 
3120         (gtk_menu_bar_size_allocate): consider toggle size here
3121
3122         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3123         that displays a widget in the toggle slot
3124
3125         * gtk/testgtk.c: test GtkImageMenuItem
3126
3127         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3128         
3129         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3130         request and allocation
3131
3132         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3133
3134         * gtk/gtkcheckmenuitem.c
3135         (gtk_check_menu_item_toggle_size_request): ditto
3136         
3137 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3138
3139         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3140         reference.
3141
3142         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3143         and refuse to initialize GTK+ if they fail.
3144
3145 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3146
3147         * configure.in: Add check for gtk-doc version.
3148
3149 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3150
3151         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3152         where the xpad/ypad was only being used on one side!
3153
3154 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3155
3156         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3157         function, copied from X11 version.
3158
3159         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3160         DestroyCursor failures. The reason for the problem (despite the
3161         inconsistent messages from GetLastError()) was that
3162         DestroyCursor() cannot be called while a cursor is set in a
3163         window. Set the new cursor first and then destroy the old one.
3164         Thanks to jpe@archaeopteryx.com.
3165
3166         * gdk/win32/gdkcc-win32.c: Remove.
3167
3168         * gdk/win32/Makefile.am: Remove from here, too.
3169         
3170         * gdk/gdk.def
3171         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3172
3173         * gtk/gtk.def
3174         * gtk/makefile.mingw.in: Updates.
3175
3176 2001-02-08  Havoc Pennington  <hp@redhat.com>
3177
3178         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3179         add a widget to a bin that already has a child.
3180
3181         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3182
3183         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3184         
3185         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3186
3187         * gdk/gdk.h: remove gdkcc.h
3188
3189         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3190
3191         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3192         GdkPixbuf, since the previous implementation was GdkColorContext
3193         dependent.
3194
3195         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3196         
3197 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3198
3199         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3200         a sane value!
3201
3202 2001-02-08  Havoc Pennington  <hp@redhat.com>
3203
3204         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3205         lighten them.
3206
3207 2001-02-08  Havoc Pennington  <hp@redhat.com>
3208
3209         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3210         validation idle
3211
3212         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3213         cell renderer
3214
3215         * demos/pixbuf-demo.c (timeout): remove deprecated
3216         gtk_widget_draw
3217
3218         * demos/testpixbuf-save.c (main): remove deprecated
3219         gtk_drawing_area_size
3220
3221         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3222         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3223         at the start of the allocation.
3224         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3225         unsetup or NULL model.
3226
3227         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3228         even/odd/sorted cells in the tree view.
3229
3230         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3231         bugfixes
3232
3233         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3234         backgrounds with draw_flat_box using different detail for even/odd
3235         rows.
3236
3237         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3238         row, so we can draw the alternating colors thing
3239
3240         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3241         property from a synonym property, notify for the synonym.
3242         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3243         (gtk_text_tag_get_property): Always return the font, even if
3244         all its fields aren't set
3245
3246         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3247         store the attr list; it leaves us with no way to change attributes
3248         in _render according to the render flags, and no way to implement
3249         get_property. Instead store all the specific text attributes. 
3250         Separate whether an attribute is enabled from its value. Sync all
3251         properties with GtkTextTag, make them all consistent, etc.
3252
3253         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3254         renderers can highlight the sort row/column     
3255
3256         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3257         accessor functions to get values; this has the side effect of
3258         showing up which accessor functions were missing. Added those.
3259
3260         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3261         set_alignment, to be consistent with GtkLabel, GtkMisc
3262
3263         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3264         arrow.
3265
3266         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3267
3268         * gtk/gtktreesortable.h: updates in here
3269
3270 2001-02-07  Sven Neumann  <sven@convergence.de>
3271
3272         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3273         pango dimensions after painting the background. We used to draw
3274         gigantic flat boxes here.
3275
3276 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3277
3278         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3279         error introduced with earlier commit) (pointed out by
3280         Ollie Lho)
3281
3282 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3283
3284         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3285         which are no longer necessary.
3286
3287 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3288
3289         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3290
3291 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3292
3293         * gdk/gdk.def
3294         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3295         Provide dummy implementations.
3296
3297 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3298
3299         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3300
3301         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3302         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3303         deprecated this function.
3304
3305         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3306         argument.
3307
3308 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3309
3310         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3311
3312 2001-02-03  Havoc Pennington  <hp@pobox.com>
3313
3314         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3315         Mikael Hermansson with patch from Mikael (if there was a toggle
3316         start one after the first character in the range, this function
3317         was broken). Bug #50380
3318
3319 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3320
3321         * configure.in: Remove confusing comment about X11.
3322
3323 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3324
3325         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3326         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3327         
3328 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3329
3330         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3331         it breaks things on BSD. If you want to compile GTK+ with
3332         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3333         when configuring, since GTK+ simply can't be "pure ANSI" 
3334         in the header files it uses. (#8170, Greg Hudson)
3335
3336 2001-02-02  Havoc Pennington  <hp@redhat.com>
3337
3338         * gtk/gtkwindow.c: docs
3339
3340         * gtk/gtkwidget.c: docs
3341         (gtk_widget_set_colormap): add a reference to the colormap
3342         (gtk_widget_get_default_colormap): add a reference to the colormap
3343
3344         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3345
3346         * gtk/gtktextiter.c: docs
3347
3348         * gtk/gtkmain.c (gtk_propagate_event): docs
3349
3350         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3351         (gtk_paned_set_position): docs
3352
3353         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3354         sort interface, no implementation yet.
3355
3356         * demos/testpixbuf.c (new_testrgb_window): replace
3357         gtk_drawing_area_size() with gtk_widget_set_usize()
3358
3359         * demos/testpixbuf-drawable.c (main): ditto
3360         
3361         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3362
3363         * gtk/gtktextbuffer.c: docs
3364
3365         * gtk/gtkstock.c: docs
3366
3367         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3368
3369         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3370
3371         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3372         
3373         * gtk/gtkimage.c: add some docs in here
3374         (gtk_image_size_request): change name of
3375         gtk_widget_render_stock_icon
3376         (gtk_image_get_icon_set): don't dup returned string
3377         (gtk_image_get_icon_set): don't dup returned string
3378
3379         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3380         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3381         and gtkiconfactory.h functions
3382
3383         * gtk/gtkiconfactory.c: add some docs in here
3384
3385         * gtk/gtkmain.c (gtk_get_default_language): document
3386         (gtk_get_current_event): document
3387         (gtk_get_current_event_state): document
3388         (gtk_get_event_widget): document
3389
3390         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3391
3392         * gtk/gtkcontainer.c: Add some documentation
3393         (gtk_container_add): give a more explanatory warning on adding an
3394         already-parented widget, this is kind of a FAQ and also a common
3395         typo that's easier to debug with a nice warning 
3396
3397         * gtk/gtkcellrenderertoggle.c
3398         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3399         adding this, it's useless
3400         (gtk_cell_renderer_toggle_set_active): remove
3401         (gtk_cell_renderer_toggle_get_radio): add
3402
3403         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3404         the NULL cell renderer, that doesn't make any sense to me. 
3405
3406         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3407         demo code should never use deprecated features.
3408
3409         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3410         code should never use deprecated features.
3411
3412         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3413         gtk_widget_queue_clear_area deprecated
3414
3415         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3416         deprecated
3417
3418         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3419
3420         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3421         a GdkImage deprecated, replaced by new consistently-named
3422         functions       
3423
3424         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3425
3426         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3427
3428         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3429         deprecated
3430
3431         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3432         so it won't appear in docs and confuse people.
3433
3434         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3435
3436         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3437         macros deprecated. (can't mark the type itself deprecated, since
3438         GtkProgressBar is not deprecated and we need the type decl to use
3439         GtkProgressBar)
3440
3441         * gtk/gtkpixmap.h: Mark deprecated
3442
3443         * gtk/gtkoldeditable.h: Mark deprecated
3444
3445         * gtk/gtklist.h: Mark deprecated
3446
3447         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3448         for anything anymore.
3449
3450         * gtk/gtkctree.h: Mark deprecated
3451
3452         * gtk/gtkclist.h: Mark deprecated
3453
3454         * gtk/gtkpreview.h: Mark deprecated
3455
3456         * gtk/gtkpacker.h: Mark deprecated
3457
3458         * gtk/gtktipsquery.h: Mark deprecated
3459
3460         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3461
3462         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3463
3464         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3465
3466         * gtk/gtkruler.h: Add comment that it will move out of GTK
3467
3468         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3469
3470         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3471
3472 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3473
3474         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3475         gdk_colormap_sync private since it was never exported
3476         in a header file.
3477
3478         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3479         colormap->colors[] for StaticGray, StaticColor colormaps.
3480
3481         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3482         was being used as if it was image->bits_per_pixel.
3483
3484         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3485         for the image in the GdkImage structure since it isn't
3486         reconstructable, and we need it to handle packed types
3487
3488         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3489         the assumption that on Win32 image->bits_per_pixel == image->depth,
3490         always.
3491
3492         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3493
3494         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3495         warning message if no converter can be found. 
3496
3497 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3498
3499         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3500         chars to isupper() / tolower(). (#567)
3501
3502         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3503         to clear up 64-bit warnings. (#567)
3504
3505 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3506
3507         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3508         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3509
3510         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3511         since some people set $(libdir) separately. (#1290, David Kaelbling)
3512
3513 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3514
3515         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3516         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3517         MAXPATHLEN, but the code here depends on a fixed value.)
3518         (#4524)
3519
3520 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3521
3522         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3523         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3524
3525 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3526
3527         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3528         viewable there is no way that moving the node will cause the 
3529         focus row to become not viewable, so omit check on the visibility
3530         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3531
3532 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3533
3534         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3535         selection before inserting new text.
3536
3537 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3538
3539         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3540         Make the sensitivity of the reparented child track that of
3541         the original parent menu item. (#34218, David Hodson)
3542
3543         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3544         the case where the current item is destroyed properly.
3545
3546         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3547         some edge cases with child-less menuitems.
3548         
3549 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3550
3551         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3552         key pop down window. (#12074, Jon K Hellan)
3553
3554 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3555
3556         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3557         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3558         The solution here isn't perfect - you get an extraneous
3559         emission of "toggle", which could conceivably confuse an app,
3560         but better than the current situation. LXR search seems to
3561         indicate that no apps in GNOME CVS connect to "toggle".
3562
3563 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3564
3565         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3566         gtk_public_h_sources to directly here to avoid warning when
3567         building srcdir != builddir. (#9656)
3568
3569 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3570
3571         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3572         handlers in gtkrange.c return the proper values (TRUE == handled)
3573         (#10316).
3574
3575         This is just the tip of the iceberg, but gtkrange.c is the
3576         most common place where the propagation is problematical,
3577         and also a place where it is almost certainly safe to change
3578         this in the stable branch.
3579
3580         (You don't want right click popups on a range control or anything...)
3581
3582 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3583
3584         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3585         area on focus out, even if a background pixmap isn't set.
3586         (#13941)
3587         
3588 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3589
3590         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3591         to deal with setting the shape properly when scrolling arrows are
3592         turned on, but not visible because there is sufficient space.
3593         (#13432)
3594
3595 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3596
3597         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3598         items with submenus, destroy the item along with the submenu.
3599         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3600         properly.
3601
3602         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3603         later.
3604
3605 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3606
3607         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3608         the focus widget sometimes wasn't drawn with the default if there
3609         was no default widget.
3610
3611         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3612         unreference pixmaps. 
3613
3614         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3615         for some extra safety.
3616
3617 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3618
3619         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3620         the text of a cell to the old pointer value better, by
3621         copying the new text before freeing the old text. Some code
3622         cleanup. (#8079, Karl Nelson)
3623
3624 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3625
3626         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3627         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3628
3629 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3630
3631         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3632         item from a menu, check to see if it matches 
3633         menu->old_active_menu_item, and if so, unref and clear
3634         old_active_menu_item (Patch from Pavel Cisler)
3635
3636         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3637         menu_shell->active_menu_item, if it is the child being
3638         removed. (Patch based on that of Gene Ragan, #50337)
3639
3640 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3641
3642         * gdk/linux-fb/gdkselection-fb.c: 
3643         * gdk/linux-fb/gdkcolor-fb.c: 
3644         * gdk/linux-fb/gdkdrawable-fb2.c: 
3645         * gdk/linux-fb/gdkfont-fb.c: 
3646         * gdk/linux-fb/gdkim-fb.c: 
3647         * gdk/linux-fb/gdkinput.c: 
3648         * gdk/linux-fb/gdkkeyboard-fb.c: 
3649         * gdk/linux-fb/gdkmain-fb.c: 
3650         * gdk/linux-fb/gdkrender-fb.c: 
3651         A bunch of whitespace cleanup.
3652         
3653 2001-01-30  Havoc Pennington  <hp@pobox.com>
3654
3655         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3656         #ifdef GTK_ENABLE_BROKEN.
3657
3658         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3659         GTK_ENABLE_BROKEN just before including the broken headers.
3660         
3661         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3662         deprecated types registered.
3663
3664         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3665         we have to test the broken stuff.
3666
3667         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3668         
3669 2001-01-30  Havoc Pennington  <hp@redhat.com>
3670
3671         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3672         here where prev pointer was set to the wrong thing
3673
3674         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3675         (gtk_tree_path_is_descendant): new function
3676
3677         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3678         cached length
3679         (gtk_list_store_get_iter): don't modify iter if we can't get the
3680         path.
3681
3682         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3683         
3684         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3685         GtkTreeDragDest
3686
3687         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3688         was causing segfault
3689
3690         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3691         pointer to NULL
3692
3693         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3694
3695         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3696         on returning FALSE
3697         (gtk_list_store_iter_children): ditto
3698         (gtk_list_store_iter_nth_child): ditto
3699         (gtk_list_store_iter_nth_child): ditto
3700         (gtk_list_store_iter_parent): ditto
3701
3702         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3703         on iter->user_data != NULL instead of silently accepting it.
3704         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3705         we are returning TRUE.
3706         (gtk_tree_store_iter_children): ditto
3707         (gtk_tree_store_iter_nth_child): ditto
3708         (gtk_tree_store_iter_parent): ditto
3709         (gtk_tree_store_insert): remove handling of parent->user_data ==
3710         NULL, replace with parent == NULL       
3711
3712         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3713         and a comment explaining things
3714
3715         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3716         interface support to GtkTreeStore.
3717
3718         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3719         FALSE if no prev, fix
3720
3721         * gtk/gtktreeview.c (set_source_row): use a row reference
3722         (set_dest_row): use a row reference
3723
3724 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3725
3726         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3727         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3728         (gtk_tree_selection_select_iter): The same as above.
3729
3730 2001-01-26  Havoc Pennington  <hp@redhat.com>
3731
3732         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3733         which holds a handle to a specific row (particular set of values
3734         in the model, i.e. pointer-identity row).
3735
3736         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3737         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3738         Still need to use it for the src/dest row saved on the drag context.
3739
3740 2001-01-26  Havoc Pennington  <hp@redhat.com>
3741
3742         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3743
3744         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3745         not offset by TREE_VIEW_HEADER_HEIGHT
3746         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3747         TREE_VIEW_HEADER_HEIGHT
3748
3749         * configure.in (included_loaders): for me, --with-included-loaders
3750         generates the error "the specified loader yes does not exist",
3751         i.e. the arg defaults to "yes", so change test for value ""
3752         to test for value "yes", and include all loaders in that case.
3753
3754         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3755
3756         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3757         handle TREE_VIEW_VERTICAL_SEPARATOR
3758         (gtk_tree_view_bin_expose): fix to consider the row offset as
3759         pointing halfway into vertical separator.       
3760         (gtk_tree_view_draw_node_focus_rect): ditto
3761
3762         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3763         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3764         (TRUE) to be called.
3765
3766         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3767         debug mode where the invalid region is colored in on invalidate,
3768         so you can see the flicker and know whether your redraw code is 
3769         doing a good job.
3770
3771         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3772         tree window coordinates (clip rect is in tree window coords)
3773
3774         * gtk/Makefile.am: add gtktreednd.[hc]
3775
3776         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3777
3778         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3779         drag-and-drop data operations on a model (so we can set up tree
3780         drag-and-drop automatically)
3781
3782         * gtk/testgtk.c: Add a window to change sensitivity in the
3783         GtkLabel test; add a way to change the entry frame in GtkEntry
3784         test
3785
3786         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3787         (gtk_entry_get_has_frame): new functions to remove the frame
3788         around an entry
3789         (gtk_entry_size_request): shrink requisition if no frame
3790         (gtk_entry_draw_focus): don't draw frame if no frame
3791
3792         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3793         checks inside a cell renderer
3794         (gtk_default_draw_option): ditto for options
3795
3796         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3797         children from the alignment, not the button
3798         (gtk_tree_view_column_init): ref/sink the column, to emulate
3799         GObject refcounting.
3800
3801         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3802         
3803         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3804         Use theme functions to draw the toggles 
3805
3806         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3807
3808         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3809         GdkPangoAttrEmbossed to use in rendering insensitive text
3810
3811         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3812
3813         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3814         using new GDK features
3815         
3816 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3817
3818         * gtk/gtkimage.c:
3819         Splitted gtk_image_clear into gtk_image_clear() and
3820         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3821         to avoid leaks.
3822
3823         * gtk/gtklabel.c (set_markup):
3824         Don't leak text.
3825
3826         * gtk/gtktextlayout.c:
3827         Always free display->shaped_objects.
3828
3829         * gtk/testgtk.c (create_clist):
3830         Don't leak custom style.
3831
3832 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3833
3834         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3835         Don't leak image. Simplify using gdk_colormap_query_color().
3836         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3837
3838         * linux-fb/gdkcolor-fb.c:
3839         Implemented gdk_colormap_query_color.
3840
3841 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3842
3843         * linux-fb/gdkcursor-fb.c:
3844         Don't leak built-in cursors.
3845
3846         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3847         Don't leak tmp_points.
3848
3849         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3850         Don't modify desc. Don't leak font if the PangoFont
3851         isn't found.
3852         
3853         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3854         Free dash_list.
3855
3856         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3857         Don't leak string.
3858         
3859 2001-01-20  Havoc Pennington  <hp@pobox.com>
3860
3861         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3862         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3863         me, matches Pango
3864
3865 2001-01-22  Havoc Pennington  <hp@redhat.com>
3866
3867         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3868
3869         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3870
3871         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3872         Remove, move back to gdk-pixbuf
3873
3874         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3875         to all the word functions
3876
3877         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3878         before doing anything on NULL layout or if we don't have the focus
3879
3880         * gtk/testtext.c (fill_example_buffer): "justification"
3881
3882         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3883         to be called "justification" not "justify"
3884
3885         * demos/gtk-demo/textview.c (create_tags): "justification"
3886         
3887         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3888
3889 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3890
3891         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3892         Don't leak visible_region. Use visible_region instead of region.
3893         
3894         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3895         Don't do extra gdk_drawable_ref(). This is not X.
3896         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3897         gdk_fb_focused_window is ref:ed.
3898         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3899         windows.
3900
3901 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3902
3903         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3904         Don't leak the PangoFontDescriptor.
3905
3906 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3907
3908         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3909         when not realized.
3910         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3911         (gtk_tree_view_realize): add scroll_to support
3912         (gtk_tree_view_finalize): add a finalize method.  Populate.
3913         (gtk_tree_view_insert_column): ref and sink the column.
3914         (gtk_tree_view_append_column): ref and sink the column.
3915         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3916         individual nodes.  Should make the code much more efficient, if
3917         actually used.
3918
3919 2001-01-19  Havoc Pennington  <hp@redhat.com>
3920
3921         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3922         byte_offset variable was being used to mean both "offset into
3923         layout" and "offset into buffer line" which was no longer true
3924         with addition of preedit string; fix
3925
3926 2001-01-19  Havoc Pennington  <hp@redhat.com>
3927
3928         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3929
3930         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3931         function
3932
3933         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3934         implement
3935
3936         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3937         scroll_to_cell, matches TextView scroll functions better
3938         (gtk_tree_view_tree_to_widget_coords): new function
3939         (gtk_tree_view_widget_to_tree_coords): new function
3940         (gtk_tree_view_get_visible_rect): new function
3941         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3942         (gtk_tree_view_draw_node_focus_rect): new function moved from
3943         draw_focus, also, use width of bin_window as width of the focus
3944         rect
3945         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3946         already-expanded rows
3947         (gtk_tree_view_get_cell_rect): new function
3948         (gtk_tree_view_get_path_at_pos): return the click position
3949         relative to the passed-in cell
3950         (gtk_tree_view_set_expander_column): new function
3951
3952         * configure.in: remove gtk-config-2.0 chmod
3953
3954         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3955         and properly handle drags with targets we don't understand
3956         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3957         scrolling anyway
3958         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3959         mark invisible
3960
3961         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3962         function
3963         (gtk_drag_dest_get_target_list): new function
3964         (gtk_drag_dest_set_target_list): new function
3965         
3966         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3967
3968         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3969         related to drag-and-drop
3970
3971 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3972
3973         * gdk/linux-fb/gdkprivate-fb.h:
3974         Define EMULATE_GDKFONT.
3975         Add extra pango_font stuff to GfkFontPrivate.
3976         
3977         * gdk/linux-fb/gdkdrawable-fb2.c:
3978         * gdk/linux-fb/gdkfont-fb.c:
3979         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3980         emulation using PangoFont.
3981
3982 2001-01-17  Havoc Pennington  <hp@pobox.com>
3983
3984         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3985         all the non-deprecated set_foo functions. Added missing object
3986         properties, and added g_object_notify() to setters. 
3987         Wrote docs.
3988         
3989 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3990
3991         * gtk/gtkmain.c
3992         * gtk/gtkrc.c: (Win32) Use the new
3993         g_win32_get_package_installation_(sub)directory() functions.
3994
3995         * config.h.win32.in: New file.
3996         
3997         * config.h.win32: Removed.
3998
3999         * configure.in: Output config.h.win32.
4000
4001         * Makefile.am: Add it to EXTRA_DIST.
4002
4003         * gtk/gtk.def: Update.
4004
4005 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4006
4007         * gtk/gtklabel.c (gtk_label_size_request): Set the
4008         attributes onto the PangoLayout even if they are newly
4009         created from label->pattern.
4010
4011 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4012
4013         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4014
4015         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4016         structures in functions. Fixes bug where gtk_dataset_*
4017         was accidentally still being used in one place, causing
4018         every dest side event to be treated independently.
4019
4020         * gtk/gtkdnd.c: Remove last vestages of handling
4021         ::draw (fixes warning)
4022         
4023         * gtk/gtkentry.[ch]: Add drag and drop support.
4024
4025         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4026         new function gtk_check_drag_threshhold() for checking
4027         to check if (dx,dy) has exceeded the threshhold for starting
4028         a drag and use it everywhere.
4029
4030 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4031
4032         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4033         add -I{includedir}/gtk-2.0.
4034
4035         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4036         gdk/gdk-pixbuf.h: Doc fixups.
4037         
4038         * gtk/gtkobject.h: Remove trailing , from enum
4039
4040 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4041
4042         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4043         Doh! Mixed up x and y.
4044
4045         * gdk/linux-fb/gdkglobals-fb.c:
4046         Removed gdk_fb_pointer_grab_window_events,
4047         added _gdk_fb_pointer_grab_owner_events and
4048         _gdk_fb_keyboard_grab_owner_events.
4049
4050         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4051         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4052         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4053         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4054         Send crossing events after ungrab finished.
4055         (gdk_keyboard_grab): Set ..._owner_events
4056         (type_masks): Move out of function.
4057         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4058         gdk_fb_keyboard_event_window): New functions, return the
4059         window an event should be targeted at. Handles grabs and
4060         event propagation. Can return NULL.
4061         (gdk_event_make): Remove event_mask checking. Now always
4062         returns an event.
4063                 
4064         * gdk/linux-fb/gdkkeyboard-fb.c:
4065         * gdk/linux-fb/gdkproperty-fb.c:
4066         * gdk/linux-fb/gdkselection-fb.c:
4067         Use new event_window/gdk_event_make() behaviour.
4068         
4069         * gdk/linux-fb/gdkmouse-fb.c:
4070         Use new event_window/gdk_event_make() behaviour.
4071         Only send motion events if in the same window.
4072         If grabbed, use cursor from window if sibling of grabbed
4073         window, and cursor from grabbed window otherwise.
4074
4075         * gdk/linux-fb/gdkprivate-fb.h:
4076         Update gdk_fb_window_send_crossing_events, gdk_event_make
4077         and grab varaible declarations. Add gdk_fb_*_event_window().
4078
4079         * gdk/linux-fb/gdkwindow-fb.c:
4080         Use new event_window/gdk_event_make() behaviour.
4081         Keep correct track of focus window.
4082         (gdk_window_set_events): Set all specific button motion masks
4083         if GDK_BUTTON_MOTION_MASK set.
4084
4085         * gtk/gtkdnd.c (gtk_drag_update):
4086         Free info->last_event if gdk_drag_motion returned FALSE.
4087
4088 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4089
4090         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4091         Eliminate redraws when input-only windows are shown or
4092         hidden. Thanks to jpe@archaeopteryx.com.
4093
4094 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4095
4096         * docs/faq/gtk-faq.sgml: FAQ update:
4097           - Update to bugzilla
4098           - Add GTK+ and security/SUID/SGID
4099           - Add DnD question
4100
4101 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4102
4103         * gdk/linux-fb/gdkdnd-fb.c:
4104         Some cleanups.
4105         
4106 2001-01-15  Havoc Pennington  <hp@pobox.com>
4107
4108         * tests/testtreeview.c: add test stuff for CellRendererToggle
4109
4110         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4111         accessor
4112
4113         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4114         only toggle on button press (would do release like GtkButton, but
4115         we'd need implicit grab code for treeview cells)
4116
4117 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4118
4119         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4120
4121         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4122         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4123
4124         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4125         to g_{locale,filename}_{to,from}_utf8 to match current API.
4126
4127         * gtk/makefile.msc.in (gtk_OBJECTS)
4128         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4129
4130         * gtk/gtk.def: Update.
4131
4132 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4133
4134         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4135         implementaion that more closely mimics the events that an X server
4136         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4137         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4138         with nested preview widgets, for instance, more responsive when
4139         you move the mouse quickly into them.
4140         (find_window_for_pointer_event): Make it actually compile.
4141         (gdk_event_translate): Set send_event to the value of
4142         InSendMessage (). This doesn't really mean the same as X11's
4143         send_event flag, but is close enough, says jpe@archaeopteryx.com
4144
4145 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4146
4147         * gdk/linux-fb/gdkdnd-fb.c:
4148         Implemented drag and drop.
4149         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4150         when it tries to free and then copy the same event (info->last_event).
4151         I am not sure about why this happens, but will continue looking.
4152
4153 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4154
4155         * gdk/linux-fb/gdkwindow-fb.c:
4156         Use gdk_window_invalidate_rect instead of
4157         gdk_window_invalidate_rect_clear to minimise flashing.
4158         When hiding windows you need to clear the root window though.
4159
4160 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4161
4162         * gdk/linux-fb/gdkdrawable-fb2.c:
4163         For optization, add an full_shapes argument to gdk_fb_clip_region.
4164         If this is false, only the cliprects of the shapes are used.
4165
4166         * gdk/linux-fb/gdkprivate-fb.h:
4167         Export gdk_fb_window_peek_shape.
4168         Add full_shapes to gdk_fb_clip_region.
4169
4170         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4171         When moving a window, don't clear everything under the it, just the
4172         root window. Makes stuff faster and flash less.
4173         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4174         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4175         offset of the shape.
4176         
4177
4178 2001-01-12  Havoc Pennington  <hp@redhat.com>
4179
4180         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4181         current invalid region, fixes redraw bug while scrolling the 
4182         text widget
4183
4184         * gtk/gtktextview.c, gtk/gtktextview.h:
4185         Rearrange the scrolling/validation/etc. code in a major way, 
4186         so it seems to make sense to me. Probably isn't genuinely that
4187         much better, but...
4188
4189         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4190         notifies
4191
4192         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4193
4194 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4195
4196         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4197         Hide mouse pointer while rotation. Show it afterwards.
4198
4199 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4200
4201         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4202         windows in consideration when generating clip region.
4203
4204         * gdk/linux-fb/gdkfb.h:
4205         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4206
4207         * gdk/linux-fb/gdkprivate-fb.h:
4208         Add shape to GdkWindowFBDatat.
4209         exported gdk_fb_window_get_abs_shape().
4210         removed gdk_fb_draw_lines declaration.
4211
4212         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4213         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4214         send focus changes when there is a grabbed window.
4215         (gdk_window_get_pointer): Handle shaped windows.
4216         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4217         (gdk_fb_window_peek_shape): Returns the shape for a window,
4218         handles GDK_FB_USE_CHILD_SHAPE.
4219         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4220         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4221         (gdk_window_shape_combine_mask): Implement.
4222
4223         * gtk/gtkwindow-decorate.c:
4224         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4225         setting the shape of a window makes the window transparent.
4226
4227 2001-01-11  Havoc Pennington  <hp@redhat.com>
4228
4229         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4230
4231 2001-01-10  Havoc Pennington  <hp@redhat.com>
4232
4233         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4234         add this function, bug 40251
4235
4236         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4237         of type macro   
4238
4239 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4240
4241         * acconfig.h:
4242         Added ENABLE_SHADOW_FB
4243
4244         * configure.in:
4245         Added --disable-shadowfb
4246
4247         * gdk/linux-fb/gdkcursor-fb.c:
4248         Update shadowfb when updating cursor
4249
4250         * gdk/linux-fb/gdkdrawable-fb2.c:
4251         Added wrappers for shadowfb that calls  the normal drawable
4252         methods, but calls gdk_shadow_fb_update(bounding box) when
4253         GdkWindows are drawed to.
4254         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4255         which also returns the bounding box.
4256
4257         * gdk/linux-fb/gdkfb.h:
4258         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4259
4260         * gdk/linux-fb/gdkgeometry-fb.c:
4261         Update shadowfb when scrolling window.
4262
4263         * gdk/linux-fb/gdkglobals-fb.c:
4264         Add _gdk_fb_screen_angle.
4265         
4266         * gdk/linux-fb/gdkkeyboard-fb.c:
4267         Test code for screen rotation. Shift-F2 in the xlate driver
4268         rotates the screen.
4269
4270         * gdk/linux-fb/gdkmain-fb.c:
4271         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4272
4273         * gdk/linux-fb/gdkmouse-fb.c:
4274         Use fb_width/height instead of modeinfo.xres/yres.
4275
4276         * gdk/linux-fb/gdkprivate-fb.h:
4277         Added fb_men, fb_width, fb_height & fb_stride. When using
4278         shadow fb these can differ from the framebuffer stuff.
4279         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4280         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4281         _gdk_fb_screen_angle. Removed CM, RP.
4282
4283         * gdk/linux-fb/gdkrender-fb.c:
4284         Added code for shadowfb handling and screen rotation using
4285         shadowfb.
4286
4287         * gdk/linux-fb/gdkwindow-fb.c:
4288         Use fb_mem, fb_stride, fb_width, fb_height.
4289         Added recompute_rowstride to reset the rowstride of all windows.
4290         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4291         window abs positions and window rowstrides. Usefull when the
4292         rotation has changed.
4293
4294 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4295
4296         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4297
4298 2001-01-10  Havoc Pennington  <hp@redhat.com>
4299
4300         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4301         where sibling == iter
4302         (gtk_tree_store_insert_after): handle sibling == iter
4303         (gtk_tree_store_prepend): remove stamp checks
4304         (gtk_tree_store_insert_before): ditto
4305         (gtk_tree_store_append): ditto
4306         (gtk_tree_store_get_path): ditto
4307         (gtk_tree_store_get_value): ditto
4308         (gtk_tree_store_iter_has_child): ditto
4309         (gtk_tree_store_iter_n_children): ditto
4310         (gtk_tree_store_iter_nth_child): ditto
4311         (gtk_tree_store_insert_after): ditto
4312         (gtk_tree_store_is_ancestor): ditto
4313         (gtk_tree_store_iter_depth): ditto
4314         (gtk_tree_store_insert_before): assert that sibling's parent is
4315         the same as the passed-in parent
4316         (gtk_tree_store_insert_after): assert that sibling's parent is
4317         the same as the passed-in parent
4318
4319         
4320         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4321         function to get the first iterator in a model
4322         
4323         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4324         conventionally the "root" in this sense is just NULL afaict.
4325
4326         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4327         where sibling == iter
4328         (gtk_list_store_insert_after): handle case where sibling == iter
4329
4330         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4331         automated tests for ListStore, TreeStore
4332
4333         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4334         (gtk_list_store_insert): update tail pointer, and fix it to work
4335         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4336         (gtk_list_store_append): use tail to be faster
4337         (gtk_list_store_prepend): fix it, update tail pointer
4338         (gtk_list_store_insert_after): fix it, update tail pointer
4339
4340         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4341         the list
4342
4343 2001-01-09  Havoc Pennington  <hp@redhat.com>
4344
4345         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4346         is NULL due to a pending resize
4347
4348         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4349         column width to values less than 1
4350
4351         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4352         width to be between min/max width, and still set the width 
4353         even if autosize is turned on, so the tree view can use this 
4354         function in order to autosize.
4355         (gtk_tree_view_column_init): set initial width to 1 not 0
4356
4357         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4358         setter function to modify column width, so we get notification
4359         (gtk_tree_view_insert_iter_height): ditto
4360         (gtk_tree_view_calc_size): ditto
4361         (gtk_tree_view_check_dirty): ditto
4362
4363         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4364         properties to change all the interesting attributes of the tree
4365         view column.
4366         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4367         (gtk_tree_view_column_get_clickable): add
4368         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4369         attributes; assume a cell renderer with equivalent object
4370         properties has been swapped in. Do g_object_notify().
4371         (gtk_tree_view_column_set_visible): g_object_notify
4372         (gtk_tree_view_column_get_sizing): rename from get_col_type
4373         (gtk_tree_view_column_set_sizing): g_object_notify
4374         (gtk_tree_view_column_set_width): add g_object_notify
4375         (gtk_tree_view_column_set_min_width): ditto
4376         (gtk_tree_view_column_set_max_width): ditto
4377         (gtk_tree_view_column_set_title): ditto
4378         (gtk_tree_view_column_set_clickable): ditto
4379         (gtk_tree_view_column_set_widget): ditto
4380         (gtk_tree_view_column_set_justification): ditto
4381
4382 2001-01-09  Havoc Pennington  <hp@redhat.com>
4383
4384         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4385         there are no rows in the model
4386
4387         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4388         NULL, then return the start of the list
4389
4390         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4391         if we can't get any rows from an empty model 
4392
4393         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4394         extraneous * after function pointer typedef usage
4395
4396         * Makefile.am: don't specify full path to cp and rm
4397
4398         * gtk/gtkcellrenderertextpixbuf.c
4399         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4400         NULL before dereferencing, fixes a segfault that happened from
4401         time to time
4402
4403         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4404         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4405         and reindent the function
4406         (gtk_cell_renderer_pixbuf_get_size): indentation
4407
4408         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4409         we quit it
4410         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4411         (gtk_dialog_set_default_response): New function, to set default
4412         button
4413         (gtk_dialog_set_response_sensitive): New function, to set 
4414         sensitivity of buttons
4415
4416         * gtk/gtkcellrendererpixbuf.c
4417         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4418         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4419
4420         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4421         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4422         also boxed types.
4423         (_gtk_tree_data_list_value_to_node): ditto
4424
4425         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4426         --gtk-debug=tree
4427
4428         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4429
4430         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4431
4432 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4433
4434         * gdk/win32/gdkevents-win32.c: Implement better mouse
4435         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4436         (find_window_for_pointer_event): New function.
4437         (gdk_event_translate): Use it when handling mouse events.
4438
4439 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4440
4441         * configure.in:
4442         Added --with-included-loaders option
4443
4444         * gdk-pixbuf/Makefile.am:
4445         * gdk-pixbuf/gdk-pixbuf-io.c:
4446         Add support for including selected gdk-pixbuf loaders only.
4447
4448         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4449         gtk_window_set_has_frame):
4450         Added inline documentation.
4451
4452         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4453         * docs/reference/gdk/tmpl/windows.sgml:
4454         Added inline documentation.
4455
4456 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4457
4458         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4459         realizing buttons that have already been realized.
4460
4461 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4462
4463         * tests/testtreeview.c (main): Show menu items before adding to
4464         option menu.
4465
4466         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4467         around if we kill them.
4468
4469         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4470         Return if we pass in a NULL model.
4471
4472 2001-01-08  Havoc Pennington  <hp@redhat.com>
4473
4474         * tests/testtreeview.c: hack on this some
4475
4476         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4477         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4478         list
4479         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4480
4481         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4482         functions
4483
4484 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4485
4486         * gtk/gtkwindow-decorate.[hc]:
4487         * gtk/Makefile.am:
4488         New files. Contains an implementation of a minimal WM for
4489         linux-fb.
4490
4491         * gtk/gtkwindow.h:
4492         Add the possibility for GtkWindows to specify a frame. This
4493         is used for the window decoration code, but could concievably
4494         be used for X programs too (xmms style windows).
4495         GtkWindow->frame is the toplevel window if the window is framed.
4496         The signal frame_event gets all events that are targeted to
4497         GtkWindow->frame.
4498         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4499         
4500         * gtk/gtkwindow.c:
4501         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4502         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4503
4504 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4505
4506         * docs/README.linux-fb:
4507         Correct filename ~/.pangoft2_aliases
4508
4509         * gdk/gdkwindow.h:
4510         Added new function gdk_window_get_decorations.
4511
4512         * gdk/linux-fb/gdkfb.h:
4513         Removed _gdk_window_get_decorations declaration.
4514         Renamed _gdk_window_set_child_handler to
4515         gdk_fb_window_set_child_handler.
4516
4517         * gdk/linux-fb/gdkwindow-fb.c:
4518         Renamed _gdk_window_set_child_handler to
4519         gdk_fb_window_set_child_handler.
4520
4521         * gdk/x11/gdkwindow-x11.c:
4522         New function gdk_window_get_mwm_hints().
4523         Implemented gdk_window_get_decorations.
4524
4525         * docs/reference/gdk/tmpl/windows.sgml:
4526         * docs/reference/gdk/gdk-sections.txt:
4527         Added gdk_window_get_decorations docs.
4528         
4529 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4530
4531         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4532         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4533         gdk_fb_window_send_crossing_events):
4534         Possibly send focus events when the mouse moves from one
4535         window to another.
4536
4537 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4538
4539         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4540         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4541         to match current API.
4542
4543         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4544         environment variable is set, don't call g_error when on a
4545         palettized (PseudoColor) display. Some people want to use GTK+ 
4546         in 256-colour mode even though works only partially.
4547
4548         * gdk/gdk.def
4549         * gtk/gtk.def
4550         * gtk/makefile.mingw.in: Update.
4551
4552 2001-01-05  Havoc Pennington  <hp@redhat.com>
4553
4554         * tests/testtreeview.c: hack on this a bit
4555
4556         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4557         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4558
4559         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4560         was spelled incorrectly
4561         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4562
4563         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4564         from gtk_tree_view_set_headers_active   
4565
4566         * gtk/gtktexttag.c:
4567         (gtk_text_tag_get_property): handle PROP_DIRECTION
4568         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4569         properties, bug 40235
4570
4571         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4572         forward_to_line_end
4573
4574 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4575
4576         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4577         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4578         for unicode,locale,filename conversion functions.
4579
4580 2001-01-05  Havoc Pennington  <hp@redhat.com>
4581
4582         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4583         broken if called on the first position in the buffer.
4584
4585         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4586         forward_to_delimiters to be called only if we aren't already at
4587         the delimiters.
4588
4589 2001-01-05  Havoc Pennington  <hp@redhat.com>
4590
4591         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4592
4593 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4594
4595         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4596         colormap in here. Sync from X port.
4597         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4598         Sync from X port.
4599         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4600         This happens now and then, and i don't think it is a bug.
4601         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4602         != endpoint.
4603         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4604         GDK_LINE_SOLID.
4605
4606         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4607         some of the fields filled in at least.
4608
4609         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4610         miLineArcD is no more, remove it from the function definition.
4611
4612 2001-01-04  Havoc Pennington  <hp@redhat.com>
4613
4614         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4615         this
4616
4617         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4618         user_data instead of tree_node
4619
4620         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4621         TREE_VIEW_COLUMN_SIZE
4622
4623         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4624         "size" field to "width" finishes bug 40061
4625
4626         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4627         for bitfields, bug 40268
4628
4629 2001-01-04  Havoc Pennington  <hp@redhat.com>
4630
4631         Rename some stuff:
4632         
4633         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4634
4635         s/GtkModelSimple/GtkTreeModelSimple/g;
4636         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4637         s/gtk_model_simple/gtk_tree_model_simple/g;
4638         s/gtkmodelsimple/gtktreemodelsimple/g;
4639
4640         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4641
4642         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4643         s/column_set_col_type/column_set_sizing/g;
4644
4645         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4646         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4647
4648         s/GtkCellRendererType/GtkCellRendererState/g;
4649         
4650         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4651         (gtk_cell_renderer_toggle_class_init): change "state" property to
4652         "active", to match GtkToggleButton
4653         (gtk_cell_renderer_toggle_get_active): new function, bug
4654         40269
4655         (gtk_cell_renderer_toggle_set_active): new function
4656         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4657         state through gtk_cell_renderer_set_active
4658
4659 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4660
4661         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4662         temporarily until they work again.  Brought up to date with
4663         changes in the model.
4664         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4665         model.
4666
4667 2001-01-04  Havoc Pennington  <hp@redhat.com>
4668
4669         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4670         equal to the line length, then position iterator before paragraph 
4671         separators. Fixes crash reported by Mikael Hermansson when
4672         pressing left arrow from the start of a line.   
4673
4674         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4675         about byte indexes off the end
4676         (iter_set_from_char_offset): add g_error about char offsets
4677         off the end
4678
4679 2001-01-03  Havoc Pennington  <hp@redhat.com>
4680
4681         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4682
4683         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4684         of private functions; remove inclusion of private headers.
4685
4686         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4687         function, so we don't need private functions in gtktextdisplay.c
4688
4689         * gtk/gtktextiterprivate.h: underscore-ification
4690
4691         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4692         to instead say "only useful to implement widgets"
4693
4694         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4695         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4696         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4697
4698         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4699         This function was completely broken
4700
4701         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4702
4703         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4704
4705         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4706
4707         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4708
4709         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4710
4711         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4712
4713         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4714         gtk_paint_layout
4715
4716         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4717         gtk_paint_layout
4718
4719         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4720         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4721         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4722         which were not implemented.     
4723
4724         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4725         insert_pixbuf signal. Rename delete_text to delete_range since it
4726         also deletes pixbufs and child anchors. This almost closes bug
4727         40245 (still need to deal with child anchors)
4728
4729         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4730         insert_pixbuf, change signal names as appropriate, change types of
4731         signals taking marks/tags to have the specific type, not just
4732         G_TYPE_OBJECT
4733         
4734         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4735         closes bug 40051
4736
4737         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4738         unnecessary remove_contents() call
4739         (gtk_option_menu_class_init): add a "changed" signal, closes
4740         bug 40039
4741         (gtk_option_menu_update_contents): emit "changed" if the 
4742         active menu item changes
4743
4744         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4745         cast to GtkObject, reported by Jonas Borgstrom
4746         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4747         we can't do stuff with side effects in finalize. Instead, spew a
4748         warning if the loader isn't closed.
4749
4750         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4751         colormap in here, non-X ports probably need to sync to this change
4752
4753         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4754         assertion that colormap != NULL, you can set the colormap to NULL
4755         if you like.
4756         
4757         * Makefile.am: remove gtk-config-2.0
4758
4759         * configure.in: Use pkg-config to locate GLib. Remove
4760         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4761         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4762         Use pkg-config to locate Pango. Output correct Pango libs to
4763         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4764
4765         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4766         files
4767         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4768         X11 pc files
4769
4770         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4771         unref from here
4772
4773 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4774
4775         * configure.in:
4776         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4777
4778 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4779
4780         * gtk/gtktextlayout.c
4781         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4782         variable when moving back onto a single line.
4783
4784 2001-01-01  Havoc Pennington  <hp@redhat.com>
4785
4786         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4787
4788         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4789
4790         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4791         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4792
4793 2001-01-01  Havoc Pennington  <hp@redhat.com>
4794
4795         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4796
4797         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4798         GtkTextAttributes
4799
4800         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4801         #40246
4802         (gtk_text_attributes_copy_values): rename from 
4803         gtk_text_attributes_copy
4804         (gtk_text_attributes_copy): a more standard GTK copy function, 
4805         which returns a new object
4806
4807 2001-01-01  Havoc Pennington  <hp@redhat.com>
4808
4809         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4810         
4811         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4812         don't fill in tree_view->priv->selection, kind of an unexpected
4813         side effect
4814
4815         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4816         gtkintl.h
4817         
4818         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4819         gtkintl.h
4820         (gtk_cell_renderer_get_property): remove calls to g_value_init
4821
4822         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4823         gtkintl.h
4824
4825         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4826         and include gtkintl.h
4827         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4828         property names
4829
4830         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4831         GtkTreeSelection
4832         (_gtk_tree_selection_new_from_with_view): rename, return
4833         GtkTreeSelection
4834         (_gtk_tree_selection_set_tree_view): rename with uscore
4835         (gtk_tree_selection_get_selected): fill in the "model" out param
4836         first, so it gets filled in even if we return at the top of the 
4837         function
4838         (gtk_tree_selection_real_select_all): add a comment and an else{}
4839         to clarify this a bit
4840         (gtk_tree_selection_real_unselect_all): add the same else{}
4841
4842         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4843         set_tree_view to have underscore prefixes, move them to the
4844         private header, fix return type of new_with_tree_view
4845         (struct _GtkTreeSelection): mark struct
4846         fields private  
4847
4848         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4849         GtkTreeModelFlags, not a guint
4850         (gtk_tree_path_prev): return gboolean not gint
4851         (gtk_tree_path_up): return gboolean not gint
4852
4853         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4854         return GtkTreeModelFlags, not a guint
4855
4856         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4857         that child model is non-null before unrefing it
4858         (g_value_int_compare_func): make this a qsort compare func, not 
4859         a boolean predicate
4860
4861         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4862         (add -umn to the end), and mark it unimplemented
4863         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4864         I don't see what it's for - doesn't the model always sort itself?
4865         (gtk_tree_model_sort_set_compare): this had the wrong signature
4866
4867         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4868         Fix the docs to say that it destructively replaces existing
4869         attributes (previously said that it added attributes).
4870         (gtk_tree_view_column_set_visible): canonicalize bool before
4871         equality testing. Also, check for realization before
4872         hiding/showing the tree_column->window; if this window could exist
4873         before realization, then it's busted and needs fixing, we can't 
4874         create GDK resources pre-realization. Also, remove
4875         superfluous queue_resize(), since set_size() does that for us.
4876         (gtk_tree_view_column_set_col_type): check realization before 
4877         using tree_column->window
4878
4879         * gtk/gtktreedatalist.c: fix filename in copyright notice
4880
4881 2000-12-31  Havoc Pennington  <hp@pobox.com>
4882
4883         * gtk/gtktextview.c: Rearrange all the
4884         scroll-while-dragging-or-selecting code to be different, not
4885         necessarily better. ;-)
4886         (gtk_text_view_scroll_to_mark): Change this
4887         function to take within_margin as a fraction instead of a pixel
4888         value, and to take alignment arguments (indicating where to align 
4889         the mark inside the visible area)
4890         
4891         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4892         to GtkObject
4893
4894         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4895         behavior so that offsets past the end of the line are not 
4896         allowed, and an offset equal to the line length moves the iterator
4897         to the next line
4898         (gtk_text_iter_set_line_index): make parallel change
4899         (gtk_text_iter_get_bytes_in_line): add this function
4900         
4901         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4902         of byte indexes off the end of the line; byte index at the end of
4903         the line now returns FALSE and doesn't fill in the requested
4904         values, byte index past the end of the line is an error.  Also,
4905         don't allow -1 offset anymore, since its meaning is unclear.
4906
4907         This change exposes some bug in visual cursor motion, where we
4908         end up with a huge invalid byte index; needs fixing. Symptom of 
4909         bug is a crash when you hit up arrow.
4910         
4911         (_gtk_text_line_char_locate): match the change to byte_locate
4912
4913         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4914         from start of line properly. fixes bug reported by Mikael
4915         Hermansson where backspace would delete all text before the
4916         cursor.
4917
4918 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4919
4920         * gdk/win32/gdkwindow-win32.c
4921         (gdk_window_impl_win32_get_visible_region): New function, as in
4922         the X11 backend.
4923         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4924         instead of duplicating the same code here.
4925
4926         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4927         GDK_COLORMAP macro.
4928
4929         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4930         destroy function.
4931         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4932         access that.
4933
4934         * gtk/gtk.def: Update.
4935
4936         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4937
4938 2000-12-30  Havoc Pennington  <hp@pobox.com>
4939
4940         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4941         colormap on input only windows, to avoid special cases all over
4942         the code for these windows.
4943
4944 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4945
4946         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4947         we are on a palettized display ("PseudoColor" in X11), as the code
4948         for that doesn't work anyway, and never has.
4949
4950 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4951
4952         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4953         Don't use isprint() for chars > 255.
4954
4955 2000-12-21  Havoc Pennington  <hp@redhat.com>
4956
4957         * tests/testtreeview.c: more work
4958
4959 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4960
4961         * docs/README.linux-fb:
4962         Update the docs to the new pangoft2 way.
4963
4964 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4965
4966         * configure.in:
4967         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4968         pango version.
4969         Remove modules/linux-fb/Makefile.
4970
4971         * gdk/linux-fb/gdkdrawable-fb2.c:
4972         Render glyphs using freetype.
4973
4974         * gdk/linux-fb/gdkfb.h:
4975         Add new fb-specific functions needed for managing windows.
4976
4977         * gdk/linux-fb/gdkmain-fb.c:
4978         Remove gdk_font_init/fini() calls.
4979
4980         * gdk/linux-fb/gdkpango-fb.c:
4981         Remove old implementation. Use pangoft2 instead.
4982
4983         * gdk/linux-fb/gdkprivate-fb.h:
4984         Remove PangoFBFont and related stuff.
4985
4986         * gdk/linux-fb/gdkwindow-fb.c:
4987         Implement drawable->get_visible_region.
4988         Implement support for _gdk_window_set_child_handler () and
4989         _gdk_window_get_decorations().
4990
4991         * modules/Makefile.am:
4992         Remove linux-fb subdir.
4993
4994         * modules/linux-fb/*:
4995         Removed all.
4996         
4997 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4998
4999         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5000         calls, as they are no longer needed.
5001
5002         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5003         
5004         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5005         figure out how to emit a signal on an interface.
5006
5007 2000-12-20  Havoc Pennington  <hp@redhat.com>
5008
5009         * tests: new directory to contain tests, gtk/test* should move
5010         here sometime (with appropriate on-cvs-server hackery)
5011
5012         * tests/testtreeview.c, tests/Makefile.am: a test
5013         
5014         * configure.in (AC_OUTPUT): add tests/Makefile
5015
5016         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5017         and "invisible_set" which were missing
5018
5019         * gtk/gtkrbtree.h: some cheesy indentation fix
5020         
5021 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5022
5023         * gtk/gtkinvisible.c (gtk_invisible_realize):
5024         Attach the style to the window so that the style it is not
5025         leaked when unrealizing the window.
5026
5027 2000-12-18  Havoc Pennington  <hp@redhat.com>
5028
5029         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5030         begin/end user action where appropriate
5031         (gtk_text_view_commit_handler): add begin/end user action
5032
5033         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5034         bracket interactive operations with begin/end user action pair.
5035         
5036         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5037         "interactive" arg from insert_text and delete_text signals.
5038         Add begin_user_action, end_user_action signals
5039         (gtk_text_buffer_begin_user_action): 
5040         (gtk_text_buffer_end_user_action): New functions to delimit 
5041         a user-visible action
5042
5043         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5044         signals.
5045         
5046 2000-12-18  Havoc Pennington  <hp@redhat.com>
5047
5048         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5049         was pretty non-working.
5050
5051         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5052         by passing the length to g_utf8_validate().
5053
5054 2000-12-16  Havoc Pennington  <hp@pobox.com>
5055
5056         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5057         Port to GObject, can go back in gdk-pixbuf after setting up 
5058         a gdk-pixbuf-marshal.h header over there.
5059
5060         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5061         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5062         args
5063         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5064         set
5065         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5066         here, do it when we create the buttons later
5067         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5068         (gtk_tree_view_map): paranoia checks that column->button is shown 
5069         and unmapped
5070         (gtk_tree_view_size_request): only request visible children.
5071         Move header size calculation in here, for cleanliness, and 
5072         to maintain invariants for child widgets if we eventually 
5073         let users set different children inside the buttons
5074         (gtk_tree_view_map_buttons): factor out code to map buttons,
5075         since it was being called several times
5076         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5077         windows instead of just moving them; their height may change 
5078         if we allow random widgets in there, or the theme changes.
5079         (gtk_tree_view_size_allocate): move button size allocation 
5080         above emitting the scroll signals, to ensure a sane state when we
5081         hit user code
5082         (gtk_tree_view_button_release): remove queue_resize after
5083         tree_view_set_size(), set_size() will handle any resize queuing
5084         that's needed
5085         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5086         draw_focus goo
5087         (gtk_tree_view_focus): use gtk_get_current_event() and
5088         gdk_event_get_state()
5089         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5090         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5091         semicolon
5092         (gtk_tree_view_create_button): show the button here
5093         (gtk_tree_view_button_clicked): actually emit the clicked signal
5094         on the column
5095         (_gtk_tree_view_set_size): return right away if the size is
5096         unchanged, as a cheesy optimization
5097         (gtk_tree_view_setup_model): rename set_model_realized to 
5098         setup_model to match the flag that indicates whether we've 
5099         called it
5100         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5101         exist, because set_scroll_adjustment does that and it shouldn't
5102         matter what order you call these in
5103         (gtk_tree_view_get_vadjustment): ditto
5104         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5105         for paranoia
5106         (gtk_tree_view_set_headers_visible): call
5107         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5108         (gtk_tree_view_append_column): clarify whether the return value
5109         is the count of columns before or after, and do the increment 
5110         separately from the return statement so you can tell from the code.
5111         (gtk_tree_view_remove_column): ditto
5112         (gtk_tree_view_insert_column): ditto
5113         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5114         outside the existing range, the docs say that outside-range
5115         columns are allowed, so we handle them as documented. (Presumably
5116         this allows a nice loop with column != NULL as test.)
5117         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5118         mean (left/right/center etc.).
5119         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5120         (gtk_tree_view_expand_row): add docs
5121         (gtk_tree_view_collapse_row): add docs
5122
5123         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5124         function to emit the clicked signal on a column
5125         
5126         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5127         state of an event
5128         (gdk_event_get_time): don't treat GDK_SCROLL 
5129         as a button event, remove default case from switch so gcc 
5130         will whine if we don't explicitly handle all event types
5131
5132         * gtk/gtktreeselection.h: added some FIXME 
5133         
5134         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5135         "columns" to "n_columns" and "column" to "columns" for clarity
5136
5137 2000-12-16  Havoc Pennington  <hp@pobox.com>
5138         
5139         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5140         stuff. This should make e.g. the delete key work again in the
5141         text widget...
5142         (gtk_text_iter_forward_cursor_positions): handle negative count
5143         (gtk_text_iter_backward_cursor_positions): handle negative count
5144         (gtk_text_iter_forward_word_ends): handle negative count
5145         (gtk_text_iter_backward_word_starts): handle negative count
5146
5147         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5148         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5149         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5150         GObject. No doubt will cause breakage.
5151
5152         * demos/gtk-demo/textview.c: remove hacks around
5153         non-GObject-ification of the text objects
5154
5155         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5156         the text tag
5157         
5158 2000-12-14  Havoc Pennington  <hp@pobox.com>
5159
5160         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5161         that we have Xrender
5162
5163 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5164
5165         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5166         Add two virtualized functions gdk_drawable_get_clip_region - to
5167         get the clip region when drawing.
5168         
5169         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5170         use invalidate_region.
5171
5172         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5173         region.
5174
5175         * acconfig.h configure.in: Check for Xft. For now, assume
5176         that if Xft is found, Pango was compiled with Xft support
5177         as well.
5178
5179         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5180         gdk_colormap_query_color().
5181         
5182         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5183         with Xft if appropriate.
5184
5185         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5186         a pangoxft context if we have XFT and the environment
5187         variable GD_USE_XFT is set.
5188         
5189         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5190         and also possibly an XftDraw structure.
5191
5192         * gtk/gtkfontsel.c: Handle the case where the font from the
5193         style doesn't match any of the fonts a bit better.
5194         
5195         * gtk/testgtk.c: Add tabs between directional segments for
5196         hebrew/arabic test. (Not really necessary, just a little
5197         prettier.)
5198
5199 2000-12-14  Havoc Pennington  <hp@redhat.com>
5200
5201         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5202         reading a file
5203
5204 2000-12-14  Havoc Pennington  <hp@redhat.com>
5205
5206         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5207         unused call to get_last_line()
5208
5209         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5210         here until boxed is working (and maybe after that - we should
5211         really not gratuitously break old code)
5212
5213         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5214         specific types for font_desc and tabs args, move them to
5215         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5216         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5217
5218         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5219         use GTK_TYPE_POINTER for signal signatures as a hack-around
5220
5221         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5222         PangoTabArray
5223
5224         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5225         make static
5226         (line_display_index_to_iter): make static
5227
5228         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5229         to marshal a string not a boxed
5230
5231         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5232
5233         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5234         since the UTF-8 isn't validated yet
5235
5236         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5237         lines to end in '\n'
5238         
5239         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5240         forward_to_delimiters, and grapheme boundaries
5241         (gtk_text_view_delete_from_cursor): properly handle non-newline
5242         delimiters, and grapheme boundaries
5243
5244         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5245         to gtk_text_iter_forward_to_delimiters, and make it work properly
5246         if empty lines end with a character other than '\n'
5247
5248         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5249         position
5250
5251 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5252
5253         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5254
5255         * gtk/gtk.def
5256         * gdk/gdk.def: Update.
5257
5258         * gdk/win32/gdkmain-win32.c
5259         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5260         gdkmain-win32.c here.
5261
5262         * gdk/win32/makefile.mingw.in (all): No need to make
5263         gdk-win32res.o here, the makefile one step up will call us to make
5264         it.
5265
5266         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5267         gdkkeys-win32.
5268
5269         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5270
5271         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5272         call to g_source_add().
5273
5274         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5275         leak. Thanks to Andreas Kemnade.
5276
5277 2000-12-13  Havoc Pennington  <hp@pobox.com>
5278
5279         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5280
5281         * gtk/gtktext*.[hc]: update accordingly
5282         
5283 2000-12-13  Havoc Pennington  <hp@pobox.com>
5284
5285         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5286         header file
5287
5288         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5289
5290 2000-12-13  Alex Larsson  <alexl@redhat.com>
5291
5292         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5293         Add support for ps2 intellimouse.
5294
5295         * gdkkeyboard-fb.c:
5296         Move shift-F1 repaint handling to xlate handler only.
5297         
5298         * docs/README.linux-fb:
5299         Add imps2 to docs.
5300         Document the new refresh keys.
5301         
5302 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5303
5304         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5305
5306         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5307         ::position and ::padding.
5308
5309         * gtk/gtkcontainer.c: make ::border_width an INT property.
5310
5311         * gtk/gtkpacker.c: make ::position an INT property.
5312
5313         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5314         guard against NULL h/v scrollbars, since this is used at construction
5315         time.
5316
5317         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5318         internal gtk_clist_constructor().
5319
5320         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5321         gtk_ctree_constructor().
5322
5323         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5324         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5325
5326         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5327         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5328
5329         * gtk/gtkwidget.[hc]:
5330         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5331         and gtk_widget_get().
5332         (gtk_widget_new): use g_object_new_valist().
5333         (gtk_widget_set): use g_object_set_valist().
5334
5335         * gtk/gtkobject.[hc]:
5336         removed gtk_object_arg_get_info(), gtk_object_getv(),
5337         gtk_object_query_args(), gtk_object_newv(),
5338         gtk_object_class_add_signals(),
5339         gtk_object_class_user_signal_new(),
5340         gtk_object_class_user_signal_newv(),
5341         gtk_object_arg_set(), gtk_object_arg_get(),
5342         gtk_object_args_collect(),
5343         gtk_object_default_construct(),
5344         gtk_object_constructed(),
5345         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5346         removed nsignals, signals and n_args members from GtkObjectClass.
5347         (gtk_object_new): use g_object_new_valist().
5348         (gtk_object_set): use g_object_set_valist().
5349         (gtk_object_get): use g_object_get_valist().
5350         
5351         * gtk/gtkcompat.h: define gtk_object_default_construct().
5352         
5353         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5354         g_object_new().
5355
5356         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5357         fucntions, cleaned up method assignments (make sure your structures
5358         are setup properly before calling out). removed all GTK_CONSTRUCTED
5359         hacks ;)
5360
5361 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5362
5363         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5364         off-by-one error in checks. (Dave Lambert)
5365
5366 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5367
5368         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5369         Don't free gdk_fb_keyboard twice.
5370
5371 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5372
5373         * gtk/testgtk.c:
5374         (create_tooltips): 
5375         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5376         use GObject swapped_signal:: properties instead.
5377
5378         * gtk/gtkcellrenderertoggle.c: 
5379         * gtk/gtkcellrenderertextpixbuf.c: 
5380         * gtk/gtkcellrenderertext.c: 
5381         * gtk/gtkcellrendererpixbuf.c: 
5382         * gtk/gtkcellrenderer.c:
5383         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5384         missing warnings for invalid property ids, install properties
5385         with g_object_class_install_property() now.
5386         
5387         * gtk/gtksignal.c:
5388         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5389         
5390 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5391         
5392         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5393         to determine if a window is the focus widget within
5394         its toplevel.
5395
5396         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5397         to be boolean.
5398
5399         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5400         of the case where the container CAN_FOCUS to here instead
5401         of having it in each individual move-the-focus place.
5402
5403         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5404         focusing to be geometric in a much more obvious sense. Arrowing
5405         around is still non-intuitive because it isn't perfect and
5406         because entries, etc, grab the arrow keys, but it at least
5407         usually will do what you expect now.
5408         
5409         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5410         file.
5411
5412         * gtk/gtknotebook.c: Change tabs to be a single item in
5413         the focus chain. Make movement of focus on tabs with arrow
5414         keys wrap around.
5415         
5416         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5417         CHECK_FIND_CHILD macro to give informative error messages
5418         instead of silent returns.
5419
5420         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5421         flag since we handle GdkReturn on the tabs.
5422
5423         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5424         windows rather than sending expose events directly.
5425
5426         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5427         definition for GtkNotebookPage into .c file, since it is private.
5428
5429         * gtk/testgtk.c (create_notebook): Add option for 
5430         testing borderless notebook.
5431
5432         * gtk/testgtk.c (page_switch): Removed egregious poking
5433         around in GTK+ internals.
5434
5435         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5436
5437         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5438         properly through gtk_clist_focus. Make the title headers a
5439         single item in the tab-focus chain, and make left-right wrap
5440         around.
5441
5442         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5443         focus method so that wrapping around works properly.
5444
5445         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5446         that is handled for the widget now. 
5447
5448 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5449
5450         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5451         widgets as TOPLEVEL.
5452
5453         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5454         TOPLEVEL widgets are containers.
5455
5456         * gtk/gtkinvisible.h: Remove useless include.
5457
5458 2000-12-11  Havoc Pennington  <hp@redhat.com>
5459
5460         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5461         Handle chopping off \r\n and 0x2029 in addition to \n before
5462         passing to PangoLayout
5463
5464         * gtk/gtkimcontextsimple.c
5465         (gtk_im_context_simple_get_preedit_string): 
5466         return an empty string if no match is pending
5467
5468         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5469         assertion that the returned preedit string was sane
5470
5471         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5472         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5473         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5474
5475 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5476
5477         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5478         Fix up finalizer to chain to its parent.
5479
5480 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5481
5482         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5483         Clearified the difference between the keyboard types. Wrote a note
5484         about the magic sysrq key to get out of raw mode.
5485
5486 2000-12-09  James Henstridge  <james@daa.com.au>
5487
5488         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5489         member to hold masks for detecting the start of a protocol packet.
5490         (mouse_devs): add packet start masks for ps2 and ms device types.
5491         Left the mask for fidmour blank, as I have no idea what it should
5492         be.
5493         (handle_mouse_io): skip bytes until we get to the start of a
5494         packet.  My Logitech mouse seems to be passing an extra NULL pad
5495         byte, and GPM does a similar thing here.
5496         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5497         this is the ms mouse driver.
5498         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5499         completely broken except for button1.  It was checking the wrong
5500         bit in the packet for the status of the right mouse button, and
5501         wrongly assuming right == button2 rather than 3.  I fixed that and
5502         also added support for middle button (button2).
5503
5504 2000-12-08  Havoc Pennington  <hp@redhat.com>
5505
5506         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5507         that cause a segfault on text insertion
5508
5509         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5510         warning
5511
5512         * gtk/gtktextiter.c (test_log_attrs): use
5513         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5514
5515         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5516         Get log attrs for a line, using a cache stored on the buffer
5517         
5518         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5519         reported by Jeff Franks
5520
5521 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5522
5523         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5524         /dev/ttyS0 -> /dev/mouse
5525
5526 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5527
5528         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5529         Added dummy gdk_fontset_load.
5530
5531 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5532
5533         * docs/README.linux-fb:
5534         * docs/Makefile.am:
5535         Initial GtkFB docs.
5536         
5537         * gdk/linux-fb/Makefile.am:
5538         Define GDK_DATA_PREFIX.
5539
5540         * gdk/linux-fb/gdkmain-fb.c:
5541         Fix typo.
5542         Change default display to /dev/fb0.
5543
5544         * gdk/linux-fb/gdkpango-fb.c:
5545         Add $(prefix)/share/fonts/ to font path.
5546         
5547 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5548
5549         * gdk/linux-fb/gdkkeyboard-fb.c:
5550         New file containing the abstracted keyboard driver. Most code
5551         taken from gdkinput-ps2.c
5552
5553         * gdk/linux-fb/gdkinput-ps2.c:
5554         Removed file.
5555         
5556         * gdk/linux-fb/Makefile.am:
5557         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5558
5559         * gdk/linux-fb/gdkcolor-fb.c:
5560         display->fb was renamed to display->fb_fd.
5561
5562         * gdk/linux-fb/gdkcursor-fb.c:
5563         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5564
5565         * gdk/linux-fb/gdkinput.c:
5566         Moved gdk_input_init here from gdkinput-ps2.c
5567
5568         * gdk/linux-fb/gdkmain-fb.c:
5569         display->fb was renamed to display->fb_fd.
5570         Now the tty and the console is opened here instead
5571         of in the keyboard driver. Also check GDK_VT to see what
5572         tty to open.
5573         Move gdk_beep () here from gdkinput-ps2.c
5574         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5575
5576         * gdk/linux-fb/gdkmouse-fb.c:
5577         Add header.
5578         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5579         Return correct keyboard modifiers.
5580         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5581
5582         * gdk/linux-fb/gdkprivate-fb.h:
5583         Add tty and vt info to display.
5584         Add orignal modeinfo storage to display
5585         Update global functions
5586
5587         * gdk/linux-fb/gdkwindow-fb.c:
5588         Added gdk_fb_window_find_focus().
5589         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5590
5591 2000-12-07  Havoc Pennington  <hp@pobox.com>
5592
5593         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5594         function, noticed by Alex
5595
5596 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5597
5598         * configure.in: Detect freetype properly
5599
5600         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5601         above.
5602
5603 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5604
5605         * gdk/linux-fb/Makefile.am:
5606         Add gdkmouse-fb.c
5607         
5608         * gdk/linux-fb/gdkmouse-fb.c:
5609         New file. Abstracted the mouse drivers a bit.
5610
5611         * gdk/linux-fb/gdkcursor-fb.c:
5612         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5613
5614         * gdk/linux-fb/gdkinput-ps2.c:
5615         Removed old mouse handling code. Moved cursor handling code
5616         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5617         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5618         gdk_mouse_get_info.
5619
5620         * gdk/linux-fb/gdkmain-fb.c:
5621         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5622
5623         * gdk/linux-fb/gdkprivate-fb.h:
5624         Removed public gdk_fb_find_common_ancestor, added and renamed
5625         functions for the new mouse handling code.
5626
5627         * gdk/linux-fb/gdkwindow-fb.c:
5628         Moved gdk_fb_window_send_crossing_events here. added global
5629         variable gdk_fb_window_containing_pointer. made
5630         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5631         renamed to gdk_mouse_get_info.
5632
5633 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5634
5635         * gdk/linux-fb/gdkevents-fb.c:
5636         Update to match latest gmain/gsource changes.
5637
5638         * gdk/linux-fb/gdkinput-ps2.c:
5639         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5640         it links. Will be implemented later.
5641
5642 2000-12-03  Havoc Pennington  <hp@pobox.com>
5643
5644         * gdk/Makefile.am: add gdkkeys.[hc]
5645
5646         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5647         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5648
5649         * acconfig.h, configure.in: add checks and command line options
5650         for XKB
5651
5652         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5653         
5654         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5655         and group in the key event
5656
5657         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5658         field with the low-level hardware key code, and a group
5659         field with the keyboard group
5660
5661         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5662         and declare a couple globals used for keymap handling
5663         
5664         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5665         hold down Shift-Control and type a hex number to get a Unicode 
5666         character corresponding to the hex number
5667         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5668         (return bytes not chars)
5669
5670 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5671
5672         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5673         to avoid waste on 64-bit platforms.
5674
5675 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5676
5677         * INSTALL: Fix link to PNG home, remove reference
5678         to fribidi.
5679
5680         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5681         
5682         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5683         tested.)
5684
5685         * gtk/gtkcheckmenuitem.c: Permanently turn on
5686         always_show_toggle.
5687
5688         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5689         be NULL. (Vladimir Klebanov, #26545)
5690
5691         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5692         some signed/unsigned comparison problems. (#6510,
5693         David Kaelbling)
5694
5695         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5696         return type to boolean (Oskar Liljeblad, #18648)
5697
5698 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5699
5700         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5701         Remove bogus colormap setting.
5702
5703 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5704
5705         * gdk/linux-fb/gdkcolor-fb.c:
5706         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5707
5708         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5709         Must set colormap.
5710         
5711 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5712
5713         * docs/tutorial/gtk-tut.sgml: DND updates
5714
5715 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5716
5717         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5718         Remove old debug g_warning().
5719         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5720         or an implementation, just pass the implementation to draw_drawable_2.
5721         
5722         * gdk/linux-fb/gdkprivate-fb.h:
5723         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5724
5725         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5726         clear and invalidate area when window is destroyed.
5727         (send_map_events): Remove old commented out code.
5728
5729 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5730
5731         * gdk/linux-fb/gdkpango-fb.c:
5732         Use italic instead of oblique in font aliases.
5733         
5734         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5735         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5736         other unsupported functions.
5737
5738 2000-12-04  Havoc Pennington  <hp@redhat.com>
5739
5740         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5741
5742         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5743
5744         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5745
5746         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5747         hack to avoid infinite loops (synthetic expose event) - 
5748         Owen has more appropriate fixes in a branch he'll check in later.
5749
5750         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5751         separator, CR, and CRLF as line ends
5752
5753         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5754         into lines using pango_find_paragraph_boundary(); other bits of
5755         the widget are still going to be broken if the boundary isn't '\n'
5756         though
5757
5758 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5759
5760         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5761         multiply.
5762
5763         * gdk/linux-fb/gdkpango-fb.c:
5764         Copied some 26.6 scaling macros from pango to clean up the rounding.
5765         (pango_fb_font_get_glyph_info): Correct sign on x value.
5766
5767         * gdk/linux-fb/gdkprivate-fb.h:
5768         Removed unreferenced external functions.
5769
5770         * modules/linux-fb/Makefile.am: Use ` instead of '.
5771
5772         * modules/linux-fb/basic.c:
5773         Remove dead code. In particular the dummy lang engine which broke all
5774         pango layouts in GtkFB. Don't include tables-big.i anymore.
5775
5776         * modules/linux-fb/tables-big.i:
5777         Upgrade to latest version from pango. Left for reference, basic_ranges
5778         moved to basic.c.
5779         
5780 2000-12-04  Havoc Pennington  <hp@redhat.com>
5781
5782         Fix bugs Alex found:
5783         
5784         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5785         to "draw"
5786
5787         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5788
5789         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5790
5791         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5792         implementation in here, apparently the expose() implementation was
5793         dead code.
5794
5795 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5796
5797         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5798         Return positive descent.
5799
5800 2000-12-02  Havoc Pennington  <hp@pobox.com>
5801
5802         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5803         method and signal
5804         
5805         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5806         calls gdk_window_process_updates() to push the exposes through
5807         (gtk_widget_class_init): No more draw signal, no
5808         gtk_widget_real_draw()  
5809         
5810         * gtk/gtkbin.c (gtk_bin_draw): remove
5811
5812         * gtk/gtkbox.c (gtk_box_draw): remove
5813
5814         * gtk/gtkbutton.c (gtk_button_draw): remove
5815
5816         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5817
5818         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5819
5820         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5821
5822         * gtk/gtkclist.c (gtk_clist_draw): remove
5823
5824         * gtk/gtkentry.c (gtk_entry_draw): remove
5825
5826         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5827
5828         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5829
5830         * gtk/gtkframe.c (gtk_frame_draw): remove
5831
5832         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5833
5834         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5835
5836         * gtk/gtklayout.c (gtk_layout_draw): remove
5837
5838         * gtk/gtklist.c (gtk_list_draw): remove
5839
5840         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5841
5842         * gtk/gtkmenu.c (gtk_menu_draw): remove
5843
5844         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5845
5846         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5847
5848         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5849
5850         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5851
5852         * gtk/gtkpacker.c (gtk_packer_draw): remove
5853
5854         * gtk/gtkrange.c (gtk_range_draw): remove
5855
5856         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5857
5858         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5859
5860         * gtk/gtktable.c (gtk_table_draw): remove
5861
5862         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5863
5864         * gtk/gtktext.c (gtk_text_draw): remove
5865
5866         * gtk/gtktextview.c (gtk_text_view_draw): remove
5867
5868         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5869
5870         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5871
5872         * gtk/gtktree.c (gtk_tree_draw): remove
5873
5874         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5875
5876         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5877
5878         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5879
5880         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5881
5882         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5883
5884         * gtk/gtkwindow.c (gtk_window_draw): remove
5885
5886 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5887
5888         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5889         a GtkToggleButton is both insensitive and active, it was being
5890         drawn by the GtkButton draw handler which doesn't check the
5891         state. Now it's calling gtk_toggle_button_paint instead.
5892         
5893 2000-12-01  Havoc Pennington  <hp@redhat.com>
5894
5895         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5896         dangling pointers to the appearance attributes from the 
5897         line display
5898
5899         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5900         width/height to mean "full width/height of drawable"
5901
5902         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5903         click to select word/line
5904         
5905         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5906         when getting log attrs. Get a slice, so that pixmaps and stuff
5907         are properly handled.
5908
5909         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5910         paste into the selection (replaces selection now, previously
5911         crashed or added to selection). Reveals longstanding btree bug -
5912         select multiple lines, middle-click on the selection, boom. This
5913         isn't related to my changes though.
5914
5915         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5916         PangoLogAttrs changes
5917         (gtk_entry_move_backward_word): ditto
5918
5919         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5920         functions return bool whether the iter moved onto a
5921         dereferenceable position.
5922  
5923         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5924         functions for motion in terms of display lines.
5925
5926         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5927         get the buffer a mark is inside
5928         
5929 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5930
5931         * gdk/linux-fb/Makefile.am:
5932         * modules/linux-fb/Makefile.am:
5933         Freetype 2 final uses freetype-config
5934
5935         * gdk/linux-fb/gdkpango-fb.c:
5936         Upgrade to use Freetype 2 final.
5937         More flexible support for font aliases, this also fixes a bug with
5938         GtkFontSelector, as the aliases must be visible in the font/family list,
5939         or GtkFontSelector reads uninitialized memory.
5940
5941 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5942
5943         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5944         XGetIMValues to properly terminate variable argument list, and do
5945         NULL return check for ic_values and xim_styles.
5946
5947         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5948         Restore preedit state after XmbResetIC().
5949         
5950         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5951         XvaCreateNestedList() should take XvaNestedList, but not
5952         XvaNestedList*.
5953
5954         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5955         preedit_draw_callback, preedit_caret_callback): Match
5956         "preedit-changed" signal name to "preedit_changed" to be
5957         consistent to the spec.
5958
5959         * gtk/gtkimcontextsimple.c (check_table):
5960         Match "preedit-changed" to "preedit_changed" to be consistent
5961         to the spec.
5962
5963 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5964
5965         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5966         gc->clip_region == NULL>
5967
5968 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5969
5970         Changes by Hans Breuer:
5971         
5972         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5973         Dont't use negative width and height as max_hints. This fixes
5974         Owen's recent testgtk changes for win32.
5975
5976         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5977         gdk_win32_hdc_release): These are exported and may be called with
5978         other drawable types than our GdkDrawableImplWin32 (?).
5979
5980         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5981         so always #define USE_BACKING_STORE.
5982
5983         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5984         of printf for debugging output.
5985
5986         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5987         
5988         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5989
5990         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5991         declaration.
5992
5993         * gtk/gtktexttypes.h: Ditto.
5994
5995         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5996         (GDK_VoidSymbol) also if in case of arg check failure.
5997
5998         * gtk/gtkimcontextsimple.c
5999         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6000         position to the pointer, but to the variable it points to.
6001
6002         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6003
6004         * gtk/gtk.def: Updates.
6005
6006 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6007
6008         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6009         GTK_TYPE_TREE_MODEL.
6010
6011 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6012
6013         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6014         Set the size of the font from the description.
6015         (gdk_text_width): Gross hack that calculates the width
6016         of text by text_length * size/2. This is necessary because
6017         GtkLabel does some ugly gtk_string_width call to calculate
6018         an good size.
6019         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6020
6021 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6022
6023         * docs/tutorial/gtk-tut.sgml: DND updates
6024
6025 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6026
6027         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6028         If you pass width or height == 0 to gdk_window_clear_area they
6029         should be calculated from the window size.
6030
6031 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6032
6033         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6034         a grab, but no grab-cursor, use the cursor from the grabbed
6035         window. (gdk_fb_window_send_crossing_events): Send normal
6036         enter/leave notifications if grab and owner_events == TRUE.
6037
6038 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6039
6040         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6041         Do implicit button grabs, even if the window doesn't
6042         want the event.
6043         (gdk_fb_window_send_crossing_events): If there is a
6044         grab, only the grabbed window gets normal enter/leave
6045         notifications. On ungrab go from grabbed window to current.
6046         Don't send any notification to b when propagating from c -> b.
6047         If setting a grab on window, don't set prev_window.
6048         (handle_mouse_input): Send enter/leave events to the window the
6049         mouse is over, not the grabbed one.
6050         
6051 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6052
6053         * gdk/gdkregion-generic.c: Zap warning.
6054         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6055         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6056
6057 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6058
6059         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6060         The cursor should be hidden if it is part of either the
6061         source or destination region. Not only if it is in both.
6062         (gdk_window_set_transient_for): Silence warnings.
6063
6064 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6065
6066         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6067         The default mode in X is Pie Arcs, therefore that is
6068         what Gtk+ uses.
6069
6070 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6071
6072         * gdk/linux-fb/gdkinput-ps2.c:
6073         Implement correct EnterNotify/LeaveNotify:
6074         (gdk_fb_window_send_crossing_events): New function that sends
6075         all GdkCrossingEvents from the last mouse-window to the specified
6076         destination.
6077         (gdk_fb_window_visibility_crossing): Removed function.
6078         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6079         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6080         instead of gdk_window_get_pointer() for better readability.
6081
6082         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6083         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6084
6085         * gdk/linux-fb/gdkprivate-fb.h:
6086         removed gdk_fb_window_visibility_crossing, added
6087         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6088
6089         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6090         New function that finds the least common ancestor of two windows.
6091         (gdk_window_show, gdk_window_hide):
6092         Use gdk_fb_window_send_crossing_events.
6093         (gdk_fb_window_move_resize): Send configure events to toplevel
6094         windows. Use gdk_fb_window_send_crossing_events.
6095
6096 2000-11-27  Havoc Pennington  <hp@redhat.com>
6097
6098         * gtk/gtkprivate.h (enum): Remove a trailing comma
6099
6100 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6101
6102         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6103         the "changed" callback of the adjustment.  We need to redraw the
6104         spin button's arrows when the adjustment's range changes.
6105         (adjustment_changed_cb): Draw the arrows.
6106         (gtk_spin_button_value_changed): Draw the arrows.
6107
6108 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6109
6110         * gdk/linux-fb/gdkselection-fb.c:
6111         Initial selection implementation.
6112
6113         * gtk/gtkselection.c:
6114         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6115         requestor in gtk_selection_request.
6116         
6117         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6118         Added gdk_selection_property atom.
6119
6120         * gdk/linux-fb/gdkprivate-fb.h:
6121         Export _gdk_selection_window_destroyed.
6122         Removed mask_off_x/y from GdkCursorPrivateFB.
6123         Removed hbearing, added top, left to PangoFBGlyphInfo.
6124
6125         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6126         Call _gdk_selection_window_destroyed
6127         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6128         the root window has been created.
6129         (static_dx_hack, static_dy_hack, compare_draw_rects,
6130         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6131         in region. They are already sorted. Instead just traverse them in
6132         reverse if draw_direction < 0.
6133         
6134         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6135         Double-clicks must be sent after the normal button_press.
6136         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6137         
6138         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6139         Pass _gdk_fb_screen_gc instead of NULL.
6140
6141         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6142         Initialize gdk_selection_property.
6143         (gdk_event_make): Remove unused code.
6144
6145         * gdk/linux-fb/gdkcursor-fb.c:
6146         Make the pixmap for the cursor the same size as the mask. Also remove
6147         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6148         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6149         Now the whole cursor is visible.
6150
6151         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6152         Fix bug where xdest+height instead of ydest+height was used
6153         to calculate if the source and dest overlapped. This fixes the
6154         redraw bug when the main window in testgtk was scrolled when
6155         partially covered by a tall window.
6156         Copy rectangles in region in order depending on draw_direction.
6157         Also moved the draw_direction flipping of start_y and end_y into
6158         the gc functions, as this might not be what all of them want.
6159         (gdk_fb_draw_lines): Support dashed lines.
6160         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6161         so that the text is positioned correctly (was 1 pixel high).
6162
6163         gdk/linux-fb/gdkgc-fb.c:
6164         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6165         all lines were drawn a pixel to short. Also checked the default of
6166         the rest of the values, and they're the same as X now.
6167
6168         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6169         Clean up pixel positioning of the glyphs. Just use bgy->top and
6170         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6171         to all divisions to get correct rounding behaviour.
6172
6173         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6174         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6175         Moved start_y/end_y flip into draw_drawable implementations.
6176         Flip also x rendering when draw_direction < 0.
6177         Remove unneccesary multiply with draw_direction.
6178
6179 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6180
6181         * docs/tutorial/gtk-tut.sgml:
6182           - get rid of gtk_toggle_button_toggled FUD
6183           - start DND section - needs work - based on:
6184                 http://wolfpack.twu.net/docs/gtkdnd/
6185
6186 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6187
6188         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6189         Correct calculation of font metrics. Now GtkEntrys have sane
6190         size.
6191
6192 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6193
6194         * gdk/gdktypes.h:
6195         Add new type GdkSpan
6196         
6197         * docs/reference/gdk/gdk-sections.txt,
6198         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6199         gdk/gdkregion.h:
6200         Implement and document gdk_region_spans_intersect_foreach.
6201
6202         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6203         Add new file gdkrender-fb.c which contains all core
6204         rendering code.
6205         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6206         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6207         (optimized rectangle fillers).
6208
6209         * gdk/linux-fb/gdkdrawable-fb2.c:
6210         Move all rendering code to gdkrender-fb.c.
6211         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6212         Use the new span intersection functions in gdk_fb_fill_spans.
6213         gdk_fb_draw_rectangle() clips filled rectangles and calls
6214         gc->fill_rectangle with the result.
6215         gdk_fb_fill_spans() gets extra argument "sorted".
6216
6217         * gdk/linux-fb/gdkevents-fb.c:
6218         Remove unused includes and defines.
6219         New function gdk_fb_get_time() to get correct time for events.
6220
6221         * gdk/linux-fb/gdkinput-ps2.c:
6222         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6223         Make sure to set the time of all events.
6224
6225         * gdk/linux-fb/gdkmain-fb.c:
6226         Use gdk_fb_get_time ().
6227
6228         * gdk/linux-fb/gdkprivate-fb.h:
6229         New virtual GC calls: fill_span & fill_rectangle.
6230         Export gdk_fb_get_time().
6231         gdk_fb_fill_spans() gets extra argument "sorted".
6232
6233         * gdk/linux-fb/mi*.c:
6234         Use GdkSpan instead of GdkRectangle.
6235         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6236         from XFree 4 source)
6237         
6238 2000-11-22    <jrb@redhat.com>
6239
6240         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6241         reversing the order in an if statement will do.  Doing so managed
6242         to make the treemodelsort half work.  Other half will follow after
6243         I get the insert function fully fixed.
6244
6245 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6246         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6247         more than 2 bits. Besides, I need to implement an evil hack. :)
6248
6249 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6250
6251         * docs/tutorial/gtk-tut.sgml: minor corrections
6252
6253 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6254         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6255           convert to and from relative path's and iters.
6256
6257         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6258           testing sorting functions a bit better.  Currently broken -- will
6259           fix in morning.
6260
6261 2000-11-20  Havoc Pennington  <hp@redhat.com>
6262
6263         * gtk/gtkwidget.c: Documented a bunch of functions in here
6264         (gtk_widget_realize): Warn if you try to realize
6265         a widget with no parent that isn't a toplevel
6266         (gtk_widget_intersect): return a gboolean
6267
6268 2000-11-20  Havoc Pennington  <hp@redhat.com>
6269
6270         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6271         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6272         scrolling to be implemented in GDK to finish. Also, right now
6273         we just size_allocate all children on every layout change,
6274         which is pretty lame. Test commented out of testtext.c, 
6275         until it works better.
6276
6277 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6278
6279         * gdk/linux-fb/gdkdrawable-fb2.c:
6280         Removed unused arguments from gdk_fb_drawable_get_pixel().
6281
6282         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6283         Renamed fidur specific mouse packet data in MouseDevice to
6284         generic. Used it in ps2 mouse handling code to avoid blocking
6285         reads.
6286
6287 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6288
6289         * demos/gtk-demo/main.c: Changed to have the list become
6290         non-italic when the demo window is destroyed through an external
6291         event (like a close button).  Doing so found three bugs in the
6292         widget.
6293
6294         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6295
6296         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6297         we actually set the cell.
6298
6299         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6300
6301         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6302         free a leaked path.  Thanks memprof.
6303
6304 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6305
6306         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6307         off-by-one error when destroying allocated segments
6308         on failure. (Elliot)
6309
6310 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6311
6312         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6313         memleaks found by Evan Martin.
6314
6315 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6316
6317         * Released 1.3.2
6318         
6319         * NEWS: Updates for 1.3.2
6320
6321 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6322
6323         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6324         but in general for window system specific events.
6325
6326         * gtk/gtk.def
6327         * gtk/makefile.mingw.in
6328         * gtk/makefile.msc.in: Update.
6329         
6330         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6331
6332 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6333
6334         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6335         distribute gtk.immodules.
6336
6337         * gtk/Makefile.am (install-data-local): Don't install the
6338         gtk.immodules file created for the uninstalled modules;
6339         instead run gtk-query-immodules after install
6340
6341 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6342
6343         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6344         -rpath to the right install location.
6345
6346         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6347         -export-dynamic.
6348
6349         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6350         properly.
6351
6352 2000-11-15  Havoc Pennington  <hp@pobox.com>
6353
6354         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6355         patch from Mikael Hermansson to temporarily stop blinking while
6356         the user is using the keyboard to type or navigate. 
6357
6358         Also, when blinking, stay on for longer than we stay off. Also,
6359         return from start_cursor_blink if !cursor_visible, to save
6360         checking that flag all over the place before we call
6361         start_cursor_blink.
6362
6363 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6364
6365         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6366         only contain a "fontset" line, which is now ignored.
6367
6368         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6369         double-click-to-select-word work.
6370         
6371 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6372
6373         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6374         Don't move back one char when we are actually at the end of the 
6375         paragraph.
6376
6377 2000-11-15  Robert Brady  <robert@suse.co.uk>
6378
6379         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6380         'o' < 'p'.
6381         
6382         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6383         bind_textdomain_codeset.
6384
6385         (gtk_init_check): Make the warning about translating default:LTR
6386         sterner.
6387         
6388 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6389
6390         * **/Makefile.am : remove unecessary rules for win32-specific
6391         config-substituted targets. If you want these rules, use
6392         --enable-maintainer-mode (called automatically by autogen.sh).
6393         Stops a lot of unneccessary make-time warnings.
6394
6395         * gtk/gtktext{layout,display}.c: Factor in total width as
6396         well as screen when figuring alignment for word-wrap as well as
6397         no wrap; this is necessary to handle lines that cannot be wrapped
6398         at all.
6399
6400 2000-11-15  Havoc Pennington  <hp@redhat.com>
6401
6402         * gtk/testtext.c: Implement essential color cycling feature
6403
6404 2000-11-15  Havoc Pennington  <hp@redhat.com>
6405
6406         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6407         when we invalidate the main window.
6408
6409         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6410         GtkTextView will now invalidate the side windows for us when text
6411         changes.
6412
6413 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6414
6415         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6416         unconditionally, since we may need to update the horizontal
6417         scrollbars even if the height didn't change.
6418
6419         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6420         the extra attrs, since some of them affect size.
6421
6422         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6423         x_offset correctly.
6424
6425 2000-11-15  Havoc Pennington  <hp@redhat.com>
6426
6427         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6428         don't move the first line out into the margin, instead move the
6429         whole paragraph in order to make space for the first line within 
6430         the margin
6431
6432 2000-11-15  Havoc Pennington  <hp@redhat.com>
6433
6434         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6435         xoffset in addition to yoffset, so horizontal scrolling doesn't
6436         break redraws
6437
6438 2000-11-15  Havoc Pennington  <hp@redhat.com>
6439
6440         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6441         from the cursor
6442         (render_layout_line): fix reversed test that caused weird
6443         underlines to get drawn
6444
6445 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6446
6447         * gdk/linux-fb/gdkprivate-fb.h:
6448         Fix debug macros.
6449         
6450 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6451
6452         * gdk/linux-fb/gdkprivate-fb.h:
6453         Added virtual functions set_pixel, get_color,
6454         fill_span and draw_drawable to the GC.
6455         Added global _gdk_fb_screen_gc to use instead of
6456         NULL when drawing to the screen.
6457         Added _gdk_fb_gc_calc_state() prototype.
6458
6459         * gdk/linux-fb/gdkgc-fb.c:
6460         Call _gdk_fb_gc_calc_state() on any gc state change.
6461
6462         * gdk/linux-fb/gdkglobals-fb.c:
6463         Add _gdk_fb_screen_gc
6464                 
6465         * gdk/linux-fb/gdkdrawable-fb2.c:
6466         _gdk_fb_gc_calc_state() calculates best functions
6467         for the GC state and depth.
6468         Moved bpp specialized code to separate functions.
6469         Added optimized 24 bpp AA draw_drawable.
6470
6471         * gdk/linux-fb/gdkevents-fb.c:
6472         Silence gcc warning.
6473
6474         * gdk/linux-fb/gdkimage-fb.c:
6475         Use _gdk_fb_screen_gc
6476
6477         * gdk/linux-fb/gdkwindow-fb.c:
6478         Init and use _gdk_fb_screen_gc
6479
6480         * gdk/linux-fb/mitypes.h:
6481         Remove unused types.
6482
6483 2000-11-14  Havoc Pennington  <hp@pobox.com>
6484
6485         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6486         to pixels
6487
6488 2000-11-14  Havoc Pennington  <hp@pobox.com>
6489
6490         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6491
6492         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6493         unknown char, no real reason we were using a variable. 
6494         Remove gtk_text_unknown_char variable. Fix all the text widget
6495         files accordingly.
6496
6497         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6498         since the Unicode spec seems to prefer that character for our
6499         purposes.
6500
6501 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6502
6503         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6504         value of g_getenv() isn't freeable, so g_strdup it.
6505
6506         * modules/input/inuktitut.c: Inuktitut input method.
6507
6508         * modules/input/Makefile.am: Build this.
6509         
6510 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6511
6512         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6513         of gtk programs.
6514
6515 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6516
6517         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6518         reversed > that was causing Home to go to end of previous line.
6519
6520         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6521         modified-keypresses (leave for bindings.)
6522
6523         * modules/input/Makefile.am: Remove useless -export-dynamic
6524         from module LDFLAGS.
6525
6526 2000-11-14  Havoc Pennington  <hp@redhat.com>
6527
6528         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6529         higher.
6530
6531         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6532         account. Also, render rise, underline, background, etc. for
6533         pixbufs as well as text. Also, draw underlines one pixel higher.
6534
6535         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6536         PangoAttribute for the rise, so it gets drawn properly. Also,
6537         add the GtkTextAppearance attribute for pixbuf/widget segments
6538         as well; we should go ahead and have rise, underline, background,
6539         stipple work for those
6540
6541         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6542         Pango
6543
6544 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6545
6546         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6547
6548         * gtk/gtk.def: Update.
6549
6550         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6551         included.
6552         (gtk_rc_get_im_module_file): Use run-time installation directory
6553         on Win32.
6554
6555         * gdk/win32/rc/gdk.rc: Remove.
6556         * gdk/win32/rc/gdk.rc.in: New file.
6557         * gdk/win32/rc/Makefile.am: New file
6558         * gdk/win32/Makefile.am: Corresponding changes.
6559
6560         * gtk/gtk.rc: Remove.
6561         * gtk/gtk-win32.rc.in: New file.
6562         * gtk/Makefile.am: Corresponding changes.
6563
6564         * configure.in: Corresponding changes.
6565
6566         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6567         has a built gtkcompat.h. Developers using CVS code on Win32 can
6568         hand-edit it from gtkcompat.h.in.
6569
6570         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6571         gtkcompat.h from gtkcompat.h.win32.
6572
6573 2000-11-14  Havoc Pennington  <hp@redhat.com>
6574
6575         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6576         to default to GDK_ACTION_MOVE if the drag is within a single
6577         widget. Defaults to GDK_ACTION_COPY between widgets.
6578
6579 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6580
6581         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6582
6583         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6584
6585         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6586         srcdir != builddir
6587
6588         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6589
6590         * configure.in (GTK_VERSION): Up to 1.3.2
6591
6592         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6593         gtkimcontextxim.h
6594
6595         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6596         missing doc comment.
6597
6598 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6599
6600         * modules/linux-fb/basic.c:
6601         Use the glib iconv wrappers.
6602
6603 2000-11-13  Havoc Pennington  <hp@pobox.com>
6604
6605         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6606         still more bugs.
6607
6608         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6609         scroll the GdkWindows before realization.
6610
6611 2000-11-13  Havoc Pennington  <hp@redhat.com>
6612
6613         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6614         where GC didn't always get updated properly
6615
6616         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6617         of fonts instead of setting the entire font
6618
6619         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6620         setting entire font
6621
6622         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6623
6624         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6625         a bunch of individually-settable font attributes. You can still 
6626         use the "font" and "font_desc" args, they just set all the font
6627         attributes at once.
6628
6629 2000-11-13 Elliot Lee <sopwith@redhat.com>
6630
6631         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6632
6633 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6634
6635         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6636         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6637
6638         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6639         work better.
6640
6641 2000-11-13  Havoc Pennington  <hp@redhat.com>
6642
6643         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6644         the module file.
6645
6646         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6647         dest->language
6648
6649         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6650         settings
6651
6652         * gtk/gtktextview.c: Implement object args and setters/getters for
6653         all the aspects of the GtkTextAttributes that are not set from
6654         GtkWidget attributes. This is spacing, justification, margins,
6655         etc.
6656
6657         (gtk_text_view_set_arg)
6658         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6659         args
6660         (gtk_text_view_class_init): Add args for justify, left_margin,
6661         right_margin, indent, and tabs
6662         
6663
6664         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6665         attribute properly
6666
6667         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6668         replace with indent attribute
6669
6670         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6671         PANGO_SCALE
6672
6673         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6674         rearranging code to do that
6675         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6676         i.e. don't subtract the top_margin first, just to keep
6677         all margin-futzing in one place.
6678
6679         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6680
6681         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6682         special case of last line, Pango now handles this itself.
6683         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6684         Y coordinate
6685         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6686         (find_display_line_above): wasn't moving the byte index as it
6687         iterated over lines, so always returned byte 0. Also, port to use
6688         PangoLayoutIter.
6689         (find_display_line_below): same problem as
6690         find_display_line_above. Also, port to use PangoLayoutIter.
6691
6692 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6693
6694         * gdk/linux-fb/*.[ch]:
6695         Massive reindent to gtk+ standard. My hands hurt.
6696
6697         * gdk/linux-fb/gdkcolor-fb.c:
6698         Move GdkColorPrivateFB from inherited to windowing_data
6699
6700         * gdk/linux-fb/gdkcursor-fb.c:
6701         _gdk_cursor_new_from_pixmap made static
6702
6703         * gdk/linux-fb/gdkdnd-fb.c:
6704         GdkDragContextPrivate moved to windowing_data
6705
6706         * gdk/linux-fb/gdkdrawable-fb2.c:
6707         Removed endian.h, use glib endianness macros instead
6708         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6709         and GDK_DRAWABLE_IMPL_FBDATA
6710
6711         * gdk/linux-fb/gdkfont-fb.c:
6712         Add empty gdk_font_load(). Needed for linking of Gtk+.
6713
6714         * gdk/linux-fb/gdkimage-fb.c:
6715         Removed endian.h, use glib endianness macros instead
6716         Moved GdkImagePrivateFB to windowing_data
6717         gdk_image_new_bitmap didn't always allocate enough
6718         memory.
6719
6720         * gdk/linux-fb/gdkinput-ps2.c:
6721         Added semi-working support for MS serial mice.
6722
6723         * gdk/linux-fb/gdkprivate-fb.h:
6724         s/GdkWindowPrivate/GdkWindowObject/
6725         Removed GdkWindowPrivate typedef
6726         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6727         Removed GDK_DRAWABLE_P
6728         Move GdkColorPrivateFB from inherited to windowing_data
6729         Moved GdkImagePrivateFB to windowing_data
6730
6731         * gdk/linux-fb/gdkvisual-fb.c:
6732         Removed some unused debug code.
6733
6734         * gdk/linux-fb/gdkwindow-fb.c:
6735         Use stock cursors instead of including X headers.
6736         s/GdkWindowPrivate/GdkWindowObject/
6737
6738         * gdk/linux-fb/mitypes.h:
6739         Removed unused types.
6740
6741         * modules/linux-fb/basic.c:
6742         Use the pango fribidi wrappers.
6743
6744 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6745
6746         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6747         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6748         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6749         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6750         GEqualFunc where applicable.
6751         
6752         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6753         pango_font_description_equal as changed in pango.
6754         
6755         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6756
6757         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6758
6759         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6760
6761         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6762
6763         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6764
6765         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6766
6767         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6768         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6769
6770         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6771         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6772
6773 2000-11-12  Havoc Pennington  <hp@pobox.com>
6774
6775         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6776         dir to datadir/gtk+-2.0/demo
6777
6778         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6779         sorts of text widget and Pango font bugs. Urgh.
6780
6781         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6782
6783         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6784         tree that you should double click to see the demo. Fix 
6785         types of variables to reflect changed return values from 
6786         GtkTreeStore and GtkTreeViewColumn constructors.
6787
6788         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6789         newly-created buffer to prepare for GObject semantics
6790
6791         * gtk/testtext.c: don't leak the buffer with GObject semantics
6792
6793         * gtk/testtextbuffer.c: ditto
6794         
6795 2000-11-12  Havoc Pennington  <hp@pobox.com>
6796
6797         Rename this testgtk to gtk-demo to avoid confusion, and 
6798         install it so people can use it as a supplement to 
6799         the documentation.
6800         
6801         * demos/gtk-demo: Moved from demos/testgtk
6802
6803         * demos/testgtk: Removed
6804
6805         * configure.in: make Makefile in gtk-demo
6806         
6807         * demos/gtk-demo/Makefile.am: Install sample source to 
6808         datadir/gtk-demo (maybe there's a better place?), and 
6809         rename the binary to gtk-demo
6810         
6811         * demos/gtk-demo/main.c (load_file): Load installed sample
6812         source if source isn't found in pwd.
6813
6814 2000-11-09  Havoc Pennington  <hp@pobox.com>
6815
6816         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6817         argument to set the char displayed when visibility == FALSE
6818         (gtk_entry_create_layout): If !entry->visible, replace 
6819         all chars with the "invisible char"
6820
6821         * gtk/testgtk.c: Test the invisible_char deal
6822         
6823 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6824
6825         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6826         can't get a native font in the right encoding.
6827
6828 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6829
6830         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6831         respectively.
6832
6833 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6834
6835         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6836         Fix warning when moving between paragraphs.
6837
6838         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6839         delete => delete_from_cursor, insert => insert_at_cursor
6840
6841 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6842
6843         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6844
6845         * modules/input/imthai-broken.c: A Thai input method for use if
6846         Thai keys are really generating Latin1 keysyms.
6847
6848         * modules/input/Makefile.am: Build these.
6849
6850 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6851
6852         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6853         g_filename_{to,from}_utf8 now takes an extra parameter.
6854
6855         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6856         strftime into UTF-8.
6857
6858         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6859         calendars.
6860
6861         (gtk_calendar_paint_day_names): Draw day names in the right 
6862         place.
6863         
6864 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6865
6866         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6867         problem with using result of g_get_charset() backwards -
6868         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6869
6870         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6871         negative min_width/height and max_width/height to
6872         mean "requisition"; this allows setting a window
6873         to be user-resizable in only one direction easily.
6874
6875         * gtk/testgtk.c (create_main_window): Remove hard-coded
6876         usize - set a default size in the vertical direction.
6877
6878 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6879
6880         * gtk/gtkrange.c: Add some missing casts. Support 
6881         2 and 3 button clicks on the arrows to mean 
6882         "move by pages" and "jump to end". (Like gtkspinbutton)
6883
6884 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6885
6886         * gdk/win32/makefile.msc : reflect build module changes
6887
6888         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6889         from GdkPixmap*, cast implementation member instead.
6890
6891         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6892         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6893         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6894         more Gdi functions return value checking. 
6895         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6896         GdkImagePrivateWin32 *.
6897
6898         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6899         menus useable again. Add #pragma message to keep reminded on this issue.
6900         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6901         windows. This allows to enable backing store on Win32!
6902
6903         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6904         in drawable is of impl type. Correct specific type checks appropriate.
6905  
6906         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6907         GDK_WINDOW_DESTROYED before allocating new resources.
6908
6909         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6910
6911         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6912         (gdk_window_foreign_new) initialize parent handle.
6913         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6914
6915         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6916         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6917         problems (e.g. main buttons in testgtk). 
6918
6919 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6920
6921         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6922         gtk_widget_activate for GDK_Return.
6923
6924         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6925         of preedit cursor position.
6926
6927 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6928
6929         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6930         static.
6931
6932 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6933
6934         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6935         out support for multiple locales; that simple doesn't
6936         work reliably with current Xlib
6937
6938         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6939         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6940         Add support for positioning the cursor within the preedit string.
6941
6942 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6943
6944         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6945         at XIM input method module.
6946
6947         * gtk/gtktextview.c: Check for bindings after passing
6948         events to im context filter.
6949
6950 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6951
6952         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6953         empty attribute lists properly.
6954
6955 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6956
6957         * gtk/queryimmodules.c (main): Return non-zero exit
6958         status if errors were encountered querying any
6959         modules.
6960
6961         * modules/input/Makefile.am (moduledir): remove
6962         leftover bin program target.
6963
6964         * docs/make-todo: Fix typo in error message.
6965
6966 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6967
6968         * configure.in: Add modules/input/Makefile
6969
6970 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6971
6972         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6973         don't include gtkthemes.h.
6974
6975         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6976         to point
6977
6978         * gtk/Makefile.am: Add new .c and .h files, build 
6979         gtk-query-immodules and use it to create a gtk.immodules
6980         file for use of test programs.
6981
6982         * gtk/gtkpreview.c: remove extra blank line.
6983
6984 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6985
6986         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6987         Add the ability to add extra tables beyond the default
6988         one, and also the ability to have compose sequences 
6989         that are prefixes of other compose sequences. 
6990
6991         * gtk/gtkimcontextsimple.c: Export a preedit string which
6992         consists of possible candidates for keystrokes that have
6993         been entered but not yet committed.
6994
6995         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6996         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6997
6998         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6999         Add a function to add input-method switching menu items
7000         to a menu.
7001
7002         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7003         when switching input methods.
7004
7005         * gtk/gtkimcontextsimple.[ch]: Change the format of
7006         the compose table to allow compose tables of different
7007         lengths / sequence.
7008
7009 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7010
7011         * gtk/gtkimmodule.[ch]: Support routines for loading
7012         GtkIMContext implementations dynamically at runtime.
7013
7014         * modules/input/imcyrillic-translit.c: A sample input
7015         method (based on GtkIMContextSimple with an extra table),
7016         which demonstrates preedit strings and the module
7017         system for input modules
7018
7019         * gtk/queryimmodules.c: Program to query the available
7020         input modules and write the results into a file.
7021          
7022         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7023         extra config options "im_module_file" (cache file for
7024         input method modules), and "im_module_path" - path
7025         to look for modules when generating cache file.
7026
7027         This doesn't scale.
7028
7029 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7030
7031         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7032         generic code from gtkthemes into a new abstraction
7033         GtkModule which has the logic for implementing
7034         a loadable module which implements a number of 
7035         GObject types.
7036
7037 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7038
7039         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7040         a class into an interface  
7041         
7042         * gtk/gtkoldeditable.[ch]: Move the old editable
7043         implementation into here, so legacy widgets can
7044         still rely on the implemenation. GtkOldEditable
7045         exports GtkEditable. Make selection handling
7046         code use new text conversion functions (and
7047         handle UTF-8 as a side-effect). Use GtkClipboard
7048         for CLIPBOARD.
7049
7050         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7051         Adopt to match above changes.
7052
7053         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7054         avoid GtkOldEditable implementation. Restructure
7055         to reduce number of places that modify state directly.
7056         Move to GtkBindingSet. Display the preedit string.
7057         Queue recomputation of PangoLayout and scroll position
7058         to improve effiency of doing complex changes naively.
7059         Add a menu with cut/copy/paste and input method selection.
7060
7061 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7062
7063         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7064         to set preedit string and attributes; display preedit string by
7065         inserting string and attributes at cursor when creating the
7066         GtkTextLineDisplay.
7067
7068         * gtk/gtktextlayout.c: Move all conversions between byte
7069         positions in PangoLayout and GtkTextIter into new functions
7070         line_display_iter_to_index/index_to_iter that properly
7071         handle the preedit string.
7072
7073         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7074         it to return const char * (eventually will end up
7075         as GCONST char *, most likely.)
7076
7077         * gtk/gtktextview.[ch]: Handle the preedit string, call
7078         gtk_im_context_reset() as necessary, add a menu to switch
7079         input methods.
7080         
7081         * gtk/gtktextlayout.[ch]: Remove useless
7082         gtk_text_layout_get_log_attrs() function.
7083
7084 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7085
7086         * gdk/gdk.def
7087         * gtk/gtk.def: Update.
7088
7089         * gdk/win32/*.c: Add last argument to g_type_register_static()
7090         calls.
7091
7092         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7093
7094         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7095         generated by older wheel mouse drivers. Get the correct y
7096         coordinate from WM_MOUSEWHEEL messages.
7097
7098         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7099         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7100         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7101         Debugging functions.
7102
7103         * gdk/win32/gdkprivate-win32.h: Declare them.
7104
7105         * gdk/win32/gdkinput-win32.h: Add declaration for
7106         gdk_input_window_destroy().
7107
7108         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7109
7110 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7111
7112         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7113         function to help handle keeping things in sync.
7114
7115 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7116
7117         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7118         BOXED marshallers.
7119
7120         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7121         (gtk_list_store_class_init): use the new BOXED marshallers.
7122
7123         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7124         new_with_values to new_with_types.
7125         (gtk_tree_store_get_column_type): add this.
7126         (gtk_tree_store_class_init): use the new BOXED marshallers.
7127
7128         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7129         mirror some POINTER marshallers.
7130
7131 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7132
7133         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7134         allow more interesting iterators.  Also, made the lifecycle of
7135         iterators more explicit.
7136
7137         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7138
7139         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7140         types.
7141
7142 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7143
7144         * demos/testgtk/menus.c:
7145         Changes to make the new testgtk compile after
7146         gtk_menu_append was removed.
7147
7148         * gdk/linux-fb/gdkdrawable-fb2.c
7149         (gdk_fb_get_depth, gdk_fb_get_visual,
7150         gdk_drawable_impl_fb_class_init): Implement
7151         these drawable functions. Now GtkImages work again.
7152
7153         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7154
7155         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7156         
7157         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7158         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7159         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7160         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7161
7162 2000-11-08  Havoc Pennington  <hp@pobox.com>
7163
7164         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7165         visible_set args, don't know where these had gone, I thought they
7166         used to be there
7167
7168         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7169         now we can test the feature and see that it's totally broken.
7170
7171 2000-11-08  Havoc Pennington  <hp@pobox.com>
7172
7173         Make DND copy pixbufs and tags when source and target share a 
7174         tag table.
7175         
7176         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7177         in-process GTK_TEXT_BUFFER_CONTENTS target
7178         (gtk_text_view_drag_data_received): Paste from
7179         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7180
7181 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7182
7183         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7184         API changes.
7185
7186         * gtk/gtkmenu.c: Add support for scrolling menus.
7187         Remove gtk_menu_append/prepend/insert, these have been moved to
7188         gtkcompat.h as #defines.
7189
7190         * gtk/gtkcompat.h.in:
7191         Add compatibility #defines for gtk_menu_append/prepend/insert
7192
7193         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7194         GtkMenuPositionFunc gets an extra argument push_in.
7195         gtk_menu_append/prepend/insert removed.
7196         
7197         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7198         positioning behaviour to fit to scrolling menus.
7199
7200         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7201         into menuitem->submeny. That is wrong, and broke torn
7202         off submenus of torn off menus, since they were unrealized
7203         when the first menu was unrealized.
7204
7205         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7206         gtk_menu_shell_select_item() since these need to be overridden in
7207         GtkMenu.
7208
7209         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7210         positioning behaviour to fit to scrolling menus.
7211         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7212         the current item so that it is prelighted when the menu pops up.
7213         This is a workaround to the fact that the menu doesn't get the
7214         initial enter event (due to grabs).
7215
7216         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7217         s/gtk_menu_append/gtk_menu_shell_append/
7218
7219         * gtk/gtknotebook.c:
7220         s/gtk_menu_insert/gtk_menu_shell_insert/
7221
7222         * gtk/testgtk.c (create_menu, create_menus):
7223         Create the first menu with 50 items so that menu scrolling
7224         can be tested.
7225         
7226         
7227         Patch from Jonathan Blandford  <jrb@redhat.com>
7228
7229         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7230         system to handle size requests.  First, we ask what the size of
7231         the toggle is.  Then, when allocating the size, we allocate the
7232         toggle_size first.  This way we can have multiple menu-item
7233         classes w/o needing a seperate class for each.
7234
7235         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7236         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7237
7238         * gtk/gtkcheckmenuitem.c
7239         (gtk_check_menu_item_toggle_size_request): New function to handle
7240         the toggle size-request.
7241
7242 2000-11-07  Havoc Pennington  <hp@redhat.com>
7243
7244         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7245         Half-ass somewhat fix this function, so that scrolling to the
7246         insertion point works. Pango hacking is in the future to really
7247         fix it.
7248
7249         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7250         length of data, no longer used.
7251
7252         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7253         method contents in here, get rid of destroy method
7254         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7255         that were backward. Remove debug spew.
7256         (cut_or_copy): Make the clipboard work with insert_range to
7257         preserve tags and pixbufs, not just the primary selection.
7258
7259 2000-11-07  Havoc Pennington  <hp@redhat.com>
7260
7261         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7262         to gtk_text_mark_get_visible
7263
7264         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7265         bug that was generating an invalid iterator
7266
7267         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7268         ensure_char_offsets() in front of code placing the iter in an
7269         invalid state.
7270
7271         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7272         make override_location arg const
7273         (paste): Replace the selection if we paste into the 
7274         current selection
7275
7276         * gtk/gtkselection.h: Remove "GtkSelectioData"
7277         (struct _GtkSelectionData): move the definition here.
7278
7279         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7280         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7281
7282         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7283
7284         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7285         (gtk_text_buffer_insert_range_interactive): implement
7286         (gtk_text_buffer_get_tags): Remove, replaced by
7287         gtk_text_iter_get_tags()
7288
7289         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7290         limit parameter, to avoid infinite linear scan.
7291         (gtk_text_iter_backward_search): Add search limit
7292         (gtk_text_iter_forward_find_char): Add search limit
7293         (gtk_text_iter_backward_find_char): Add search limit
7294
7295 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7296
7297         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7298         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7299         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7300         gdk/linux-fb/gdkwindow-fb.c:
7301         use g_object_new() instead of g_type_create_instance() which
7302         is a private function for fundamental type implementations.
7303
7304         * gdk/linux-fb/gdkinput-ps2.c:
7305         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7306         instead just store the current modifier state. Add a (somewhat broken)
7307         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7308         Rename exported function gdk_input_ps2_get_mouseinfo to
7309         gdk_input_get_mouseinfo.
7310
7311         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7312         gdk/linux-fb/gdkwindow-fb.c:
7313         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7314         
7315
7316 2000-11-02  Havoc Pennington  <hp@redhat.com>
7317
7318         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7319         use stock buttons. Should be 100% source compatible, appropriate
7320         filesel fields now point to dialog->vbox and dialog->action_area.
7321         On the bizarre side, dialog->action_area and filesel->action_area
7322         are not the same widget.
7323         (gtk_file_selection_init): Put some padding around the selection
7324         entry, so it isn't touching the GtkDialog separator.    
7325
7326         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7327         use stock buttons, etc. Should also be source compatible.
7328         Set the dialog default title in _init not _new().
7329         
7330         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7331         Use stock buttons; don't put a button box inside the existing
7332         dialog button box. Don't bother with push/pop colormap anymore.
7333
7334         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7335         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7336         for message dialog, and necessary for the font selection and color
7337         selection with help and apply buttons.
7338         
7339         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7340         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7341         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7342         between buttons, put less padding around the action area.
7343         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7344         This will also exit the loop if the widget is hidden.
7345         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7346         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7347         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7348         special-case delete event.
7349
7350         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7351         formatting
7352         
7353 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7354
7355         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7356         button to temporarily disable position recording in the
7357         "saved position" test.
7358
7359 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7360
7361         * gtk/gtkthemes.c: added compat code that temporarily implements
7362         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7363         going to be revamped by owen's upcoming GtkModule patches, but
7364         untill then people want gtk to build, right? ;)
7365
7366 2000-11-04  Havoc Pennington  <hp@pobox.com>
7367
7368         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7369         list
7370
7371         * docs/Changes-2.0.txt: Add note about
7372         gtk_container_get_toplevels()
7373
7374         * gtk/gtktextview.h: formatting
7375         
7376         * gtk/gtktextview.c: don't start descriptions with "Returns",
7377         confuses gtk-doc
7378
7379 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7380
7381         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7382         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7383
7384 2000-11-03  Havoc Pennington  <hp@redhat.com>
7385
7386         * gtk/gtktexttagtable.c: Docs
7387         (gtk_text_tag_table_size): return a signed int
7388
7389         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7390         (gtk_text_tag_event): make the event_object a GObject
7391
7392         * gtk/gtktextview.c: Write API docs for all functions.
7393
7394         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7395         for gtk_text_view_get_window_type() called on one of the private
7396         windows.
7397
7398         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7399         directly, call get_buffer() which demand-creates a default
7400         buffer. So gtk_text_view_new() can be used to create a view with a
7401         default buffer in it, if you just want an empty text box users can
7402         put data in. Useful for GUI builders also.
7403
7404 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7405
7406         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7407         the charset encodign portion MUST be in lowercase.
7408         * gtk/gtkrc.az: added file for Azeri language
7409
7410 2000-11-03  Havoc Pennington  <hp@redhat.com>
7411
7412         Get widgets working on the btree/buffer side. Display of them 
7413         still doesn't work.
7414         
7415         * gtk/gtktextview.c: start implementing child widget stuff
7416
7417         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7418
7419         * gtk/gtktextlayout.c: handle embedded widgets
7420
7421         * gtk/gtktextdisplay.c: handle embedded widgets
7422
7423         * gtk/gtktextchild.c: Implement all the child anchor goo
7424
7425         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7426         function
7427
7428         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7429         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7430         creating a child anchor or a pixbuf segment.
7431         (gtk_text_btree_create_child_anchor): new function
7432         (gtk_text_btree_unregister_child_anchor): new function
7433
7434         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7435         allocate_child signal on GtkTextLayout
7436
7437         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7438         values
7439         (gtk_text_iter_get_child_anchor): new function
7440
7441         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7442         default handler for the changed signal, which calls
7443         gtk_text_buffer_set_modified(), instead of just always emitting
7444         changed then calling set_modified() manually. I guess this is
7445         maybe more flexible. It seems logical.
7446
7447 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7448
7449         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7450         now.
7451
7452         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7453
7454 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7455
7456         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7457         been marked static.
7458
7459 2000-11-02  Havoc Pennington  <hp@redhat.com>
7460
7461         * gtk/testgtk.c (create_labels): had a test backward
7462
7463         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7464         fields, so the dest GC ends up with the correct clip origin, 
7465         etc. Fixes a bug where colored labels didn't redraw 
7466         properly.
7467
7468 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7469
7470         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7471         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7472         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7473         Add last argument to t_type_register_static call.
7474         
7475         * gdk/linux-fb/gdkdrawable-fb2.c:
7476         Add last argument to t_type_register_static call.
7477         export the get_image drawable virtual function.
7478
7479         * gdk/linux-fb/gdkimage-fb.c:
7480         Add last argument to t_type_register_static call.
7481         rename gtk_image_get to _gdk_fb_get_image and
7482         export it for use by gdkdrawable-fb2.
7483
7484         * gdk/linux-fb/gdkprivate-fb.h:
7485         export _gdk_fb_get_image.
7486
7487         * gdk/linux-fb/gdkselection-fb.c:
7488         Add new api call stubs.
7489
7490         * gtk/Makefile.am:
7491         Missing ( in linux-fb part.
7492
7493         * modules/linux-fb/Makefile.am:
7494         Must link with gdk_pixbuf or get unresolved symbol.
7495
7496 2000-11-01  Havoc Pennington  <hp@pobox.com>
7497
7498         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7499         GTK_TYPE_TEXT_ITER and BOXED marshallers
7500
7501         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7502
7503         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7504         
7505         * gtk/gtk-boxed.defs: add GtkTextIter
7506
7507         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7508         properly use OBJECT and BOXED
7509
7510 2000-11-01  Havoc Pennington  <hp@redhat.com>
7511
7512         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7513
7514         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7515         before returning it. 
7516         
7517 2000-11-01  Havoc Pennington  <hp@redhat.com>
7518
7519         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7520         Clip the rectangle to be rendered to the drawable, since
7521         get_from_drawable() requires a region within the drawable
7522
7523 2000-11-01  Havoc Pennington  <hp@redhat.com>
7524
7525         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7526         from coordinates.
7527
7528 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7529
7530         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7531         it isn't NULL.
7532
7533 2000-11-01  Havoc Pennington  <hp@pobox.com>
7534
7535         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7536         on a label
7537         (gtk_label_finalize): unref the attr list if any.
7538
7539         * gtk/testgtk.c (create_get_image): close test on second click
7540         (make_message_dialog): close dialog if it exists
7541
7542         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7543
7544         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7545         gdk-pixbuf
7546
7547         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7548         from Pango markup format
7549         (gtk_label_set_markup_with_accel): ditto but with accelerator
7550         parsing
7551
7552         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7553
7554         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7555         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7556         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7557         call gdk_window_get_origin().
7558
7559         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7560         implement GDK_PIXBUF_ALPHA_FULL
7561         
7562 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7563
7564         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7565         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7566         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7567         multiple handlers respectively, instead of only treating the
7568         first handler found (bug reported by owen).
7569
7570 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7571
7572         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7573
7574         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7575
7576         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7577         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7578         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7579
7580         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7581         widget.  Needs writing someday.
7582
7583         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7584         the docs.
7585
7586 2000-10-30  Havoc Pennington  <hp@redhat.com>
7587
7588         * gtk/gtktextview.h, gtk/gtktextview.c:
7589         Rename delete_at_cursor delete_from_cursor, and 
7590         move to move_cursor.
7591
7592 2000-10-30  Havoc Pennington  <hp@redhat.com>
7593
7594         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7595         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7596         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7597         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7598         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7599         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7600         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7601         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7602         gtktexttypes.h, gtktextview.c, gtktextview.h:
7603
7604         Massive reindentation and reformatting. Arg alignment and comments
7605         still need fixing in various places.
7606
7607 2000-10-30  Havoc Pennington  <hp@redhat.com>
7608
7609         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7610         to be named insert_at_cursor and delete_at_cursor so C++ can
7611         handle them.
7612
7613 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7614
7615         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7616         to get a double directory separator in case the home directory
7617         ends with one. This would cause trouble especially on Windows,
7618         where the path will be confused with the syntax for an an UNC
7619         (network share) path \\server\share\path.
7620         (gtk_rc_add_initial_default_files): Ditto.
7621
7622 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7623
7624         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7625
7626         * gtk/gtktextview.c: Use correct marshallers.
7627
7628 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7629
7630         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7631         use new iter stuff, and added all the appropriate signals et al.
7632
7633         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7634         code is internal to gtk only.
7635
7636 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7637
7638         * gtk/gtk.def
7639         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7640         glib-genmarshal etc.
7641
7642 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7643
7644         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7645         parallel builds.
7646
7647 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7648
7649         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7650
7651 2000-10-27  Robert Brady  <robert@suse.co.uk>
7652
7653         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7654         en_GB (British), ia (Interlingua).
7655
7656 2000-10-26  Havoc Pennington  <hp@redhat.com>
7657
7658         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7659
7660         Fixed output of:
7661         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7662         
7663         * gtk/gtktextsegment.c (char_segment_new): rename
7664         (_char_segment_new_from_two_strings): rename
7665         (_toggle_segment_new): rename
7666         
7667         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7668         (make_clipboard_widget): make it static
7669         (text_get_func): static
7670         (text_clear_func): static
7671
7672         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7673         static
7674         (hex_changed): make it static
7675         (hsv_changed): make it static
7676         (opacity_entry_changed): make it static
7677
7678         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7679         (toggle_segment_check_func): rename with _gtk
7680
7681         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7682         (_widget_segment_new): rename
7683         (_widget_segment_add): rename
7684         (_widget_segment_remove): rename
7685         (_widget_segment_ref): rename
7686         (_widget_segment_unref): rename
7687
7688         * gtk/gtktextmark.c (_mark_segment_new): Rename
7689         _gtk_mark_segment_new   
7690
7691 2000-10-26  Havoc Pennington  <hp@redhat.com>
7692
7693         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7694         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7695         types
7696
7697         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7698         marshaller types
7699
7700         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7701         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7702         license on these files.
7703
7704         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7705         work.
7706
7707         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7708         runtime random number different for each tree, instead of 
7709         a constant I made up.
7710
7711 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7712
7713         * gtk/Makefile.am: buncha cleanups, kludged build sources
7714         dependencies with a Makefile: oldest-source-stamp dependancy
7715         for the moment. automake is really fighting us here, with
7716         intentionally not allowing user-defined rules or dependancies
7717         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7718
7719         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7720         to public headers. tehy have a comment stating that they are
7721         "semi-public" aren't included by gtk.h and if enums popup there,
7722         they can be /*< skip >*/-ed.
7723
7724         * gtk/gtktextlayout.h: 
7725         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7726         added LGPL... <SIGH>
7727
7728 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7729
7730         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7731         GtkTreeIter.  Added iterators everywhere.
7732
7733         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7734
7735         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7736
7737         * gtk/gtktreestore.c: Changed to use the iterators.
7738
7739         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7740         iterators tomorrow.
7741
7742         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7743         iterators tomorrow.
7744
7745         * gtk/treestoretest.c: Changed to use iterators.
7746
7747         * demos/testgtk/main.c: Moved to use the new iterator system.
7748
7749 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7750
7751         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7752         localization misbehaviour.
7753
7754         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7755         a useless type without copy/free.
7756
7757         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7758         of GTK_TYPE_CTREE_NODE.
7759
7760 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7761
7762         * gtk/gtksignal.c:
7763         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7764         applicable.
7765
7766         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7767         gtk_selection_data_copy and gtk_selection_data_free
7768         do GtkSelectionData work as params in signals.
7769
7770 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7771
7772         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7773         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7774         couldn't they at least give it a non-standard name?
7775         
7776         * gtk/gtktextlayout.c: arg! yet another implementation of
7777         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7778
7779         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7780         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7781         home. now i know this _is_ a conspiracy.
7782
7783         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7784         ::state-changed.
7785
7786         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7787         (gtk_accel_group_create_add): marshaller signature fixups.
7788
7789         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7790         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7791
7792         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7793         anymore.
7794
7795 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7796
7797         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7798         due to the signal system changes, it wouldn't build currently. to
7799         be fixed soon.
7800
7801         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7802
7803         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7804         so it needs gtk_marshal_VOID__ENUM() instead of
7805         gtk_marshal_NONE__UINT().
7806
7807         * gdk/gdk*.c: adapted type registration functions.
7808
7809         * gtk/gtkbindings.c:
7810         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7811         gone.
7812
7813         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7814
7815         * gtk/gtkobject.c:
7816         (gtk_object_destroy):
7817         (gtk_object_shutdown): fixed recursion guards. basically we have to
7818         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7819         is called during ::destroy, and avoid recursion there.
7820
7821         * gtk/gtktypeutils.c:
7822         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7823         boxed_copy/boxed_free. this needs a more general solution based on a
7824         publically installed code-generator utility.
7825
7826         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7827         glib's gobject has support for that now.
7828         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7829
7830 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7831
7832         * gtk/gtksignal.[hc]:
7833         * gtk/gtkmarshal.[hc]:
7834         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7835         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7836         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7837         care of that.
7838
7839         * *.c: marshaller name fixups.
7840
7841         * gtk/gtkmarshal.list: added a comment briefing the format.
7842
7843 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7844
7845         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7846         compatibility macros here now. more specifically, most of
7847         the API is preserved (yes, _most_, nonwithstanding the
7848         following exceptions listed, the API is stil lHUGE ;)
7849         things that got removed completely:
7850         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7851         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7852         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7853         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7854         gtk_signal_remove_emission_hook().
7855         non-functional functions variants:
7856         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7857         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7858         not supported anymore.
7859         (gtk_signal_compat_matched): new internal function to aid
7860         implementation of the compatibility macros, it  provides
7861         functionality to block/unblock/disconnect handlers based
7862         on func/data.
7863
7864         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7865
7866         * *.c: adaptions to new type registration API signatures.
7867
7868 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7869
7870         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7871
7872 2000-10-25  Robert Brady  <robert@suse.co.uk>
7873
7874         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7875         gdk_property_delete): If window == NULL, assume the root window.
7876         (restoring the behaviour that was in 1.2).
7877         
7878         * gtk/testtext.c (save_buffer): Allow creation of new files when
7879         saving.
7880
7881         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7882         calls to read().
7883
7884 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7885
7886         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7887
7888         * gdk/win32/gdkdrawable-win32.c
7889         * gdk/win32/gdkimage-win32.c
7890         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7891         X11 backend.
7892
7893         * gdk/win32/gdkcc-win32.c
7894         * gdk/win32/gdkcolor-win32.c
7895         * gdk/win32/gdkfont-win32.c
7896         * gdk/win32/gdkinput-win32.c
7897         * gdk/win32/gdkmain-win32.c
7898         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7899
7900 2000-10-24  Havoc Pennington  <hp@redhat.com>
7901
7902         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7903         it a static function
7904
7905         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7906         redraw text when a tag is applied to it.
7907
7908         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7909         (gtk_text_tag_affects_nonsize_appearance): private functions to
7910         see if a tag requires various kinds of redraw/layout to be queued
7911         up.
7912
7913         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7914
7915         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7916         at the start of the buffer, so search works by default
7917
7918         * gtk/gtktextiter.c (lines_match): init match_start always
7919
7920         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7921         function, get iter at a line + a byte index
7922
7923         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7924         to set byte position within a line
7925         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7926
7927 2000-10-23  Havoc Pennington  <hp@redhat.com>
7928
7929         * gtk/testtext.c: Re-enable the "find" dialog
7930
7931         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7932         
7933         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7934         the arguments to gdk_draw_drawable were in the wrong order
7935         (gdk_window_paint_init_bg): This function was ignoring the
7936         init_region, instead of clipping to it, so the entire backing
7937         pixmap was cleared on every begin_paint()
7938         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7939         was in here again, the loop kept using the same GtkWindowPaint
7940         over and over.
7941         (gdk_window_begin_paint_region): Fix a bug where we had two
7942         x_offset instead of x_offset and y_offset
7943
7944         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7945         before we get the image.
7946         (gdk_draw_drawable): get the composite before we draw the drawable.
7947         (gdk_drawable_real_get_composite_drawable): default
7948         get_composite_drawable implementation that returns the drawable 
7949         itself
7950
7951         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7952         get_composite_drawable virtual function
7953
7954         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7955         list-walking bug
7956
7957         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7958         make this work if the source drawable is a GdkDrawableImplX11
7959         instead of a public drawable type. This is really broken; the
7960         problem is that GdkDrawable needs a virtual method get_xid(), but
7961         of course that doesn't work in practice. Enter RTTI.
7962
7963         Also, improve mismatched depth message.
7964
7965         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7966         GdkPixmap
7967
7968         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7969         install _gdk_x11_get_image as our implementation of get_image
7970         
7971         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7972         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7973
7974         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7975         gdk_drawable_get_image
7976
7977         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7978
7979         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7980         get_image
7981
7982         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7983         trailing semicolon after for loop
7984
7985 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7986
7987         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7988         where font_desc for widget's context lagged widget's font_desc by
7989         one step.
7990
7991 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7992
7993         * gdk/win32/gdkgc-win32.c
7994         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7995
7996         * gtk/makefile.mingw.in
7997         * gtk/gtk.def: Updates.
7998
7999         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8000         library.
8001
8002         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8003
8004         * gtk/makefile.msc: Remove
8005
8006         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8007
8008         * gtk/Makefile.am: Add it.
8009
8010         * configure.in: Generate it.
8011
8012         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8013         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8014         something even if not implemented, to satisfy picky MSVC.
8015
8016         Patches by Hans Breuer:
8017         
8018         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8019         SetBkMode() and SetTextAlign() before calling
8020         pango_win32_render().
8021
8022         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8023         Set hcliprgn to NULL after destroying it.
8024         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8025
8026         * gdk/win32/gdkgeometry-win32.c
8027         (_gdk_windowing_window_queue_antiexpose): More effective
8028         implementation.
8029
8030         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8031         depth as default, not the visual's.
8032
8033         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8034         against empty title.
8035
8036         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8037         IMAGE_PRIVATE_DATA.
8038
8039         * gdk/win32/gdkimage-win32.c: Use it.
8040
8041 2000-10-22  Robert Brady  <robert@suse.co.uk>
8042
8043         * configure.in: Check for bind_textdomain_codeset
8044
8045         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8046         present, make use of it.
8047
8048         Add a translatable string "default:LTR" which, if translated
8049         to "default:RTL", will cause the default direction to be
8050         Right-to-Left.
8051
8052         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8053         direction if marked as flippable.
8054
8055         * gtk/gtkhscale.c: Mark widget as flippable.
8056         
8057 2000-10-04  Havoc Pennington  <hp@redhat.com>
8058
8059         * gtk/testgtk.c (create_buttons): create some stock buttons
8060         with the default accel group
8061         (create_image): test some new GtkImage features
8062         (make_message_dialog): test GtkMessageDialog
8063         (create_modal_window): fix someone's bizzarro indentation
8064
8065         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8066         GTK_WIN_POS_CENTER_ON_PARENT. 
8067         Add "destroy with parent" setting, which means the window goes
8068         away with its transient parent.
8069         (gtk_window_get_default_accel_group): get the default accel group
8070         for the window.
8071         (gtk_window_set_destroy_with_parent): set/unset destroy with
8072         parent flag
8073         (gtk_window_read_rcfiles): invalidate icon set caches
8074         after reloading rcfiles 
8075
8076         * gtk/gtkenums.h (GtkWindowPosition): add
8077         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8078         on its parent window when the dialog is mapped for the first time.
8079
8080         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8081         a simple message dialog class
8082         
8083         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8084         handler to emit response signal, and maybe later it would
8085         honor a hide_on_delete flag - though that isn't there yet.
8086         Set border width on the vbox to 2, so we get some padding.      
8087         Use a button box for the action area.
8088         (gtk_dialog_key_press): synthesize a delete event if Esc
8089         is pressed and the GtkWidget key press handler didn't 
8090         handle the escape key.
8091         (gtk_dialog_new_with_buttons): new function creates a dialog
8092         with some default buttons in it.
8093         (gtk_dialog_add_action_widget): add an activatable widget
8094         as a button in the dialog - you can also add a non-activatable
8095         widget by accessing the action area directly.
8096         (gtk_dialog_add_button): add a simple button - stock ID or 
8097         label - to the action area
8098         (gtk_dialog_response): emit response signal
8099         (gtk_dialog_run): block waiting for the dialog, return 
8100         the response. Override normal delete_event behavior, so that 
8101         delete_event does nothing inside gtk_dialog_run().
8102
8103         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8104         emitted when an action widget is clicked or the dialog gets
8105         delete_event
8106
8107         * gtk/gtk.h: add gtkmessagedialog.h
8108
8109         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8110
8111 2000-10-18  Havoc Pennington  <hp@redhat.com>
8112
8113         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8114         where any number of empty lines would get skipped
8115
8116         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8117         edge.
8118
8119         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8120         warning about invalid iterators (explain more thoroughly)
8121         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8122
8123         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8124         big
8125
8126         * demos/*.c: Add error handling
8127
8128         * gtk/gtktextbuffer.c: don't modify const iterators
8129
8130         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8131
8132         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8133         on file load
8134
8135         * gtk/gtkiconfactory.c: Update to reflect addition of error
8136         handling to gdk-pixbuf loaders
8137
8138 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8139
8140         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8141         move to new modularized testgtk.
8142
8143 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8144
8145         * gtk/gtktreeview.c: Draw the arrows correctly.
8146
8147         * gtk/gtktreemodel.c: Added user docs.
8148
8149         * gtk/gtk.h: remove gtktreedatalist.h.
8150
8151         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8152         parent when generating my type.
8153
8154         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8155         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8156
8157 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8158
8159         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8160         GtkTreeModel from object to interface.
8161
8162 2000-10-16  Havoc Pennington  <hp@redhat.com>
8163
8164         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8165         compilation
8166
8167 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8168
8169         * gtk/gtktreeselection.c: Add API documentation to all public
8170         functions.
8171
8172         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8173         functions.
8174
8175 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8176
8177         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8178         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8179         docs to all public functions.
8180
8181         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8182         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8183         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8184         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8185         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8186         issue.
8187
8188 2000-10-14  Robert Brady  <robert@suse.co.uk>
8189
8190         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8191
8192 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8193
8194         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8195         values other then G_TYPE_STRING.
8196         * gtk/gtktreeselection.c: Minor commenting updates.
8197         * gtk/gtktreeview.c: Format updates.
8198
8199 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8200
8201         * README.win32: Update.
8202
8203         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8204         lines that had been deleted by mistake (?).
8205
8206         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8207         also the case fg==white and bg==black (but still not randomly
8208         coloured cursors). Thanks to Wolfgang Sourdeau.
8209
8210         * gdk/win32/*.c: Silence gcc -Wall.
8211
8212         * gtk/gtk.def: Add missing entry points.
8213
8214         Fixes by Hans Breuer:
8215
8216         * gdk/makefile.msc
8217         * gdk/win32/makefile.msc: Update.
8218
8219         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8220         some MSVC thing, presumably), cause breakpoint on failures. Add
8221         GDK_NOR case. Call g_log_set_always_fatal.
8222
8223         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8224         should be pased by reference.
8225         
8226         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8227         
8228         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8229
8230         * gdk/win32/gdkevents-win32.c
8231         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8232
8233         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8234         implementation object.
8235
8236         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8237         not just windows.
8238         
8239         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8240         Use the wrapper object.
8241         
8242 2000-10-06  Havoc Pennington  <hp@redhat.com>
8243
8244         * Makefile.am (SRC_SUBDIRS): contrib subdir
8245
8246         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8247         so it can be used in Xlib version
8248
8249         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8250         tree
8251
8252         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8253         change from 1.0 tree that returns first frame of animation
8254         if the loaded file is an animation.
8255
8256         * contrib: add new directory to hold stuff that comes with GTK+
8257         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8258         
8259         * configure.in: add contrib/*
8260
8261 2000-10-05  Havoc Pennington  <hp@redhat.com>
8262
8263         * demos/testpixbuf-save.c: add pixbuf save test
8264
8265         * demos/Makefile.am: add testpixbuf-save.c
8266
8267 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8268
8269         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8270         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8271         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8272         * gtk/gtktreeselection.[ch]: Replaced
8273         "node_selected"/"node_unselected" signal with "selection_changed"
8274         signal.
8275
8276 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8277
8278         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8279         tree widget.
8280
8281 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8282
8283         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8284         drawing.
8285
8286 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8287
8288         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8289         Move list pointer forwards before removing item from
8290         list. (Crash reported by Salmaso Raffaele)
8291
8292         * gdk/gdkwindow.h: Remove spurious trailing ,
8293
8294         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8295         dependencies on uninstalled libraries, sorry folks.
8296
8297 2000-10-04  Havoc Pennington  <hp@redhat.com>
8298
8299         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8300         gtk/gtkiconfactory.c: Fix copyrights    
8301
8302         * demos/testpixbuf.c: add inline pixbuf test
8303         
8304 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8305
8306         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8307         Add gdk_window_iconify.
8308
8309         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8310         (gdk_window_set_geometry_hints): Add win_gravity
8311         to geometry structure.
8312
8313         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8314         Implement _NET_WM_PING.
8315
8316         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8317         Set _NET_WM_PID on the client leader.
8318
8319         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8320         Handle UTF-8 better.
8321
8322         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8323         UTF-8 better, set _NET_WM_NAME as well. Only set
8324         icon name if it hasn't previously been explicitely 
8325         set.
8326
8327 2000-10-03  Havoc Pennington  <hp@redhat.com>
8328
8329         * gtk/testtextbuffer.c: clean up trailing whitespace,
8330         add extensive tests for tag toggle iteration.
8331         
8332         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8333         distance
8334
8335         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8336         optimize case where the tag root is on level 1
8337         (gtk_text_line_previous_could_contain_tag): attempt to implement
8338         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8339         functionality
8340
8341         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8342         Implement this, though not very efficiently.
8343
8344         * gtk/gtktextiterprivate.h: reformat
8345
8346         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8347         iterator
8348
8349         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8350         this to properly revalidate the iterators.
8351
8352         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8353         properly at the end of the line (and therefore on empty lines)
8354
8355         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8356         maybe we should return a value...
8357
8358 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8359
8360         * config.h.win32: Guard definition of alloca(). glib.h now handles
8361         that.
8362
8363         * gdk/gdk.def
8364         * gtk/gtk.def: Add new entry points.
8365
8366         Changes just to make GTK+ build without errors on Win32. No hope
8367         of it working in its current state, though...:
8368         
8369         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8370         some functions from the X11 backend, just to make GTK+ build.
8371
8372         * gdk/makefile.mingw.in
8373         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8374         number. Add new object files.
8375
8376         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8377         GetMessageTime to get timestamp (where on X11 uses
8378         gdk_x11_get_server_time()).
8379
8380 2000-10-02  Havoc Pennington  <hp@pobox.com>
8381
8382         * gtk/gtktextview.c: text_window_* weren't static and should have
8383         been.
8384         Start work on child widgets; not yet complete, syncing to 
8385         office computer.
8386
8387         * gtk/gtktextchild.h: change this to contain a public interface,
8388         starting work on child interfaces.
8389         * gtk/gtktextchildprivate.h: move private interfaces here
8390
8391         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8392
8393         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8394         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8395         gtk/gtktextmark.c: copyright notices
8396
8397         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8398         internal functions      
8399
8400         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8401         internal function
8402
8403         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8404         Reformatting    
8405
8406 2000-09-30  Havoc Pennington  <hp@pobox.com>
8407
8408         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8409         NULL start/end pointers
8410
8411         * gtk/gtktextbuffer.c: Write some docs
8412         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8413         NULL, so you can just check whether there's a selection.        
8414
8415         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8416         cleanup_line or segments_changed ourselves, it gets done 
8417         in unlink_segment
8418
8419         * gtk/gtktextmark.h:
8420         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8421         
8422         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8423
8424         * gtk/gtktextmark.c: delete some more old Tk cruft
8425
8426         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8427         mark before removing it, so we can emit MARK_DELETED with a valid
8428         pointer.
8429         (gtk_text_buffer_mark_set): hold ref across signal emission
8430
8431         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8432         whining about attempts to delete special marks
8433
8434         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8435         underscore, since it's internal.
8436
8437         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8438         now implemented in terms of iterators in gtktextiter.h
8439
8440         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8441         New function, destructively sets contents of buffer. Also 
8442         a convenient way to clear the buffer by setting text to ""
8443
8444         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8445         multiline string literal
8446
8447         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8448         text changes.
8449
8450         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8451         is not dereferenceable
8452         (gtk_text_iter_forward_lines): fix return value
8453
8454 2000-09-29  Havoc Pennington  <hp@redhat.com>
8455
8456         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8457
8458         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8459         that set border window size to have nicer name
8460         (gtk_text_view_mark_set_handler):  Fix this to have the 
8461         right signature.
8462
8463         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8464
8465         * gtk/testtext.c: Update with API changes, put line numbers on 
8466         both sides.
8467         
8468         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8469         with this
8470
8471         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8472         pixbuf; delete a big block of #if 0 Tk code
8473
8474         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8475         insert_pixmap with insert_pixbuf
8476
8477 2000-09-29  Martin Baulig  <baulig@suse.de>
8478
8479         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8480         confusion with the GdkPixbuf of the GNOME 1.x platform.
8481
8482 2000-09-29  Havoc Pennington  <hp@pobox.com>
8483
8484         * gtk/gtktextview.c: Implement the side windows.
8485
8486         * gtk/testtext.c: Implement simple line numbering in the 
8487         left side window; seems to make scrolling sloooow. Oops.
8488         Also, cursor blink is for some reason causing redraws
8489         of the line numbers. Should investigate...
8490
8491 2000-09-28  Havoc Pennington  <hp@redhat.com>
8492
8493         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8494         scrolling child windows, and draw focus rectangle properly.
8495         
8496         (gtk_text_view_buffer_to_window_coords):
8497         Coordinate transformation to deal with all these freaking windows
8498         and offsets
8499         (gtk_text_view_window_to_buffer_coords): transform the other way
8500
8501         * gtk/testtext.c (create_buffer): Update to match Pango API change
8502
8503         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8504         anonymous tags
8505         (foreach_unref): don't emit remove signal from finalize, just
8506         set tag's parent to NULL
8507
8508 2000-09-26  Havoc Pennington  <hp@redhat.com>
8509
8510         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8511         Fix some warnings       
8512
8513 2000-09-26  Havoc Pennington  <hp@redhat.com>
8514
8515         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8516         headers into the private header list
8517
8518         * Makefile.am (pkgconfig_DATA): install pkg-config files
8519
8520         * configure.in: add pkg-config files
8521
8522         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8523
8524         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8525         outstanding icon caches on theme change.
8526
8527         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8528         important types:
8529
8530         (GtkIconSource): Specification for creating a pixbuf 
8531         appropriate for a direction/state/size triplet from 
8532         a source pixbuf or filename
8533
8534         (GtkIconSet): List of GtkIconSource objects that are used to
8535         create the "same" icon (e.g. an OK button icon), and cache for
8536         rendered icons
8537
8538         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8539         up the icon set for a given stock ID.  GTK maintains a stack of
8540         GtkIconFactory to search, and applications or libraries can add
8541         additional icon factories on top of the stack
8542         
8543         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8544         the set of GtkIconSource specified for a given stock ID into 
8545         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8546         RcStyle, under the specified stock ID.
8547
8548         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8549         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8550         This allows people to theme how prelight, insensitive, etc. are
8551         done.
8552
8553         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8554         icon factories for a style, and return the resulting 
8555         icon set if any.
8556
8557         (gtk_style_render_icon): Render an icon using the render_icon 
8558         method in the GtkStyleClass.
8559
8560         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8561         Use the style for a given widget to look up a stock ID, get the
8562         icon set, and render an icon using the render_icon method 
8563         of the style
8564
8565         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8566         (contains information about a stock item), the built-in stock item
8567         IDs, and functions to add/lookup stock items.
8568
8569         * gtk/stock-icons/*: Stock icons that come with GTK
8570
8571         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8572         a button based on a GtkStockItem
8573         (gtk_button_new_accel): Takes a uline string and accel group, and
8574         installs the accelerator.
8575
8576         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8577         image-display widget.
8578
8579 2000-09-25  Havoc Pennington  <hp@redhat.com>
8580
8581         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8582
8583         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8584         Fix a bug when removing node data, we didn't properly 
8585         re-splice the linked list after removing the data.
8586
8587         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8588         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8589
8590         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8591
8592         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8593         for the layout from the GtkTextTag.
8594
8595         * gtk/gtktexttypes.h: delete tab and search cruft, 
8596         remove g_convert() in favor of GLib version
8597
8598         * gtk/gtktexttypes.c: remove tab implementation from here,
8599         move to Pango
8600
8601         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8602         tab stuff using new PangoTabArray from Pango
8603
8604         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8605         unused border_width stuff
8606
8607 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8608
8609         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8610         glib) and now useless utf_to_latin1() latin1_to_utf()
8611
8612         * gtk/gtktextview.[ch]: Change ::move_insert and
8613         ::delete_text action signals to ::move and ::delete;
8614         create the signals with the right enumeration type,
8615         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8616         C-v bindings, change Home, End to move to beginning/end
8617         of line, Add C-Home C-End to move to beginning/end
8618         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8619         combine ::scroll_text into ::move; use new GtkSelectionData
8620         functions to simplify DND text handling.
8621         
8622         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8623         deletion enumerations here, rename enumeration values to 
8624         be consistently plural.
8625
8626         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8627         for cut/copy/paste and primary selection.
8628
8629         * gtk/gtktextbuffer.[ch]: Remove excess time and
8630         'interactive' arguments from cut/copy/paste;
8631         rename cut to cut_clipboard, etc; remove
8632         gtk_text_buffer_get_clipboard_contents().
8633
8634         * gtk/gtktextlayout.[ch]: Add 
8635         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8636         line ends.
8637
8638         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8639         Functions to set or get a UTF-8 string on the selection
8640         data.
8641
8642         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8643         interfaces.
8644
8645         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8646         created widgets - one of these is useless if we don't.
8647
8648         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8649         a public function clear all targets registered for the
8650         widget.
8651
8652         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8653         Never call gtk_widget_realize() - that was just asking
8654         for bizarre side-effects.
8655
8656         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8657         gdk_selection_owner_set even if the widget is the
8658         same so that we reliably update the timestamp on
8659         the server.
8660
8661         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8662         gdk_x11_get_server_time() function.
8663         
8664         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8665         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8666         Add some tricky filtering on serial numbers for
8667         selection clear events to fix up long-standard
8668         race condition FIXME's in gtkselection.c.
8669
8670         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8671         routines to convert from utf8 to compound text or
8672         STRING and from a text property to UTF-8.
8673
8674         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8675         a convenience function gdk_get_current_event_time().
8676
8677         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8678         and free selection_data->data properly
8679
8680 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8681
8682         * gtk/gtkthemes.c: Remove some unecessary includes.
8683
8684 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8685
8686         * gtk/gtktextdisplay.c
8687         * gtk/gtktextlayout.c
8688         * gtk/gtktexttag.c
8689         * gtk/gtktexttag.h
8690         * gtk/testtext.c: Change the overstrike property to strikethrough,
8691         to closer match pango.
8692
8693 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8694
8695         * gtk/gtktextview.c: Fix up visibility so that focus,
8696         cursor_visible and blink interact properly.  Reenable cursor blink
8697         which had been roughly disabled. Make blink and focus
8698         properly per-view.
8699
8700         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8701         Add a flag for whether to display insertion cursor and
8702         a function to set the flag.
8703
8704         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8705         get_line_y() to get_line_yrange(), to be a bit more generally
8706         useful.
8707
8708 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8709
8710         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8711           do stop_navigating_submenu, to clear last timeout properly.
8712           Also in gtk_menu_motion_notify move ignore_enter above
8713           the conditional to make it always happen as suggested by Owen
8714
8715 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8716
8717         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8718
8719         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8720         w32api headers.
8721
8722         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8723         declarations.
8724
8725         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8726         (gdk_win32_get_colormap): A line had been deleted by mistake.
8727
8728         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8729         (gdk_event_translate): Handle more virtual keycodes to be able to
8730         generate GDK events for Control-comma, Control-period, etc.
8731
8732         * gtk/gtk.def: Add some missing entry points.
8733
8734 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8735
8736         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8737         Doc comment fixing. (Mostly non-matching parameter names.)
8738
8739         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8740         comments a little to avoid looking like a doc comment.
8741
8742         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8743         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8744         conversions be changed to GError?)
8745
8746         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8747         Move private #defines into .c file.
8748
8749         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8750         order of argument addition, remove duplicates.
8751
8752         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8753         parent class is FrameClass, not BinClass.
8754
8755         * gtk/gtk.h: Add gtkinvisible, which was missing.
8756         (It's occasionalyl useful for client apps, if seldom.)
8757
8758         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8759         #define.
8760
8761 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8762
8763         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8764         coordinates when creating window, instead of GDK-space
8765         coordinates. (Avoid BadValue on too large windows.)
8766
8767 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8768
8769         * configure.in (use_mmx_asm): Remove conftest* after use along the
8770         lines of AC_TRY_COMPILE.        
8771         
8772         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8773         of g_dirname, which is deprecated.
8774         (gtk_rc_parse_any): Removed calls to
8775         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8776
8777         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8778         Removed calls to g_hash_table_{freeze,thaw}, as they are
8779         deprecated now.
8780
8781         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8782         instead of g_basename.
8783         
8784 2000-09-04 Elliot Lee <sopwith@redhat.com>
8785         
8786         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8787         ANSI warning.
8788
8789 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8790
8791         * gtk/gtkwidget.h:  Add some documenting comments about 
8792           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8793           just as owen said on irc.
8794
8795         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8796           set HAS_DEFAULT.  Only set it if there isn't another window
8797           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8798           it if the widget is not the focused window with RECEIVES_DEFAULT.
8799           This fixes weird double default bugs in dialogs which has things
8800           call gtk_window_set_default at times.
8801
8802 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8803
8804         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8805         Nils Barth and David Santiago to improve submenu
8806         navigation. The patch does this by creating a triangular
8807         region from the point where the pointer leaves the
8808         menu to the submenu.  While the pointer is in
8809         that region and a timeout has not expired, events 
8810         that would cause the active submenu to change are
8811         ignored.
8812
8813 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8814
8815         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8816         moving a toplevel window immediately after sizing it would
8817         result in it being sized back to the old size since 
8818         impl->width, impl->height aren't updated until we hear
8819         back from the server. There is still a (longstanding) bug
8820         here that gdk_window_get_size() will give the wrong size
8821         until we do hear back.
8822
8823 2000-08-31  Havoc Pennington  <hp@redhat.com>
8824
8825         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8826         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8827         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8828         Rename GtkTextStyleValues to GtkTextAttributes
8829
8830 2000-08-31  Havoc Pennington  <hp@pobox.com>
8831
8832         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8833         for rapid testing whether an iterator is the end iterator
8834         (gtk_text_btree_new): init end line cache
8835         (gtk_text_line_is_last): use fast cached line to 
8836         see if we're the last line.
8837         (get_last_line): use cached line here too, should 
8838         speed up some random unrelated code.
8839         
8840 2000-08-30  Havoc Pennington  <hp@pobox.com>
8841
8842         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8843         signals.
8844
8845         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8846         delete_text signals. This allows the signals to be used for
8847         implementing undo.
8848
8849         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8850         provide "interactive" argument when emitting insert_text or
8851         delete_text signal.
8852         
8853 2000-08-30  Havoc Pennington  <hp@pobox.com>
8854
8855         * gtk/gtktextbuffer.c: Docs
8856
8857 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8858
8859         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8860         from switch statements, since Tor removed the enumeration
8861         value.
8862         
8863         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8864         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8865
8866 2000-08-29 Elliot Lee <sopwith@redhat.com>
8867         * */*.h: Use G_GNUC_CONST.
8868
8869 2000-08-27  Havoc Pennington  <hp@pobox.com>
8870
8871         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8872         minor indentation fixes, inserted some FIXME about stuff I
8873         realized was broken while documenting it.
8874         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8875         GTK convention  
8876
8877 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8878
8879         * gtk/testgtk.c (create_styles): Fix double free of
8880         font desc.
8881
8882 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8883
8884         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8885         
8886         * gtk/testgtk.c (create_styles): Add a test for modifying
8887         the style through gtk_widget_modify_*.
8888
8889         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8890         a function to get the current modifier style.
8891
8892         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8893         of the passed in GtkRcStyle instead of ref'ing it.
8894
8895         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8896
8897 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8898
8899         * gdk/gdkimage.h
8900         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8901         shared memory image+pixmap GdkImage type, or
8902         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8903         I am dropping that.
8904
8905         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8906         actually call gtk_init_abi_check(), passing also
8907         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8908
8909         * gtk/gtk.def
8910         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8911         New functions, used to check that the GTK+-using code has been
8912         compiled using the correct compiler and switches. In particular,
8913         with gcc one has to use the -fnative-struct switch as GTK+ is
8914         compiled with that.
8915
8916 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8917
8918         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8919         ->prev fields when merging lists. (Found simultaneously
8920         by Pawel Salek and Jakub Jelinek)
8921
8922 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8923
8924         * gdk/gdk.def
8925         * gtk/gtk.def: Add missing entries.
8926
8927         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8928         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8929
8930         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8931         function. Dummy implementation at this point.
8932
8933         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8934         rules. Undefine GTK_COMPILATION when compiling the test programs.
8935         
8936         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8937
8938 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8939
8940         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8941         to convert back and forth from UTF-8 and the "system" (or "current
8942         locale") charset when necessary. Indentation/spacing cleanup.
8943
8944 2000-08-10  Havoc Pennington  <hp@redhat.com>
8945
8946         * Makefile.am (snapshot): Change the format of the snapshot
8947         version to match glib
8948
8949         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8950         from EXTRA_DIST since it doesn't seem to exist
8951
8952 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8953
8954         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8955         version of the directory name (not the UTF-8 one) when building
8956         the path name to stat().
8957
8958 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8959
8960         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8961         PANGO_ATTR_SHAPE set.
8962
8963 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8964
8965         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8966         Peter Osterlund to simplify the code while keeping the
8967         functionality the same.
8968
8969 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8970
8971         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8972         is_viewable() test further inside the function, since removing the 
8973         window from the redraw list without clearing ->update_area
8974         was also very broken.
8975
8976 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8977
8978         * configure.in: Check for <unistd.h>.
8979
8980 2000-08-01  Martin Baulig  <baulig@suse.de>
8981
8982         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8983         to display the message that this is a development version of GTK+.
8984
8985 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8986
8987         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8988         was depending on widget->allocation instead of the width of text_area,
8989         which was incorrect for subclasses like GtkSpinButton.
8990
8991         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8992         with width == 1 tests that should be width == -1.
8993
8994 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8995
8996         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8997         (broken, Elliot, every single window blank on X) custom code with call
8998         to gdk_window_is_viewable() which a) prevents code duplicate and
8999         b) works. 
9000
9001 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9002
9003         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9004         to get the GDK_PARENT_ROOT() macro to work.
9005         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9006         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9007         of, windows that aren't shown.
9008         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9009         pointer grab stuff.
9010
9011 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9012
9013         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9014           s/gtk_main_iteration/g_main_iteration/
9015
9016           Did this already in change:
9017                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9018           don't know how it got reverted.
9019
9020 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9021
9022         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9023         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9024
9025         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9026         not gdk_pixbuf.
9027
9028 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9029
9030         * configure.in,po/{sp,sr}.po: Added Serbian files
9031
9032 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9033
9034         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9035
9036         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9037         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9038         GIOChannel implementation.
9039
9040         * gdk/win32/gdkinput.c
9041         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9042
9043         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9044         definition to match prototype.
9045
9046         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9047
9048 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9049
9050         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9051         function, to allow handling image formats that cannot be detected
9052         by looking at content alone.
9053
9054 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9055
9056         * docs/tutorial/*.gif *.jpg *.eps
9057           Update these to the same look-n-feel.
9058           Why does including images in DocBook suck so badly?
9059
9060 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9061
9062         * gtk/gtktable.c: applied patch from Phil Thompson
9063         <phil@river-bank.demon.co.uk> that enables space settings for
9064         the last row/columns as well.
9065
9066 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9067
9068         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9069         updates the license headers to the GNU Lesser General Public License,
9070         as well as updating the copyright year to 2000.
9071
9072 2000-07-26  Robert Brady  <rwb197@zepler.org>
9073
9074         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9075           and po/Makefile, was installing and looking for them under gtk20
9076           and gtk2 respectively.
9077
9078 2000-07-25  Havoc Pennington  <hp@redhat.com>
9079
9080         * gtk/testtext.c: Comment out some stuff that depends on the rest
9081         of my patches.
9082
9083 2000-07-25  Havoc Pennington  <hp@redhat.com>
9084
9085         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9086         buffer
9087
9088 2000-07-25  Havoc Pennington  <hp@redhat.com>
9089
9090         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9091         widget changes.
9092
9093         * gtk/gtktextview.h: To be consistent with usage of "line"
9094         throughout the API to mean "newline-terminated thingy", change
9095         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9096         to MOVEMENT_LINE.
9097
9098         (GtkTextView): Add flags for default editability, and whether to
9099         show the cursor. Add functions to get/set that. Add 
9100
9101         (gtk_text_view_get_iter_location): new function
9102
9103         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9104         gtktextlayout.h
9105         (g_convert): Add g_convert temporarily, will go in glib in a bit
9106         
9107         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9108         GtkTextTagTableForeach instead of brokenly using GHFunc.
9109         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9110
9111         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9112         moved to public header.
9113
9114         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9115         "invisible", since "elide" was a bad name.
9116         (gtk_text_tag_get_priority): Added
9117
9118         (GtkTextStyleValues): put this in public header, along with
9119         functions to use it.
9120
9121         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9122         longer include gtktextbtree.h.
9123
9124         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9125         gtk_text_mark_deleted
9126
9127         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9128         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9129         to make this possible. Now we only need to install
9130         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9131         (However the Makefile.am isn't changed yet because of the
9132         logistics of merging gtk-hp-patches piecemeal)
9133
9134         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9135         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9136         gtk_text_iter_get_line is now used in the public API for a
9137         different purpose.
9138
9139         * gtk/gtktextiter.h: Clean up function names to be more
9140         consistent. Always call char offset "offset" and byte index
9141         "index". A "line" is always a line number. 
9142
9143         (gtk_text_iter_is_last): new function, more efficient than 
9144         the existing way to check
9145         (gtk_text_iter_is_first): new function, also more efficient
9146
9147         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9148
9149         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9150         gtk_text_iter_forward_char, etc.
9151
9152         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9153         forward_find_tag_toggle, since this isn't a linear search
9154
9155         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9156
9157         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9158         New functions, search for a buffer substring.
9159
9160         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9161         interactive and default editable (since we need to store that info
9162         until we receive the selection data).
9163
9164         Remove all the _at_char and at_line etc. versions of functions;
9165         only have iterator versions.
9166
9167         Add _interactive() versions of functions, that consider the
9168         editability of text. (FIXME add interactive flag to the 
9169         insert/delete signals per Darin's suggestion)
9170
9171         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9172         tag table if necessary
9173
9174         Remove declaration of gtk_text_buffer_get_iter_from_string
9175
9176         (_gtk_text_buffer_get_btree): private/internal function, added.
9177         
9178
9179         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9180         (gtk_text_line_is_last): new function
9181
9182 2000-07-25  Havoc Pennington  <hp@redhat.com>
9183
9184         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9185         using GtkProgressBar. See Changes-2.0.txt for details.
9186
9187         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9188         "pulse_step" which are the equivalent of
9189         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9190         Implement new API.
9191         
9192         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9193         (use_text_format) to mark whether text set on the progress bar is
9194         a format string. Deprecate entire GtkProgress interface.
9195
9196         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9197         (gtk_progress_build_string): make this a no-op if use_text_format
9198         is FALSE
9199
9200         * docs/Changes-2.0.txt: Describe progress bar changes.
9201
9202 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9203
9204         * Makefile.am: Include the build directory.
9205
9206         * configure.in: Generate build/Makefile, build/win32/Makefile,
9207         gdk/, gdk/win32/, and gtk/makefile.mingw.
9208
9209         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9210         Add GETTEXT_PACKAGE.
9211         
9212         * gdk/gdk.def
9213         * gtk/gtk.def: Updates.
9214
9215         * gdk/gdkfont.h
9216         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9217         need them any longer.
9218
9219         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9220
9221         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9222         PANGOWIN32_LIBS and gdk_pixbuf.
9223
9224         * gdk/win32: Compiles, but no doubt doesn't work at all.
9225
9226         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9227
9228         * gdk/win32/gdkinput.c: New file, temporarily.
9229         
9230         * gdk/win32/gdkinput-win32.h: New file
9231
9232         * gdk/win32/gdkinputprivate.h: Remove.
9233
9234         * gdk/win32/gdkpango-win32.c: New file.
9235
9236         * gtk/makefile.mingw.in: New file
9237
9238         * gtk/makefile.cygwin: Removed
9239         
9240         * gtk/Makefile.am: Update accordingly.
9241
9242         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9243         made externally visible.
9244
9245         * gtk/gtkmain.c: Use it.
9246         
9247         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9248         is enough.
9249
9250         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9251
9252 2000-07-24 Elliot Lee <sopwith@redhat.com>
9253         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9254         individual backends already.
9255         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9256         again. Yes, there really is a good reason for this, if you are using the gdkregion
9257         internals, and if you're not, why do you care?
9258         * gdk/gdkwindow.c: Fix inverted condition
9259         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9260         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9261         * gtk/gtkrange.c: Redraw trough when moving.
9262         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9263         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9264
9265 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9266
9267         * configure.in: Check for mkstemp and sigsetjmp. Output
9268         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9269
9270         More work on GDK for Win32. Still in an intermediate state.
9271
9272         * gdk/makefile.cygwin
9273         * gdk/win32/makefile.cygwin: Removed.
9274         
9275         * gdk/makefile.mingw.in
9276         * gdk/win32/makefile.mingw.in: New files.
9277
9278         * gdk/Makefile.am
9279         * gdk/win32/Makefile.am: Generate and distribute them.
9280
9281         * gdk/win32/gdkwindow-win32.h
9282         * gdk/win32/gdkdrawable-win32.h
9283         * gdk/win32/gdkpixmap-win32.h: New files.
9284
9285         * gdk/win32/gdkcolor-win32.c
9286         * gdk/win32/gdkcursor-win32.c
9287         * gdk/win32/gdkdrawable-win32.c
9288         * gdk/win32/gdkgc-win32.c
9289         * gdk/win32/gdkimage-win32.c
9290         * gdk/win32/gdkprivate-win32.h
9291         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9292         Rename fields and variables called xcursor, xid, etc (these names
9293         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9294
9295 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9296
9297         * gtk/gtkentry.[ch]: Fix some problems with vertical
9298         alignment.
9299
9300         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9301         char/byte confusion.
9302
9303 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9304
9305         * gtk/gtktextview.c (changed_handler): Fix bug where
9306         redraw wasn't being done properly when height of
9307         dirty region changed.
9308
9309         * demos/Makefile.am: Remove various references to
9310         -lgmodule
9311
9312 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9313
9314         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9315         PangoAttrShape to reserve space for pixmaps, add 
9316         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9317         in the display functions.
9318         
9319         * gtk/testgtk.c (create_layout): Set some more exotic
9320         scrolled window options
9321
9322         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9323         Add function to set the shadow type of a window, to allow
9324         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9325         which don't draw their own frame.
9326
9327 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9328
9329         * docs/tutorial/package-db-tutorial.sh: New file for
9330           packaging DocBook format tutorial
9331
9332 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9333
9334         * docs/tutorial/gtk-tut.sgml: Minor updates
9335
9336         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9337
9338 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9339
9340         * gtk/gtksignal.c: Fix C++ comment.
9341
9342         * gtk/gtkimmulticontext.c
9343         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9344         don't return value from void functions.
9345
9346         * gtk/gtk.def: Add gtk_rc_style_unref.
9347
9348 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9349
9350         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9351         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9352         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9353         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9354         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9355         gtk/gtktypeutils.h: Include files outside of the extern "C"
9356         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9357         <vakatov@peony.nlm.nih.gov>.
9358
9359 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9360
9361         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9362           Completes first pass. Hurrah!
9363
9364 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9365
9366         * docs/tutorial/gtk-tut.sgml: More clean ups.
9367
9368 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9369
9370         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9371         paint the background of the text area which was accidentally
9372         removed at some point.
9373
9374         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9375           
9376          - Move most of the functionality from the theme vtable
9377            into GtkRcStyleClass and GtkStyleClass. The moved
9378            vtable functions were changed a bit in the move to
9379            work better in their new home.
9380
9381          - Get rid of the engine and engine_data fields from
9382            GtkRcStyle and GtkStyle; instead the theme
9383            engine derives theme-specific subclasses of GtkRcStyle
9384            and GtkStyle
9385
9386          - Add extra dlsym() found entry point to themes,
9387            theme_create_rc_style().
9388
9389         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9390         in gtk_style_real_copy.
9391
9392         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9393         to register a type associated with an engine. (The engine
9394         won't be unloaded as there is an instance of the type.)
9395
9396
9397 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9398
9399         * docs/tutorial/gtk-tut.sgml: Clean ups.
9400
9401 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9402
9403         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9404           of cleaning up to do.
9405
9406 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9407
9408         * gdk/testgdk.c: New file, quick hack to test backends for
9409         pixel-by-pixel correctness of the most simple graphic operations.
9410
9411 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9412
9413         * Really release 1.3.1
9414         
9415         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9416         include structure.
9417
9418 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9419
9420         * Released 1.3.1
9421
9422 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9423
9424         * gtk/gtktextlayout.c: use FALSE for size_only most
9425         of the time when calling gtk_text_layout_get_line_display()
9426         to avoid causing double reshapes when a redraw follows
9427         immediately after.
9428
9429 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9430
9431         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9432         appropriate region and gdk_window_process_updates() so trough
9433         updating doesn't lag behind the window being scrolled.
9434
9435         * gdk/gdkgc.c: Make parent_class pointer static.
9436          
9437 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9438
9439         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9440         include <string.h>.
9441          
9442         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9443         cut-and-paste error in computing memory offset for 4 channels.
9444
9445 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9446
9447         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9448         gtk_rc_append_default_pixmap_path(), since it wasn't
9449         adding an interesting path and we don't have a meaningful
9450         default for this value.
9451
9452 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9453
9454         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9455         gtk-config to gtk-config-2.0 move gtk_.m4 to
9456         gtk-2.0.m4
9457
9458         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9459         gdk/Makefile.am demos/Makefile.am: Change 
9460         library names to libgtk-1.3.la, etc, so that we
9461         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9462
9463         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9464         gdk/Makefile.am gdk/x11/Makfile.am
9465         Move include files into /usr/include/gtk-2.0, 
9466         /usr/lib/gtk-2.0/include/
9467          
9468         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9469         gtk/gtkintl.h: Change package for gettext from 
9470         gtk+ to gtk20. Put hack in autogen.sh to modify
9471         po/Makefile.in.in after gettextize to make this
9472         possible.
9473
9474         * gtk+.spec: Some updates, not tested.
9475
9476         * gdk-pixbuf/Makefile.am: Move loaders into
9477         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9478
9479         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9480         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9481         to THEMENAME/gtk-2.0/. Move engine directory  to
9482         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9483         
9484 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9485
9486         Win32 changes, still doesn't build though.
9487
9488         * gdk/makefile.cygwin
9489         * gdk/win32/makefile.cygwin
9490         * gtk/makefile.cygwin: Updates.
9491
9492         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9493         default values for fg and bg pixel as X11 does (0 and 1), not
9494         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9495         Use 0 for pen width by default (treated as 1 anyway later, but for
9496         apps that might check the value in the GdkGC).
9497         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9498         interface to gdk_gc_predraw and _postdraw.
9499
9500         * gdk/win32/gdkwin32.h
9501         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9502
9503         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9504         extraneous semicolon.
9505
9506         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9507
9508         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9509         not the Win32 bitspixel value.
9510
9511         * gdk/win32/gdkcc-win32.c:
9512         * gdk/win32/gdkcolor-win32.c 
9513         * gdk/win32/gdkprivate-win32.h
9514         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9515         GDK object structure.
9516
9517 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9518
9519         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9520         * docs/tutorial/gtk_tut_it.sgml (name): 
9521         * docs/tutorial/gtk_tut_fr.sgml (name): 
9522         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9523         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9524
9525 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9526
9527         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9528           small changes.
9529
9530 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9531
9532         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9533         a bug here, never been here and never fixed anything ;(
9534         (don't segfault if tree->root_tree is NULL, which happens prior
9535         to widget realization, but puke instead).
9536
9537 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9538
9539         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9540         add the necessary tokens.
9541
9542         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9543         (gtk_rc_style_to_style): copy thicknesses.
9544         (gtk_rc_init_style): apply thicknesses.
9545         (gtk_rc_parse_style): parse xthickness and ythickness.
9546
9547         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9548
9549         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9550         (gdk_window_new): 
9551         (_gdk_windowing_window_init): 
9552         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9553         (gdk_pixmap_create_from_data): 
9554         (gdk_bitmap_create_from_data): 
9555         (gdk_pixmap_new): 
9556         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9557         (gdk_image_new): 
9558         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9559         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9560         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9561         (gdk_colormap_get_system): 
9562         (gdk_colormap_new): 
9563         * gdk/gdkwindow.c (gdk_window_init): 
9564         * gtk/gtkstyle.c (gtk_style_new):
9565         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9566         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9567         * gtk/gtkrc.c (gtk_rc_style_new):
9568         use g_object_new() instead of g_type_create_instance() which
9569         is a private function for fundamental type implementations.
9570
9571 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9572
9573         * configure.in: Add check for db2html
9574
9575 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9576
9577         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9578         hack to set glib_debug_objects based on gtk_debug_flags.
9579
9580 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9581
9582         * INSTALL.in: Update the Prerequisites section.
9583
9584         * Makefile.am demos/Makefile.am docs/Makefile.am
9585         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9586         gdk/linux-fb/Makefile.am: Dist fixes
9587
9588 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9589
9590         * NEWS: 10,000 foot view of 1.3.1 changes.
9591
9592 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9593
9594         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9595         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9596         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9597         gdk/x11/gdkmain-x11.c: 
9598
9599         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9600         as a return value of gdk_*_grab(). Previously, we just
9601         returned the X11 values directly.
9602
9603 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9604
9605         * gdk/x11/Makefile.am: Patch from George Lebl to 
9606         install all the headers in the right place.
9607
9608 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9609
9610         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9611           initial conversion to DocBook.
9612
9613 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9614
9615         * README.win32: Improve a bit.
9616
9617         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9618         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9619         Alt+0nnn on the numpad (used to enter characters by numeric code
9620         from current DOS or ANSI codepage) working correctly, as in other
9621         Windows apps.
9622
9623         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9624         same argument validity tests as in X11 version.
9625         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9626
9627         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9628         definitions in case missing from headers.
9629
9630         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9631         destroy the window-specific cursor.
9632         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9633         calling GetModuleHandle(NULL).
9634         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9635         with CopyCursor before setting it as the window-specific
9636         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9637         also its Windows cursor) after calling this function. Destroy any
9638         previous window-specific cursor.
9639
9640 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9641
9642         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9643         font charset is iso8859-1, not iso-8859-1.
9644
9645 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9646
9647         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9648         Use g_get_charset() instead of g_get_codeset().
9649
9650         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9651         Comment out some strdup'ing functions to keep timj
9652         happy until we finish fighting this out.
9653
9654 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9655
9656         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9657         <= width or height.
9658
9659         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9660         from 1.2 for parent/child states.
9661
9662         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9663         of typos.
9664
9665         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9666         event structures, replace with a generic axes field. Replace 
9667         deviceid/sourec with GdkDevice *device.
9668
9669         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9670         to extract particular axis use value from event. (Also
9671         can be used for normal X/Y.)
9672
9673         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9674         allow for arbitrary number of axes, namespace everything
9675         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9676         everywhere.
9677
9678         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9679         Get rid of the gdk_input_vtable setup if favor of simply
9680         defining the functions in gdkinput-none/gxi/xfree.c in
9681         a similar fashion to the way that the port structure is 
9682         done.
9683
9684         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9685         for new event structures. 
9686
9687         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9688         new device interfaces.
9689
9690 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9691
9692         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9693         set the initial text.
9694
9695         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9696         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9697         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9698         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9699
9700         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9701         pango_layout_set_font_description to simplify.
9702
9703 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9704
9705         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9706         pango_layout_set_font_description to simplify.
9707
9708 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9709
9710         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9711         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9712         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9713
9714         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9715         PANGO_PIXELS() macro.
9716
9717 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9718
9719         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9720         that returns a PangoContext owned by the widget and updated to
9721         match future changes in the widget. Also, make 
9722         gtk_widget_create_pango_layout() use this context. If we ever
9723         add a ::changed signal to PangoContext, this will make things
9724         much more convenient. 
9725
9726         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9727         in the appropriate places instead of destroying the layouts and
9728         creating new ones.
9729
9730         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9731         in a few strategic places.
9732
9733 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9734
9735         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9736         gtk_widget_size_request() on reparented child, if one. Otherwise,
9737         queue_resize() on the child never results in it getting size-requested
9738         at all.
9739
9740         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9741         in option menus, so that (with luck) people won't copy it into
9742         their apps in the future.
9743
9744         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9745         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9746         a lot of problems with changing the size of the menu's menu
9747         items after adding it to the option menu.
9748
9749         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9750
9751         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9752         the text direction for a widget changes.
9753
9754         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9755         ::direction_changed to get rid of various hacks.
9756
9757 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9758
9759         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9760         name.
9761
9762 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9763
9764         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9765         flag to the structure. Do not call XFreePixmap on pixmaps created
9766         by gdk_pixmap_foreign_new().
9767
9768 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9769
9770         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9771         value using GdkRGB functionality given GdkColormap and GdkColor.
9772         (name not final, waiting for inspiration.)
9773         
9774         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9775         set the foreground/background of a GC using the GC's colormap
9776         and GdkRGB. (name not final, waiting for inspiration.)
9777
9778         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9779         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9780
9781         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9782         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9783         purely a function of the corresponding colormap. Make
9784         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9785
9786         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9787         gdk_pixbuf_*create_from_xpm_* in terms of
9788         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9789         code.
9790
9791         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9792         advantage of the new draw_rgb_32_image_dithalign.
9793
9794         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9795
9796         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9797         on each created GC.
9798
9799         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9800
9801         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9802         which we initialize from the drawable when the GC is created,
9803         if the drawable has a colormap.
9804
9805         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9806
9807         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9808
9809         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9810
9811 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9812
9813         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9814         actually returning expose events, make sure to set
9815         the count field properly.
9816
9817         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9818         accidentally reintroced bug which always cleared
9819         the graphics_exposures value. 
9820
9821 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9822
9823         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9824
9825 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9826
9827         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9828
9829 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9830
9831         * docs/faq/gtk-faq.sgml: Start of Section 6.
9832
9833 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9834
9835         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9836         
9837         (Fixes problem with drawing childless frames. Pointed out
9838         by and a first patch from Anders)
9839         
9840         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9841         compute a child_allocation, even if we don't have a child.
9842
9843         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9844         Always chain to the parent's impl, even if we don't have a child.
9845
9846 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9847
9848         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9849         use multiple parts of it instead of creating a bunch of separate
9850         segments, since the maximum number of segments per system is not
9851         large. (This might be worth backporting to GTK+-1.2.x if we make a
9852         new release )
9853
9854         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9855         structure in preparation for per-colormap GdkRGB.
9856
9857         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9858         to False when we get EINVAL from shmget so that the caller of
9859         gdk_image_new can retry with a smaller segment size.
9860
9861 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9862
9863         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9864
9865 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9866
9867         * configure.in: make the current version number 1.3.1 (binary age 0,
9868         interface age 0).
9869         
9870         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9871         gtkcompat.h is all we want.
9872
9873         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9874         GLib primitive types. fixed g_type_register_fundamental() argument
9875         ordering.
9876
9877         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9878         compiles.
9879
9880         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9881         object code cleanup, comment trigraph fixes, etc...
9882
9883 2000-06-23  Havoc Pennington  <hp@redhat.com>
9884
9885         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9886         instead of making up a bogus name for first_para_mark
9887
9888         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9889         0 as a context ID
9890
9891 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9892
9893         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9894
9895 2000-06-21  Havoc Pennington  <hp@pobox.com>
9896
9897         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9898         we didn't check window->bg_pixmap != GDK_NO_BG.
9899
9900         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9901         gdk-pixbuf
9902
9903 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9904
9905         * docs/faq/gtk-faq.sgm: Move file to here.
9906           TODO: Update Makfile.am 
9907
9908 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9909
9910         * docs/gtk-faq.sgm: Add Section 2
9911
9912 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9913
9914         * docs/gtk-faq.sgm: New file. Start of DocBook
9915           version of the FAQ.
9916
9917 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9918
9919         * configure.in (GDK_PIXBUF_MAJOR): Define version
9920         numbers for GDK_PIXBUF_*, as they get substituted
9921         into a header file. Need to consider versioning
9922         for gdk-pixbuf more carefully later.
9923
9924 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9925
9926         Work with srcdir != builddir.   
9927         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9928         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9929         * demos/testpixbuf.c: Likewise.
9930         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9931         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9932         <gdk/x11/gdkx.h>.
9933         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9934         "gdk-pixbuf.h".
9935         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9936
9937 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9938
9939         * TODO.xml: Change 1.4 version numbers to 2.0.
9940
9941 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9942
9943         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9944         fixups to GTK+ standard.
9945
9946 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9947
9948         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9949         gdk-pixbuf.
9950
9951         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9952         fixups for GObject.
9953
9954         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9955         gdk-pixbuf with GDK dependencies moved into GDK.
9956         
9957         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9958         move gdk-pixbuf-loader here until GObject has signals.
9959
9960         * demos/: New directory of demos. Move demos from
9961         gdk-pixbuf here.
9962
9963         * demos/pixbuf-init.c: Small bit of code to check for
9964         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9965         set GDK_PIXBUF_MODULEDIR appropriately.
9966
9967         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9968         define which no longer makes sense.
9969
9970 2000-06-21  Havoc Pennington  <hp@redhat.com>
9971
9972         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9973         gtk_get_default_language
9974
9975         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9976         new function to get the default language
9977
9978         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9979         s/gtk_text_view_style_values/gtk_text_style_values/
9980
9981         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9982         Add a "language" field to tags.
9983
9984         (gtk_text_tag_set_arg): Fix bug in setting
9985         "bg_full_height_set" tag.
9986
9987 2000-06-21  Havoc Pennington  <hp@redhat.com>
9988
9989         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9990         in the interfaces
9991
9992         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9993         stuff instead when possible.
9994
9995         * gtk/gtktexttypes.h: Delete some unused constants
9996
9997         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9998         testtextbuffer.c: use glib instead of custom unicode routines
9999
10000 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10001
10002         * docs/es/: Removed mistakenly added generated sgml
10003
10004         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10005         Remove outdated info files.
10006
10007         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10008         Moved tutorial files into subdir
10009
10010         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10011         subdir.
10012
10013         * docs/man/gtk_button.pod: Remove. (contents will be
10014         integrated into gtk-reference button page.)
10015
10016         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10017         docs/faq/Makefile.am: Adjust for new organization
10018
10019 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10020
10021         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10022         not $(MKINSTALLDIRS)
10023
10024 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10025
10026         * gtk/testgtk.c (create_text): Finish the job Elliot started
10027         of removing font setting test for text widget. (Since text widget
10028         and GdkFont are not deprecated, and cause portability problems.)
10029
10030 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10031
10032         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10033         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10034         Remove use of libunicode in favor of new GLib functions.
10035
10036         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10037         nano-x, framebuffer. The X11 include is just a hack until we get
10038         the necessary functions in gdkcolor.h, so there is no reason to
10039         add other includes of platforms.
10040
10041         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10042         window bigger than the screen change.
10043
10044         * gtk/testgtk.c: Revert some random changes from Elliot
10045         that had no particular point and were causing testgtkrc
10046         not to function correctly.
10047         
10048         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10049         because GdkSegment and GdkRegionBox have the same fields,
10050         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10051         results in clearer code.
10052
10053         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10054         gdk_input_translate_coordinates): Fix missed GdkObjectification
10055
10056 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10057
10058         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10059         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10060
10061 2000-06-20  Havoc Pennington  <hp@redhat.com>
10062
10063         * modules/linux-fb/Makefile.am: Make this compile
10064         without framebuffer enabled
10065
10066         * gdk/linux-fb/Makefile.am: Add conditional to not build
10067         framebuffer unless specified in configure
10068
10069         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10070         the size of the target instead of source if -1 was passed for
10071         width/height
10072
10073         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10074         width/height confusion.
10075
10076 2000-06-19  Havoc Pennington  <hp@redhat.com>
10077
10078         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10079         GDK_DRAWABLE_XID. In the future, we probably want to make it
10080         faster with G_DISABLE_CHECKS turned on.
10081
10082 2000-06-14  Havoc Pennington  <hp@redhat.com>
10083
10084         * gdk/Makefile.am: add gdkpixmap.c
10085
10086         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10087         s/gdk_image_init/_gdk_windowing_image_init
10088
10089         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10090         ref/unref
10091
10092         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10093
10094         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10095         GdkWindowType is now non-deprecated; 
10096         change gdk_window_get_type() compat to be
10097         gdk_window_get_window_type().
10098
10099         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10100
10101         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10102         virtual GObject. Make all functions call into the vtable.
10103         Move gdk_image_put() guts in here. Remove GdkDrawableType
10104         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10105         draw_image, get_depth, get_size, set_colormap, get_colormap,
10106         get_visual added to the vtable.
10107         
10108         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10109         GObject. Virtualize everything. 
10110         (gdk_gc_new_with_values): remove check for destroyed window,
10111         because now GdkWindow::create_gc will check this.
10112         (gdk_gc_set_values): New function to set GC values, this 
10113         was already implemented but wasn't in the header
10114
10115         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10116
10117         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10118         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10119         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10120         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10121         _gdk_windowing_window_init, rename gdk_image_init to
10122         _gdk_windowing_image_init.
10123         
10124         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10125         (gdk_draw_layout): Remove check for destroyed window, 
10126         because all the drawable methods already check it.
10127         
10128         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10129         Add gdkpixmap.c which contains implementation of GdkDrawable
10130         virtual table (by chaining to a platform-specific implementation
10131         object).
10132         
10133         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10134         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10135         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10136         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10137         GdkColormapPrivate. 
10138
10139         * gdk/gdktypes.h: #include <glib-object.h>
10140
10141         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10142         Move most functionality to platform-specific implementation
10143         object. GdkWindow itself now handles the backing store, then
10144         chains to the platform-specific implementation.
10145         (gdk_window_get_window_type): return GdkWindowType of the window.
10146         (gdk_window_peek_children): New routine, returns the children of 
10147         a GdkWindow
10148         (gdk_window_get_children): Was in X11-specific code and did 
10149         XQueryTree. Changed to simply return a copy of window->children; 
10150         so it can go in cross-platform code.
10151         
10152         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10153
10154         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10155         GdkColormap; just changed to use the new private data instead
10156         of casting to GdkColormapPrivate.
10157
10158         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10159         gdk_cursor_new().
10160
10161         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10162         (private data member in the GObject). 
10163         (xdnd_manager_source_filter): Function had broken 
10164         error handling, fix it (use gdk_error_trap_push).
10165
10166         * gdk/x11/gdkdrawable-x11.c: This file now implements
10167         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10168         base class is purely for the convenience of the X port,
10169         and not part of the interface to cross-platform GDK.
10170
10171         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10172         
10173         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10174         specific to X, and returned by the create_gc virtual method
10175         of GdkDrawableImplX11. 
10176         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10177         rather than gchar, this was also changed in the GdkGC vtable.
10178         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10179         mask is 0, return immediately, instead of checking every flag.
10180         This is faster, and keeps us from segfaulting if values is NULL
10181         and the mask contains some nonzero flags.
10182
10183         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10184         GdkWindow.
10185
10186         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10187         GdkWindowPrivate is gone.
10188
10189         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10190
10191         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10192         remove the image_put stuff that got transferred to GdkDrawable.
10193         
10194         * gdk/x11/gdkinput.c: renamings
10195
10196         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10197
10198         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10199
10200         * gdk/x11/gdkprivate-x11.h: indentation fixes
10201
10202         * gdk/x11/gdkproperty-x11.c: renamings
10203
10204         * gdk/x11/gdkselection-x11.c: renamings
10205
10206         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10207         implements the platform-specific "impl" object.
10208         Moved gdk_window_get_children to gdk/gdkwindow.c
10209
10210         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10211         that no longer exist. Add declaration of GdkGCX11 object here.
10212         Fix all the macros to still work. 
10213
10214         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10215         GdkDragContext from the boxed types since they are now GObjects.
10216
10217         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10218         moved xthickness/ythickness into the instance. GtkStyleClass
10219         functions are now in the standard vtable for GtkStyle, so you have
10220         to create a GObject subclass to write a theme engine.
10221         (gtk_style_copy): fixed a leaked PangoFontDescription
10222         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10223         can be the standard GObject function.
10224         
10225         * Throughout GTK:
10226         s/style->klass->[xy]thickness/style->[xy]thickness
10227         s/pango_layout_unref/g_object_unref/
10228
10229         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10230         
10231         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10232         accessing GDK internals.
10233
10234         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10235         accessing GDK internals.
10236
10237 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10238
10239         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10240
10241         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10242         problem by calculating event position relative to the trough
10243         rather than the slider.
10244         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10245
10246         * gdk/gdkgc.h: Add GDK_NOR.
10247
10248         * configure.in, Makefile.am: Add modules top level dir
10249         * configure.in: Only use pangox library if building x11 target.
10250         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10251
10252 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10253
10254         * gtk/gtkcolorsel.c: Change private class member to be named
10255         private_data throughout the file.
10256
10257         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10258         private_data to avoid clashing with keyword.
10259
10260 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10261
10262         * gdk/gdkdnd.h: Add comment to remove warning.
10263
10264 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10265
10266         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10267         Byelorussian language; changed the Makefile and file names 
10268         to reflect that.
10269
10270 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10271
10272         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10273         rather than gdk_window_hide; this makes things work
10274         correctly if the window is programmatically hidden while
10275         iconified.
10276
10277 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10278
10279         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10280         cut and paste typo where wrong pixmap was being
10281         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10282
10283 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10284
10285         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10286         Add helper function to compute format / bytes 
10287         relationship. Use in a couple places to fix up
10288         errors which assume 8 * format.
10289
10290         * gtk/gtkselection.c (gtk_selection_request): Use 32
10291         rather than 8 * sizeof (GdkAtom), to work correctly
10292         on Alpha.
10293
10294 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10295
10296         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10297         libgtk.la
10298         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10299         versions
10300
10301         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10302         checking macros return NULL since the function has a return value.
10303
10304 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10305
10306         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10307         GTK+ from building at all.
10308
10309         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10310
10311 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10312
10313         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10314         gtk/Makefile.am: make it possible to configure gtk for different
10315         targets on the same platform. The library name is now 
10316         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10317         flag. Only the x11 target compiles right now.
10318         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10319         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10320         * gdk/nanox/gdk*generic*: delete generic region code.
10321         * gdk/linux-fb/gdk*generic*: delete generic region code.
10322         * README.nanox: update information.
10323         
10324 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10325
10326         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10327         prepend not append. (Pointed out by Brett Hall.)
10328
10329 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10330
10331         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10332
10333 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10334
10335         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10336         need this later, and this makes sure that the atexit for
10337         glib gets called after that for GDK, so atexits are
10338         properly ordered for object leak checking.
10339
10340         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10341
10342         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10343         pango_x_shutdown_display()
10344
10345         * gtk/simple.c (main): Close window on destroy.
10346
10347 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10348
10349         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10350         to treat initial creation different from setting with 
10351         regards to the graphics-exposures parameter, so add a parameter
10352         indicating whether this is initial or not.
10353
10354 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10355
10356         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10357         to sort of work by adding an extra return_exposes arg
10358         to gdk_event_translate() - it might be better to simply
10359         deprecate the function altogether and force people to rewrite
10360         without it. gdk_window_scroll() handles most of it, and where
10361         gdk_window_scroll() doesn't work, simply redrawing more does.
10362
10363         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10364         assertion.
10365
10366         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10367
10368         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10369         bunch of pretty much useless /* Print debugging info */ comments 
10370         which had drifted away from the code they were commenting.
10371
10372 2000-06-02  Havoc Pennington  <hp@pobox.com>
10373
10374         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10375         is in working order.
10376         
10377         * gtk/testtext.c: Change to reflect anonymous mark API
10378
10379         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10380
10381         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10382         field, which was unused.
10383
10384         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10385         saves some typing.
10386
10387         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10388
10389         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10390         flag on the insertion point and selection bound
10391
10392         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10393         make mark-manipulation functions take a GtkTextMark* instead of a
10394         mark name.
10395         
10396         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10397         GtkTextMarkBody; will be used to detect attempts to delete
10398         the permanent marks (insert and selection bound)
10399
10400         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10401
10402 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10403
10404         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10405         flag to on.
10406
10407         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10408         Honor DOUBLE_BUFFRED_FLAG
10409
10410         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10411         function to set the DOUBLE_BUFFERED flag.
10412
10413         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10414         or not exposes done on the widget should be double-buffered.
10415
10416         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10417         to be what would be expected. (Fixes problem with a
10418         g_return_if_fail() validating a TextDirection enumeration)
10419
10420 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10421
10422         * gtk/gtkwidget.c: Remove all references to 
10423         offscreen flag which was no longer used.
10424
10425         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10426
10427         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10428         for non-null label_widget->parent.
10429
10430         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10431         which no longer was used.
10432
10433         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10434
10435         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10436         for null arguments.
10437
10438         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10439         check for destroyed windows.
10440
10441 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10442
10443         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10444         the slave context there.
10445
10446         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10447         identical to GtkWindow.
10448
10449 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10450
10451         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10452         pangox to here, so we can write them independent of rendering
10453         system, using GDK primitives.
10454
10455         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10456         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10457         since we have a rendering-system independent implementation in
10458         terms of draw_glyphs().
10459         
10460         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10461         function to render a single line.
10462
10463         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10464         into ../gdkpango.c, which simplifies things, since we
10465         don't have to deal with raw X gc's.
10466
10467 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10468
10469         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10470         get the logical attributes for a given GtkTextLine.
10471
10472 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10473
10474         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10475         g_locale_get_codeset() to g_get_codeset() change.
10476
10477 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10478
10479         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10480         descriptions.
10481
10482         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10483         the entry.
10484
10485         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10486         redoing (vastly simplifying) for Pango. Still needs quite
10487         a bit of work. (Size selection is currently poor. List of 
10488         predefined sizes is not a good idea, since all of these
10489         sizes won't necessarily be distinct.)
10490
10491 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10492
10493         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10494         CODESET results for LANG=C.
10495
10496 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10497
10498         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10499         which takes a stringized pango font description;
10500         ignore the older 'font' and 'fontset' declarations.
10501
10502         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10503         field with a GdkFont derived via gdk_font_from_description(),
10504         for compatibility. (Should we just remove it entirely?
10505         Probably too much compatibility breakage, but people
10506         should be migrating to the new Pango stuff as quickly
10507         as possible.)
10508
10509 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10510
10511         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10512
10513 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10514
10515         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10516         redoing; there are some bugs in size allocation right
10517         now, the semi-existant distinction between header / day
10518         fonts was removed, but, with Pango, could actually
10519         be made functional in a nice way.
10520         
10521         * gtk/testcalender: Move calender from examples into this
10522         directory as a test program. (We really need to restrcture
10523         testgtk into a whole directory full of tests for every
10524         widget or functionality group, separated into multiple .c
10525         files.)
10526
10527 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10528
10529         * gtk/testgtk.c (file_exists): Fix stupid typo that
10530         was keeping RC file from being loaded.
10531
10532         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10533         RC file font code.
10534
10535 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10536
10537         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10538         Add function to load a GdkFont from a PangoFontDescription.
10539
10540 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10541
10542         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10543         variable should be of type GdkEventPrivate.
10544
10545 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10546
10547         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10548         to have any widget for the label, use a GtkLabel widget
10549         to display the text. (Based partially on a patch from
10550         Anders Carlson.)
10551
10552         (Quite a bit of code reorganization - strip 90% of the
10553         guts out of gtkaspectframe and add a single virtual
10554         func to GtkFrameClass - compute_child_allocation.)
10555
10556 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10557
10558         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10559         (Removed clist->row_center_offset field because caching
10560         it wasn't saving time or code, added private function
10561         _gtk_clist_create_cell_layout()).
10562
10563 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10564
10565         * gtk/gtkaccellabel.c: Pangoized.
10566
10567         * gtk/[hv]ruler.c: Pangoized
10568
10569 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10570
10571         * gtk/gtkfilesel.c (gtk_file_selection_init):
10572         Use gtk_clist_set_column_auto_resize() to remove need
10573         need for manual column width computations.
10574
10575 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10576
10577         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10578         ensuring Pango correctness, and considerably simplifying the
10579         code.
10580         
10581         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10582
10583         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10584         getting of numbers of lines.
10585
10586         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10587         to the actual requested width of the lable, not to the wrap
10588         width we set.
10589
10590         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10591
10592         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10593           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10594
10595         * gtk/gtktextview.c: Fix structure inheritance.
10596
10597         * gtk/gtkprogressbar.c: Pangoize.
10598
10599 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10600
10601         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10602         in a function.
10603
10604         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10605         bug with computing line tops.
10606
10607         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10608
10609 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10610
10611         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10612         and y_offset coordinates to do what we need now. (The offset between
10613         buffer and layout coordinates has been reintroduced, but is a 
10614         bit different than before.)
10615
10616         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10617         handle the adjustments ourselves, and scroll as necessary using
10618         the new gdk_window_scroll().
10619         
10620         The advantage of this is that when we are incrementally revalidating,
10621         we are essentially rearranging things around the visible portion
10622         of the screen. With the old setup, the visible portion of the
10623         screen was moved around in the layout, so scrolling and redrawing
10624         to track that caused jumping of the display. Since we now
10625         control the scrolling ourselves, we can suppress this and
10626         only redraw when things actually change.
10627
10628 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10629
10630         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10631         the region not just redisplay it after-all, since we store the
10632         cursors in the LineDisplay. (Ugly interactions here between
10633         GtkLayout and GtkTextBTree here.)
10634         
10635         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10636
10637 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10638
10639         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10640         Added function to scroll contents of a window while keeping the
10641         window constant. Works by XCopyArea or guffaw-scrolling depending
10642         on the details of how the window is set up. (guffaw-scrolling
10643         still needs to be filled in.)
10644
10645 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10646
10647         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10648         move the debugging that was tied to a global variable
10649         to that.
10650
10651         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10652
10653         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10654         validated flag, in line data instead of setting height/width to
10655         -1. This allows us to perform operations with partially invalid
10656         buffer (using the old size for invalid lines) and thus to do
10657         incremental vaidation. Keep height/width aggregates up to date
10658         when deleting text and rebalancing the tree.
10659
10660         * gtk/gtktextbtree.[ch]: Add functions validate a line
10661         (gtk_text_btree_validate_line), and to validate up
10662         to a number of pixels (gtk_text_btree_validate).
10663
10664         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10665         that indicates that something is changed and a revalidation
10666         pass is needed. Change ::need_repaint to ::changed, and
10667         make it take old and new yranges instead of a rectangle.
10668
10669         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10670         the line_data_destroy() function from 
10671         gtk_text_btree_add_view() to a virtual function in 
10672         GtkTextLayout
10673
10674         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10675         since we are handling partial repaints in a different fashion
10676         now.
10677
10678         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10679         of the selection instead of queueing a repaint on the
10680         entire widget.
10681
10682         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10683         get_selection_bounds() down to btree, make the function
10684         in buffer a wrapper around the btree function.
10685
10686         * gtk/gtktextlayout.[ch]: Add functions to check if the
10687         layout is valid and to recompute either a range of pixels
10688         aroudn a line or a certain total number of pixels.
10689
10690         * gtk/gtktextlayout.[ch]: Cache a single line display;
10691         now that we only redraw the needed portions, the hit rate
10692         for this cache is quite high.
10693         
10694         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10695         on the screen so that when re-laying-out the buffer, we can
10696         keep the same place. This requires connecting to ::value_changed
10697         on the adjustments
10698
10699         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10700         the buffer after we receive an ::invalidated signal.
10701         
10702 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10703
10704         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10705         to max of allocation and layout size, not just to the
10706         layout size.
10707
10708         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10709         Invalidate window so it gets redrawn properly.
10710
10711         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10712         to mean the entire window.
10713
10714         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10715         into public header.
10716
10717 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10718
10719         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10720         to get the name of a mark.
10721
10722         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10723         to find the paragraph from a y position.
10724
10725 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10726
10727         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10728         nodes have width/height >= 0, not > 0.
10729
10730 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10731
10732         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10733         Add a size_only flag, so when we only need the size, we don't create
10734         useless appearance attributes.
10735
10736         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10737         duplicate setting of font description.
10738
10739         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10740
10741 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10742
10743         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10744         EXTRA_DIST. It does not work well when the file that
10745         everything depends on is not in the tarball.
10746
10747 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10748
10749         * gtk/testgtk.c: Some hacks and fixes so that it basically
10750         works when not sitting in the GTK+ build tree.
10751
10752 2000-05-03  Havoc Pennington  <hp@redhat.com>
10753
10754         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10755         Properly determine the ordering of the tag root and the current
10756         line within the tree. Previous algorithm only worked if the tag
10757         root's immediate parent was the common root of both the current
10758         line and the tag root.
10759
10760 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10761
10762         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10763         alignment.
10764
10765         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10766         the widget text directional dynamically.
10767
10768         * gtk/gtktextview.[ch]: Added functions to get and set default
10769         wrap mode.
10770
10771 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10772
10773         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10774         in cursor location computation.
10775
10776 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10777
10778         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10779         vadjusment values properly when layout gets smaller.
10780
10781         * gtk/gtktextview.c (need_repaint_handler): Areas being
10782         passed in are far completely inaccurate, and sometimes
10783         too small, so, for now, just queue a redraw on the
10784         whole visible region.
10785
10786 2000-04-25  Havoc Pennington  <hp@redhat.com>
10787
10788         * gtk/gtktextbtree.c (summary_destroy): new function to 
10789         destroy tag summary nodes
10790         (gtk_text_line_next_could_contain_tag): this function was 
10791         totally broken if the line passed in wasn't below the tag
10792         root. Fix it.
10793         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10794         "wildcard" case, we have to do a linear scan. Blah.
10795         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10796         we have to do the linear scan
10797         (tag_removed_cb): When a tag is removed from the tag table, 
10798         remove the GtkTextTagInfo node from the btree.
10799         (gtk_text_btree_spew): Implement the spew function, for 
10800         our debugging pleasure.
10801
10802 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10803
10804         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10805         a problem with referring to the wrong buffer.
10806
10807         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10808
10809         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10810         font description to gtk_style_new() - otherwise things
10811         don't work without a .gtkrc file.
10812
10813         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10814         tags table if we create it ourself, too.
10815
10816         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10817         it was conflicting with XKB modifiers.
10818
10819         * gtk/gtktextview.[ch]: Add simple support for 
10820         GtkIMContext.
10821
10822 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10823
10824         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10825         with deletion from last commit.
10826
10827 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10828
10829         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10830         in the context from the current locale.
10831         
10832         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10833         context, not hardcoded value.
10834
10835         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10836         not logical.
10837
10838 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10839
10840         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10841         attributes - that doesn't handle partial-glyph selection
10842         properly. Instead use new pango_layout_line_get_x_ranges()
10843         functionality to draw the selection.
10844
10845         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10846         now properly handles out-of-range coordinates.
10847
10848         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10849
10850         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10851         public.
10852
10853         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10854         for paragraphs opposite to the base direction of the widget.
10855
10856         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10857
10858         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10859         causes Arabic words to reshape as you cursor through.
10860
10861         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10862         cursor position when moving vertically with the arrow keys and
10863         scrolling with page-up/page-down. (Arrow keys save only the X,
10864         scrolling saves both X and Y.)
10865
10866         This means you can line-up / line-down or page-up / page-down
10867         without losing your place, and also that moving vertically
10868         with the cursor keys keeps the same X position, not the same
10869         character count:
10870
10871         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10872         arrow keys move by display lines, not paragraphs.
10873
10874 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10875
10876         * gtk/gtklayout.c: Make sure that the bin window is at least
10877         as big as the allocation. (Should we also make sure that the
10878         bin window is big enough to completely cover widget->window?)
10879
10880         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10881         function to get the onscreen rectangle.
10882
10883         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10884         for offsets in window coordinates.
10885
10886 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10887
10888         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10889         confusion.
10890
10891         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10892         from the widget direction.
10893
10894         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10895         Add a "direction" attribute.
10896
10897         * gtk/gtktextview.c: global s/tkxt/text_view/.
10898
10899         * gtk/testtext.c: Added long block of text in Arabic, to test out
10900         the direction attributes. (Some problems with the shaping system
10901         for arabic become obvious - like the fact the cursor splits words
10902         into unjoined pieces.)
10903
10904 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10905
10906         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10907
10908         * gtk/gtktextlayout.c: Fix up alignment.
10909
10910         * gtk/testtext.c: Add some tests for centering, wrapping.
10911
10912 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10913
10914         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10915         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10916         If we wrote GTK+-specific layout-render function this could just replace
10917         the draw_layout() operation in the vtable.
10918
10919         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10920         pango_layout_get_cursor_pos() and use that function.
10921
10922         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10923         is a non-static symbol.
10924
10925         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10926         with gtk_text_btree_find_line_by_y()
10927
10928         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10929         renderer that handles GtkTextAppearance attributes.
10930
10931         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10932
10933           - Move the values in the style that don't affect geometry into a
10934             GtkTextAppearance structure.
10935           - Change underline to take a PangoUnderline and "font" a string
10936             representation of a font description
10937           - Add a "font_desc" attribute which takes a FontDescription structure.
10938
10939         * gtk/gtktextlayout.[ch]:
10940
10941           - Get rid of the display-line list per each line. Instead, we
10942             generate, on demand, a GtkTextLineDisplay structure which]
10943             contains a PangoLayout * and other necesary information
10944             (offsets, cursor locations) for displaying a paragraph.
10945           - Get rid of the code to wrap lines, create display chunks,
10946             etc. Instead, we just go through a paragraph and convert
10947             it into the necessary inputs to a PangoLayout.
10948           - Implement a new attribute type, GtkTextAttrAppearance. This
10949             holds a GtkTextAppearance, and is used to pass colors, 
10950             stipple, etc, through from the layout to the display without
10951             having to use lots and lots of individual attributes.
10952           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10953             in terms of PangoLayout functions.
10954         
10955         * gtk/gtktextview.c: 
10956          
10957           - Handle passing the necessary PangoContext to the layout
10958           - Some fixups in painting to deal with the automatic backing store
10959             and offsetting of GTK+-1.4
10960           - Add a style_set handler so that the default style reacts
10961             properly to theme changes.
10962         
10963         * gtk/gtktext?*.[ch]: Random code-style fixes.
10964
10965         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10966
10967 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10968
10969         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10970         in original form preparatory to Pango-ization and gdkimcontext-ization.
10971
10972 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10973
10974         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10975         so that we can derive from gtkimcontext in language bindings properly.
10976
10977 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10978
10979         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10980         Add a compose table including (almost) all the compose combinations
10981         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10982         data in the XIM implementation.
10983
10984         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10985         Moved functions to convert keyvalues from and to unicode here from
10986         the win32 port and made them public.
10987
10988 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10989
10990         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10991
10992 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10993
10994         * gtk/gtkimcontext.[ch]: Base class for new input context system
10995
10996         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10997         the real input context implementation to be loaded from modules
10998         and switched on the fly.
10999
11000         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11001         context that just does direct keysymbol => unicode translation.
11002
11003         * gtk/gtkentry.[ch]: Start switching editing over to using
11004         GtkInputContext. (No handling of preedit yet.)
11005
11006 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11007
11008         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11009         many substitutions. (klass should not be subsituted.)
11010
11011 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11012
11013         * configure.in: Add checks for Pango
11014
11015         * configure.in docs/Makefile.am: Add test for sgml2html
11016         and allow 'make dist' without building html, but print out
11017         warnings in that case. (For making snapshots)
11018
11019         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11020         Add Pango libraries and C flags
11021
11022         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11023         Add function (gdk_draw_layout) to draw a pango layout.
11024
11025         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11026         for getting Pango contexts for GDK.
11027
11028         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11029
11030         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11031         editing.
11032
11033         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11034         keysym => unicode translations. More languages can be added
11035         here, but real input-method support is needed.
11036
11037         * docs/Changes-1.4.txt: Added note about entry behavior.
11038         
11039         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11040         to set the reading direction for a widget and the global direction.
11041         Add test which allows toggling the global direction. Two private
11042         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11043
11044         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11045           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11046
11047         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11048
11049         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11050         underlining now handled by Pango.
11051
11052         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11053         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11054         is temporary.)
11055
11056         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11057         convenience functions for creating contexts and layouts for widgets.
11058
11059         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11060
11061 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11062
11063         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11064         titles to be active, even if they aren't visible.
11065         (gtk_clist_column_titles_passive):  Ditto.
11066
11067 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11068
11069         * gtkmenu.c:
11070         * gtkmenu.h:
11071         * gtktypeutils.h: Spelling/grammar fixes in comments.
11072
11073 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11074
11075         * gdk/nanox/*.h: add missing header files.
11076
11077 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11078
11079         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11080         send_event to TRUE.
11081         (gtk_drawing_area_size): queue a resize.
11082
11083 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11084
11085         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11086         the handlers, also invalidate them. bug nailed down by Karl Nelson
11087         <kenelson@ece.ucdavis.edu>.
11088
11089 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11090
11091         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11092         "(nil)" foundries, patch from Grigorios Magklis.
11093
11094         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11095         on non-available fonts, based on a patch by Grigorios Magklis
11096         <maglis@cs.rochester.edu>.
11097
11098 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11099
11100         * gdk/x11/gdkregion-generic.c: If a region does not have any
11101         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11102         instead of GDK_OVERLAP_RECTANGLE_IN.
11103
11104 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11105
11106         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11107         OFFSCREEN, as it is no longer necessary.
11108
11109 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11110
11111         * gtk/gtkcolorsel.c: Patch from David Santiago
11112         <mrcooger@cyberverse.com> to change things so that the 
11113         indicator of the active palette entry is done independently,
11114         not via the focus, since it should always be visible.
11115
11116 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11117
11118         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11119         refcount leaks as in the X11 backend.
11120
11121         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11122         cosmetics.
11123
11124         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11125         backend. Add _gdk_windowing_window_destroy().
11126
11127         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11128         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11129         either, but these probably do exist on nanox?)
11130         
11131         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11132         which isn't necessarily defined by <math.h>.
11133
11134         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11135         ancestry past GtkObject.
11136
11137         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11138         from DLL on Win32.
11139
11140         * gtk/gtk.def: Update corresponding to recent changes.
11141
11142         * gtk/makefile.{cygwin,msc}: Updates.
11143
11144 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11145
11146         * docs/Changes-1.4.txt: A bit of editing.
11147
11148         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11149         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11150         to clear the update area for the window, and clear it
11151         when hiding a window.
11152
11153         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11154         if window destroyed.
11155
11156         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11157
11158         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11159         gdk_window_destroy() to the generic code, since there was a lot of 
11160         window-system-independent logic it in. Add a function:
11161         
11162          _gdk_window_destroy() 
11163
11164         to the internal API to destroy a window without unreferencing it.
11165         Add a function:
11166
11167          _gdk_windowing_window_destroy()
11168
11169         That does the windowing-system-dependent part of destroying 
11170         the window.
11171
11172 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11173
11174         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11175
11176 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11177
11178         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11179         Make gtk_widget_shape_combine_mask() keep a reference count on
11180         the pixmap since it keeps it around.
11181
11182 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11183
11184         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11185         leak.
11186
11187         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11188         leak with event filters.
11189
11190 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11191
11192         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11193         signal handlers with the right data arguments. (Fixes
11194         some warnings when a widget was repeatedly set as a drag
11195         destination.)
11196
11197         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11198         window so we can avoid avoid setting the DND properties on the
11199         toplevel window repeatedly.
11200
11201 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11202
11203         * gdk/win32/gdkwin32.h: Define more message types missing from
11204         mingw headers.
11205
11206         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11207         call gdk_window_destroy_notify(). It was never called. This
11208         probably meant that the GdkWindow was never freed. Thanks Owen for
11209         noticing (!).
11210
11211         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11212         window as destroyed before calling DestroyWindow(). DestroyWindow()
11213         causes a call to the window procedure (gdk_WindowProc), which
11214         calls gdk_event_translate(), which calls
11215         gdk_window_destroy_notify(), which gets confused unless the window
11216         is set as destroyed.
11217
11218         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11219         this function to indicate it's win32 only. Put inside #ifdef
11220         G_ENABLE_DEBUG.
11221
11222         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11223         debugging function. (gdk_event_translate:) Add a default branch
11224         that uses the above function to print debug messages with all
11225         Windows messages symbolically.
11226
11227         * gdk/win32/gdkprivate-win32.h: Declare it, and
11228         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11229
11230 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11231
11232         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11233         public header file.
11234
11235 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11236
11237         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11238
11239         * gtk/gtktext.c: made the adjustments no-construct args, simply
11240         provide default adjustments.
11241         (gtk_text_destroy): release adjustments.
11242
11243         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11244         adjustment argument non-construct.
11245
11246         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11247         instead of in finalize.
11248         (gtk_progress_get_text_from_value): 
11249         (gtk_progress_get_current_text): 
11250         (gtk_progress_set_value): 
11251         (gtk_progress_get_percentage_from_value): 
11252         (gtk_progress_get_current_percentage): 
11253         (gtk_progress_set_percentage): 
11254         (gtk_progress_configure): ensure an adjustment is present.
11255
11256 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11257
11258         * gtk/gtkcolorsel.[hc]:
11259         * gtk/gtkcolorseldialog.[hc]:
11260         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11261         their parent implementation, use bit fields for boolean values, don't
11262         create unused widgets, usage of glib types, braces go on their own
11263         lines, function argument alignment, #include directives etc. etc. etc..
11264
11265         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11266
11267 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11268
11269         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11270
11271         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11272         of NULL.
11273
11274         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11275         to freed data.
11276         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11277
11278         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11279         to NULL when the toplevel is getting destroyed.
11280         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11281         (gtk_menu_destroy): 
11282         (gtk_menu_init): store the information of whether we have to
11283         readd the initial child ref_count during destruction in a new
11284         GtkMenu field needs_destruction_ref_count.
11285
11286         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11287         here, those reading: learn from my mistake! ;)
11288         in order for set_?adjustment to support a default adjustemnt if
11289         invoked with an adjustment pointer of NULL, the code read (pseudo):
11290         if (v->adjustment) unref (v->adjustment);
11291         if (!adjustment) adjustment = adjustment_new ();
11292         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11293         now imagine the first unref to actually free the old adjustment and
11294         adjustment_new() creating a new adjustment from the very same memory
11295         portion. here, the latter comparision will unintendedly fail, and
11296         all hell breaks loose.
11297         (gtk_viewport_set_hadjustment):
11298         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11299         after unreferencing it.
11300
11301         * gtk/gtkcontainer.[hc]: removed toplevel registration
11302         functions: gtk_container_register_toplevel(),
11303         gtk_container_unregister_toplevel() and
11304         gtk_container_get_toplevels() which had wrong semantics
11305         anyways: it didn't reference and copy the list.
11306
11307         * gtk/gtkwindow.c: we take over the container toplevel registration
11308         bussiness now. windows are registered across multiple destructions,
11309         untill they are finalized. the initial implicit reference count
11310         users are holding on windows is removed with the first destruction
11311         though.
11312         (gtk_window_init): ref & sink and set has_user_ref_count, got
11313         rid of gtk_container_register_toplevel() call. add window to
11314         toplevel_list.
11315         (gtk_window_destroy): unref the window if has_user_ref_count
11316         is still set, got rid of call to
11317         gtk_container_unregister_toplevel().
11318         (gtk_window_finalize): remove window from toplevel list.
11319         (gtk_window_list_toplevels): new function to return a newly
11320         created list with referenced toplevels.
11321         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11322
11323         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11324         adjustment a non-construct arg.
11325         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11326         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11327         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11328
11329         * gtk/gtkrange.c: added some realized checks.
11330         (gtk_range_destroy): get rid of the h/v adjustments in the
11331         destroy handler instead of finalize. remove timer.
11332         (gtk_range_get_adjustment): demand create adjustment.
11333
11334         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11335         we simply create them on demand now and get rid of them in
11336         the destroy handler.
11337         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11338         destroy handler instead of finalize.
11339         (gtk_viewport_get_hadjustment): 
11340         (gtk_viewport_get_vadjustment): 
11341         (gtk_viewport_size_allocate): demand create h/v adjustment
11342         if required.
11343
11344         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11345         gtk_widget_real_destroy () functionality.
11346         (gtk_widget_real_destroy): reinitialize with a new style, instead
11347         of setting widget->style to NULL.
11348
11349 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11350
11351         * gtk/gtkcalendar.c:
11352         * gtk/gtkbutton.c: ported _get_type() implementation over to
11353         GType, either to preserve memchunks allocation facilities,
11354         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11355
11356         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11357         over. prepare for ::destroy to be emitted multiple times.
11358         removed reference tracer magic. chain into GObjectClass.shutdown()
11359         to emit ::destroy signal.
11360
11361         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11362         fundamental.
11363
11364         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11365         cludge.
11366
11367         * gtk/gtksocket.c:
11368         * gtk/gtkplug.c:
11369         * gtk/gtklayout.c:
11370         * gtk/gtklabel.c:
11371         * gtk/gtkargcollector.c:
11372         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11373         not being a fundamental anymore, and to work with the new
11374         type system (nuked fundamental type varargs clutter).
11375
11376         * gtk/*.c: install finalize handlers in the GObjectClass
11377         part of the class structure.
11378         changed direct GTK_OBJECT()->klass accesses to
11379         GTK_*_GET_CLASS().
11380         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11381
11382         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11383         GType. made most of the GTK_*() type macros and Gtk* typedefs
11384         simple wrappers around macros and types provided by GType.
11385         most notably, a significant portion of the old API vanished:
11386         GTK_TYPE_MAKE(),
11387         GTK_TYPE_SEQNO(),
11388         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11389         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11390         GTK_TYPE_ARGS,
11391         GTK_TYPE_CALLBACK,
11392         GTK_TYPE_C_CALLBACK,
11393         GTK_TYPE_FOREIGN,
11394         GtkTypeQuery,
11395         gtk_type_query(),
11396         gtk_type_set_varargs_type(),
11397         gtk_type_get_varargs_type(),
11398         gtk_type_check_object_cast(),
11399         gtk_type_check_class_cast(),
11400         gtk_type_describe_tree(),
11401         gtk_type_describe_heritage(),
11402         gtk_type_free(),
11403         gtk_type_children_types(),
11404         gtk_type_set_chunk_alloc(),
11405         gtk_type_register_enum(),
11406         gtk_type_register_flags(),
11407         gtk_type_parent_class().
11408         replacements, where available are described in ../docs/Changes-1.4.txt.
11409         implemented compatibility functions for the remaining API.
11410
11411         * configure.in: depend on glib 1.3.1, use gobject module.
11412
11413 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11414
11415         * TODO.xml: Various updates to current status.
11416
11417 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11418
11419         * gtk.m4: Print out version when test succeeds.
11420
11421 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11422
11423         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11424         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11425         
11426         (Original triangle color selector from Simon Budig
11427         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11428         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11429         Santiago <mrcooger@cyberverse.com>)
11430
11431         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11432         out into a separate widget.
11433
11434         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11435         and opacity controls.
11436
11437 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11438
11439         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11440         snuck in prematurely.
11441
11442 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11443
11444         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11445         had deleted a ! operator by mistake, which caused
11446         GDK_SELECTION_CLEAR events never to be generated, which caused
11447         only the first copy to the clipboard from an gtkeditable to
11448         actually cause a copy to the Windows clipboard.
11449
11450 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11451
11452         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11453         compilation, too. Current mingw gcc distributions include the
11454         necessary headers. Also the necessary IIDs are now in mingw
11455         headers/libraries, and own definitions unnecessary.
11456
11457         More hacking on OLE2 DND, still doesn't work though, and thus
11458         ifdeffed out.
11459
11460         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11461         here, too.
11462
11463 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11464
11465         * gdk/nanox/*: nano-X port work in progress.
11466         * gdk/simple.c: simple test for Gdk.
11467         * README.nanox: notes about the port: read this first!
11468         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11469         with nano-X.
11470
11471 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11472
11473         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11474         gdk_window_clear() into common code, implement in terms of
11475         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11476         not redirected to the backing rectangle.
11477
11478 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11479
11480         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11481         EXTRA_DIST. It does not work well when the file that
11482         everything depends on is not in the tarball.
11483
11484 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11485
11486         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11487         with recursion where process_updates() is called from
11488         an expose handler. (GtkTextView is highly broken in
11489         doing this, but it should work, so it is a nice test
11490         case.)
11491
11492 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11493
11494         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11495         handle the case where updates are queued during processing of
11496         updates.
11497
11498 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11499
11500         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11501         window is on gdk_display - use that instead of segfaulting.
11502
11503 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11504
11505         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11506         broken and require an empty arg, give it to them.
11507
11508 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11509
11510         * gtk/gtklabel.h: indentation fixes.
11511
11512 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11513
11514         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11515         draw too narrow or too low arcs, they seem to fail, at least with
11516         some display drivers.
11517
11518         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11519
11520         Large changes to the Win32 backend, partially made necessary by
11521         the changes to the backend-independent internal
11522         structures. Attempts to implement similar backing store stuff as
11523         on X11. The current (CVS) version of the Win32 backend is *not* as
11524         stable as it was before the no-flicker branch was merged. A
11525         zipfile with that version is available from
11526         http://www.gimp.org/win32/. That should be use by "production"
11527         code until this CVS version is usable. (But note, the Win32
11528         backend has never been claimed to be "production quality".)
11529
11530         * README.win32: Add the above comment about versions.
11531
11532         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11533
11534         * gdk/gdk.def: Update.
11535
11536         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11537         presumably be replaced by some more better mechanism as 1.4 gets
11538         closer to release shape.
11539
11540         * gdk/makefile.{cygwin,msc}: Update.
11541
11542         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11543         internal headers. Change code according to changes in these. Use
11544         gdk_drawable_*, not gdk_window_* where necessary.
11545
11546         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11547         our old DND.
11548
11549         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11550         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11551         Use correct function name in warning messages.
11552
11553         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11554         GSourceFuncs gdk_event_prepare and gdk_event_check.
11555         (gdk_event_get_graphics_expose): Do implement, use
11556         PeekMessage. Thanks to Hans Breuer.
11557         (event_mask_string): Debugging function to print an GdkEventMask.
11558         (gdk_pointer_grab): Use it.
11559
11560         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11561         (old) book I used claimed was Hangul actually is CJK Unified
11562         Ideographs Extension A. Also, Hangul Syllables were missing.
11563         Improve logging.
11564
11565         * gdk/win32/gdkgc-win32.c: Largish changes.
11566
11567         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11568         g_win32_getlocale() from GLib, and not setlocale() to get current
11569         locale name.
11570
11571         * gdk/win32/gdkprivate-win32.h
11572         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11573         gdkwin32.h, similarily as in the X11 backend.
11574
11575         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11576         assignment was used instead of equals in if test. Thanks to Hans
11577         Breuer.
11578
11579         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11580         the X11 version.
11581
11582         * gdk/win32/makefile.{cygwin,msc}
11583         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11584         path to the Win32 headers that works also with the mingw compiler.
11585
11586         * gtk/gtkstyle.c: Include <string.h>.
11587
11588 2000-04-26  Havoc Pennington  <hp@redhat.com>
11589
11590         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11591         replacing the broken gtk_label_get ()
11592
11593 2000-04-15  Havoc Pennington  <hp@pobox.com>
11594
11595         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11596         this keeps scanner scripts from getting confused.
11597
11598         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11599         data, rather than void
11600
11601 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11602
11603         * gtk/gtkclist.c (gtk_clist_motion)
11604         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11605         with is_hint FALSE, get x and y from the event. They used to be
11606         used uninitialised. The Win32 backend never sends motion events
11607         marked as hints. This for instance fixes the annoying file and
11608         font selector behaviour in the Win32 version.
11609
11610 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11611
11612         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11613         gtk_private_n_signals variables, they are used by some software,
11614         sigh.
11615
11616         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11617         installation directory from the Registry, where the installer
11618         should have put it.
11619
11620 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11621
11622         * gdk/x11/Makefile.am: Fix problem with installation directory for
11623         gdkx.h
11624
11625         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11626         <mrcooger@cyberverse.com> so that when selecting menus with the
11627         mouse, the first item will not be selected, but when selecting
11628         with an accelerator, or navigating left-right on a menubar with
11629         the menus popped up, the first item will be selected.
11630
11631 2000-04-05  Dan Damian  <dand@dnttm.ro>
11632
11633         * configure.in: Added "ro" to ALL_LINGUAS.
11634
11635 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11636
11637         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11638         indentation.
11639
11640         * Makefile.am (EXTRA_DIST): Fix typo.
11641
11642         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11643         to catch gdkconfig.h
11644
11645         * gtk/gtkitemfactory.c: Added FIXME.
11646
11647 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11648
11649         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11650         s/return_if_fail/return_val_if_fail/g and add a return value.
11651
11652 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11653
11654         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11655         merge slipup.
11656
11657         * gdk/gdkinput.h: Fix missing line from merge.
11658
11659 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11660
11661         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11662         instead of gdkprivate.h.
11663
11664 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11665
11666         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11667         parent class to correctly be GtkDialogClass.
11668
11669 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11670
11671         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11672         toplevel windows and their immediate children by their parents,
11673         since the size of toplevel windows is out of our immediate
11674         control and we don't get any real benefit from trying to track
11675         this size for clipping.
11676
11677         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11678         for input_only windows.
11679
11680         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11681         to fix some hacks and make sure that we don't try to set the
11682         background of input only windows.
11683
11684 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11685
11686         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11687         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11688         stuff that we've traditionally exposed.
11689
11690         * gdk/**.c: Use gdkinternals.h where appropriate.
11691
11692         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11693         not include gdkprivate-x11.h, move all stuff of conceivable public
11694         interest into gdkx.h; keep all really private stuff in
11695         uninstalled header gdkprivate-x11.h.
11696
11697         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11698         image->image_put on windows through a new function _gdk_window_draw_image()
11699         to allow us to do backing store for images. (Sort of ugly)
11700
11701         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11702         contexts locally so that we can offset them properly when drawing 
11703         onto backing pixmaps.
11704
11705         * gdk/gdkinput.h: Reindented
11706
11707         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11708         pixmap or color for the window, so we can properly initialize
11709         our double-buffer pixmaps, and also so that we temporarily set
11710         a background of None while scrolling.
11711
11712         * gdk/gdkregion.h: Revise region boolean operators to have an
11713         interface that is actually convenient - switch from creating new
11714         regions on every op, to "methods" that modify existing regions
11715         (A = A OP B). 3 argument forms which allow dest == src, would also
11716         be possible, but the current interfaces seem to map nicely
11717         onto what needs to be done. (There is quite a lot of region
11718         code in GDK now.)
11719
11720         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11721         operator.
11722
11723         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11724         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11725         to 32 bit coordinates, modify it to be mostly GTK+ style
11726         and to have interfaces that match gdkregion.h.
11727
11728         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11729         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11730         create a backing pixmap and redirect all drawing to
11731         that backing pixmap until a matching gdk_window_end_paint().
11732
11733         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11734         Create a special drawable class for GtkWindow's that 
11735         redirects the drawing to the backing pixmap as necessary
11736         and then calls the real operations in _gdk_windowing_window_class.
11737
11738         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11739         Store invalid region for each window. Generate expose events for invalid
11740         region in an idle. This replaces both the expose compression
11741         and the redrawing queuing in GTK+. It is both more efficient and
11742         simpler than either one individually and far more so then the
11743         combination.
11744
11745         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11746         Emulate 32 bit coordinates for windows with 16 bit coordinates
11747         by offsetting drawing, guffaw scrolling techniques and
11748         mapping/unmapping child windows as necessary.
11749
11750         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11751         where, when invalid regions are processed, the region is stored,
11752         and if expose events come in that are detectably duplicate
11753         the processed exposes (by comparison of event serial numbers),
11754         the stored region is subtracted out of those exposes.
11755
11756         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11757         regions newly exposed when scrolling or resizing windows.
11758         This, combined with forcing processesing of queued invalidated
11759         regions, gives nice flicker-free scrolling.
11760
11761         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11762         invalidated regions after every scroll.
11763
11764         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11765         emulation in GDK. Its, for all practical purposes just a
11766         GtkViewport/GtkFixed hybrid now.
11767
11768         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11769         (16-bit) structures as necessary instead of just casting.
11770
11771         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11772         in terms of the structures from gdkregion-generic.c, using appropriate
11773         offsets from GDK to X11 coordinates. Cache clip mask and
11774         origin and ts origin locally and only flush to the server
11775         when drawing, to avoid constantly setting and resetting these
11776         values when offsetting GC's for scrolling and backing pixmaps.
11777
11778         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11779
11780         * gtk/gtkcontainer.c: Call process_all_updates at end
11781         of resizing to reduce flicker. (Avoids having redraw
11782         lag arbitrarily behind resize under some circumstances)
11783
11784         * gtk/gtkentry.c: Remove old backing store code, and simply take
11785         advantage of the new backing store capabilities of GDK.
11786
11787         * gtk/gtkmain.c: Simple implementation of widget backing
11788         store - simply push a paint while handling each expose.
11789         (Should really be configurable widget for widget.)
11790         
11791         * gtk/gtkwidget.c: Remove all the old complicated redraw
11792         code, and simply invalidate the GDK windows from
11793         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11794         debugged complexity ... gone to the winds.)
11795
11796         Remove all the code for suppressing expose events while
11797         resizes are pending; this isn't needed since the invalid
11798         areas won't be processed until after the resizes are
11799         processed, since they are in a lower priority idle.
11800
11801 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11802
11803         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11804         and height of dest rectangle for non-intersecting rectangles.
11805
11806 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11807
11808         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11809         for GdkRectangle.
11810
11811 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11812
11813         * gdk/gdk{events,image,private,types,window}.h
11814          gdk/x11/gdkinputprivate.h: Change all coordinates
11815          from int16 to int. Also, Change width and height from
11816          unsigned to signed to avoid all the stupid C 
11817          signedness bugs.
11818
11819 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11820
11821         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11822         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11823         Add some more detailed checking.
11824
11825         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11826         New function to retrieve the depth of a drawable.
11827
11828         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11829         field, reorder fields to save memory. 
11830
11831 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11832
11833         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11834         of the background image instead of scaling the background down to
11835         a line.
11836
11837         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11838         which temporarily set slider to wrong size.
11839
11840         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11841         queue_clear().
11842
11843 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11844
11845 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11846
11847         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11848
11849 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11850
11851         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11852         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11853
11854         * gdk/win32/gdkfont-win32.c
11855         * gdk/win32/gdkproperty-win32.c
11856         * gdk/win32/gdkselection-win32.c
11857         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11858         now declared such.
11859
11860 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11861
11862         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11863
11864 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11865
11866         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11867         is called without trapping X errors.
11868
11869 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11870
11871         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11872         way into the fontset lists.
11873
11874 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11875
11876         * gtk/gtkthemes.h: add extern "C" scope.
11877
11878 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11879
11880         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11881         to make appends to the list constant. (gtk-guy-990901-0.patch)
11882
11883 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11884
11885         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11886         for the typename hash table.
11887
11888 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11889
11890         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11891         to make sure we never divide by zero. 
11892         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11893
11894 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11895
11896         * gtk/gtkfontsel.c: Apply patch from
11897         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11898         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11899
11900         Also, some cleanups in atom handling.
11901
11902 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11903
11904         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11905         not GtkWidget.
11906
11907 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11908
11909         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11910         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11911         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11912         more guint wrap-around bugs before going to bed.
11913
11914 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11915
11916         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11917         guint wrap arounds in allocation.width.
11918
11919         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11920         process untill we fit the allocation given.
11921
11922 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11923
11924         * gtk/gtkwidget.c:
11925         (gtk_widget_unrealize): guard widget access with ref/unref
11926         around signal emission.
11927         (gtk_widget_hide): same here, but also check its destroyed
11928         state before queueing a resize.
11929
11930 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11931
11932         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11933         of gtk_default_insensitive_bg as insensitive base color.
11934
11935         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11936         to the widget's state.
11937         (gtk_text_realize): same here.
11938         (gtk_text_state_changed): same here.
11939         (draw_bg_rect): compare background color against base[] from
11940         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11941
11942 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11943
11944         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11945         grabs are active, unless a delete event is send to the toplevel
11946         of the currently grab holding widget.
11947
11948 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11949
11950         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11951         debugging g_print's.
11952
11953 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11954
11955         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11956         ever make the scrolled-window requisition ever depend on the 
11957         visibility state of the scrollbars for the AUTOMATIC policy. 
11958         This breaks the GTK+ requisition model, and causes loops.
11959
11960 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11961
11962         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11963         the default font to avoid problems with XFree86-4.0 where the
11964         default charset is iso10646-1, not iso8859-1.
11965
11966 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11967
11968         * acinclude.m4
11969         * config.guess
11970         * config.sub
11971         * ltconfig
11972         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11973
11974         * gtk/Makefile.am: minor cosmetic consistency tweak
11975
11976 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11977
11978         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11979         the activate_time to 0, so that we handle a quick
11980         press/release press/release properly and don't suppress
11981         the second release. (Red Hat bug #7545)
11982
11983 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11984
11985         * gtk/gtkctree.c (row_delete):
11986         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11987         bugs with destruction notifier, *always* update internal
11988         structures *before* calling user code.
11989
11990 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11991
11992         A few more fixes for bug #5487, #2051, #2677.
11993         * gtk/gtkclist.c : 
11994         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11995         not GDK_BUTTON_PRESS.
11996         (resync_selection): resync only if selection_mode is
11997         GTK_SELECTION_EXTENDED
11998         * gtk/gtkctree.c (resync_selection): same here
11999
12000 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12001
12002         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12003         gdk_drag_get_selection() and gtk_menu_detach().
12004
12005         [ From Jeroen Ruigrok/Asmodai ]
12006
12007 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12008
12009         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12010         page->tab_label can be NULL.
12011
12012 2000-01-25  Havoc Pennington  <hp@pobox.com>
12013         
12014         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12015         arg is boolean
12016
12017         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12018
12019         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12020
12021         * gdk/gdkproperty.c (gdk_property_get): return boolean
12022
12023         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12024
12025         * gdk/gdkim.c (gdk_im_ready): return boolean
12026
12027         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12028
12029         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12030         glib clash, should fix glib)
12031
12032         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12033         (gdk_get_show_events): return gboolean, and canonicalize 
12034         to TRUE/FALSE
12035
12036         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12037         colormap is private
12038         (gdk_colors_alloc): gboolean whether to be contiguous
12039         (gdk_color_equal): return gboolean since we are a predicate
12040         and not a qsort() (this looks semi-wrong due to glib breakage,
12041         IMO glib should be fixed)
12042         
12043         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12044         (gdk_get_use_xshm): return gboolean
12045         (gdk_pointer_is_grabbed): return gboolean
12046
12047         * gdk/gdk.h: Change prototypes to match all the above changes,
12048         and re-run egtk-format-protos as required.
12049
12050 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12051
12052         * gtk/gtkctree.c (resync_selection): 
12053         * gtk/gtkclist.c (resync_selection):
12054
12055         Return immediately if clist->drag_pos < 0. This is a workaround
12056         for the corrupt state that the clist gets into when a
12057         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12058
12059         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12060         
12061         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12062         variable from recent commit.
12063
12064 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12065
12066         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12067
12068 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12069
12070         * gtk/Makefile.am: prefix all autogenerated source that get build in
12071         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12072         in builddir. since we subsequently cd into srcdir for autogeneration,
12073         the paths have to be stripped from the target file names, thusly we
12074         use $(@F) as target names now.
12075         put a comment about configure.in's --disable-rebuilds option,
12076         which can be used for non-writable source directories, for development
12077         setups though, srcdir has to be *writable*.
12078
12079 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12080
12081         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12082           Finish the job of allowing event to be NULL.
12083           (Fixes bug #4283, reported by Chris Blizzard)
12084
12085         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12086           things so that the cursor appears on screen, properly
12087           take into account INNER_BORDER.
12088           (Fixes bug #4754, reported by Antonio Campos)
12089
12090 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12091
12092         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12093           show the tab_label unless it itself is visible.
12094
12095           gtk/gtknotebook.c (gtk_notebook_size_request):
12096           Do a better job of making sure that the visibility
12097           of the tab label corresponds to whether it should
12098           be mapped or not.
12099
12100 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12101
12102         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12103           Use the requisition, not the allocation, since the
12104           allocation has not necessarily been computed yet.
12105           (Pointed out by Eugene Osintsev)
12106
12107 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12108
12109         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12110           style/base[GTK_STATE_INSENSITIVE] both to
12111           gtk_default_insensitive_bg!
12112           (Bug #2187, reported by Jonathan Blandford)
12113
12114         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12115           Add Alt_L, Alt_R to list of invalid accelerators.
12116           (Bug #3736, reported by Vlad Harchev)
12117
12118 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12119
12120         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12121         bugs which occured after an attempt to open 
12122         invalid home directory left cmpl_state->reference_dir == NULL.
12123
12124          - completion on files in home directory didn't work
12125          - completion on an empty string caused  segfault
12126
12127          (Bug #3678, reported by Steve Ratcliffe)
12128
12129         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12130         cut and paste error that was causing scales to
12131         be incorrectly positioned.
12132         (Bug #2956,
12133          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12134
12135 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12136
12137         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12138         when checking for dcgettext, if we've found we needed
12139         it for dgettext.
12140 +
12141 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12142
12143         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12144         queue_clear on NO_WINDOW widgets during a reparent,
12145         since at that point the window and widget heirarchies
12146         are out of sync. This stops crashing in some cases
12147         (the scrolled window reparent test, for instance), and
12148         _probably_ won't cause drawing errors.
12149
12150         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12151         test do what it was supposed to do and be robust against
12152         window closings, etc. (Bug #2443)
12153
12154 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12155
12156         * gtk/gtkentry.c: Fix return values on mouse events.
12157         (Bug #2686, Sky <seb_sky@yahoo.com>)
12158
12159         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12160         (pointed out by George Lebl)
12161
12162         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12163         (From Ettore Perazzoli  <ettore@helixcode.com>)
12164  
12165 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12166
12167         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12168         clicks between rows or outside calender area correctly.
12169         (Patch from Damon Chaplin)
12170
12171         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12172         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12173           Call destroy function when overwriting existing data. 
12174           (Pointed out by Damon Chaplin)
12175
12176 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12177
12178         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12179           which was causing problems on various systems with Xmu.
12180           This hasn't been needed for a very long time.
12181           (Fixes #1185 3167)
12182
12183 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12184
12185         * gdk/gdki18n.h: Include <ctype.h> when defining
12186           gdk_isw* in terms of is* as a fallback.
12187           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12188
12189 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12190
12191         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12192           realize the widget when it is size allocated!
12193           (old, old bug)
12194
12195         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12196           Removed unused call to gdk_window_get_size() that
12197           showed up when the above was fixed.
12198
12199 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12200
12201         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12202           fix up widget->window when the widget is a
12203           NO_WINDOW container widget.
12204
12205 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12206
12207         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12208           to account for the fact that feof() does _not_ 
12209           return TRUE on errors, and thus avoid infinite loops
12210           when trying to use gdk_pixmap_create_from_xpm()
12211           on unreadable values.
12212
12213 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12214
12215         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12216
12217 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12218
12219         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12220           gdk_gc_set_dashes to take gint8 instead of gchar to
12221           make it clearer that it is _not_ a NULL terminated string.
12222
12223         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12224           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12225           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12226           arguments.
12227
12228 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12229
12230         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12231         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12232         background size relative to our allocation, guard against small
12233         allocations, we may have not yet been size allocated.
12234
12235 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12236
12237         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12238         not just version == 3. We implement all 3 + most of 4 - 
12239         (we don't support matching text/plain;charset=iso-8859-1
12240         to a dest that expects text/plain). We'll still advertise
12241         3 to be safe, but any client implementing version >= 3
12242         must interoperate with 3.
12243         
12244 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12245
12246         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12247         background and gc members, add a warning in gtk_tooltips_set_color()
12248         indicating that this function is deprecated.
12249
12250 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12251
12252         * docs/gtkfaq.sgml: FAQ Update:
12253           - Minor cleanups (Emmanuel, me)
12254           - New questions:
12255                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12256                 How can I retrieve the text from a GtkMenuItem? (timj)
12257                 How do I validate/limit/filter the input to a GtkEntry? (me)
12258                 Memory does not seem to be released when I free the list
12259                         nodes I've allocated (timj)
12260
12261 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12262
12263         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12264         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12265         for which it is no use to call GetLastError onWin9x.
12266         (gdk_other_api_failed) New function, for general error
12267         reporting without calling GetLastError.
12268         (gdk_win32_api_failed) OTOH, this function always calls
12269         GetLastError. (gdk_win32_last_error_string) Remove this function,
12270         GLib has the equivalent now.
12271
12272         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12273         call them with function name, file name and line number in the
12274         arguments.
12275
12276         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12277         functions.
12278         
12279         * gtk/gtk.def: Add some missing entry points.
12280
12281         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12282         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12283         
12284         Fixes by Hans Breuer:
12285
12286         * gdk/makefile.msc: Update for debugging.
12287
12288         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12289         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12290         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12291         in the dash_list.
12292
12293         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12294         the x11 backend.
12295
12296         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12297
12298         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12299
12300 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12301
12302         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12303         just pixel value of background colour.
12304
12305         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12306         containing code snippet previously duplicated in a couple of
12307         places.
12308         
12309         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12310         gdk_colormap_color.
12311
12312         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12313         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12314         events for autorepeated Shift, Control and Alt keys. Use
12315         gdk_colormap_color.
12316
12317         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12318         pointer is inside the window the cursor of which we are setting,
12319         call SetCursor immediately.
12320
12321         * gdk/win32/makefile.cygwin
12322         * gtk/makefile.cygwin: If we don't have the build number stamp
12323         file, use zero.
12324
12325         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12326         gtk_paned_set_gutter_size as empty.
12327
12328         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12329         
12330 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12331
12332         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12333           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12334           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12335           docs/gtk_tut.sgml docs/gtk.texi TODO:
12336
12337           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12338
12339 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12340
12341         * gtk/gtkcalendar.c: Implement num_marked_dates,
12342           and don't emit mutiple day_selected signals on
12343           month_prev.
12344
12345 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12346
12347         * docs/make-todo (lineno): let title and logo be configurable so
12348         that GNOME can use this script too.
12349
12350         * TODO.xml: added logourl and a title
12351
12352 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12353
12354         * TODO.xml: Added some UI items, and an explanatory
12355         comment at the top of the file.
12356
12357 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12358
12359         * TODO.xml: some updates, added abunch of new entries.
12360         a note for those fiddeling with this file, when done
12361         with it, invoke:
12362         $ ./docs/make-todo TODO.xml >/dev/null
12363         and correct output errors before comitting changes.
12364
12365 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12366
12367         * TODO.xml: Added XML-structured TODO file.
12368         * docs/make-todo: python script to turn TODO.xml into
12369           pretty XML output. 
12370
12371 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12372
12373         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12374         the function to let it draw the seven dots, instead of the old,
12375         much maligned, method.
12376         (draw_dot): New function to draw a dot.
12377
12378         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12379         to draw the handle inside the border width as opposed to outside.
12380         Use paint function instead of gdk_draw_point.
12381
12382         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12383         to draw the handle inside the border width as opposed to outside.
12384         Use paint function instead of gdk_draw_point.
12385
12386         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12387         Change indenting to be more GTK like.
12388
12389 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12390
12391         * docs/gtk_tut.sgml: New section on GtkCalendar
12392         * examples/calendar: Update example code
12393
12394 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12395
12396         * docs/gtkfaq.sgml: FAQ Update
12397
12398 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12399
12400         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12401         to prevent the scroll event to be propagated upwards.
12402
12403 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12404
12405         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12406         OwnerGrabButtonMask from button entries for
12407         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12408
12409         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12410         to the event mask (which will result in button/press release
12411         being added to the event mask on Unix) so scrolling works
12412         for layouts in scroll windows.
12413
12414         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12415
12416         Patch from Anders Carlsson  <andersca@gnu.org> to add
12417         a scroll event.
12418
12419         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12420         scrolling to the "Test Scrolling" part of testgtk.
12421  
12422         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12423  
12424         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12425         it against GDK_SCROLL.
12426  
12427         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12428         way of mouse wheel scrolling.
12429  
12430         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12431  
12432         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12433  
12434         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12435  
12436         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12437         gdk_event_mask_table.
12438  
12439         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12440         GdkEventScroll handler.
12441  
12442         * gdk/gdkevents.h: Added GdkEventScroll structure.
12443  
12444 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12445
12446         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12447         and Anders Carlsson to change the Paned widgets so that they
12448         can be dragged from anywhere along the length. Also change
12449         the way that this is drawn to make this apparent.
12450
12451         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12452         from George Lebl to check that option_menu->menu is present
12453         before getting history.
12454
12455 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12456
12457         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12458         before the assertion for non-NULL segment list.
12459
12460         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12461         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12462         machine, but it might be display driver dependent. Sigh, so make
12463         sure the stipple is that size. Does Windows suck or what?
12464
12465         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12466         places.
12467
12468 2000-02-13  Havoc Pennington  <hp@pobox.com>
12469
12470         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12471         refcount to 1
12472         (gdk_cursor_new): init refcount to 1
12473
12474         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12475
12476 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12477
12478         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12479         so that we don't have to do unnecessary settings to the HDC.
12480
12481         * gdk/win32/gdkdrawable-win32.c
12482         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12483         gdk_gc_predraw.
12484
12485         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12486         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12487         GDI paths, call WidenPath to get the outline of the stroken path,
12488         and then fill the outline (with the brush that was built from the
12489         stipple).
12490
12491         * gdk/win32/gdkgc-win32.c: Factor out common code from
12492         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12493         gdk_win32_gc_values_to_win32values. Use correct colour for
12494         SetBkColor() (Until now the code actually used a random colour in
12495         the call to SetBkColor()... but that didn't show up as not many
12496         GDI APIs use the background colour. Pattern (opaque stippled)
12497         brushes do.)
12498
12499         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12500         gdk_win32_api_failed): New functions for error logging.
12501
12502         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12503         WIN32_API_FAILED to call them, passing function or file name and
12504         line number.
12505
12506         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12507
12508         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12509         GdkColor for foreground and background in GdkGCWin32Data.
12510
12511         * gdk/makefile.cygwin: Link in the resource object separately.
12512
12513         * gdk/win32/rc/gdk.rc
12514         * gtk/gtk.rc (New file)
12515         * gdk/win32/makefile.cygwin
12516         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12517         as in GLib.
12518
12519 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12520
12521         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12522         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12523         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12524         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12525         parameters given and cursor->ref_count. coding style fixups.
12526
12527         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12528         not GtkWidget.
12529         
12530         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12531         fix up widget macros and add _GET_CLASS() variant.
12532         
12533         * gtk/*.c: some GtkType fixups.
12534
12535 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12536
12537         * gdk/win32/gdkproperty-win32.c
12538         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12539         were reversed.
12540
12541 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12542
12543         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12544         g_filename_to_utf8 to convert the font names Windows gives us from
12545         whatever is the default codepage to UTF-8.
12546         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12547         in the other direction.
12548
12549         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12550         error in debugging output.
12551
12552 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12553
12554         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12555         and height parameters to gdk_window_clear_area(). Not minus one.
12556
12557 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12558
12559         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12560         checks if the widget passed to gtk_drag_get_data() was not the
12561         dest widget.
12562
12563 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12564
12565         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12566         g_filename_from_utf8 functions (which were added a moment ago to
12567         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12568         size buffers.
12569
12570         gtk_file_selection_get_filename returns the filename in the C
12571         runtime encoding. It calls g_filename_from_utf8, but copies the
12572         returned string to a static buffer, which is returned. I think
12573         this is better than returning the result from g_filename_from_utf8
12574         directly, which would mean all apps that use it would have to free
12575         the return value. Or should this function care about this issue at
12576         all? Maybe a new function with clearly defined semantics.
12577
12578         * gtk/gtkfilesel.h: Add comment about
12579         gtk_file_selection_get_filename returning the filename in the C
12580         runtime's encoding.
12581
12582         * README.win32
12583         * gdk/gdk.def
12584         * gdk/makefile.{cygwin,msc}
12585         * gtk/gtk.def: Updates.
12586
12587         * gdk/gdkcursor-win32.c: Initialise refcount.
12588
12589 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12590
12591         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12592
12593 2000-01-30  Havoc Pennington  <hp@pobox.com>
12594
12595         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12596         destroy
12597
12598         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12599
12600         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12601         implemented in platform-specific code
12602
12603         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12604
12605         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12606         underscore in front
12607
12608         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12609         put an underscore in front
12610
12611         * gdk/gdkcursor.c: new file, implements
12612         gdk_cursor_ref/gdk_cursor_unref
12613
12614         * gdk/gdkcursor.h: Refcount GdkCursor
12615
12616         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12617
12618 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12619
12620         * gdk/gdkwindow.h
12621         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12622
12623 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12624
12625         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12626         structures to properly inherit from GtkWidget not GtkBin.
12627
12628 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12629
12630         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12631         (bug #5178 - Peter Wainright)
12632         
12633         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12634         so that it will be installed.
12635         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12636
12637 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12638
12639         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12640         for the GtkStyleClass vtable const.
12641
12642         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12643         take a const string argument like GtkTranslateFunc. This will
12644         require changes in use code.
12645
12646 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12647
12648         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12649         semantics (to mimic the X11 backend, which just calls XClearArea)
12650         is to check for zero width (and height), and in that case use the
12651         window's width minus x (height minus y). This fixes for instance
12652         some redraw problems with gtkclist, which were easily noticeable
12653         in the gtk file selection widget.
12654
12655         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12656         windows.
12657
12658 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12659
12660         * configure.in
12661         * gdk/Makefile.am
12662         * gdk/x11/Makefile.am
12663         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12664         (bug #5177).
12665         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12666         out later.
12667
12668 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12669
12670         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12671         WM_MOVE for iconified or invisible windows. This fixes various
12672         problems when minimising windows. Thanks to Bernd Herd.
12673
12674 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12675
12676         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12677         backend's draw_lines method, not draw_points.
12678
12679 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12680
12681         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12682         before Owen's reorganisation: Don't have queued_events and
12683         queued_tail statics in this file, but use gdk_queued_events and
12684         gdk_queued_tail. This makes exposure event compression work again.
12685
12686         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12687         seem to be needed?
12688
12689 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12690
12691         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12692         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12693         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12694         doesn't do anything.
12695
12696         * gdk/gdk.def: Add gdk_xid_table_insert.
12697
12698         * gdk/win32/gdkprivate-win32.h
12699         * gdk/win32/gdkevents-win32.c
12700         * gdk/win32/gdkinput-win32.c
12701         
12702         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12703         extension_events field in the GdkWindowWin32Data struct. Use only
12704         the extension_events field in GdkWindowPrivate. Previously one was
12705         set, and the other one tested, which broke tablet
12706         functionality. Thanks to Keishi Suenaga for pointing this out.
12707
12708 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12709
12710         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12711         When handling a single character (text length == 1), don't handle
12712         it as if it was UTF-8.
12713
12714 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12715
12716         * Makefile.am: Distribute README.win32.
12717         
12718         * gdk/Makefile.am
12719         * gdk/win32/Makefile.am: Distribute Win32 files.
12720
12721         * gdk/makefile.msc: New file.
12722
12723         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12724         after label).
12725
12726         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12727         gdk_error_code as GDKVAR, as they are referred outside GDK.
12728
12729         * gdk/win32/makefile.msc: Update.
12730
12731         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12732         tweaks. Check only if at least one of those Unicode subrange bits
12733         we care for is set. If no code page bits are set, guess (wildly)
12734         based on the charset.
12735
12736         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12737
12738         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12739         non-NULL.
12740
12741         * gtk/gtkdnd.c
12742         * gtk/gtklayout.c
12743         * gtk/gtkplug.c
12744         * gtk/gtkselection.c
12745         * gtk/gtksocket.c
12746         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12747         appropriate. There must be a cleaner way to handle this?
12748
12749         * gtk/gtkrc.c: Must include windows.h on Win32.
12750
12751         * gtk/testgtk.c: No need to include gdkx.h.
12752
12753         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12754
12755 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12756
12757         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12758         the rbearing is set to the same as the width, but this should be
12759         fixed.
12760
12761 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12762
12763         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12764         function. If Windows doesn't tell us what Unicode subranges a font
12765         covers, guesstimate based on the codepages it covers. This will
12766         hopefully help those Windows versions or fonts that don't give us
12767         any useful Unicode subrange information with GetTextCharsetInfo.
12768         Call this function in gdk_font_load_internal.
12769
12770         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12771         minor changes.
12772
12773 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12774
12775         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12776         New function, long needed.
12777
12778 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12779
12780         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12781         only_if_exists argument of gdk_atom_intern to
12782         bool.
12783
12784 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12785
12786         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12787         Fix two copy&paste errors.
12788
12789         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12790         win32 has changed.
12791
12792         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12793         GdkWin32SingleFont struct.
12794
12795         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12796         subranges of loaded fonts. Clear font signature first, in case
12797         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12798         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12799
12800         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12801         Unoffset clip region.
12802
12803 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12804
12805         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12806         event->any.window before calling filter functions.
12807
12808 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12809
12810         * gtk/gtkgamma.h: Adapt cast macros to standard.
12811
12812 [ Merges from 1.2 ]
12813
12814 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12815
12816         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12817         If translation does not include a '/', use entire
12818         translation instead of crashing.
12819
12820 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12821
12822         * docs/gtk_tut.sgml:
12823         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12824
12825 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12826
12827         * gtk/gtkselection.c (gtk_target_list_remove): Use
12828         g_list_remove_link, not g_list_remove.
12829
12830         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12831         
12832 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12833
12834         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12835         statement upon unselection (how the heck did that slip in?).
12836
12837 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12838
12839         * gtk/gtktext.c (gtk_text_freeze): 
12840         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12841         in frozen state (and aparently crashes). patch provided by Anders
12842         Melchiorsen <and@kampsax.dtu.dk>.
12843
12844 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12845
12846         * fix insensitive default/focus widget activation,
12847         reported by Matt Goodall <mgg@isotek.co.uk>.
12848
12849         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12850         (gtk_window_activate_default):
12851         (gtk_window_activate_focus):
12852         return handled=FALSE for actiavtion of insensitive default
12853         widgets. return handled=TRUE for activation of insensitive
12854         focus widgets. don't activate in either case.
12855
12856 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12857
12858         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12859         and $glib_cflags to match library order and in the
12860         theory that an old version of GLib is more likely to
12861         be in the include directory for X then vice-versa.
12862         (Bug #2776)
12863
12864 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12865
12866         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12867         to determine the locale for fontsets, not LC_MESSAGES;
12868         the user may want English messages with a handling
12869         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12870         will still be broken) (Bug #2891)
12871
12872 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12873
12874         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12875
12876 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12877
12878         * gtk/gtkrc.ko: Changed the Korean default fontset.
12879
12880 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12881
12882         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12883         where when scrolling to the left or top double exposes
12884         were done, causing major slowdowns.
12885
12886 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12887
12888         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12889         names to lowercase and alphanumeric, before looking
12890         them up.
12891
12892         * gtk/Makefile.am: Install codeset variant gtkrc files
12893         with normalized names.
12894
12895 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12896
12897         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12898         popup menus when the menu is already visible, but its parent
12899         is still hidden, (happens after tornoff window got hidden).
12900
12901 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12902
12903         * gtk/Makefile.am (install-data-local): Fix
12904         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12905         deleted, causing error messages on install.
12906
12907 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12908
12909         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12910         the handle as well, since we now sometimes ignore
12911         exposes on the handle while resizing.
12912
12913 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12914
12915         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12916         extra g_free introduced in one of the last one or two 
12917         commits.
12918
12919 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12920
12921         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12922         consistent, put each style that a gtkrc.* file creates
12923         in a unique namespace, remove old files before installing.
12924
12925 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12926
12927         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12928         gtk_rc_init is called multiple times. (Yes, people who
12929         do that have bugs in their code.)
12930
12931 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12932
12933         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12934         Remove it since it's generated by the Makefile anyway
12935
12936 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12937
12938         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12939         device->info.axes for core pointer.
12940
12941 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12942
12943         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12944         idle_id, to deal with obsolete, broken C libraries.
12945
12946 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12947
12948         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12949         allocation->x/y twice!
12950
12951         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12952         consistent with gtk_vscale_pos_trough().
12953
12954 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12955
12956         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12957         be queueing a resize on a toplevel container between
12958         the time we show it and when we map it. So, we need
12959         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12960         use GTK_WIDGET_DRAWABLE() for child windows.
12961
12962 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12963
12964         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12965         (fixes bug #2144)
12966
12967 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12968
12969         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12970         container DRAWABLE (instead of VISIBLE), so we don't queue
12971         resizes on non-toplevel containers.
12972
12973 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12974
12975         * gtk/gtkselection.[ch]: Make the data argument
12976         const guchar *.
12977
12978 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12979
12980         * gtk/gtkwindow.c: Try to behave sensibly if 
12981         the focus widget is the window itself. (Should
12982         we allow this at all?)
12983
12984 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12985
12986         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12987         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12988         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12989         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12990         in prototypes and implementations consistent (Tomas Ogren).
12991
12992         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12993         before the widget is unparented (reported by damon).
12994
12995         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12996         since we provide unsigned data anyways.
12997
12998 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12999
13000         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13001         the call to gtk_tooltips_layout_text() until later.
13002
13003         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13004         Call gtk_widget_ensure_style() before using the style.
13005
13006 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13007
13008         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13009         for old widgets that don't propagate draws to all
13010         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13011
13012 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13013
13014         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13015         for a redraw but just the widget that requested the resize.
13016
13017 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13018
13019         * gtk/gtkcontainer.c: added new widget level method
13020         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13021         reallocate_redraws : 1 to reflect the setting, exported this through
13022         the argument system as a boolean ::reallocate_redraws.
13023
13024         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13025         on the widget because the allocation changes, do so as well for
13026         widget->parent if the parent has reallocate_redraws set to TRUE.
13027         with that containers requesting reallocation redraws get automatically
13028         redrawn if their children changed allocation (this unfortunately
13029         affects also other children that didn't change allocation, but we
13030         cannot work around that before 1.3).
13031
13032 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13033
13034         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13035         _and_ height are >0 (not _or_).
13036
13037         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13038         instead of gtk_container_queue_resize(), which is a core gtk internal
13039         function (must have been on crack when i queued that).
13040
13041         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13042         we can check more reliably if we want to discard expose events.
13043         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13044         flag.
13045         
13046         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13047         we simply trust these events. for deciding whether to discard exposes,
13048         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13049         
13050 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13051
13052         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13053         queues of areas that are completely off screen.
13054
13055         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13056         logic for handleboxes.
13057
13058         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13059         check on width/height.
13060
13061 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13062
13063         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13064         we are fine with using $@ the way we do (if we actually encounter
13065         brokeness with $@ in VPATH builds because of additional path prefixes,
13066         we need to use $(@F) actually).
13067
13068 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13069
13070         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13071         short lived bugs, that would allow language bindings to do surgeries
13072         to our guts.
13073
13074 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13075
13076         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13077         where comparison was being done against an uninitialized
13078         value causing intermittant results depending on
13079         compiler flags. Also make it clearer that we aren't
13080         ever initializing the child as 0x0 (though this will
13081         be caught in gtk_widget_size_allocate())
13082
13083 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13084
13085         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13086         gtk_window_unset_transient_for() call after we do checks
13087         involving the old transient parent.
13088         [ From Lance Capser <lmc@cyberhighway.net> ]
13089
13090 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13091
13092         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13093         an empty file.
13094
13095 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13096
13097         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13098         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13099
13100 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13101
13102         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13103         `$@' is valid only in the build dir, not after we've done 
13104         `cd $srcdir'.  Also use `test -f' instead of less portable
13105         `test -e'.
13106
13107 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13108
13109         * gtk/gtktext.c (correct_cache_insert): Rewrite
13110          for simplicity, and hopefully correctness.
13111          (Fixes bug #1322, which was a segfault when
13112           on some insertions with the properties around
13113           the insertion set up just wrong.)
13114
13115         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13116          a "changed" signal, clamp the new value to the adjustment
13117          bounds to avoid segfaulting if someone tries to change
13118          the adjustment to a bogus value. (Bug #1795)
13119
13120 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13121
13122         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13123         for children, for toplevel windows handle them
13124         like delete_event.
13125
13126         * gtk/gtkplug.c: Add an unrealize handler so that
13127         we unref plug->socket_window when we are done
13128         with it.
13129
13130 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13131
13132         * gtk/gtktext.c (clear_area): Fix stupid signedness
13133          problem that was causing background to sometimes
13134          be misaligned.
13135
13136 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13137
13138         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13139         
13140         * gtk/gtkmenu.c (gtk_menu_position): Make
13141          sure we never position menus with negative x, y,
13142          since gtk_widget_set_uposition() can't handle that.
13143
13144         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13145          Modify the positioning code a bit so that we always
13146          put the top-left corner onscreen. (This is for
13147          UI reasons, gtk_menu_position() now takes care of
13148          gtk_widet_set_uposition() brokeness.)
13149
13150 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13151
13152         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13153
13154 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13155
13156         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13157           RC style that is passed in. The lack of the ref
13158           before was a bug. If people worked around this
13159           bug, this will introduce a slight memory leak
13160           in their code. The code should typically look like:
13161
13162             rc_style = gtk_rc_style_new ();
13163             [...]
13164             gtk_widget_modify_style (widget, rc_style);
13165             gtk_rc_style_unref (rc_style);
13166
13167         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13168           the style if it was already set.
13169
13170         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13171           style if it was set before.
13172
13173 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13174
13175         * gtk/testgtk.c (main): Add a check to see if we
13176           are being run from the correct directory and
13177           to quit nicely if we are not.
13178
13179         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13180           static.
13181
13182 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13183
13184         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13185
13186         * gtk/gtkwindow.c:
13187         queue resizes unconditionally (gtk_widget_queue_resize will figure
13188         what to do if the window is not realized).
13189         (gtk_window_move_resize): only recenter the window
13190         for GTK_WIN_POS_CENTER_ALWAYS.
13191         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13192         the same way as GTK_WIN_POS_CENTER.
13193
13194 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13195
13196         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13197         with (!(info->last_flags & GDK_HINT_POS)) instead of
13198         (!info->last_flags & GDK_HINT_POS).
13199
13200         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13201         new_height unconditionally, because we use these values even if
13202         !default_size_changed && !hints_changed.
13203         comented the (default_size_changed || hints_changed) case with
13204         respect to resize rejects from the window manager.
13205
13206         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13207         in the zvt condition hack, since this includes the window hints, set
13208         the hints after the handling_resize case.
13209
13210         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13211         window is initially shown with to the geometry.
13212
13213 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13214
13215         * gtk/gtkwindow.c (gtk_window_move_resize):
13216         s/size_changed/default_size_changed/g so i know what's
13217         really going on (frying brain on smaller flame now).
13218
13219 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13220
13221         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13222         we have size_changed upon handling_resize. this is a gross
13223         workaround for the broken zvt widget and should be removed in
13224         1.3 again (search for FIXME).
13225         Owen provided an accurate comment for this:
13226
13227         /* We could be here for two reasons
13228          *  1) We coincidentally got a resize while handling
13229          *     another resize.
13230          *  2) Our computation of size_changed was completely
13231          *     screwed up, probably because one of our children
13232          *     is broken. It's probably a zvt widget.
13233          *
13234          * For 1), we could just go ahead and ask for the
13235          * new size right now, but doing that for 2)
13236          * might well be fighting the user (and can even
13237          * trigger a loop). Since we really don't want to
13238          * do that, we requeue a resize in hopes that
13239          * by the time it gets handled, the child has seen
13240          * the light and is willing to go along with the
13241          * new size. (this happens for the zvt widget, since
13242          * the size_allocate() above will have stored the
13243          * requisition corresponding to the new size in the
13244          * zvt widget)
13245          *
13246          * This doesn't buy us anything for 1), but it shouldn't
13247          * hurt us too badly, since it is what would have
13248          * happened if we had gotten the configure event before
13249          * the new size had been set.
13250          */
13251
13252 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13253
13254         * gtk/gtkrc.c: deal properly with the fact that RC
13255           style lists may include rc styles more than once.
13256
13257         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13258           unused static function.
13259
13260         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13261           stack of directories of RC files currently being
13262           parsed and implicitely add them to pixmap path.
13263           
13264           This fixes a bug where the directory would get
13265           appended then overwritten by pixmap_path declarations.
13266
13267           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13268
13269         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13270           theme's exit function. (Patch from Peter Wainwright,
13271           bug #1454)
13272
13273         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13274           Add a destroy() handler to take care of removing
13275           group for menu item. (Fixes bug #1197)
13276
13277         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13278           in warning message.
13279
13280 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13281
13282         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13283         roundtrip to figure window's width and height, since we know that
13284         anyways from widget->allocation.
13285
13286 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13287
13288         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13289           the hints after we request the new size.
13290
13291 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13292
13293         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13294           GTK_WIDGET_REALIZED() assertion - we can compute the
13295           hints before we are realized.
13296
13297         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13298           hint changing so that we have a value of hints_changed
13299           when we decide whether to constrain the window size.
13300
13301         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13302
13303         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13304         change back to G_MAXINT.
13305
13306 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13307
13308         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13309         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13310         contain uncluttered values.
13311         (gtk_window_compute_hints): simply assert that window is realized
13312         and that geometry_info is valid, since we rely on this anyways.
13313         (gtk_window_constrain_size): major cleanups to the code.
13314         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13315         for the base size, instead of the minimums. use 32767 as max width
13316         and height (like in gtkwindow.c) instead of G_MAXINT.
13317
13318 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13319
13320         * cleaned up the GtkContainer.need_resize flag handling mess, we
13321         only need to force resize requests when we were prematurely
13322         realized, or our widget tree was modified when we were temporarily
13323         hidden. handling these cases directly upon showing the window (i.e.
13324         while the GdkWindow is still unmapped) avoids the need to wait for
13325         a configure event response and therefore makes the GUI more snappier
13326         and avoids blank windows during the roundtrip.
13327
13328         * gtk/gtkwidget.c:
13329         (gtk_widget_hide): 
13330         (gtk_widget_show): don't queue resizes on toplevels, they know how
13331         to deal with matters.
13332
13333         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13334         flag directly for not visible resize containers and spare us unecessary
13335         signal emissions.
13336
13337         * gtk/gtkwindow.c:
13338         (gtk_window_realize): if we need to enforce premature size allocation,
13339         queue a container resize so we are correctly resized later on.
13340         (gtk_window_init):
13341         (gtk_window_size_request):
13342         don't freak around with the ->need_resize flag,
13343         gtk_container_queue_resize() will care about that.
13344         (gtk_window_show):
13345         handle initial resizing issues here, we can handle matters better in
13346         this place, especially since we know that our GdkWindow is still
13347         unmapped.
13348         (gtk_window_move_resize):
13349         don't care about ->need_resize at all.
13350         handle size changes properly that occoured while we waited for a
13351         configure event.
13352
13353 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13354
13355         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13356         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13357         Move the hint setting code from gtk_widget_set_uposition
13358         to here; set the hints so that we respect any previously
13359         set geometry hints.
13360
13361         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13362         change the window hints here or move the window here,
13363         let that happen in gtk_window_move_resize().
13364
13365 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13366
13367         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13368         to already queued resizes (and therefore redraws) on a widget, check
13369         its anchestry as well.
13370
13371         * gtk/gtkcontainer.c:
13372         (gtk_container_queue_resize): clear resize widgets for resize
13373         containers before aborting prematurely. this is especially important
13374         for toplevels which may need imemdiate processing or their resize
13375         handler to be queued.
13376         (gtk_container_dequeue_resize_handler): added new internal function for
13377         gtkwindow.c.
13378
13379         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13380         configure event, take possible changes in window position into account
13381         as well.
13382         if we request a new window size, queue up a resize handler that will
13383         last until the configure event response arrives.
13384         combined the ->need_resize case (initial show) with the general size
13385         (hints) changed case and added even more comments.
13386         if !auto_shrink, only revert to the old allocation if the new size
13387         is smaller than the current allocation.
13388
13389 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13390
13391         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13392                            gtk_window_set_geometry_hints
13393                            gtk_window_set_default_size):
13394         When hints are set, queue a resize so that the hints will
13395         be eventually reset on the toplevel.
13396
13397         * gtk/gtkwindow.c (gtk_window_show): Use
13398         gtk_window_compute_default_size(). Clear the need_resize flag
13399         on the initail map so that we don't unnecessarily trigger the
13400         resize code.
13401
13402         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13403         into separate functions. Compare the hints we are setting
13404         with what we set last time so that we can accurately
13405         tell when we need to reset the hints.
13406
13407         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13408         function to figure out the size from requisition
13409         and default_size.
13410
13411         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13412         from fvwm to constrain a size to the geometry hints.
13413
13414         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13415         to compare two sets of geometry hints.
13416
13417         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13418         from gtk_window_set_hints(), just compute the hints,
13419         don't set them.
13420
13421         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13422         code from gtk_window_move_resize() to separate function,
13423         rationalize a bit.
13424
13425 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13426
13427         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13428         structure into a new private structure.
13429
13430         * gtkrc.c: Split GtkRcStyle into public/private.
13431         In the private part, add a list of pointers to the
13432         RcStyle lists this RcStyle participates in.
13433
13434         * gtkrc.c: When a RcStyle is free, remove all
13435         lists referencing it from the 
13436         realized_style_ht hash, and free those lists.
13437         
13438         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13439         gtk_rc_init(), since that adds the default styles
13440         to the list of parsed RC files again.
13441
13442         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13443         
13444 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13445
13446         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13447         checks that ensure that a widget's allocation is at least 1 in width
13448         and height. (GNOME note: this doesn't affect old panel code anymore,
13449         because GtkSocket will request width and height of at least 1 since
13450         Fri Jul 23).
13451
13452         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13453         allocated yet (happens if the user realizes the window prematurely),
13454         size request and allocate it.
13455         (gtk_window_size_allocate): guard against guint underflows.
13456
13457 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13458
13459         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13460         in gtk_built_sources, so gtk.defs gets built prior to all other
13461         sources.
13462
13463 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13464
13465         * gtk/Makefile.am:
13466         invoke indent on gtkmarshal.*. 
13467         rewrote source generation rules, use COPYING as oldest source tag for
13468         a piggyback rule to generate all sources from (don't touch it ;).
13469         major cleanups, strip spaces on build rules for GNU Make.
13470
13471         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13472         source and target files from commandline arguments. don't invoke indent.
13473
13474 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13475
13476         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13477         notebook after switch to avoid drawing problems.
13478         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13479         
13480         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13481         show them instead. 
13482         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13483
13484 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13485
13486         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13487         notebook after switch to avoid drawing problems.
13488         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13489         
13490         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13491         show them instead. 
13492         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13493
13494 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13495
13496         * gtk/gtkwindow.c:
13497         we use window->need_resize from configure_event now, to indicate that
13498         the gtkwindow should keep its allocation (e.g. because the user resized
13499         the window through window manager handles). resize_count is now reliably
13500         used to figure whether we got the allocation we requested from the
13501         window manager.
13502         configure events get queued as resizes now, the real stuff (size
13503         computation and allocation) now only goes on in gtk_window_move_resize().
13504         GtkWindow's requisition now contains its *real* requisition (like all
13505         other widgets), *not* taking usize into account.
13506         geometry_info->last_{width|height} is now updated from set_hints() only
13507         so it always contains the last hints we set for the window manager.
13508         made some event handlers return TRUE instead of FALSE.
13509         the overall code should be much more straight forward now, and the
13510         significant code portions are accompanied by comments now.
13511         (gtk_window_set_hints):
13512         removed requisition argument and made it
13513         fetch the requisition through gtk_widget_get_child_requisition.
13514         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13515         does that now.
13516         (gtk_window_show):
13517         ensure that the widget is realized before calling 
13518         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13519         ensure that we got properly size requested and allocated before
13520         realization.
13521         (gtk_window_configure_event):
13522         ignore plain window moves, or reallocate the widget tree through the
13523         resize queue otherwise.
13524         (gtk_window_move_resize):
13525         mostly rewrote this function to figure window manager hints more
13526         reliably, coalesce window moves and resizes to reduce configure events
13527         and do actuall size allocations.
13528
13529 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13530
13531         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13532         that have a resize pending, because a redraw is already queued for them.
13533
13534         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13535         hack to clear resize_widgets.
13536
13537         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13538         for resize containers prior to size allocation. (this is also a bit
13539         ugly, but avoids side effects for stopped emissions and is thus more
13540         reliable).
13541         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13542
13543         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13544         function from gtk_tooltips_expose, as we connect to ::expose_event
13545         *and* ::draw now.
13546
13547 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13548
13549         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13550         checks.
13551         (gtk_target_list_unref): Likewise.
13552
13553         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13554
13555 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13556
13557         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13558         guard against division by zero. (Fixes bug #1339)
13559
13560 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13561
13562         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13563         Prevent the trivial leak of information of allowing
13564         word motion when the entry is not visible.
13565
13566 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13567
13568         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13569         modality to error dialog as well as confirmation dialogs.
13570         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13571
13572 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13573
13574         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13575         tree->view_lines.
13576         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13577
13578         * gtk/Makefile.am (install-data-local): Solaris apparently
13579         has various troubles with ln -f; use rm first instead.
13580         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13581
13582 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13583
13584         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13585         use `cp' followed by `rm' (the `rm' was already there).
13586
13587 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13588         
13589         * configure.in: Fix autoconf warnings about cross compilation by
13590         trying to provide sane defaults for AC_TRY_RUN.
13591         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13592         put them into $(srcdir) when generated. Also add a dependency of
13593         gtksignal.h on gtkmarshal.h for -j builds. 
13594         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13595
13596 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13597
13598         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13599         GDK_THREADS_{LEAVE,ENTER} pair.
13600         (From Paul Fisher <pnfisher@redhat.com>)
13601
13602 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13603
13604         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13605         width and height are always >0 (owen).
13606
13607 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13608
13609         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13610         change that assured that a widget's allocated with and height are
13611         always >1, since this breaks *buggy* panel code. unfortunately this
13612         back-breaks the gimp's color selector.
13613
13614         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13615         allocation is always >0 in width and height, before sending the
13616         configure event; this is a *gross* hack to get the gimp back to work.
13617         
13618         * marked both cases with TODO-1.3
13619
13620 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13621
13622         * gtk/gtktext.c: Don't display wrap indicators when
13623         text is not editable and word wrap is on.
13624
13625 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13626
13627         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13628         option menus here as they are not derived from menu shell, assure that
13629         the option menu has a menu we can add items to.
13630
13631 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13632
13633         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13634         width/height to (gint) before calculations and check against < 0 to
13635         avoid guint wraparounds.
13636
13637 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13638
13639         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13640         width and height is never zero. sanity check both dimensions against
13641         32767 and issue a warning if the allocation is greater than that.
13642
13643 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13644
13645         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13646         to g_main_pending() as well.
13647
13648 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13649
13650         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13651         call to g_main_iteration() - since that will regrab
13652         GTK+ lock to process events.
13653
13654 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13655
13656         * gtk/gtkwindow.c
13657         - Regularize with the rest of GTK+ by making widget->requisition
13658           not reflect the set_usize()
13659         - Always recompute geometry hints, then check if they
13660           changed before sending them to the X server. The
13661           previous checks for changes would fail in a number
13662           of circumstances. 
13663
13664 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13665
13666         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13667
13668 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13669
13670         * gtk/gtkdnd.c:
13671         - Code cleanups
13672         - Instantaneously update on modifier key presses
13673         - Allow cancellation of the drag with Escape.
13674
13675 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13676
13677         * gtk/testgtk.c (create_handle_box): Set the policy
13678         to auto_shrink - otherwise the appearance is rather
13679         strange when flipping between horizontal and vertical.
13680
13681 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13682
13683         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13684         (gtk_window_set_default_size): don't change a value if it's < 0.
13685         queue a resize.
13686
13687 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13688
13689         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13690
13691 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13692
13693         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13694         add an extra "/" when concating "/" + filename.
13695         (From Matt Grossman <mattg@oz.net>)
13696
13697 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13698
13699         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13700         for fg_gc if we set it for drawing pixmap.
13701
13702 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13703
13704         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13705         
13706         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13707         already set, call old engine's destroy function and
13708         unref the old engine.
13709
13710 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13711
13712         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13713
13714 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13715
13716         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13717
13718 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13719
13720         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13721         expand behaviour changed.
13722
13723         * gtk/gtklabel.c (gtk_label_set_pattern):
13724         (gtk_label_set_justify):
13725         (gtk_label_set_line_wrap):
13726         don't bother invoking queue_clear, the reallocation does
13727         that for us, always free_words so the upcoming resize will
13728         relayout the label's contents.
13729
13730 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13731
13732         * applied argument implementation patches from Elena Devdariani
13733         <elena@cogent.ca>.
13734
13735         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13736         ::space_style, ::relief
13737         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13738         * gtk/gtkpreview.c: ::expand
13739         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13740         * gtk/gtknotebook.c: ::homogeneous
13741         * gtk/gtklabel.c: ::wrap
13742         * gtk/gtklist.c: ::selection_mode
13743         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13744         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13745         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13746         * gtk/gtkclist.c: ::sort_type
13747         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13748         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13749
13750 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13751
13752         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13753         comment.
13754
13755 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13756
13757         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13758         counting right when we have to attach a new style
13759         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13760
13761         * gtk/gtkstyle.c: Documented the refcounting
13762         peculularities of gtk_style_attach.
13763
13764 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13765
13766         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13767         window types.
13768
13769         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13770         of GTK_TOPLEVEL for creating the window.
13771
13772 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13773
13774         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13775         the last argument (reported by Per Winkvist).
13776         
13777 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13778
13779         Fixes for invisible XOR lines (Frank Loemker
13780         <floemker@TechFak.Uni-Bielefeld.DE>)
13781         
13782         * gtk/gtkclist.c (gtk_clist_realize): Always use
13783         a non-zero pixel for GDK_XOR.
13784
13785         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13786         Use GDK_INVERT instead of GDK_XOR.
13787
13788 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13789
13790         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13791         signals if h/voffsets differ from adjustment values.
13792         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13793
13794 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13795
13796         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13797         ::selection-done emissions up to the topmost menu shell.
13798
13799 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13800
13801         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13802         the user data on the window before destroying it.
13803
13804         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13805         unrealize handler to take care of destroying 
13806         notebook->panel properly. 
13807         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13808
13809         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13810         of g_new and g_realloc to stop memory leak. (Actually,
13811         we could just use g_realloc(), but I'm not 100% sure
13812         that is portable).
13813         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13814
13815 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13816
13817         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13818
13819         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13820         for fontsets.
13821
13822         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13823         with bin/button confusion.
13824
13825 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13826
13827         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13828         and show how preselection of radio items is done.
13829
13830 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13831
13832         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13833         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13834         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13835         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13836         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13837         * gtk/gtktable.c (gtk_table_attach): 
13838         * gtk/gtklist.c (gtk_list_insert_items): 
13839         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13840         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13841         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13842         * gtk/gtkbin.c (gtk_bin_add): 
13843         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13844         * gtk/gtkfixed.c (gtk_fixed_put): 
13845         * gtk/gtklayout.c (gtk_layout_put):
13846         general fixups to container_add logic. always realize child if
13847         child->parent is realized, only map the child and queue a resize
13848         if child and child->parent are both visible.
13849
13850 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13851
13852         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13853         instead of gtk_container_foreach to walk and unrealize children, so
13854         composite children get also unrealized.
13855         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13856         (gtk_widget_map): assert that the widget is visible (basic constrain).
13857         (gtk_widget_real_map): assert that the widget is realized (basic
13858         constrain).
13859
13860 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13861
13862         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13863
13864 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13865
13866         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13867         file for iso-8859-2 locales.
13868
13869         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13870
13871 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13872
13873         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13874          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13875          Remove some suspicious and useless lines. 
13876
13877 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13880         width,height = 0, 0 to mean - here to edge of window,
13881         instead of -1, -1, since the former is all we support.
13882
13883 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13884
13885         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13886         when removing from quit_functions list.
13887
13888 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13889
13890         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13891
13892 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13893
13894         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13895          When redrawing characters on non-visible entry, use appropriate
13896          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13897
13898 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13899
13900         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13901         from drag coordinates.
13902         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13903         use drag_dest_cell.
13904
13905         * gtk/gtktree (drag_dest_cell)
13906         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13907         (Bug #1129)
13908
13909 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13910
13911         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13912         translate_* fields.
13913         (gtk_item_factory_finalize): invoke translate_notify independant from
13914         translate_data.
13915         (gtk_item_factory_set_translate_func): likewise.
13916         (gtk_item_factory_destroy): only remove ifactory pointer from those
13917         widgets that belong to us (stupid me).
13918
13919 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13920
13921         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13922         rc_style list when lookup succeeeds.
13923
13924 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13925
13926         * gtk/gtkctree.c (resync_selection): 
13927         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13928         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13929         bug.
13930
13931 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13932
13933         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13934         Add some missing GDK_THREADS_ENTER()/LEAVE around
13935         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13936
13937 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13938
13939         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13940         rather than emit_by_name.
13941
13942         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13943         on the widget across multiple signal emissions.
13944         (gtk_editable_delete_text): same here.
13945         (gtk_editable_class_init): set widget_class->activate_signal after
13946         editable_signals[ACTIVATE] has been created.
13947
13948 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13949
13950         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13951         position here prematurely -- we might not have the
13952         right ->min_position and ->max_position yet.
13953
13954 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13955
13956         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13957         Add error traps so if the other end of the connection
13958         dies, we survive.
13959
13960         * gtk/gtkselection.c (gtk_selection_notify): Clean
13961         up properly when selection property retrieval fails.
13962         
13963         * gtk/gtkselection.c (gtk_selection_request): Correctly
13964         reject SelectionRequest notifies where the handler
13965         returns no data.
13966
13967 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13968
13969         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13970         when we've previously highlighted.
13971
13972         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13973         emit two "drag_leave" signals for Motif drops.
13974
13975         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13976         back the correct status messages when dropping from
13977         Motif onto a proxy window that is rejecting the
13978         drop.
13979
13980 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13981
13982         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13983         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13984         to compare two argument values. added gtk_arg_to_valueloc() to set a
13985         variable from an arg through its location (pointer).
13986
13987         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13988         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13989         as gfloat*, uchars are collected as guchar*, ints are collected as
13990         gint*, etc...
13991
13992 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13993
13994         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13995         Include <string.h> instead of <strings.h>.
13996
13997         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13998         (actually, a lot more duplicate includes occur if
13999          you trace through the sequence of #include's)
14000         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14001         
14002 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14003
14004         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14005         gtk-a-higuti-990322-[0-3]
14006
14007         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14008         that was causing -DX_LOCALE not to work.
14009
14010         * gtk/gtkrc.c (gtk_rc_init):
14011         X_LOCALE will never have LC_MESSAGES defined
14012
14013 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14014
14015         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14016         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14017
14018         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14019         left/right as well (gtk-michael-980726-0.patch.gz).
14020
14021         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14022         for pointer values, use gchar instead of char. fixed uline allocation
14023         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14024         chunks instead of G_ALLOC_ONLY.
14025         (gtk_label_size_request): always alter requisition as passed and leave
14026         widget->requisition alone.
14027         (gtk_label_set_text): allow NULL strings.
14028         (gtk_label_new): likewise.
14029
14030 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14031
14032         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14033
14034 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14035
14036         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14037         *and* mapped (i.e. drawable).
14038         (gtk_bin_expose): only send exposes to drawable children.
14039
14040         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14041         (gtk_box_expose): only send exposes to drawable children.
14042
14043         * gtk/gtkhscale.c (gtk_hscale_draw): 
14044         * gtk/gtkvscale.c (gtk_vscale_draw):
14045         hm, this is an ugly one. we first compute the size of our trough area
14046         here (window relative) and then check intersection with the draw_area
14047         which is parent relative because we're a NO_WINDOW widget, so we need
14048         to offset the trough area by allocation.x and allocation.y before the
14049         check. (this must not be done for the background area though, since
14050         that's already computed parent relative).
14051
14052 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14053
14054         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14055         unrealize title buttons.
14056
14057 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14058
14059         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14060         (gtk_clist_column_title_active): 
14061         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14062
14063         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14064         zero initialize event, removed superfluous gdk_window_get_pointer call
14065
14066         * gtk/gtklist.c (gtk_list_vertical_timeout)
14067         (gtk_list_horizontal_timeout): removed superfluous
14068         gdk_window_get_pointer call
14069
14070 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14071
14072         * plugging problems reported by "Bruce Mitchener, Jr."
14073         <bruce@puremagic.com> due to a purify session.
14074
14075         * gtk/gtkstyle.c:
14076         (gtk_style_ref): 
14077         (gtk_style_unref): assert ref_count to be > 0.
14078
14079         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14080         the requisition.
14081         (gtk_clist_set_shift): likewise.
14082
14083         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14084         adjustments.
14085
14086         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14087         event before sending it and set send_event to TRUE (which needs to
14088         be done for *all* synthesized events).
14089         (gtk_list_vertical_timeout): likewise.
14090
14091         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14092         leaks.
14093
14094         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14095         to TRUE when synthesizing events.
14096
14097 [ *** end of merges from 1.2 *** ]      
14098         
14099 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14100
14101         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14102         (or copied from gdkconfig.h.win32 on Win32, sigh).
14103
14104         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14105
14106         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14107
14108         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14109
14110         * gdk/gdkconfig.h.win32: New file.
14111
14112         * gdk/win32/makefile.cygwin: Build just a static archive here.
14113
14114         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14115         for the DLL from the static archive built above.
14116
14117         * gdk/gdk.def: Moved here from the win32 subdirectory.
14118
14119         * gdk/win32/*: Adapt for the changed private struct organisation.
14120
14121         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14122
14123 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14124
14125         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14126         for wheel mice (buttons 4 and 5).
14127
14128 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14129
14130         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14131         drawables use just the pixel field in the foreground and
14132         background GdkColor of the GdkGC.
14133
14134         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14135         GdkColors containing uninitialized (red,green,blue) fields, and
14136         just the pixel field filled in, and furthermore in the
14137         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14138         It thus turns out that we really don't need to have the full
14139         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14140         it later to have just the pixel values.
14141
14142 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14143
14144         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14145
14146 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14147
14148         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14149         New question on GtkLabel background colors.
14150
14151         * docs/gtk_tut.sgml:
14152           - Correct the example code callback
14153             function definitions.
14154           - Update the gtkdial example code, from Frans van Schaik.
14155           - Update setselection.c to current API.
14156
14157         * examples/Makefile examples/*/*.c: Update to code
14158         listed in tutorial.
14159
14160 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14161
14162         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14163         subrange table (from the "Developing International Software for
14164         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14165         block... Get the loaded font's charset correctly.
14166
14167         (Note that this, and the other *-win32.c files, still really are
14168         the old ones, the win32 subdirectory is not ready for compilation
14169         yet after the reorg.)
14170
14171 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14172
14173         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14174         check.
14175
14176 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14177
14178         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14179         on results of XQueryDeviceState().
14180
14181 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14182
14183         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14184         we need to accesss only ->children. We need an accessor
14185         for the children.
14186
14187         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14188         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14189         to get rid of gdkx.h include.
14190         
14191         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14192         and random references to 'None'.
14193
14194         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14195         Get rid of unused #include <gdk/gdkx.h>
14196
14197         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14198         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14199         gdkconfig.h.
14200
14201 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14202
14203         * gdk/win32/gdkdraw.c
14204         * gdk/win32/gdkfont.c
14205         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14206         following yesterday's changes. (Unrelated to Owen's reorg.)
14207
14208 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14209
14210         * gdk/x11/gdkinput-gxi.c: Add missing include,
14211           fix GdkWindowPrivate => GdkDrawablePrivate.
14212
14213         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14214
14215         * gdk/x11/Makefile.am (xinput_sources): Add missing
14216         backslash to fix building with --with-xinput=none
14217
14218 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14219
14220         Move all X specific code into the x11/ directory.
14221         Aside from shuffling things around, did the following:
14222
14223        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14224          gdk_arg_context_* - a simple argument parsing system
14225          in the style of popt.
14226
14227        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14228          gdk/x11/gdkprivate-x11.h:
14229          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14230          add ->klass and ->klass_data fields. The klass_data
14231          field points to an auxilliary structure that is
14232          windowing system dependent.
14233
14234        * gdk/gdkfont.c: Make most of the measurement functions
14235          simply wrappers around gdk_text_extents().
14236
14237        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14238          _gdk_font_strlen() function that hides the weird
14239          behavior in gtk+-1.[02] where a string is interpreted
14240          differently for 8-bit and 16-bit fonts.
14241
14242        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14243          to store common code for synthesizing double/triple
14244          press events.
14245         
14246        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14247          Make all the function that modify an existing GC
14248          simply wrappers around gdk_gc_set_values().
14249          
14250        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14251          for throwing out later.
14252
14253        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14254          GdkImagePrivate and GdkColormapPrivate to have a
14255          windowing system dependent part (GdkFontPrivateX etc.)
14256          that "derives" from the system-independent part.
14257
14258        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14259          Got rid of the included-source-files for XInput in
14260          favor of automake conditionals. (Which didn't exist
14261          when XInput support was originally added.)
14262
14263        * gdk/gdkrgb.c: Remove the visual id from the debugging
14264          statements since that is X11 specific; print out
14265          type/depth info instead.
14266          
14267
14268 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14269
14270         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14271         loading duplicates of hashed fonts.
14272
14273         * gdk/gdk.c (gdk_keysym_convert_case): rename
14274         gdk_XConvertCase to gdk_keysym_convert_case, allow
14275         results to be NULL in the GTK+ style.
14276
14277         * gdk/gdkcompat.h: Started compatibility header
14278         for renames.
14279
14280 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14281
14282         * gdk/win32/gdkprivate.h: New font private structures, related to
14283         fontsets.
14284
14285         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14286         gdk_font_list_free(). On X11, will just be wrappers to
14287         XListFonts() and XFreeFontNames(). On Win32, the code previously
14288         in gtkfontsel.c is now here.
14289
14290         New function gdk_font_xlfd_create(). On X11 will get the FONT
14291         property of the font (for GDK_FONT_FONTs), or call
14292         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14293         builds a XLFD style name from the font information in the LOGFONT
14294         struct(s).
14295
14296         New function gdk_font_xlfd_free(), which correspondingly frees the
14297         string returned by gdk_font_xlfd_create().
14298
14299         Implement fontsets on Win32. Add a function that iterates over a
14300         wide char string and calls a callback function for each substring
14301         of wide chars from the same Unicode subrange (and thus probably
14302         available in the same real font).
14303
14304         Improve the XLFD emulation a bit.
14305
14306         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14307
14308         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14309         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14310         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14311         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14312         ImmGetCompositionStringW() to get the composed Unicode chars.
14313
14314         * gdk/win32/gdkgc.c
14315         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14316         struct changes.
14317
14318         * gdk/win32/gdk.def: Add the new functions.
14319
14320 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14321
14322         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14323         get the Platform SDK to get <dimm.h>.
14324
14325         * gdk/win32/gdkevents.c: More event handling fixes and
14326         simplification. Never generate motion events with is_hint true. We
14327         used to do that on bogus grounds earlier. Windows sends
14328         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14329         moved, ignore these.
14330
14331         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14332
14333         * gdk/win32/gdkglobals.c
14334         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14335         the TrackMouseEvent function, and use it.
14336
14337         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14338         char before calling WideCharToMultiByte in order to get a string
14339         for the window title.
14340
14341         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14342
14343         * gdk/win32/gdk.def: Remove obsolete functions.
14344
14345         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14346         /nodefaultlib and /defaultlib switches.
14347
14348         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14349
14350 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14351
14352         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14353         EuroSign).
14354
14355         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14356         same type as GdkWChar, especially on Win32.
14357
14358         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14359
14360         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14361         before passing to Windows GDI for drawing etc. Convert to the
14362         system default codepage before passing to Windows as window
14363         titles.
14364
14365         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14366         support changing input locale on the fly.
14367
14368         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14369         on-the-fly changes. Convert incoming characters from the current
14370         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14371         on the current input language. Use keysym<->Unicode mapping tables
14372         and functions borrowed from xterm sources.
14373
14374         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14375         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14376         Manager) if available. IMEs and the Active IMM are available under
14377         the disguise of Chinese, Korean and Japanese support for IE and
14378         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14379         support is present in all editions (as long as you install it).
14380
14381         Call DispatchMessage from gdk_events_queue() (and thus
14382         gdk_WindowProc()), instead of duplicating the code in
14383         gdk_WindowProc().
14384
14385         Reworked the grab handling and propagation code, factored out
14386         duplicated code snippets into separate functions. Other cleanups,
14387         too.
14388
14389         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14390         the <dimm.h> header describing the Active IMM.
14391
14392         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14393         just do the same as for "single" fonts.
14394
14395         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14396         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14397         the new keysyms from gdkkeysyms.h.
14398
14399         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14400         fontset, so that gtkentry uses wide characters.
14401
14402         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14403         GTk+'s system directory "gtk+", not "gtk".
14404
14405 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14406
14407         * docs/gtkfaq.sgml: FAQ update
14408
14409 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14410
14411         * gdk/win32/gdkprivate.h: Add more font private data.
14412
14413         * gdk/win32/gdkfont.c
14414         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14415         fonts and strings. Now works much better. You still have to
14416         have a correct font selected, though. No fontset emulation yet.
14417
14418 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14419
14420         * gtk/maketypes.awk: Use G_OS_WIN32.
14421
14422         * gtk/gtk.def: Add some missing entry points. Also some non-public
14423         ones, but PyGTK porter claims to need them.
14424
14425         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14426         built-in type generation.
14427
14428 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14429
14430         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14431         GDK_FONT_FONT fonts (which is all we have for now, we don't
14432         emulate fontsets). The X11 version uses plain XDrawString in that
14433         case, too. The string passed to gdk_draw_text_wc seems to be in
14434         fact (at least, when used by gtkentry and gtktext) either in a
14435         single-byte charset, or a DBCS. Not Unicode.
14436
14437         This fixes the problem in gtkfontsel, where even if you had
14438         selected a font with a non-Latin1 charset (windows-greek, for
14439         instance), the preview still used Latin-1 glyphs.
14440
14441         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14442         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14443         (gdk_font_load): Recognize the demibold etc weights, even if we
14444         don't have the corresponding constants in the headers.
14445         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14446         version. Should save font resources a bit, when we don't have
14447         multiple HFONTs for the same font.
14448
14449         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14450         version.
14451
14452 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14453
14454         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14455         X values
14456
14457 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14458
14459         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14460         layout support (as mentioned on
14461         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14462
14463 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14464
14465         * gtk/fnmatch.c
14466         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14467
14468 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14469
14470         * configure.in (ALL_LINGUAS): Added Galician (gl)
14471
14472 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14473
14474         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14475
14476         * gdk/win32/gdkcompat.c: New file, actually provide an
14477         implementation for the deprecated functions. (Just temporarily.)
14478
14479         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14480
14481         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14482
14483         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14484
14485 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14486
14487         * configure.in: Added "uk" to ALL_LINGUAS.
14488         
14489 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14490
14491         * configure.in: correct checking for BeOS check
14492
14493         * gdk/gdktypes.h
14494         * gtk/fnmatch.c
14495         * gtk/gtkfilesel.c
14496         * gtk/gtkitemfactory.c
14497         * gtk/gtkmain.[ch]
14498         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14499
14500 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14501
14502         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14503         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14504         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14505         by Bulgarian). 
14506
14507 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14508
14509         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14510         Fix a reference to window_private->destroyed.   
14511
14512         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14513         (ugly) setting of an internal GdkWindow member to use
14514         a _slightly_ cleaner macro.
14515
14516         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14517         GdkDrawablePrivate and GdkWindowPrivate.
14518         Add extra macros for accessing GDK_DRAWABLE_ components.
14519
14520         * *.[ch]: Massive adjustments for the above, use the
14521         new macros in a lot of places.
14522
14523 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14524
14525         * gdk/gdktypes.h: Make GdkDrawable the base type,
14526         not GdkWindow.
14527
14528 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14529
14530         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14531
14532 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14533
14534         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14535
14536 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14537
14538         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14539         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14540
14541         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14542
14543         * docs/gtk-config.1: Now autogenerated.
14544         * docs/Changes-1.4.txt: started
14545         
14546 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14547
14548         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14549         to #ifdef also here.
14550
14551         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14552         Owen did to the X11 backend.
14553
14554         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14555         ScrollWindowEx when blitting inside a window, it can't be correct
14556         in the general case.
14557
14558         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14559         WM_GETMINMAXINFO is easier.
14560
14561         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14562         depth equal to the bitspixel value, not the visual's depth.
14563
14564         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14565         to 24 even if the bitspixel value is 32.
14566
14567         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14568         need to check for depth==32 when bpp==32, depth will always be 24.
14569
14570 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14571
14572         * docs/Changes-1.4.txt: Started
14573         
14574         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14575
14576         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14577         
14578         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14579         into C file.
14580         
14581         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14582         header to gdkinputprivate.h.
14583
14584         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14585         unused since before 1.2.
14586
14587 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14588
14589         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14590         expand possible hex escapes in the font family (put there by
14591         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14592         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14593         On Win32, add hex escapes here, too.
14594
14595 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14596
14597         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14598         to #ifdef GDK_WINDOWING_X11.
14599
14600 [ Merges from gtk-1-2 ]
14601
14602 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14603
14604         * configure.in: fixed "GNU Make" check to pass with new make version
14605         3.77.95.
14606
14607 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14608
14609         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14610         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14611         AM_PATH_GTK() macros don't get confused by the -pre1.
14612
14613 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14614
14615         * configure.in (REBUILD): Change check for perl5
14616           to check explicitely for v >= 5.002. (5.001
14617           does not work with our scripts.)
14618
14619 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14620
14621         * configure.in: evaluate $PERL for the perl version check. added
14622         --disable-rebuilds to give the user an option to completely disable
14623         any source autogeneration rules.
14624
14625 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14626
14627         * configure.in: evaluate $ac_make when checking for GNU Make.
14628
14629 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14630
14631         * docs/Makefile.am: added generation.txt.
14632
14633         * Makefile.am: require automake 1.4, build README from README.in and
14634         INSTALL from INSTALL.in in dist-hook.
14635         
14636         * README.in:
14637         * INSTALL.in: new files to autogenerate README and INSTALL from.
14638
14639         * configure.in: figure whether we have GNU Make
14640
14641         * docs/generation.txt: minor additions/corrections.
14642
14643 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14644
14645         * docs/gtkfaq.sgml: FAQ Update
14646
14647 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14648         
14649         * configure.in: Fix autoconf warnings about cross compilation by
14650         trying to provide sane defaults for AC_TRY_RUN.
14651
14652 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14653
14654         * ltconfig
14655         * ltmain.sh: upgrade to libtool 1.3.3
14656
14657 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14658
14659         * INSTALL: Indicate that the --with-glib= configure
14660         time flag is unsupported.
14661
14662 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14663
14664         * docs/generation.txt: Added a file that gives
14665         documenation about the autogeneration process for
14666         various autogenerated files.
14667         
14668 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14669
14670         * configure.in (LIBS): Look for libgmodule in the
14671         right location.
14672
14673 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14674
14675         * docs/gtk_tut.sgml: Removed references to
14676         code examples in my directory on gtk.org as
14677         they should all be in the tutorial now.
14678
14679         * docs/gtk_tut.sgml: Added sources for dial-test
14680         and scribble-xinput programs that were previously
14681         missing.
14682
14683 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14684
14685         * TODO: Added entry about menu keyboard navigation, removed
14686         some finished items.
14687
14688 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14689
14690         * acinclude.m4: Standardize on func_dgettext
14691         not func_gettext, so that the checks for dgettext
14692         actually are paid attention to.
14693
14694 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14695
14696         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14697         directly, rather than repeating the checks for
14698         gettext.
14699
14700         * INSTALL: Added information about gettext and
14701         NLS support.
14702
14703         * acinclude.m4 (LIBM): Check for dgettext, not
14704         just gettext. This should hopefully fix things wrt
14705         systems with old versions of GNU gettext installed.
14706
14707 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14708
14709         * configure.in (LIBS): Look for libgmodule in the
14710         right location.
14711
14712 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14713
14714         * autogen.sh: add --enable-maintainer-mode
14715
14716         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14717
14718 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14719
14720         * docs/gtk-config.1.in:
14721           docs/Makefile.am:
14722           configure.in: gtk-config is now generated.
14723
14724         * docs/gtk-config.1: Removed, now generated.
14725
14726 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14727
14728         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14729         handle CreateNotify itself, still put out a debuging message for
14730         --gdk-debug=events. made the ReparentNotify debugging message more
14731         verbose.
14732         wrap xcoords translation for ConfigureEvents into an error trap,
14733         a destroy event may already be pending, and in that case, the
14734         actuall coordinate values are not at all critical.
14735
14736 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14737
14738         * gdk/gdkcc.c: Stop leaking the color_hash all over
14739         the place. Simplify and improve the logic.
14740
14741 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14742
14743         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14744         for prototypes and function implementations consistent (reported
14745         by Tomas Ogren).
14746
14747 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14748
14749         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14750         send_event set in debugging output.
14751         (gdk_compress_exposures): default initialize the event so we don't
14752         operate on bogus values (namely send_event).
14753
14754 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14755
14756         * gdk/gdkwindow.c: When we receive an unexpected
14757         destroy notify on one of our windows, don't just
14758         warn about it, also mark our windows as destroyed.
14759
14760 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14761
14762         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14763           name => font and name => fontset hashes. The 
14764           name => fontset hash is a _big_ win since we
14765           weren't previously caching fontsets at all and loading
14766           fontsets is expensive. The name => font hash
14767           is less of a win, but it does save us from doing
14768           repeated XQueryFont calls on the same font.
14769
14770         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14771           list so we can remove font/fontset from hash.
14772
14773 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14774
14775         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14776           and slightly confusing test. [ XInternAtom (,,TRUE)
14777           will never return None ].
14778
14779 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14780
14781         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14782           gdk/gdkwindow.c (gdk_window_set_hints):
14783
14784         Don't omit setting the properties if flags == 0 -
14785         there may be an existing set of properties there
14786         already. (Very old bug. Would it be better to
14787         delete the property instead?)
14788
14789         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14790           spelling error in comment.
14791
14792 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14793
14794         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14795           to avoid stomping over gdk_error_warnings.
14796
14797         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14798           as (bits_per_pixel + 7) / 8. This gives the same
14799           result as before for multiples of 8, but actually
14800           a "reasonable" value for 1bit or 4bit displays.
14801
14802 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14803
14804         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14805         GNU Make.
14806
14807 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14808
14809         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14810         discarding configure events.
14811
14812 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14813
14814         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14815         refcount is greater than zero.
14816
14817         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14818
14819         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14820
14821         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14822
14823         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14824
14825 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14826
14827         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14828         that format 32 => sizeof(item) == 4. It really is
14829         sizeof(long).
14830
14831 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14832
14833         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14834         core dump at all on X IO errors, only core dump
14835         if --enable-debug for X errors.
14836
14837 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14838
14839         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14840         unknown window:" message. disabled ConfigureNotify discarding code,
14841         because it led to events being processed out of order.
14842
14843 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14844
14845         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14846
14847         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14848         we export this function, supress error warnings and don't reset the
14849         error code in the first half of this function.
14850
14851         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14852         code (instead of just -1) so gdk_error_trap_pop() reveals something
14853         actually informative about the error that happened.
14854
14855         * gdk/*.c:
14856         don't rely on gdk_error_code being -1 if an error occoured, but just
14857         gdk_error_code != 0.
14858
14859 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14860
14861         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14862         pointer *before* invoking the filter function, so we at least don't
14863         crash if a filter is removed that is currently executed. window filters
14864         *really* need to be made truely reentrant at some point.
14865
14866 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14867
14868         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14869         PropertyNotify debug messages.
14870
14871 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14872         
14873         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14874         
14875         * gdk/gdkim.c: Fix cut-and-paste errors for 
14876         x/y and PreeditAttributes/StatusAttributes.
14877
14878 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14879
14880         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14881         G_MAXINT to 2^16 to alleviate overflow problems in
14882         various window managers.
14883
14884 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14885
14886         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14887         for fontsets.
14888
14889 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14890
14891         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14892         Initialize size_hints.x and size_hints.y because kwm
14893         brokenly pays attention to them.
14894         (Bug #1181 -  Lars Heete <hel@admin.de>)
14895
14896 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14897
14898         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14899         return value of gdk_list_visuals(). 
14900         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14901
14902 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14903
14904         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14905         XSetIMValues to (void *) when comparing to NULL, to workaround
14906         the problem of some compilers barfing since older X headers don't
14907         have the prototype for it.
14908
14909 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14910
14911         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14912         for pseudocolor where colormap->colors was double
14913         allocated.
14914
14915         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14916         color value in the hash table with the pixel filled
14917         in so when we do later hash table lookups, the color
14918         value is correct.
14919         
14920 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14921
14922         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14923         making the call
14924
14925 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14926
14927         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14928         pointed out by Morten Welinder <terra@diku.dk>.
14929
14930 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14931
14932         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14933           default filter from the list
14934
14935 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14936
14937         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14938           default filter from the list
14939
14940 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14941
14942         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14943
14944         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14945         g_strdup_printf instead of calcing the length separately
14946
14947 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14948
14949         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14950         that we don't do in many other places. (Fixing duplicate 
14951         #include of config.h)
14952
14953         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14954         Otherwise, #ifndef XINPUT_NONE check in the latter
14955         doesn't work. (Bug #546)
14956
14957 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14958
14959         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14960         "None" case insensitive.
14961
14962 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14963
14964         * gdk/gdkselection.c: 
14965         Add error traps so if the other end of the connection
14966         dies, we survive.
14967
14968 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14969
14970         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14971         dest_xid field into two fields - one for the window
14972         to send in messages, one to indicate the last looked
14973         up window for caching purposes. This is needed, so
14974         that Leave messages get the correct window.
14975
14976 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14977
14978         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14979         Fix warning created by people mucking around
14980         with the gsource API.
14981
14982         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14983         Change mapping between GIOCondition and GdkInputCondition
14984         to match the way the Linux kernel does it. This should
14985         fix problems where closed pipes were no longer signalling
14986         GDK_INPUT_READ on systems with a native poll().
14987
14988 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14989
14990         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14991         explicitly for the string "None" - it is in the XPM
14992         spec and some servers treat unknown colors in odd ways
14993         (like asking the user!)
14994
14995 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14996
14997         * gdk/gdkevents.c: made "->" into a "." of previous change so
14998         it compiles
14999
15000 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15001
15002         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15003         window field of the event structure before calling
15004         user filters.
15005
15006 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15007
15008         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15009         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15010
15011 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15012
15013         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15014         intermediate text property - prevents major memory
15015         leak when gdk_use_mb.
15016         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15017
15018 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15019
15020         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15021         gtk-a-higuti-990322-[0-3]
15022
15023         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15024         sizeof(wchar_t) != sizeof (GdkWChar)
15025
15026         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15027         that was causing -DX_LOCALE not to work.
15028
15029         * gtk/gtkrc.c (gtk_rc_init):
15030         X_LOCALE will never have LC_MESSAGES defined
15031
15032         * gdk/gdk.c (gdk_init_check):
15033         Remove --xim-preedit and --xim-status from argv properly.
15034
15035         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15036         that the client window is present on the X server
15037         before we pass it to the input method.
15038
15039 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15040
15041         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15042         if --display is specified on the command line, than
15043         the drag window will not be created on that display.
15044         
15045 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15046
15047         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15048         lookups with only_if_exists == TRUE were inserting
15049         bogus values into the atom cache.
15050
15051 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15052
15053         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15054         then reset it to NULL.
15055
15056         * gdk/gdkcolor.c:
15057         (gdk_colors_free): 
15058         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15059         key for g_hash_table_remove() in both functions, this prevents us
15060         from accessing possibly uninitialized portions of a GdkColor structure
15061         where we are only interested in its pixel value.
15062
15063 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15064
15065         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15066         font hash table, if we have a GdkFontPrivate entry for this font
15067         already, simply increment its reference count, provided by Olaf Dietsche
15068         <olaf.dietsche+list.gtk@netcologne.de>.
15069
15070 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15071
15072         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15073         just to be sure.
15074
15075         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15076         unused variables, leftovers from the X11 version.
15077
15078         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15079
15080         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15081         downcase fields on X11.
15082
15083 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15084         
15085         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15086         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15087
15088 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15089
15090         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15091
15092         * gtk/makefile.msc: Correct path to libintl.
15093
15094         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15095         use of gint vs. int, and gint vs. gboolean in headers and
15096         definitions. Use GtkType for the *_get_type functions. Note that
15097         these changes preserve binary compatibility.
15098
15099         * gdk/gdk.c
15100         * gdk/win32/gdk.c
15101         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15102
15103         * gtk/gtkmain.c
15104         * gtk/gtkclist.c
15105         * gtk/gtkmenufactory.c
15106         * gtk/gtknotebook.c
15107         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15108         vs. gboolean.
15109
15110         * gtk/gtkcolorsel.[ch]
15111         * gtk/gtkcombo.[ch]
15112         * gtk/gtkdrawingarea.[ch]
15113         * gtk/gtkgamma.[ch]
15114         * gtk/gtkhandlebox.[ch]
15115         * gtk/gtkhpaned.[ch]
15116         * gtk/gtkhruler.[ch]
15117         * gtk/gtkplug.[ch]
15118         * gtk/gtkpreview.[ch]
15119         * gtk/gtkruler.[ch]
15120         * gtk/gtksocket.[ch]
15121         * gtk/gtkstatusbar.[ch]
15122         * gtk/gtktoolbar.[ch]
15123         * gtk/gtkvbbox.[ch]
15124         * gtk/gtkvpaned.[ch]
15125         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15126         functions.
15127
15128         * gtk/gtkgamma.h: Fix bug, missing () in call of
15129         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15130
15131 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15132
15133         * gdk/gdkcolor.c (gdk_colormap_new)
15134         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15135         colormap->colors was allocated twice.
15136
15137         * gdk/win32/gdk.c: Remove some unused stuff.
15138
15139         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15140         colormap.
15141
15142         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15143         * gtk/gtklabel.h (gtk_label_get_type)
15144         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15145         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15146         in a couple of places, not guint.
15147
15148 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15149
15150         * configure.in,po/et.po: added Estonian language file
15151
15152 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15153
15154         * configure.in,po/da.po: added Danish file
15155
15156 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15157
15158         * docs/gtkfaq.sgml: Minor FAQ Update
15159
15160 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15161
15162         * docs/gtkfaq.sgml: FAQ update
15163
15164 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15165
15166         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15167         way to get window contents continually refreshed while resizing. I
15168         didn't like the effects myself, so it's not on by default.
15169
15170         * gdk/win32/gdkprivate.h: New flag variable
15171         gdk_event_func_from_window_proc, FALSE by default.
15172
15173         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15174         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15175         are passed --gdk-event-func-from-window-proc.
15176
15177         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15178         and we have am event_func, call it instead of enqueing the event.
15179
15180 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15181
15182         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15183         Kelley: Set expose_count in GdkEventExposes correctly.
15184
15185         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15186         MULTIPLE_WINDOW_CLASSES).
15187
15188         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15189         for bug in NT, apparently NT *does* draw the end pixel, too, in
15190         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15191
15192 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15193
15194         Improvements by Hans Breuer: 
15195
15196         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15197
15198         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15199         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15200         window contents while dragging" is turned on. Allocate at least
15201         one unique class for every GdkWindowType. If support for single
15202         window-specific icons is ever needed (eg. Dialog specific), every
15203         such window should get its own class.
15204
15205 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15206
15207         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15208         error that caused crashes.
15209
15210 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15211
15212         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15213         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15214         bugs when for instance part of the window was outside the
15215         display. Thanks to Philippe Colantoni for finding and fixing this.
15216
15217 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15218
15219         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15220         endpoint calculations which were totally wrong. (A little RTFMing
15221         helps a lot ;-)
15222
15223         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15224         from a separate directory, not from gettext, because of licensing
15225         issues (we want to use the LGPL version).
15226
15227         * README.win32: Mention the intl from glibc vs from gettext issue.
15228
15229 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15230
15231         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15232         in the key event handling: Now AltGr chars work again. Also,
15233         now Alt-digits are passed up as well as Control-digits.
15234         Pass keypad plus and minus as normal plus and minus.
15235
15236 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15237
15238         * docs/gtkfaq.sgml: FAQ Update
15239
15240 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15241
15242         * README.win32
15243         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15244         the Wintab SDK.
15245
15246         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15247         OK, but getting closer. Guard against bogus tilt data from Wacom
15248         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15249         enable easier building without Wintab.
15250
15251         * gdk/win32/gdkinput.h
15252         * gdk/win32/gdkevents.c 
15253         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15254         
15255         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15256         code. As we have just one visual on Win32, no sense to have it in a
15257         table, and no need for the hash table.
15258
15259         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15260         better on white background.
15261
15262 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15263
15264         * README.win32: Update gcc build instructions. Mention gettext is
15265         GPL.
15266
15267         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15268         supported cursor size with GetSystemMetrics.
15269
15270         * gdk/win32/gdkfont.c
15271         * gtk/gtkfontsel.c: Guard against some font weight and charset
15272         symbols being undefined (in mingw32 headers).
15273
15274         * gdk/win32/makefile.cygwin
15275         * gtk/makefile.cygwin
15276         * gtk/gtkthemes.c: No longer need to have differently named
15277         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15278
15279 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15280
15281         * docs/gtkfaq.sgml: Long awaited FAQ update.
15282
15283 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15284
15285         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15286         it. Obscure bit manipulation needed.
15287
15288         * gdk/win32/gdkevents.c: Logging.
15289         
15290         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15291         style (file name include compiler name) for theme engines.
15292
15293 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15294
15295         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15296
15297         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15298         events. The key.string wasn't zero-terminated, still we strdup'ed
15299         it in gdk_event_copy(). Synthesize crossing events for button
15300         events before possible propagation.
15301
15302         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15303
15304         * gdk/win32/makefile.cygwin
15305         * gtk/makefile.cygwin: Use new DLL naming style for the
15306         GCC-compiled ones.
15307
15308         * gdk/win32/makefile.msc
15309         * gtk/makefile.msc: Cosmetics mostly.
15310
15311         * gtk/gtk.def: Add missing entry points.
15312
15313         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15314
15315 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15316
15317         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15318         or height is zero. Don't print a warning if Pie or Arc fails, they
15319         always fail (?) for very narrow ellipses.
15320
15321         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15322         the part or the destination window corresponding to source area
15323         outside of the source drawable's boundary.
15324
15325         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15326         anything if less than two points.
15327
15328         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15329         return NULL. Gtk cut-and-paste inside a single program works
15330         better this way. (It always gets the clipboard contents from
15331         Windows, not from its own copy, which is cleared anyway. I can't
15332         say I fully understand what happens... Emulating the X selection
15333         and property stuff is a bit of a mess.)
15334
15335         * gdk/win32/gdkevents.c
15336         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15337
15338         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15339         that never got deleted). Revamp gdk_region_shrink.
15340
15341         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15342         after use.
15343
15344         * gtk/gtk.def: Add some missing entry points.
15345
15346         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15347         component.
15348
15349 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15350
15351         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15352         Control-digits specially.
15353
15354 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15355
15356         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15357
15358 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15359
15360         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15361         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15362         finding this.)
15363
15364 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15365
15366         * gtk+.spec.in: Corrected some typos in files section.
15367         
15368 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15369
15370         * README.win32: Mention using GNU gettext.
15371         * config.h.win32: Enable NLS stuff.
15372         * gtk/makefile.msc: Use GNU gettext.
15373         * gdk/win32/gdkdnd.c: Minor header reorg.
15374         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15375         cosmetics.
15376         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15377         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15378
15379 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15380
15381         * acinclude.m4
15382         * config.guess
15383         * config.status
15384         * ltconfig
15385         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15386
15387 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15388
15389         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15390         SafeAdjustWindowRectEx. Don't override all calls to
15391         AdjustWindowRectEx by it, but use it only in two places: When
15392         creating a new top-level window and when moving a top-level
15393         window.
15394
15395         Use screen coordinate rectangle, not client rectangle, in
15396         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15397         when we try to place a window so that the decoration (mainly,
15398         title bar) isn't visible.
15399
15400         These changes fix the bug that showed up for instance as the
15401         GIMP's saved top-level windows moving right and down (by an amount
15402         equal to the window decoration) for each session. This bug showed
15403         up also in testgtk's "Saved Position".
15404
15405         gdk_window_resize also redone a bit.
15406
15407 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15408
15409         * gtk/testgtkrc: Add (commented out) Windows-style theme
15410         include line.
15411
15412         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15413
15414 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15415
15416         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15417         gdkx.h to a gdk subdirectory, so that applications can include
15418         these with <gdk/*.h> without trouble.
15419
15420         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15421         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15422         have their bitmap destroyed.
15423
15424         * gdk/win32/gdk.def: Add gdk_root_parent.
15425
15426 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15427
15428         * configure.in
15429           gtk-config.in
15430           ltconfig
15431           ltmain.sh     
15432           gtk/Makefile.am: changes to compile nicely (with xlib) 
15433           on BeOS
15434
15435 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15436
15437         * acinclude.m4
15438         * config.guess
15439         * config.sub
15440         * ltconfig
15441         * ltmain.sh: upgrade to libtool 1.3
15442
15443 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15444
15445         * gtk/gtkclist.c:
15446         * gtk/gtkctree.c: merges from gtk-1-2
15447
15448 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15449
15450         Support added for building using a GNU toolchain on Win32,
15451         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15452
15453         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15454         * config.h.win32: Changes for gcc.
15455         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15456         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15457         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15458         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15459         Protect shl stuff unavaiilable with mingw32 headers.
15460         * gdk/win32/gdkevents.c: Fix typo.
15461         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15462         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15463         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15464         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15465         the mingw32 headers.
15466         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15467         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15468         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15469         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15470         Test for NATIVE_WIN32, not _MSC_VER.
15471         * gtk/gtkmain.c: No use warning about developer version on Win32,
15472         there aren't any non-developer versions anyhow.
15473         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15474         * gtk/makefile.msc: Use pthread from another directory. Minor other
15475         changes. 
15476
15477 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15478
15479         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15480           default filter from the list
15481
15482 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15483
15484         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15485          when gtk_widget_grab_default() is called for a widget that
15486          is not within a GtkWindow.
15487
15488 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15489
15490         * docs/gtk_tut.sgml, examples/clist.c: use a
15491           scrolled window in the clist example. Minor
15492           tutorial fixes.
15493
15494 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15495
15496         * docs/gtk_tut.sgml: Style check from David King
15497           <dking@youvegotmail.net>
15498
15499 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15500
15501         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15502         compile with unknown value of GDK_WINDOWING
15503
15504 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15505
15506         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15507         after the rule is fired.
15508         (install-exec-local): Install gdkconfig.h only if the contents are
15509         different from the currently installed gdkconfig.h.
15510
15511 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15512
15513         * gdk/Makefile.am (configexecincludedir): Rename from 
15514         configincludedir so that gdkconfig.h will be installed 
15515         as part of `make install-exec'. 
15516
15517 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15518
15519         * acinclude.m4
15520         * config.guess
15521         * config.sub
15522         * ltconfig
15523         * ltmain.sh: upgrade to libtool 1.2f
15524
15525         * autogen.sh: libtool is not required to autogen gtk+
15526
15527         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15528         needed)
15529
15530 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15531
15532         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15533         declaring gdk variables exported/imported from the DLL. New image
15534         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15535         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15536         GDK_DRAG_PROTO_OLE2.
15537
15538         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15539         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15540         declared only for the Win32 version, but could be in the X11
15541         version as well. (Needed for a Xlib-less gdk_imlib.)
15542         gdk_color_hash should have only one parameter. Declare
15543         gdk_threads_mutex with GDKVAR.
15544         
15545         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15546         just one parameter.
15547
15548         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15549         per pixel, not bits.
15550
15551         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15552         Fetch bpp (which means bits-per-pixel here) from another place on
15553         Win32. Accept also depth==32 (which we might get on Win32) with
15554         bpp==32.
15555
15556         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15557         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15558         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15559         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15560         in the backend-dependent directory, not in the common gdk
15561         directory.
15562
15563         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15564         headers.
15565
15566 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15567
15568         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15569         want to use the Gtk+ devel version (which is true, and yes - even i am
15570         currently working with the 1.2.x branch). so everyone reading this, you
15571         probably want to issue
15572         cvs checkout -r glib-1-2 glib
15573         and
15574         cvs checkout -r gtk-1-2 gtk+
15575         as your next two comands.
15576
15577 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15578
15579         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15580         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15581
15582         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15583         file. strongly deprecated the GTK_HAVE_* macros, we provide
15584         GTK_CHECK_VERSION() for people that need to check for certain
15585         Gtk+ versions.
15586
15587         * gtk/gtkcompat.h: removed this from CVS.
15588         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15589         idea right from the start, it just didn't seem like that back then.
15590
15591 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15592
15593         * merges from gtk-1-2:
15594
15595 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15596
15597         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15598         item factory class has been created.
15599         (gtk_item_factory_parse_rc): likewise.
15600
15601         * gtk/gtkmenu.c:
15602         keep proper references for old_active_menu_item.
15603         (gtk_menu_reparent): unset the usize of the new parent,
15604         so the menu can sanely be size requested and we don't get nasty screen
15605         artefacts upon next reparentation.
15606         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15607         enter notify. only synthesize enter notifies if the pointer really is
15608         inside the event window.
15609         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15610         (gtk_menu_popup): move the background setting stuff into
15611         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15612
15613         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15614         gtk_menu_shell_select_item() to select the new item.
15615         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15616         do the right thing for deselection as well.
15617
15618 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15619
15620         * gtk/gtkwidget.[hc]:
15621         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15622         are locked.
15623
15624         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15625         existing accelerators if the widget's accelerators are locked.
15626
15627 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15628
15629         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15630
15631         * gtk/gtkmenu.c: truely forward key press and key release events to
15632         the menu widget from the toplevel or tearoff window. we can't simply
15633         connect to that, we need to stop further processing of the events as
15634         well.
15635
15636 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15637
15638         * gtk/gtkmenu.c:
15639         (gtk_menu_key_press): pass event->keyval, event->state to
15640         gtk_accelerator_valid, instead of event->keyval twice.
15641         refuse to install single letter accelerators for menus that use
15642         single letter shortcuts.
15643
15644         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15645         gtk_menu_ensure_uline_accel_group().
15646
15647         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15648         which will always return an uline accel group, made
15649         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15650         yet created.
15651
15652 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15653
15654         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15655
15656         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15657         Leave button sensitive, trap  button_press, button_release,
15658         motion_notify, enter_notify and leave_notify events instead.
15659         (gtk_clist_column_title_active): disconnect event handler.
15660         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15661         Guillaume Laurent <glaurent@worldnet.fr>
15662
15663 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15664
15665         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15666         width/height mixups.
15667
15668         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15669         if needed.
15670
15671 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15672
15673         * gtk/testgtk.c (create_item_factory): unref the item factory after
15674         window's destruction.
15675
15676         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15677         count on the menu shell around the menu item's activation, since the
15678         signal emission may cause menu shell destruction.
15679
15680         * gtk/gtkitemfactory.c:
15681         the previous code leaked one accel group per menu. we use
15682         gtk_menu_get_uline_accel_group() now to fix that, and with that
15683         also create the underline accelerator group of the menus only if
15684         required (i.e. an underline accelerator has been specified).
15685         (gtk_item_factory_construct):
15686         (gtk_item_factory_create_item): removed code that would create an
15687         extra accel group for the menu (and leak references).
15688         (gtk_item_factory_create_item): adapted the underline accelerator
15689         installation code to properly feature gtk_menu_get_uline_accel_group().
15690
15691         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15692         menu->accel_group, this may return NULL if the accelerator group
15693         hasn't been set yet.
15694         added gtk_menu_get_uline_accel_group() to retrive the underline
15695         accelerator group of the menu, this will be created on demand
15696         and proper care is taken about its reference count.
15697
15698         * gtk/gtkitemfactory.h:
15699         * gtk/gtkitemfactory.c:
15700         dumped the approach of keeping a widgets by action list on the
15701         factory since the factory<->widget destroy negotiation didn't work
15702         and would be hard to get going at all. instead we keep a list of
15703         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15704         persistant throughout a program's life time).
15705         also, i removed the static const gchar *key_* variables, and made
15706         them inline strings (they weren't actually used anyways).
15707         (gtk_item_factory_add_item): update ifactory->items.
15708         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15709         the item factory pointer from the remaining ifactory widgets).
15710         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15711         list to find the widget.
15712         (gtk_item_factory_get_item): new function that works around
15713         gtk_item_factory_get_widget() limitations, this function will only
15714         return menu items, even for <Branch> entries.
15715
15716 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15717
15718         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15719         font hash table, if we have a GdkFontPrivate entry for this font
15720         already, simply increment its reference count, provided by Olaf Dietsche
15721         <olaf.dietsche+list.gtk@netcologne.de>.
15722
15723         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15724         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15725
15726 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15727
15728         * gtk/gtkcontainer.c:
15729         (gtk_container_add_with_args):
15730         (gtk_container_addv):
15731         (gtk_container_add): before adding a child to a conatiner, make sure
15732         it is (default) constructed, this is neccessary because under certain
15733         circumstances the child will get relized and mapped immediatedly, in
15734         which case it has to be constructed already.
15735
15736 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15737
15738         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15739         values > 1 as TRUE also.
15740
15741 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15742
15743         * README.win32: New file.
15744                 
15745         * configure.in: Check for lstat.
15746
15747         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15748         completeness.
15749
15750         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15751
15752         * gtk/gtk.def: Removed CRs.
15753
15754         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15755         ..\gdk\win32).
15756
15757         * gdk/win32/makefile.msc: Correct upwards relative paths.
15758         
15759 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15760
15761         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15762           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15763           it was connecting a void function to expose_event and the int
15764           returning function to the draw signal
15765
15766 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15767
15768         * configure.in:
15769         Use correct path to libgmodule.la when ref'ing uninstalled copy
15770         of glib.  (Already in stable branch, Bug #417)
15771
15772 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15773
15774         Win32 merge and general portability stuff:
15775                 
15776         * acconfig.h,configure.in: Check for <sys/time.h>.
15777
15778         * gdk/win32: New directory (actually, been there for a while).
15779         
15780         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15781         NATIVE_WIN32, and use these. Always case fold on Win32. No
15782         backslashed escapes on native Win32.
15783
15784         * gtk/{gtk.def,makefile.msc}: New files.
15785
15786         * gtk/Makefile.am: Add above new files.
15787         
15788         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15789         instead of <strings.h>.
15790
15791         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15792         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15793         <unistd.h> appropriately.
15794
15795         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15796         Use ABS() (from <glib.h>) instead of abs().
15797         
15798         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15799         of gtk (and thus glib) headers, so that WIN32 will be
15800         defined. With MS C, include <direct.h> for mkdir prototype.
15801
15802         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15803         some casts, needed by MS C.
15804
15805         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15806         implemented).
15807
15808         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15809         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15810         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15811
15812         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15813                 
15814         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15815         the event is not a hint, or its window is not the slider. Needed
15816         on Win32, at least.
15817
15818         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15819         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15820         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15821         a subdirectory of the Windows directory as gtk system
15822         configuration directory.
15823
15824         * gtk/gtkselection.c: No chunks on Win32.
15825
15826         * gtk/gtksocket.c: Not implemented on Win32.
15827
15828         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15829
15830         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15831
15832         * gtk/maketypes.awk: Declare variables with a macro that expands to
15833         necessary export/import magic in the case of Win32.
15834                 
15835         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15836
15837 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15838
15839         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15840         since those were meant only for gdki18n.h.  
15841         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15842         for widechar tests.
15843         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15844
15845 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15846
15847         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15848         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15849
15850         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15851         installed) to CFLAGS.
15852
15853         * gdk/Makefile.am: Add rules for gdkconfig.h.
15854
15855         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15856         APIs.
15857
15858         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15859         gdkx.h anyway when compiling for X11.
15860         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15861         general): Merge in Win32 version.
15862         
15863         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15864         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15865         expansion (if we don't have HAVE_PWD_H), allow for drive
15866         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15867         included code from Craig Setera's port to Win32 (the one that uses
15868         X11, and the cygwin dll), even if it probably will be abandoned.
15869
15870         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15871         the user entered one herself.  This way one can complete *.h and
15872         don't get matches on any .help files, for instance.
15873         
15874 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15875
15876         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15877         font hash table, if we have a GdkFontPrivate entry for this font
15878         already, simply increment its reference count, provided by Olaf Dietsche
15879         <olaf.dietsche+list.gtk@netcologne.de>.
15880
15881         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15882         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15883
15884 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15885
15886         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15887         the number of calls to gdk_draw_point() (and thus to X) by
15888         clipping the points by hand.
15889
15890         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15891         the clip parameter.
15892         (gtk_handle_box_paint): Only paint the handle if the expose area
15893         intersects it.
15894
15895 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15896
15897         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15898
15899 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15900
15901         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15902         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15903
15904 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15905
15906         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15907          textmode (O_TEXT) for OS/2 version.
15908
15909 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15910
15911         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15912         GtkSpinButton, "input" and "output", to make the output more flexible.
15913         The user has to provide a mapping between adjustment->value and the
15914         output string (and vice versa, if the spin button is editable). 
15915         See testgtk for examples.
15916
15917 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15918
15919         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15920         new one.
15921         
15922         * configure.in: set gtk+ version to 1.3.0.