]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
fix bug in dropping columns. Moving columns now basically works modula
[~andy/gtk] / ChangeLog.pre-2-10
1 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
2
3         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4         fix bug in dropping columns.  Moving columns now basically works
5         modula some fine tuning.
6
7 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
8
9         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
10         autoscroll support.  It mostly works, but could use some fine
11         tuning.
12         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
13         Actually move the column.
14
15 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
16
17         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
18           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
19           New default theme! A slighly improved version of the 2.0 Raleigh
20           theme, with Windows-esque focus/drawing default. 
21           (GtkWidget::interior_focus defaults to TRUE.)
22
23         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
24
25 2001-04-30  Havoc Pennington  <hp@pobox.com>
26
27         * tests/testtext.c (line_numbers_expose): fix to work with
28         gtk_paint_layout change
29
30 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
31
32         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
33           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
34           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
35           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
36
37         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
38           with GtkWidget::interior_focus = TRUE better.
39
40         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
41         ::default_outside_border for more flexibility.
42
43         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
44         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
45         change that had to be made with g_object_get.
46
47 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
48
49         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
50         (gtk_tree_view_move_column_after): Clean up interface. 
51
52 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
53
54         * gtk/gtkpacker.h:
55         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
56          to gtkenum.h.
57
58         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
59         handled in switch).
60
61         * gtk/Makefile.am:
62         (gtk.defs): generate enum portions with  glib-mkenums.
63         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
64         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
65         
66         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
67         addition.
68
69         * docs/Changes-2.0.txt: keep a note on signal handlers now
70         not getting emitted during the emission they were connected within.
71
72 2001-04-28  Havoc Pennington  <hp@pobox.com>
73
74         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
75
76 2001-04-24  Havoc Pennington  <hp@redhat.com>
77
78         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
79         (gtk_text_layout_move_iter_to_next_line): fix these two for
80         invisible text, lots of other stuff still hosed.
81
82         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
83         new function, replaces the get/set palette stuff. This function 
84         is intended for use by libgnomeui which should set the hook to a
85         thing which sets the palette in GConf, and we need the
86         GConf-to-xsettings proxy which will result in the change being
87         propagated back to the GTK app.
88
89         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
90         about unusable signals that it may be because the signal has 
91         parameters.
92
93         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
94         style, otherwise gtkrc.c won't know to create a new GtkStyle for
95         it.
96         (gtk_widget_modify_color_component): call
97         gtk_widget_modify_style() so the rc style will get copied.
98         (gtk_widget_modify_font): ditto
99
100         * gtk/gtkrc.c: make a couple variables static
101
102         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
103         help button by default, since it does nothing
104
105         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
106         around with UI
107
108         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
109         so we can have tooltips
110
111         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
112         can have tooltips
113
114         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
115         GDK_ENABLE_BROKEN, because its memory behavior is completely
116         hosed.
117
118         * gtk/gtknotebook.c: remove key press handler, replace with
119         binding set, add numeric keypad support
120
121         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
122
123         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
124
125         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
126         addition to plain Delete
127
128         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
129         GDK_KP_Enter in addition to GDK_Return
130
131         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
132         activate on entry instead of key press
133         (gtk_font_selection_on_clist_key_press): get
134         rid of this signal handler, not needed with new font sel.
135
136         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
137         no-longer-needed emit_stop_by_name(), just return TRUE
138
139         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
140         cruft, this widget is no longer focusable.
141
142         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
143         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
144         move_slider action signal, add binding set for vscale/hscale, in
145         the process support numeric keypad
146
147         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
148         make GDK_Return and GDK_KP_Enter activate the entry via 
149         binding set, instead of hardcoded.
150
151 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
152
153         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
154         code.  Some documentation added.
155
156 2001-04-27  Havoc Pennington  <hp@redhat.com>
157
158         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
159
160         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
161
162         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
163         line/para separators
164         (gtk_entry_create_layout): set single paragraph mode on the layout
165
166         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
167         spacing between the image and label; instead, inside a button box 
168         the button will get extra space that will go there, but if people 
169         configure button box for 0 chubbiness, then there's no spacing.
170
171         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
172         and min/max size style properties, so people can tune their
173         chubbiness.
174
175         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
176         functions
177
178         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
179         space_style, and button_relief into style properties, remove
180         functions for setting them
181         
182         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
183         it back down
184
185         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
186         types from gtk_widget_style_get
187
188         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
189         with a style property.
190
191         * gdk/x11/gdkevents-x11.c: namespace the settings
192
193         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
194
195         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
196         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
197         be used. Also, translate doc strings for settings. Also, namespace
198         the double-click-time property. Also, remove bell properties crap.
199
200 2001-04-27  Sven Neumann  <sven@gimp.org>
201
202         * Makefile.am: before creating links, check if pkg-config files
203         exist for the default target. Otherwise link to the pkg-config files
204         that got installed with this build.
205
206 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
207
208         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
209         dragging code.  Revealed some (potential) GdkWindow bugs.
210
211         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
212         _gdk_window_init_position to the end of reparent to fix the case
213         of reparenting when new_x != old_x and new_y != old_y.
214
215 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
216
217         * gtk/gtkentry.c (strstr_len): Fix optimization that
218         was correct for the use here, but completely incorrect
219         in general.
220
221 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
222
223         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
224         until patch adding gtk_window_set_size() is recommitted. 
225
226         * **Makefile.am configure.in gdk/x11/gdkim-11.c
227           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
228           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
229           (#10784)
230
231 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
232
233         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
234         window == NULL in a number of cases.
235
236         * tests/testdnd.c: Set module path for gdk-pixbuf.
237
238 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
239
240         * gtk/Makefile.am xembed.h: File containing #defines
241         for XEMBED protocol.
242
243         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
244
245         - Change protocol from old plug/socket specific protocol
246           to XEMBED draft
247         - Various fixes to work with GTK+-2.0
248
249         Still quite a bit of work to do here to handle initiation
250         from the socket side (as specified by XEMBED), to handle
251         the more advanced features of XEMBED, and to figure out
252         a good way to handle same-app embedding with less overhead
253         than using full XEMBED.
254
255 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
256
257         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
258         track of whether the toplevel has the focus; only send
259         focus-in events to the focus widget when the window
260         actually has the focus.
261
262 2001-04-25  Havoc Pennington  <hp@pobox.com>
263
264         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
265         were still in the header
266
267 2001-04-24  Alexander Larsson  <alexl@redhat.com>
268
269         * gtk/gtkclist.[ch]:
270         * gtk/gtkctree.c:
271         When there is a row highlighted for D'n'D it must alse
272         be painted hightlighted on exposes. Otherwise exposes from
273         the icon being dragged will mess up the hightlight.
274
275         * gtk/gtkfontsel.c:
276         Don't recenter selected font when exposing the font family
277         clist. This means you can now actually scroll the font family
278         list.
279
280         * gtk/gtknotebook.c:
281         Fix focus movement on scrolling tabs that are placed on the left
282         and right.
283
284 2001-04-21  Havoc Pennington  <hp@pobox.com>
285
286         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
287         empty/invisible lines.
288
289         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
290         (gtk_text_iter_set_visible_line_index): new functions to set
291         indexes excluding invisible text
292
293         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
294         index
295
296         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
297         (gtk_text_iter_get_visible_line_offset): new functions to 
298         get indexes excluding invisible text
299
300         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
301         bunch of extra padding that served no purpose
302
303         * gtk/gtkdialog.c: Make all the spacings configurable via style
304         properties, for chubbiness configuration in themes
305
306         * tests/testtext.c: fix path to the immodules.
307         
308 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
309
310         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
311         got munched by #endif.
312
313         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
314
315         * gtk/gtktreeview.c: Refactored code to clean up a number of
316         events.
317
318         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
319         values to make consistent with other functions.  Spotted by Jeff
320         Franks <jcf@tpg.com.au>.
321
322         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
323         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
324
325 2001-04-23  Sven Neumann  <sven@gimp.org>
326
327         * gtk/Makefile.am
328         * gtk/gtkplug.c
329         * gtk/gtksocket.c: on request of Owen, reverted my last change 
330         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
331
332 2001-04-23  Sven Neumann  <sven@gimp.org>
333
334         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
335         compile for non-X11 targets again
336
337 2001-04-20  Alexander Larsson  <alexl@redhat.com>
338
339         * gtk/gtkcolorsel.[ch]:
340         API Change. Take GdkColor arguments instead of gdouble *.
341         Leave the old gtk_color_selection_set_color for compatibility,
342         but marked deprecated.
343         Do correct rounding when converting RGB <-> HSV.
344         
345         * gtk/gtkcolorseldialog.c:
346         * tests/testgtk.c:
347         Use new GtkColorSelection API.
348
349         * gtk/gtkhsv.c:
350         Fix problem selecting colors in triangle when Hue is 330.
351         Fix some black dots around the HSB triangle.
352         
353         * gtk/gtkfilesel.c:
354         return FALSE from the focus_in_event handler to fix focus problems.
355
356 2001-04-18  Havoc Pennington  <hp@redhat.com>
357
358         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
359         set, so keybindings are configurable    
360         (gtk_window_activate_default): Change to activate the focus widget
361         instead if there's a focus widget, to be consistent with the
362         behavior that previously existed in key_press_event
363
364 2001-04-18  Havoc Pennington  <hp@redhat.com>
365
366         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
367
368 2001-04-18  Havoc Pennington  <hp@redhat.com>
369
370         Close bug #50615:
371         
372         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
373         the layout
374
375         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
376
377         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
378
379         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
380         
381         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
382         to blue for base, in addition to bg
383         
384 2001-04-18  Havoc Pennington  <hp@redhat.com>
385
386         * tests/testgtk.c (create_image): allow shrinking the image window
387         to test that we clip to allocation.
388
389         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
390         #9845
391
392         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
393
394 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
395
396         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
397         mode on shm segments to 0600. We'll see who complains.
398
399         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
400         _gdk_windowing_window_destroy() AFTER recursing through
401         children.
402
403         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
404         testsocket_child on X.
405
406         * tests/testsocket[_child].c: Fix uses of
407         gtk_window_get_default_accel_group().
408
409         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
410
411         * gdk/gdkimage.c: (gdk_image_get):
412         Deal with the possibility that XGetImage() might return NULL.
413         Allocate the GdkImagePrivate structure only after XGetImage()
414         succeeds in order not to dereference a NULL ximage pointer.  This
415         prevents a core dump when XGetImage() fails - which is unlikely,
416         but can happen due to race conditions accessing the geometries of
417         drawables.  An x error will still be triggered, but the gdk image
418         wrapper at least wont seg fault.
419         
420 2001-04-18  Havoc Pennington  <hp@redhat.com>
421
422         * gtk/gtkimage.c: fix to properly queue resizes when the image is
423         set
424
425         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
426         if the insertion point isn't editable
427
428         * demos/gtk-demo/images.c: Added a GtkImage demo
429
430         * demos/gtk-demo/drawingarea.c: drawing area demo
431         
432         * demos/gtk-demo/menus.c (create_menu): cleanups
433
434 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
435
436         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
437           gdk/x11/gdkevents-x11.c: Introduce an extra child
438         of toplevel windows that serves to hold the focus to
439         avoid events being delivered to embedded windows.
440
441         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
442         some extra variables to clean up code and reduce the
443         number of casts.
444
445         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
446         guint for 1 bit bit fields, not gboolean.
447
448 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
449
450         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
451         not TRUE. (Fixes #52925)
452
453 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
454
455         * Released 1.3.4
456
457         * NEWS: Updated
458
459         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
460         use GTK_TYPE_ENUM.
461
462 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
463
464         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
465
466         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
467         names to compatibility #defines so docs work.
468
469         * gtk/gtkenums.h: Remove GtkMenuFactoryType
470
471         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
472
473         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
474
475         * tests/testgtkrc: No magenta cursors, please.
476
477         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
478
479         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
480         
481 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
482
483         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
484         grabs, since they are no longer necessary.
485
486         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
487         by signal_connect() and call gtk_button_pressed() rather
488         than signal_connect_after().
489
490         * tests/testgtk.c: Restore radio menu items to combos 
491         since they'll look OK with Raleigh, and it is easier
492         than finishing the process of removing them that was
493         started earlier.
494
495 2001-04-16  Hans Breuer  <hans@breuer.org>
496
497         * gdk/gdk.def :
498         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
499
500         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
501         we are interested in the functions return value not the function address
502         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
503
504         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
505
506 2001-04-14  Hans Breuer  <hans@breuer.org>
507
508         * gdk/gdk.def :
509         * gdk/makefile.msc : updated
510
511         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
512         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
513         (the testgtk::text backgound pixmap is drawn again)
514         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
515         Win32 Pango change
516         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
517
518         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
519         Not sure if the returned settings have the right unit, because I couldn't
520         find any docs for the X version ...
521
522         * gtk/gtk.def :
523         * gtk/makefile.msc.in : updated
524
525 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
526
527         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
528         wording problems. (Compared to version from Johannes Stezenbach to
529         check correctness.)
530
531 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
532
533         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
534         this to compile.
535
536 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
537
538         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
539         not pixbufpos.
540
541         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
542
543         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
544         are unsigned insts, therefore use g_value_set_uint.
545         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
546
547 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
548
549         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
550
551         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
552         GTK_TYPE_STRING.
553
554         * gtk/gtktreeview.c: New functions to allow initial column
555         dragging work.
556
557         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
558
559         * tests/testtreefocus.c: give dave some love.
560
561         * tests/testtreesort.c: Modify test to check really long samples.
562
563 2001-04-11  Alexander Larsson  <alexl@redhat.com>
564
565         * gtk-2.0.m4: Pass pkg-config options
566         before the other args so it works even if
567         POSIXLY_CORRECT is set.
568
569 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
570
571         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
572         0, interface 0).
573
574 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
575
576         * gtk/gtkcalendar.c (gtk_calendar_button_press):
577         check for action_func != NULL
578
579 2001-04-04  Sven Neumann  <sven@gimp.org>
580
581         * tests/testgtk.c (test_init): corrected path to gtk.immodules
582
583 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
584
585         * Released Gtk+-1.3.3.
586
587 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
588
589         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
590
591 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
592
593         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
594         files to/from source dir. (if we don't stay in builddir, we
595         can't reach make-inline-pixbuf.
596
597         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
598         deps.
599
600         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
601         ages 0).
602
603 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
604
605         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
606         moved to the GtkTreeSortable interface.
607
608         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
609         Make more efficient (fixes #50262).
610
611 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
612
613         * NEWS: Updated.
614
615         * configure.in: Remove support for uninstalled glib.
616
617         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
618         so as not to stop emission.
619
620         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
621         is no longer supported.
622
623         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
624         into tests, change build order to build modules before
625         gtk/.
626
627         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
628         to here.
629
630 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
631
632         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
633         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
634         GPatternSpec. this is actually unlikely to cause breakage in
635         third-party apps since except for gle, pretty much ever caller
636         passes NULL here.
637
638         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
639
640         * *.c: use g_pattern_*() API.
641
642         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
643
644         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
645         directions aren't passed in.
646
647         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
648         functionality to be usable from gtkstyle.c as well, give precedence
649         for conversion to user-supplied parsers.
650         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
651
652         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
653         _gtk_settings_parse_convert() for rcporperty value conversion.
654
655 2001-04-03  Alexander Larsson  <alexl@redhat.com>
656
657         * gdk/linux-fb/gdkevents-fb.c:
658         Add empty gdk_setting_get().
659
660 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
661
662         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
663         variable names.
664         
665         * gtk/makeenums.pl: touch this so enum files get remade.
666
667 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
668
669         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
670         work again when not sorted.
671
672         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
673         and "expand_row" signal, closing bug 52578.
674
675         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
676         support.
677
678         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
679         support.
680
681 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
682
683         * gdk/gdkevents.h: Add GdkEventSetting event for notification
684         of changes to system settings, gdk_setting_get() to retrieve
685         a single system setting.
686
687         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
688         to the draft XSETTINGS mechanism.
689
690         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
691         XSETTINGS.
692
693         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
694         of GDK settings changes to the GtkSettings object.
695
696         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
697         double-click-timeout property to GDK.
698
699         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
700         Define GDK boxed types here.
701
702         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
703         gdk/gdkenumtypes.[ch] for enum definitions.
704
705         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
706         * gtk/gtk-boxed.defs: Comment out GDK types
707         * gtk/gtktypeutils.h: Remove GDK types
708         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
709
710 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
711
712         * Applied patch from Ron Steinke to add signal accumulators
713         so that signals with the convention 'TRUE return means
714         handled' stop emission on a TRUE return.
715
716         * gtk/gtkmain.[ch]: Add private accumulator 
717         _gtk_boolean_handled_accumulator, used throughout GTK+.
718         
719         * gtk/gtkspinbutton.c: Add accumulator for ::output.
720
721         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
722         
723         * gtk/gtkwidget.c: Add accumulators for event signals,
724         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
725         for ::mnemonic-activate.
726
727         * gtk/gtkwindow.c: Add accumulator for ::frame_event
728
729 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
730
731         * gtk/gtkwidget.c: Add missing include.
732
733 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
734
735         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
736         marshaller.
737
738         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
739         "changed" signal to "range_changed".
740
741         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
742         removing a tree from one model would remove all trees from that
743         model.
744         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
745         changed signal instead.
746
747 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
748
749         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
750         chaining up to parent impl, since we have a INPUT_ONLY
751         window.
752
753         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
754         foreground color for the cursor.
755
756 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
757
758         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
759         param spec when caching property values, since we unref it
760         later when we free the style.
761
762         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
763         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
764
765 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
766
767         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
768         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
769         stupidity.
770
771 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
772
773         [ First pass at adding style properties. Still needs some definite
774         fine-tuning. ]
775
776         * gtk/gtkbutton.c: Add ::default_spacing style property.
777          
778         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
779         ::indicator_spacing style properties.
780
781         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
782         style properties.
783
784         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
785         rather than a normal property.
786
787         * gtk/gtkwidget.c: Add an ::interior_focus style property to
788         draw focus inside buttons, in the Windows/Java Metal/etc. style.
789
790         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
791         Honor ::interior_focus.
792         
793         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
794         TRUE.
795
796         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
797         Add ::slider_width, ::trough_border, ::stepper_size,
798         ::stepper_spacing style properties.
799
800         * gtk/gtkscale.[ch] Add ::slider-length style property.
801
802 2001-04-02 Alexander Larsson   <alexl@redhat.com>
803
804         * gdk/linux-fb/gdkwindow-fb.c:
805         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
806         warnings that were spewed on startup.
807
808         * gtk/gtkwindow-decorate.c:
809         gtk_window_reposition -> _gtk_window_reposition
810
811 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
812
813         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
814         Add boxed type for GtkRequistion. Use it for ::size-request.
815
816         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
817         Add a new GtkBorder structure useful for geometry properties
818         for widgets. Add corresponding GTK_TYPE_BORDER.
819         
820         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
821         Support automatic parser selection like
822         gtk_settings_install_property_parser().
823
824         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
825         functionality for use by gtk_widget_class_install_style_property.
826         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
827
828 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
829
830         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
831         g_param_spec_unichar(). 
832
833 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
834
835         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
836         _NET window managers.
837
838         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
839
840 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
841
842         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
843         bad needs to be nuked, not just deprecated.
844
845         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
846         gtk_widget_popup().
847
848         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
849         
850         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
851         widget.
852         
853         * docs/Changes-2.0.txt: updates.
854         
855 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
856
857         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
858         for (i = 0; i < 100; i ++)
859           g_print ("I will confirm it compile before committing\n");
860
861 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
862
863         * gtk/gtktreestore.c: Initial work on implementing the
864         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
865
866 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
867
868         * gtk/gtkwidget.c: fixed a bunch of notifications, added
869         reference counts around emissions where the widget is used afterwards.
870         added freeze/thaws around multiple properties being notified.
871         (_gtk_widget_get_aux_info): cleanups.
872         
873         * gtk/gtksettings.c (gtk_settings_install_property): provide
874         default parsing functions for gdkcolor, enums and flags.
875
876         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
877         applied by owen.
878         backed out gtk_window_get_location(), gtk_window_set_location(),
879         gtk_window_get_size() and gtk_window_set_size(), these
880         have to be sorted out wrg x/y/width/height/default_with/default_height
881         properties.
882         kept a flag in GtkWindowGeometryInfo to handle user
883         resetting default sizes.
884         cleaned up ZVT comments.
885         bunch of assorted bug fixes, notification fixes.
886         (_gtk_window_reposition): make this a really internal function.
887         
888         * gtk/testgtk.c: fixups.
889         
890 2001-03-31  Hans Breuer  <hans@breuer.org>
891
892         * config.h.win32.in : disable USE_MMX for msvc build cause
893         the assembler doesn't fit and is out of my scope. Disable
894         USE_GMODULE for msvc build as wel. The right way to share
895         binaries on win32 would be to use libtiff.dll etc. To reduce
896         installation hassles IMO it's better to include all fileformats
897         builtin to gdk-pixbuf
898
899         * gdk-pixbuf/makefile.msc : new file
900
901         * gdk/gdk.def : updated
902
903         * gdk/win32/gdkevents-win32.c : don't erase the background if
904         .no_bg is set. It improves the scrolling (e.g. of testgtk main
905         buttons
906         * gdk/win32/gdkgeometry-win32.c : added comment about the above
907
908         * gdk/win32/gdkwindow-win32.c : added three new functions like
909         the X version. Only one is implemented, because the other two
910         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
911         be default behaviour on win32 anyway ...
912
913         * gtk/gtk.def : updated
914
915         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
916         from where it was built and add an additional rule to automagically
917         build gtkmarshal.[hc]
918
919         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
920         before array access for the current entry isn't finished
921
922         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
923         use g_return_val_if_fail
924
925         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
926         for the static array, but let the compiler calculate it. It
927         makes me wonder if gcc isn't capable to catch bugs like this ...
928
929 2001-03-31  James Henstridge  <james@daa.com.au>
930
931         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
932         constant "-1" in the aux info structure.
933
934 2001-03-30  Alexander Larsson  <alexl@redhat.com>
935
936         * gtk/gtkbutton.c (gtk_button_get_property):
937         * gtk/gtklabel.c:
938         Remove leaks.
939         
940         * gtk/gtkcontainer.c:
941         * gtk/gtkhscale.c:
942         * gtk/gtkhscrollbar.c:
943         * gtk/gtklayout.c:
944         * gtk/gtkmisc.c:
945         * gtk/gtkprogress.c:
946         * gtk/gtkprogressbar.c:
947         * gtk/gtkrange.c:
948         * gtk/gtktable.c:
949         * gtk/gtkviewport.c:
950         * gtk/gtkvscale.c:
951         * gtk/gtkvscrollbar.c:
952         * gtk/gtkwidget.c:
953         Property patches, based on patches from John Margaglione and Lee Mallabone.
954
955 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
956
957         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
958         adjustment. Cleaned redundant preconditions (spin != NULL). Added
959         inline API function docs.
960         (gtk_spin_button_new_with_range): New convenience constructor.
961         (gtk_spin_button_set_increments): New adjustment helper.
962         (gtk_spin_button_set_range): New adjustment helper.
963
964         * gtk/testgtk.c : added test of the new convenince constructor and
965         value_changed signals.
966
967 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
968
969         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
970         listen to the reorder signal.
971
972 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
973
974         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
975         to get the aux info structure fo the widget.
976
977         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
978         above function.
979
980         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
981
982         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
983         to get the size of the window manager frame, basically the same
984         code that gdk_window_get_root_origin() had
985         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
986
987         * gtk/gtkwindow.c (gtk_window_set_default_size): use
988         gdk_window_resize() if the window is realized and resizeable
989
990         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
991         typo so that setting gravity works
992
993         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
994         allocation if auto_shrink is on, even if the default size
995         has not changed.
996
997         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
998         g_return_if_fail
999
1000 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1001
1002         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1003         reordering/sorting work.  Now pretty much works.
1004
1005         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1006         reorder mostly work.  Still need to get the parity correct.
1007
1008         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1009         signal, so I can listen for the sort_column_changed signal so I
1010         can change my "sort_indicator" property.  Cool.
1011
1012 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1013
1014         [ Patch from Havoc Pennington, hp@redhat.com ]
1015
1016         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1017         Add functions gdk_window_begin_resize_drag/begin_move_drag
1018         to start resizing or moving a toplevel window. This
1019         is done either using the _NET_WM_MOVERESIZE protocol,
1020         or, if that isn't present, by emulation.
1021
1022         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1023         to export the above to GTK+-land.
1024
1025         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1026         
1027         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1028         Move this function into gdkwindow, since we need it
1029         when implementing fallback resizing.
1030
1031         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1032         Fix typo when setting gravity.
1033
1034         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1035         Add an optional (but on by default) resize grip for resizing 
1036         the parent window.
1037
1038 01-03-29  Alexander Larsson  <alexl@redhat.com>
1039
1040         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1041         Don't return TRUE from the event handler, that blocks all
1042         event signals on the tooltip widget. Now you can press buttons
1043         in toolbars again.
1044
1045 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1046
1047         * gtk/testtext.c (create_buffer): Add missing NULL on
1048         valist.
1049
1050         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1051         c-n-p problem with INCONSISTENT property.
1052
1053         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1054
1055         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1056         hook.
1057
1058         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1059         signal as a hook for extending the default popup menu
1060
1061         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1062         use radio menu items for the input method menuitems
1063
1064         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1065         inserted unicode from Ctrl-Shift-hex input method
1066
1067         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1068         validatation here, already done at GtkTextBuffer level.
1069
1070         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1071         popup_menu run action signal and Shift+F10 and Menu keybindings.
1072
1073         * gtk/gtkentry.c: implement a default handler for popup_menu
1074
1075         * gtk/gtktextview.c: implement a default handler for popup_menu
1076
1077         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1078         from a key event
1079         
1080         * gtk/gtklabel.c: remove "trailer" cruft
1081
1082 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1083
1084         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1085         handle reordering of trees.  Seems to mostly work w/ the exception
1086         of the parity flag.
1087
1088         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1089         signal.
1090
1091 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1092
1093         * gtk/gtkwidget.h: c++ fixes.
1094
1095 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1096
1097         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1098         memory.
1099
1100 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1101
1102         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1103         Nils Barth fixing event return values. (#51041)
1104
1105         * gtk/gtkwidget.c: Fix some return values for default
1106         functions.
1107
1108         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1109         return values for trough_keys functions.
1110
1111         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1112         value for add_accelerator (shoudl have been a void
1113         return.)
1114
1115         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1116         Fix return type of EVENT.
1117
1118         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1119         signal return a boolean.
1120
1121 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1122
1123         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1124         reordered signal.
1125
1126         * tests/testtreesort.c (main): fix spelling.
1127
1128 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1129
1130         * gtk/gtkliststore.c: More work on implementing sortable
1131         interface.
1132
1133 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1134
1135         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1136         reference the widgets in the resulting list. (#11821)
1137         This makes this consistent with gtk_container_children.
1138
1139         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1140         uses of gtk_window_list_toplevels.
1141
1142 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1143
1144         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1145         a virtual function to set whether the IM context should use 
1146         the preedit string. (#51922)
1147         
1148 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1149
1150         * gdk/gdkpango.h: Remove stale FIXME comment.
1151
1152 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1153
1154         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1155         Fixed bug that returned NULL if a filename was selected.
1156
1157 2001-03-24  Havoc Pennington  <hp@pobox.com>
1158
1159         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1160         to contain the word "theme"
1161
1162 2001-03-24  Havoc Pennington  <hp@pobox.com>
1163
1164         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1165         slower but finer-grained
1166         (gtk_hsv_focus): get initial focus on the ring or triangle 
1167         according to tab direction
1168
1169         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1170
1171 2001-03-23  Havoc Pennington  <hp@pobox.com>
1172
1173         * gtk/gtkhsv.c: make this somewhat key-navigable
1174
1175         * gtk/gtkfontsel.c: mnemonics
1176
1177         * gtk/gtkgamma.c: mnemonics
1178
1179         * gtk/gtkcolorsel.c: add mnemonics to labels
1180
1181 2001-03-22  Havoc Pennington  <hp@pobox.com>
1182
1183         Applied big patch from Seth Lytle to fix event handler return
1184         values, slightly modified.
1185
1186         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1187         handled.
1188         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1189         select_day
1190
1191         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1192         (gtk_clist_button_release): return TRUE if handled
1193
1194         * gtk/gtkcolorsel.c (mouse_release):
1195         (palette_activate): 
1196         (palette_press): 
1197         (palette_new): 
1198         (mouse_press): 
1199         (get_screen_color): 
1200         fixed return type (void to gboolean), return TRUE,
1201         added GTK_SIGNAL_FUNC cast
1202
1203         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1204         (void to gboolean), and return TRUE
1205         (gtk_combo_button_release): changed return value to TRUE after
1206         gtk_grab_add on combo->popwin
1207
1208         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1209         collapse or expand
1210
1211         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1212         button/motion
1213
1214         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1215         press/release and motion that trigger act
1216
1217         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1218
1219         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1220         for GDK_Return
1221         
1222         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1223         (gtk_list_button_release): return TRUE if selection
1224
1225         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1226         press
1227
1228         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1229         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1230
1231         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1232         nothing triggered
1233         (gtk_notebook_button_release): return TRUE if we do anything
1234
1235         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1236         (gtk_spin_button_button_release): return TRUE or chained retval
1237
1238         * gtk/gtktext.c (gtk_text_button_press): 
1239         (gtk_text_button_release): return TRUE
1240         (gtk_text_key_press): remove redundant retval code
1241         
1242         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1243         and sensitive
1244         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1245         TRUE if sensitive
1246
1247         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1248         return TRUE
1249
1250 2001-03-23  Havoc Pennington  <hp@redhat.com>
1251
1252         * gtk/testgtk.c: fix warnings
1253
1254         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1255
1256         * gtk/gtktextview.c: fix warnings
1257
1258         * gtk/gtktext.c (find_cursor_at_line): fix warning
1259
1260         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1261
1262         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1263         of this function
1264
1265         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1266         fix warning
1267
1268         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1269
1270         * gtk/gtkfontsel.c: fix warning
1271
1272         * gtk/gtkcolorsel.c: fix warnings
1273
1274 2001-03-23  Havoc Pennington  <hp@redhat.com>
1275
1276         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1277
1278         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1279
1280         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1281         and deprecated gtk_check_menu_item_set_show_toggle().
1282         
1283         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1284
1285         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1286
1287         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1288
1289 2001-03-23  Havoc Pennington  <hp@redhat.com>
1290
1291         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1292         some docs
1293
1294 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1295
1296         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1297         this.
1298
1299         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1300         set_cell to set_value
1301
1302         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1303         set_cell to set_value
1304
1305 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1306
1307         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1308         fix braino.
1309         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1310         support.
1311
1312         * gtk/gtktreeview.c: Addition of initial sortable support.
1313
1314         * gtk/gtktreestore.c: Addition of initial sortable support.
1315
1316         * gtk/gtkliststore.c: Addition of initial sortable support.
1317
1318         * gtk/gtkmarshal.list: yet another marshaller.
1319
1320         * gtk/gtktreedatallist.[ch]: shared code between the store models
1321         for handling sorting headers.
1322
1323 2001-03-22  Havoc Pennington  <hp@redhat.com>
1324
1325         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1326         (gtk_container_unset_focus_chain): Add ability to override the 
1327         focus chain for a container explicitly
1328
1329 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1330
1331         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1332         added PROP_MNEMONIC_WIDGET.
1333
1334         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1335         (gtk_window_remove_mnemonic): 
1336         (gtk_window_add_mnemonic): fixed assertions.
1337         (gtk_window_activate_mnemonic): constrain modifier checks to those
1338         permitted by gtk_accelerator_get_default_mod_mask().
1339         got rid of gtk_window_get_default_accel_group().
1340
1341         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1342         activatable widgets either by focussing or a warning.
1343         added a signal accumulator to ::activate_mnemonic which stops the
1344         emission once a handler returned TRUE.
1345
1346 2001-03-22  Havoc Pennington  <hp@pobox.com>
1347
1348         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1349         the stock item label
1350
1351         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1352
1353         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1354
1355         * demos/gtk-demo/*.c: Add mnemonics all over the place
1356
1357         * gtk/gtklabel.h: mark parse_uline deprecated
1358
1359 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1360
1361         * gtk/gtkitemfactory.[ch]:
1362         Add support for stock and normal imagemenuitems.
1363         
1364         * gtk/testgtk.c:
1365         Add some tests for mnemonics, stock toolbars, stock
1366         and image menuitems in itemfactory and gdk_window_scroll.
1367
1368 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1369
1370         * gtk/gtkbutton.[ch]:
1371         * gtk/gtkdialog.c:
1372         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1373         removed accel_group argument. Renamed gtk_button_new_accel() to
1374         gtk_button_new_with_mnemonic() and removed accel_group argument.
1375
1376         * gtk/gtkcheckbutton.[ch]:
1377         New function gtk_check_button_new_with_mnemonic().
1378
1379         * gtk/gtkentry.c:
1380         Override activate_mnemonic and just grab focus.
1381
1382         * gtk/gtkitemfactory.c:
1383         Don't add menu uline accel group, instead use mnemonics support.
1384
1385         * gtk/gtklabel.[ch]:
1386         New support for mnemonics.
1387
1388         * gtk/gtkmarshal.list:
1389         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1390
1391         * gtk/gtkmenu.[c]:
1392         * gtkmenushell.c:
1393         Use mnemonics instead of accel groups for uline
1394         support in menu items.
1395         Removed gtk_menu_get_uline_accel_group() and
1396         gtk_menu_ensure_uline_accel_group().
1397
1398         * gtk/gtkmenuitem.c:
1399         Override activate_mnemonic to handle switching between
1400         menu items if there are collisions.
1401         
1402         * gtk/gtknotebook.c:
1403         Connect to activate_mnemonic on the tab_label, so that
1404         activating it switches to that notebook page.
1405
1406         * gtk/gtkwidget.[ch]:
1407         Add activate_mnemonic signal. New function
1408         gtk_widget_activate_mnemonic() to emit it.
1409         Default implementation does activate/grab_focus.
1410
1411         * gtk/gtkwindow.[ch]:
1412         Add support for mnemonics in windows.
1413         New functions:
1414         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1415         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1416
1417         * gtk/testgtk.c:
1418         Update to function name changes.
1419         
1420 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1421
1422         * gtk/gtkimagemenuitem.[c]:
1423         Add gtk_image_menu_item_new_from_stock()
1424
1425 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1426
1427         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1428         Fix buglet in meeting.
1429
1430 2001-03-19  Havoc Pennington  <hp@redhat.com>
1431
1432         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1433         add a bunch of accessor functions. This is because we have
1434         reasonable expectations of extending what fields it contains in
1435         the future.
1436
1437         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1438         changes
1439
1440         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1441         GtkIconSource   
1442
1443 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1444
1445         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1446         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1447
1448         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1449           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1450           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1451           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1452         Change float to double everywhere with the exception of 0<->1.0 alignment
1453         and GtkCurve.
1454
1455 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1456
1457         * gdk/win32/gdkdrawable-win32.c
1458         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1459         output.
1460
1461         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1462         gdkwin32.h.
1463
1464 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1465
1466         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1467         print_event_state, print_event): Use preprocessor macro to make
1468         code more compact. Print also GDK_WINDOW_STATE events.
1469         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1470         
1471         * gtk/gtk.def
1472         * gtk/makefile.mingw.in: Update.
1473
1474         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1475         to catch also Cygwin.
1476
1477 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1478
1479         * gtk/gtkspinbutton.[hc]: added rc-style argument
1480         GtkSpinButton::shadow_type.
1481         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1482         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1483         rc-style settings.
1484
1485         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1486
1487         * gtk/gtkwidget.c: quark cleanups.
1488
1489         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1490         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1491         to create_rc_style() (we don't do cloning in standard OO sense).
1492         added per rc style properties.
1493         
1494         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1495         property values and for caching those. some cleanups.
1496         
1497         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1498         
1499         * gtk/gtksettings.[hc]: new file for global rc-file properties
1500         (at least currently, should get extended to support X properties
1501         and other communication mechanisms).
1502         
1503         * gtk/gtkwidget.[hc]: added style property support:
1504         (gtk_widget_class_install_style_property_parser): install style
1505         property pspec with parser function for rc-file values other
1506         than LONG, DOUBLE or STRING.
1507         (gtk_widget_class_install_style_property): same as above without
1508         parser (parsers are going to be needed quite infrequently).
1509         (gtk_widget_style_get_property): retrive style property value.
1510         (gtk_widget_style_get_valist): same as above with varargs support,
1511         has NOCOPY semantics.
1512         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1513
1514 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1515
1516         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1517         "row_activated" signal.
1518
1519         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1520         stupidity.  Lets actually pass in the row with this signal...
1521
1522 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1523
1524         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1525
1526         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1527
1528         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1529         everything into the ::destroy function, and freed a lot more.
1530
1531 2001-03-16  Havoc Pennington  <hp@redhat.com>
1532
1533         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1534         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1535         are now allowed.
1536
1537 2001-03-16  Havoc Pennington  <hp@redhat.com>
1538
1539         * Applied patch from Nils Barth (bug # 51041) to 
1540         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1541         in various places.
1542
1543 2001-03-15  Havoc Pennington  <hp@redhat.com>
1544         
1545         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1546         for properties to set on the tag.
1547
1548         * gtk/testtext.c: fixups to reflect create_tag change
1549         
1550         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1551         background/foreground stipple are objects, not boxed.
1552
1553         * demos/gtk-demo/textview.c: intellihancing
1554
1555 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1556
1557         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1558         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1559
1560 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1561
1562         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1563         Fix sign error with queued region translations.
1564
1565 2001-03-15  HideToshi Tajima  <tajima@happy>
1566
1567         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1568         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1569         * gtk/gtkentry.c (update_im_cursor_location): 
1570         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1571         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1572         set_cursor_pos to set_cursor_location in GtkInputContext class
1573
1574 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1575
1576         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1577         the location of the cell relative to its area.
1578         * gtk/gtkcell*: modified for above change
1579         * gtk/gtktreeview.c: modified for above change.
1580
1581 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1582
1583         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1584          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1585         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1586
1587 2001-03-14  Havoc Pennington  <hp@redhat.com>
1588
1589         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1590         
1591         * gtk/gtk.h: remove gtkdata.h
1592
1593         * gtk/Makefile.am: remove gtkdata
1594         
1595         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1596         not "disconnect" on the adjustments.
1597         
1598         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1599         GtkData
1600
1601         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1602         not GtkData
1603
1604         * configure.in: handle case where X render exists, but Pango lacks
1605         Xft support.
1606
1607 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1608
1609         * gtk/gtktoolbar.[ch]:
1610         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1611         to add stock items to toolbars.
1612
1613         * gtk/Makefile.am:
1614         Remove ../gdk/gdkim.h from gdk_headers.
1615
1616 2001-03-15  Sven Neumann  <sven@gimp.org>
1617
1618         * gdk/gdkim.h: removed
1619         
1620         * gdk/gdkprivate.h
1621         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1622
1623 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1624
1625         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1626         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1627         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1628         set_cursor_pos() virtual method
1629
1630         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1631         (gtk_im_context_xim_set_cursor_pos): add implementation for
1632         set_cursor_pos() method
1633
1634         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1635         position to input methods
1636
1637 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1638
1639         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1640         code a lot.
1641
1642         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1643         g_mem_chunk.
1644         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1645         (_gtk_tree_data_list_node_to_value): Fix to switch on
1646         G_TYPE_FUNDAMENTAL.
1647         (_gtk_tree_data_list_value_to_node): Fix to switch on
1648         G_TYPE_FUNDAMENTAL.
1649         (_gtk_tree_data_list_node_copy): Fix to switch on
1650         G_TYPE_FUNDAMENTAL.
1651
1652 2001-03-12  Havoc Pennington  <hp@redhat.com>
1653
1654         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1655         to convert to new property API. Also, change default_width and
1656         default_height get_property to return 0 as the flag value for
1657         "unset"; -1 is not a valid value for these fields.
1658
1659 2001-03-12  Havoc Pennington  <hp@redhat.com>
1660
1661         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1662         enum with registration for icon sizes, instead of strings.
1663
1664         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1665         gtkwidget.c: Fix to reflect GtkIconSize
1666         
1667 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1668
1669         Make GtkFB compile and link.
1670         
1671         * gdk/linux-fb/gdkdrawable-fb2.c:
1672         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1673         
1674         * gdk/linux-fb/gdkwindow-fb.c:
1675         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1676         Added gdk_window_shape_combine_region.
1677         Added assorted placeholders for unimplemented new GdkWindow API calls.
1678
1679 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1680
1681         * gtk/gtkfilesel.c:
1682         Add more test when converting filenames from/to utf-8.
1683         Don't allow entering text in the filename entry which isn't allowed in
1684         a filename. Just beep instead.
1685
1686 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1687
1688         * gtk/gtkclist.c:
1689         Scroll using gdk_window_scroll(). Don't wait for exposes.
1690         Move the column headers in an order that makes them flash less.
1691
1692 2001-03-10  Hans Breuer  <hans@breuer.org>
1693
1694         * gdk/gdk.def : updated
1695
1696         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1697         to offseting the clip_mask at the right place
1698
1699         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1700         for all the gdkClasses, especially not for the input_only case.
1701         Otherwise flickering wont be avoidable, because we don't get
1702         WM_ERASEBKGND message for these windows.
1703
1704         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1705         and fixed massive redraw problems apparently triggered by Alexanders 
1706         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1707         but it seems to work quite well :-)
1708
1709         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1710         prototype
1711
1712 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1713
1714         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1715         (gtk_list_store_set_cell): Fix a stupid typo.
1716
1717 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1718
1719         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1720         select_all not work if you're in SINGLE mode (it doesn't make that
1721         much sense, anyway.)
1722
1723         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1724         handle types more sanely.
1725         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1726         (_gtk_tree_data_list_node_copy): handle types more sanely.
1727
1728         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1729         GValue better. Converts the type as well.
1730
1731         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1732         GValue better. Converts the type as well.
1733
1734 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1735
1736         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1737         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1738         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1739         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1740
1741         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1742         gdk_im/gdk_ic.
1743
1744 2001-03-09  Hans Breuer  <hans@breuer.org>
1745
1746         * gdk/gdk.def : updated
1747
1748         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1749         for their palette
1750
1751         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1752         removing
1753
1754         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1755         removing and implemented Havoc's GdkWindow state functions; 
1756         stick/unstick only as no-op, cause I don't know how to emulate 
1757         on win32 ...
1758
1759         * gtk/gtk.def : updated
1760
1761         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1762
1763         * gtk/gtktypeutils.c : #include <string.h>
1764
1765         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1766
1767 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1768
1769         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1770         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1771         not a boxed.
1772
1773 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1774
1775         * docs/Changes-2.0.txt:
1776         Document expose event->region change and that gtk_widget_event
1777         doesn't allow passing expose events.
1778
1779         * gdk/gdkevents.h:
1780         Add region to expose event.
1781         
1782         * gdk/gdkevents.c:
1783         Handle event->region in gdk_event_copy() and gdk_event_free().
1784
1785         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1786         Generate expose_event->region when creating expose events.
1787
1788         * gdk/x11/gdkevents-x11.c:
1789         Generate expose events with regions when translating X events.
1790
1791         * gtk/gtkcontainer.[ch]:
1792         Default expose handler that propagates expose events to NO_WINDOW
1793         children. New function gtk_container_propagate_expose()
1794
1795         * gtk/gtkwidget.[ch]:
1796         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1797         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1798         expose events. New function gtk_widget_send_expose() to send expose
1799         events. New function gtk_widget_region_intersect() to calculate
1800         window/region intersections.
1801         
1802         * gtk/gtkmain.c (gtk_main_do_event):
1803         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1804         Use gtk_widget_send_expose() to send expose events.
1805         
1806         * gtk/gtkbin.c:
1807         * gtk/gtkbox.c:
1808         * gtk/gtkfixed.c:
1809         * gtk/gtkimagemenuitem.c:
1810         * gtk/gtklist.c:
1811         * gtk/gtkpacker.c:
1812         * gtk/gtktable.c:
1813         * gtk/gtktree.c:
1814         Remove expose handler, using the default container implementation
1815         instead.
1816         
1817         * gtk/gtkbutton.c:
1818         * gtk/gtkcheckbutton.c:
1819         * gtk/gtkeventbox.c:
1820         * gtk/gtkfixed.c:
1821         * gtk/gtkhandlebox.c:
1822         * gtk/gtklayout.c:
1823         * gtk/gtklistitem.c:
1824         * gtk/gtkmenu.c:
1825         * gtk/gtkmenubar.c:
1826         * gtk/gtkmenuitem.c:
1827         * gtk/gtknotebook.c:
1828         * gtk/gtkoptionmenu.c:
1829         * gtk/gtkpaned.c:
1830         * gtk/gtkscrolledwindow.c:
1831         * gtk/gtktogglebutton.c:
1832         * gtk/gtktoolbar.c:
1833         * gtk/gtktreeitem.c:
1834         * gtk/gtkviewport.c:
1835         Chain expose handler to parent class handler. Use
1836         gtk_container_propagate_expose() to propagate exposes.
1837
1838         * gtk/gtkclist.c (check_exposures):
1839         * gtk/gtktext.c (process_exposes):
1840         Use gtk_widget_send_expose instead of gtk_widget_event.
1841
1842 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1843
1844         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1845
1846 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1847
1848         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1849         unref the nodes.   Fixes bug #50058.
1850
1851         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1852         "::ref_iter" to "::ref_node".
1853         (gtk_tree_model_unref_node): change "::unref_iter" to
1854         "::unref_node". Fixes bug #50064.
1855
1856 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1857
1858         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1859         support for invisible cells.
1860          (gtk_tree_view_bin_expose): ditto
1861
1862 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1863
1864         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1865         on gobjects.
1866
1867         * tests/testtreefocus.c (main): New test file.
1868
1869         * tests/testtreeview.c: update to latest glib changes.
1870
1871         * tests/testtreecolumns.c: update to latest glib changes.
1872
1873 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1874
1875         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1876
1877 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1878
1879         * *.c: added accumulator data argument to g_signal_newc()
1880         functions.
1881
1882         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1883         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1884         * gtk/treestoretest.c (make_window):
1885         s/g_signal_connect/g_signal_connectc/.
1886
1887         * gtk/gtktextbuffer.c: completed signal arg fixups,
1888         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1889
1890 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1891
1892         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1893         G_CONST_RETURN.
1894
1895         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1896         ::hierarchy-changed signal when a widget changes
1897         from anchored to unanchored or vice versa.
1898         (anchored means 
1899          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1900         Use a private flag to keep track of this efficiently.
1901
1902 2001-03-07  Havoc Pennington  <hp@redhat.com>
1903
1904         * gtk/testgtk.c (create_spins): uglify so that size request gets
1905         tested.
1906
1907         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1908         request on values for upper/lower, completes #6152
1909
1910 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1911
1912         * Makefile.am: Remove gtk-config-2.0 again.
1913         (Grrrr, pkg-config. And stops make loops.)
1914
1915 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1916
1917         * gtk/gtksignal.[hc]: removed old emission hook API.
1918         
1919         * docs/Changes-2.0.txt: fixed sections.
1920         
1921         * gtk/gtktextbuffer.c: signal arg fixups.
1922
1923 2001-03-07  Havoc Pennington  <hp@redhat.com>
1924
1925         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1926
1927         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1928         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1929         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1930         validation and the redraw which is higher priority than the
1931         validation.
1932
1933 2001-03-07  Havoc Pennington  <hp@redhat.com>
1934
1935         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1936         (gtk_entry_set_property): remove trailer
1937
1938         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1939         (gtk_entry_get_width_chars): new functions, to set size request to 
1940         a given number of characters
1941
1942         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1943
1944         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1945         (gtk_dialog_get_has_separator): new function
1946         (run_delete_handler): fix to not emit "response" signal
1947         because we already did in the delete event handler installed
1948         at dialog creation time.
1949         
1950         * gtk/gtkdialog.h: add a has_separator property,
1951         add GTK_DIALOG_NO_SEPARATOR flag
1952
1953 2001-03-07  Havoc Pennington  <hp@redhat.com>
1954
1955         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1956         off decorations for a window.
1957
1958         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1959         changes
1960
1961         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1962         to get location of PangoLayout inside the label, closes #51198
1963
1964         * gtk/testgtk.c (create_bbox): fix up button box usage
1965
1966         * gtk/testcalendar.c (create_calendar): fix up button box usage
1967
1968         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1969
1970         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1971
1972         * gtk/gtkhbbox.h: deprecations
1973
1974         * gtk/gtkvbbox.h: deprecations
1975
1976         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1977         emulate deprecated gtk_button_box_get_spacing
1978
1979         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1980         the "set global default" functions
1981         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1982         GtkBox base class
1983
1984         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1985
1986         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1987         render the icon, return the missing image icon.
1988
1989         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1990         image icon if the load fails.   
1991
1992         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1993         when no image is found; should be the Netscape "missing image"
1994         icon eventually but for now is a random image
1995
1996         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1997         role for the session manager
1998
1999         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2000
2001         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2002         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2003
2004         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2005
2006 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2007
2008         * gtk/*.c: marshaller fixes.
2009         
2010         * gtk/gtkmarshal.list: extreme cleanup.
2011
2012         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2013         param spec for now.
2014
2015         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2016         where appliable.
2017
2018         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2019         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2020         which are not reference counted:
2021         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2022         PangoFontDescription, GtkTreeIter and GtkTreePath.
2023
2024 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2025
2026         * gtk/gtktreeselection.h: 
2027         * gtk/gtktreemodel.c:
2028         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2029         file should be included directly, and gobject/gmarshal.h
2030         as well as gtk/gtkmarshal.h even can't be included directly.
2031
2032         * Makefile.am: grr, install gtk-config-2.0.
2033
2034         * gtk/testgtk.c:
2035         * gtk/simple.c:
2036         * gtk/gtkmenu.c:
2037         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2038         passing "*signal*::*" args to gtk_widget_set().
2039         
2040         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2041         
2042         * gtk/*.c: removed trailer arg from property setters and getters.
2043         macro fixups.
2044
2045 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2046
2047         * gtk/gtklabel.c (set_markup): Removed warning
2048
2049 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2050
2051         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2052         field to allow you to hide cell renderers.
2053
2054         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2055
2056         * gtk/gtktreeview.c: Add support for invisible cells.
2057
2058 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2059
2060         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2061         Add "clicked" signal back to columns.
2062
2063         * ChangeLog: remove conflict markers.
2064
2065 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2066
2067         * gtk/gtkbutton.c: Add animation of activation by, on 
2068         activate, pressing the button, and adding a timeout that 
2069         releases the button after 250ms or on key release and
2070         emits ::clicked. (#51501)
2071
2072         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2073         action area, we connect to ::clicked instead of ::activate
2074         so the dialog stays up through the animation.
2075
2076 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2077
2078         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2079         check the ignore_enter flag for the menu shell that
2080         the item is actually a child of, not for attached
2081         submenus. (#51536)
2082
2083 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2084
2085         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2086         special key-press grab handling for widgets within
2087         GtkWindows. Otherwise, fall through to normal case.
2088
2089         This prevents key events being sent twice to GtkInvisible
2090         widgets, which can cause all sorts of mischief.
2091
2092 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2093
2094         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2095         widget is in effect, give the grab widget a first
2096         crack at KEY_PRESS/RELEASE events. (#424)
2097
2098 2001-03-06  James Henstridge  <james@daa.com.au>
2099
2100         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2101         offset for the window_state_event to point at window_state_event
2102         rather than no_expose_event.
2103
2104 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2105
2106         * gtk/gtkimmodule.h: fix busted /* comment */
2107
2108 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2109
2110         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2111         object properties.
2112
2113 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2114
2115         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2116         add object properties.
2117
2118         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2119         to add object properties.
2120
2121         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2122         object properties.
2123
2124         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2125         add object properties.
2126
2127         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2128         object properties.
2129
2130 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2131
2132         * gtk/gtktreemodel.c: renamed "child_toggled" to
2133         "has_child_toggled".
2134
2135         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2136         handle new signal name.
2137
2138         * gtk/gtktreestore.c: Updated to handle new signal name.
2139         * gtk/gtklisttore.c: Updated to handle new signal name.
2140         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2141
2142 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2143
2144         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2145         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2146
2147 2001-03-05  Michael Natterer  <mitch@gimp.org>
2148
2149         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2150         pixbuf-engine coincidentially also failed to make one of it's
2151         parent_class pointers static, causing overwriting of GtkLabel's
2152         parent_class pointer in pixbuf_style_class_init().
2153         (Will commit the fix to the pixbuf-engine too).
2154
2155 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2156
2157         * gdk/gdkwindow.h:
2158         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2159         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2160         gdk_window_set_icon_list for net wmspec functionality.
2161
2162         * gdk/x11/gdkwindow-x11.c:
2163         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2164         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2165         gdk_window_set_icon_list.
2166         Added gdk_wmspec_change_state helper function and used it in the code.
2167         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2168
2169         * gtk/gtkdialog.c (gtk_dialog_init):
2170         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2171
2172         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2173         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2174
2175         * gtk/gtkwindow.c:
2176         new function gtk_window_set_type_hint.
2177         On realize, set type hint and modal hint.
2178
2179         * gtk/gtkwindow.h:
2180         Added type_hint field and gtk_window_set_type_hint.
2181
2182 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2183
2184         * gtk/gtklabel.[ch]:
2185         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2186         New function gtk_label_get_accel_keyval () to get the underline accelerator
2187         of the label. Setting the label pattern overrides other attributes.
2188
2189 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2190
2191         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2192         Added missing initializers to gtk_rc_style_init().
2193
2194 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2195
2196         * gtk/gtktextview.c: fixed bug #51097 about setting 
2197         gtk_text_view_set_border_window_size() if the widget is 
2198         already realized.
2199
2200 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2201
2202         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2203
2204         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2205         comment. Won't do to have duplicated doc comments between
2206         the platform subdirs.
2207
2208 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2209
2210         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2211           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2212
2213         Detectable auto-repeat - make a repeating key generate
2214         press/press/press/release instead of press/release pairs.
2215
2216         If we have Xkb and XkbSetDectableAutoRepeat supports
2217         that, we do it that way. Otherwise, when we get
2218         a release event, we check ahead with XPending to see
2219         if the next key is a KeyPress with the same keycode
2220         and timestamp. (Not 100% reliable, but pretty close.)
2221           
2222 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2223         
2224         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2225         special key-press grab handling for widgets within
2226         GtkWindows. Otherwise, fall through to normal case.
2227  
2228         This prevents key events being sent twice to GtkInvisible
2229         widgets, which can cause all sorts of mischief.
2230  
2231 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2232  
2233         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2234         widget is in effect, give the grab widget a first
2235         crack at KEY_PRESS/RELEASE events. (#424)
2236  
2237 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2238
2239         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2240         to extend the selection. (Roughly based on patch
2241         from Jay Cox, #50939)
2242
2243         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2244         to properly handle previous GDK_BUTTON_PRESS. 
2245         (Patch from Jay Cox, #50938)
2246
2247         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2248         '\0' back along with the deleted text. (#51148)
2249
2250 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2251
2252         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2253         the group when extracting it from the X keyboard event.
2254
2255         * modules/input/Makefile.am modules/input/imipa.c: 
2256         Simple module for entering IPA. (Do we need a 
2257         gtk-stupid-input-tricks CVS module?)
2258
2259 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2260
2261         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2262         const.
2263
2264         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2265
2266         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2267         is no focus widget for the dialog currently, grab the focus as well
2268         as the default.
2269
2270         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2271         the action area's children to iterate through, not the
2272         dialog's children.
2273
2274 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2275
2276         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2277         Add plug-socket tests. (Won't work worth a darn until I commit
2278         the rest of the plug-socket changes, but no reason these
2279         can't go into CVS now.)
2280
2281 2001-03-02  Havoc Pennington  <hp@redhat.com>
2282
2283         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2284         _gdk_region_get_xrectangles()
2285
2286         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2287
2288         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2289
2290         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2291         function, contributed by Ron Steinke    
2292
2293         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2294         gdk_net_wm_supports
2295
2296         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2297         New function, contributed by Ron Steinke
2298
2299         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2300         used to line up the text in the entry when using the entry for
2301         editable sheet cell hacks
2302
2303         * gtk/testgtk.c (create_entry): test the activate_default setting
2304         on GtkEntry
2305
2306         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2307         cause the entry to activate the default button for a dialog when 
2308         activated
2309         (gtk_entry_get_activates_default): new function
2310
2311 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2312
2313         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2314         Hwang to move call to sync_selection() up a few lines
2315         to before the row list is modified, to fix crash when
2316         removing rows in the undo_selection list.
2317
2318         (Test case provided by Daniel Elstner:
2319
2320         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2321
2322 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2323
2324         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2325         of tree->root_tree in parent_set rather than _map(), 
2326         fixing #50892 in a bit better manner.
2327
2328 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2329
2330         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2331
2332 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2333
2334         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2335         gtk_default_draw_shadow.
2336
2337 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2338
2339         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2340         warning, make warnings more verbose, treat a error
2341         in shmat as permanent, and don't try again.
2342         (#51163, Ed Randall.)
2343
2344 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2345
2346         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2347         delay for the first click before starting to scroll.
2348         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2349
2350         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2351         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2352
2353 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2354
2355         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2356         cleanup to remove some references to unused
2357         ->xoffset, ->yoffset.
2358
2359 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2360
2361         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2362         mask. (#51039, fix from Martin Maierhofer)
2363
2364 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2365
2366         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2367         for unshifted + and shifted = for non-us keyboards.
2368         Make <Control>+ and <Control>- work as well as 
2369         <Control>KP_Plus, <Control>KP_Minus for recursive
2370         open/close.  (#2682, René Seindal)
2371
2372 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2373
2374         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2375         the active menu item before deactivating the menu,
2376         so gtk_menu_popdown doesn't change the history. (#50964)
2377         
2378 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2379
2380         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2381         draw lines with text_gc rather than black_gc.
2382         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2383
2384 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2385
2386         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2387         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2388         less interrelated then it was, but it still requires the
2389         GtkTreeView to map it.
2390
2391         * test/testtreecolumn.c: Now I can add a column to one view,
2392         remove it, add it to the another view, remove it, then re-add it
2393         to the first.  Nifty.
2394
2395 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2396
2397         * docs/tutorial/gtk-tut.sgml: Minor corrections
2398
2399 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2400
2401         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2402         GtkRowReference.
2403
2404 2001-02-28  Havoc Pennington  <hp@redhat.com>
2405
2406         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2407         draw_default
2408         (gtk_widget_draw_focus): remove this function; we could instead
2409         make it just gtk_widget_draw(), but in most cases I think the
2410         result would be broken user code, so think it's better to have
2411         that code not compile and get fixed
2412         (gtk_widget_draw_default): ditto
2413
2414         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2415         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2416         
2417         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2418         widgets lose/get the default, instead of calling draw_default
2419         
2420         * docs/Changes-2.0.txt: note about all this
2421
2422         Then fixed every widget in GTK, I won't list all the filenames.
2423
2424 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2425
2426         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2427         _gtk_tree_row_reference_deleted.
2428         (inserted_callback): Proxy out to
2429         _gtk_tree_row_reference_inserted.
2430         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2431         get around signal emission ordering problem.
2432
2433         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2434         fix to work with SINGLE 
2435         (_gtk_tree_selection_internal_select_node): Major sanitization on
2436         selections.  SINGLE now seems to work.
2437
2438         * tests/Makefile.am: add testtreecolumn.c:
2439
2440         * tests/testtreecolumn.c: New test.  Mostly points out selection
2441         bugs currently, but will test columns later.
2442
2443         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2444         selection bug.  I hate touching this code -- it's scary.
2445
2446 2001-02-26  Havoc Pennington  <hp@redhat.com>
2447
2448         * gtk/testgtk.c: test the window state stuff
2449
2450         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2451         window come to the user's attention as if it were just created
2452         (gtk_window_iconify): new function
2453         (gtk_window_deiconify): new function
2454         (gtk_window_stick): new function
2455         (gtk_window_unstick): new function
2456         (gtk_window_maximize): new function
2457         (gtk_window_unmaximize): new function
2458
2459         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2460
2461         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2462
2463         * gdk/x11/gdkevents-x11.c: create window state events when
2464         appropriate
2465         (gdk_wmspec_supported): new function
2466
2467         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2468         iconification before showing the window
2469         (gdk_window_deiconify): new function
2470         (gdk_window_stick): new function
2471         (gdk_window_unstick): new function
2472         (gdk_window_maximize): new function
2473         (gdk_window_unmaximize): new function
2474
2475         * gdk/gdkwindow.c: store the window state in the window; 
2476         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2477         window->mapped.
2478         (gdk_window_get_state): return the current window state
2479
2480         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2481         (gdk_event_get_state): handle GDK_WINDOW_STATE
2482         (gdk_synthesize_window_state): function to create the window state
2483         events
2484
2485         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2486         event, for changes to "window state" such as maximized, sticky, 
2487         etc.
2488         
2489         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2490         focuses a window
2491
2492         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2493         finds out if we support a given WM spec hint
2494
2495 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2496
2497         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2498
2499 2001-02-25  Hans Breuer  <hans@breuer.org>
2500
2501         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2502         cause we want to loose those prototypes only in the latter case
2503
2504         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2505         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2506         impl member variable instead
2507
2508         * gtk/gtk.def : updated
2509
2510         * gtk/gtklist.c : 
2511         * gtk/gtkmenus.c : include <string.h> for memset ()
2512
2513         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2514         for everthing built here, but for gtk-x.x.dll only. This solves
2515         problem of indifferent gtk type definitions
2516
2517 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2518
2519         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2520
2521 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2522
2523         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2524         column that is exposed.
2525
2526         (_gtk_tree_view_update_size): Changed name from set_size, and
2527         changed function to do more work, and not force people calling it
2528         to figure out the size.  Simplifies a lot of code elsewhere.
2529
2530 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2531
2532         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2533         return solid masks for xpms that have no transparent color.
2534         This makes the ..._create_from_xpm... API backwards
2535         compatible.
2536
2537 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2538
2539         * README.win32: Update. Mention the gtk-1-3-win32-production
2540         branch.
2541
2542         * gdk/win32/bdfcursor.c: New file. A program that generates
2543         xcursors.h. Thanks to Stefan Ondrejicka.
2544
2545         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2546         compact format.
2547
2548         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2549
2550         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2551         function, uses xcursors.h.
2552         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2553         cursor from inline data instead of using LoadCursor() to generate
2554         it from a resource.
2555
2556         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2557         event, must check the Windows message for mouse button state, as
2558         the GDK event state might not have been built if it is
2559         undelivered. Remove one goto.
2560
2561         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2562         SetCursor() if the current cursor as returned by GetCursor() is
2563         the window's previous cursor. The ChildWindowFromPoint() test
2564         apparently didn't work correctly.
2565
2566         * gdk/win32/rc/*.cur: Remove.
2567
2568         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2569
2570         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2571
2572         * gtk/makefile.{mingw,msc}.in: Updates.
2573
2574 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2575
2576         * gtk/gtktreemodel.h: add functions for signal emission.
2577
2578         * gtk/gtktreestore.c: move to use above functions instead of
2579         g_signal_emit.
2580
2581         * gtk/gtkliststore.c: ditto
2582
2583 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2584
2585         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2586         GObject instead of GtkObject.
2587
2588         * gtk/gtkliststore.c: ditto.
2589
2590         * gtk/gtktreemodelsort.c: ditto.
2591
2592         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2593         GtkTreeModelIface, instead of in each model.
2594
2595 2001-02-21  Havoc Pennington  <hp@redhat.com>
2596
2597         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2598         unbreak this function
2599
2600         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2601         properties
2602
2603         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2604         properties
2605
2606         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2607         properties
2608
2609         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2610         mean unset the max length
2611
2612 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2613
2614         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2615         Changed name to be set_cell_data_func to make it clear what
2616         the functino does.  Close bug #51069.
2617
2618 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2619
2620         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2621         have memory actually freed.  Keeps box running longer.
2622
2623 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2624         
2625         * gtk/gtkseparatormenuitem.[ch]:
2626         Added new menu separator item. The drawing and size handling
2627         is still done in GtkMenuItem, but the API is a bit more sane.
2628         
2629         * gtk/Makefile.am:
2630         Add gtkseparatormenuitem.[ch].
2631
2632         * gtk/gtk.h:
2633         Add gtkseparatormenuitem.h.
2634         
2635         * gtk/gtkentry.c:
2636         * gtk/gtkmenufactory.c:
2637         * gtk/gtktextview.c:
2638         Use the new API for menu separators.
2639         
2640         * demos/gtk-demo/menus.c (create_menu):
2641         Add some GtkSeparatorMenuItem demo code.
2642
2643 2001-02-20  Havoc Pennington  <hp@redhat.com>
2644
2645         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2646         Lee Mallabone
2647
2648         * gtk/gtkarrow.c: Convert to new property API, patch from 
2649         Lee Mallabone
2650
2651 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2652
2653         * tests/testtreeview.c (toggled_callback): fix to reflect change
2654         in GtkTreeModelStore.
2655
2656 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2657
2658         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2659         function to create an icon set from a pixbuf.
2660
2661 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2662
2663         * gtk/gtkcellrenderertext.[ch]:
2664         Add a "markup" property.
2665
2666         * gtk/treestoretest.c:
2667         Use the markup property, remove some leftover stuff from
2668         GtkTreeModelMapping.
2669
2670 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2671
2672         * gtk/gtklabel.c (gtk_label_set_selectable):
2673         Queue a redraw if the selectable setting was changed.
2674
2675 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2676
2677         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2678         Actually copy the whole gc, not just the public parts.
2679         
2680         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2681         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2682         labels.
2683
2684 2001-02-19  Havoc Pennington  <hp@pobox.com>
2685
2686         * gdk/gdkwindow.c: docs
2687
2688         * gdk/gdkrgb.c: docs
2689
2690         * gdk/gdkregion-generic.c: docs
2691
2692         * gdk/gdkgc.c (gdk_gc_set_values): docs
2693
2694         * gdk/gdkdraw.c: docs
2695
2696         * gdk/gdkdrawable.h: deprecate drawable get/set data
2697
2698 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2699
2700         * demos/gtk-demo/dialog.c: Add simple new demo.
2701
2702 2001-02-19  Havoc Pennington  <hp@redhat.com>
2703
2704         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2705         insert_child_anchor signal, bug #50245
2706
2707         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2708         from create_child_anchor, so the anchor is passed in
2709
2710         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2711         (_gtk_widget_segment_new): have the child anchor object passed in, 
2712         instead of creating it.
2713
2714         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2715         to gtk_text_buffer_get_modified
2716
2717 2001-02-19  Havoc Pennington  <hp@redhat.com>
2718
2719         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2720         changed GLib without fixing GTK
2721
2722         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2723         functions to have an underscore in front. Most of them should 
2724         probably just go away, but for starters don't export them.
2725         Bug #50482
2726
2727 2001-02-19  Havoc Pennington  <hp@redhat.com>
2728
2729         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2730         excluded by default
2731
2732         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2733         clean up the old code a bit
2734
2735         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2736         inconsistent state
2737
2738         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2739         draw inconsistent state
2740
2741         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2742         (create_menu): add inconsistent test
2743
2744         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2745         new function
2746         (gtk_check_menu_item_get_inconsistent): new function
2747         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2748         state (using etched in for now)
2749
2750         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2751         draw inconsistent state
2752
2753         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2754         function, used when the user has selected a range of stuff in
2755         different states
2756         (gtk_toggle_button_get_inconsistent): accessor for that
2757         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2758         don't know what else to do)
2759
2760 2001-02-19  Hans Breuer <hans@breuer.org>
2761
2762         * gtk/gtk.def : updated exported symbols
2763
2764         * gtk/makefile.msc.in : updated
2765
2766         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2767         a colormap, when invoked from testgtk::entry. I'm not sure where
2768         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2769         avoids immediate crashing ...
2770
2771         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2772         any objections ?
2773
2774         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2775         0 parameter. At least msvc doesn't like macros with var args. 
2776         I simply removed the extra 0, was it a feature or a typo ?
2777
2778         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2779         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2780         because the value assignment to the internal struct wasn't working.
2781         I'm not absolutely sure. The problem could have been resolved by
2782         changing the "func" declartion in the struct, but was the pointer
2783         to the function pointer intended ?
2784
2785         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2786
2787         * gdk/gdk.def : updated exported symbols
2788
2789         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2790         only use SetDIBitsToDevice if there is a palette at the drawable
2791         and the image is GDK_VISUAL_PSEUDO_COLOR
2792
2793         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2794
2795         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2796
2797         * gdk/*/makefile.msc : updated
2798
2799 2001-02-19  Havoc Pennington  <hp@redhat.com>
2800
2801         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2802         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2803
2804         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2805         (gdk_key_repeat_restore): nuke
2806
2807         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2808         (gdk_init_check): no atexit func
2809
2810         * gdk/gdkrgb.h: mark some stuff deprecated
2811
2812         * gdk/gdkcolor.h: mark some stuff deprecated
2813         
2814         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2815
2816         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2817
2818 2001-02-16  Havoc Pennington  <hp@redhat.com>
2819
2820         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2821         scroll steps.
2822
2823         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2824         steps, and add Ctrl-arrow shortcuts for paging visually as with
2825         HScale, since Page Up and Page Down move logically.
2826
2827         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2828         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2829         
2830         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2831         steps
2832         (gtk_range_scroll): handle the visual steps
2833
2834         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2835         scroll steps
2836
2837         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2838         steps, not the logical ones.
2839
2840         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2841         (scroll_vertical): handle up/down steps
2842
2843 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2844
2845         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2846         Copy data and free data with free().
2847
2848         * gdk-pixbuf/gdk-pixbuf.c:
2849         * gdk-pixbuf/io-jpeg.c:
2850         * gdk-pixbuf/io-png.c:
2851         Use g_try_malloc/g_free instead malloc/free.
2852         
2853         * gdk-pixbuf/test-gdk-pixbuf.c:
2854         Must... initialize... gobject...
2855         
2856         * gdk-pixbuf/pixops/timescale.c:
2857         * gtk/gtkcalendar.c:
2858         Use g_malloc instead of malloc.
2859         
2860 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2861
2862         * gtk/testgtkrc:
2863         Comment out property assignments, these don't work yet.
2864
2865 2001-02-17  Havoc Pennington  <hp@pobox.com>
2866
2867         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2868         bit.
2869
2870 2001-02-17  Havoc Pennington  <hp@pobox.com>
2871
2872         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2873         shadowed variables that had broken size request in some cases,
2874         leading to bogus tooltips (#50996)
2875
2876 2001-02-06  Jon K Hellan  <hellan@acm.org>
2877
2878         Implement fast browsing of tooltips, bug #50619
2879         
2880         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2881         and last_popdown
2882         
2883         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2884         use_sticky_delay and last_popdown.
2885         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2886         time of popdown.
2887         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2888         is NULL.
2889         (gtk_tooltips_recently_shown): New static function.  Return true
2890         if < sticky_delay has elapsed since last popdown.
2891         (gtk_tooltips_event_handler): Display window after sticky_delay
2892         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2893         since last popdown.
2894         
2895 2001-02-17  Havoc Pennington  <hp@pobox.com>
2896
2897         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2898         instead of (). #6394
2899
2900         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2901         G_CONST_RETURN, make it return by reference, #50473
2902         
2903 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2904
2905         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2906         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2907         setup fields contain garbage (e.g. subwindow, breaking
2908         gdk_drawable_ref() upon event copy).
2909         (gtk_menu_stop_navigating_submenu_cb): same here.
2910
2911         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2912         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2913         * gtk/gtkclist.c (vertical_timeout): 
2914         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2915         default-zero-intialization for unions to memset(,0,), as unions are
2916         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2917         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2918
2919         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2920         g_closure_sink() warning.
2921
2922         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2923         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2924         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2925         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2926         
2927 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2928
2929         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2930         gtk_*_store_get, and moved to GtkTreeModel.
2931
2932         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2933
2934         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2935
2936         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2937
2938         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2939         set the func.
2940
2941         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2942         freeze/thaw notify between setting all the properties for a cell.
2943
2944         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2945
2946 2001-02-15  Havoc Pennington  <hp@redhat.com>
2947
2948         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2949         the X coordinates so they're with respect to the line, rather than 
2950         with respect to the layout.
2951
2952         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2953         Mallabone
2954
2955         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2956         and inverted test
2957
2958         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2959         #50806
2960
2961         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2962
2963         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2964         gtk_text_iter_is_end
2965
2966         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2967         rename gtk_text_buffer_get_end_iter
2968
2969         * gtk/testgtk.c (create_labels): Add test for selectable
2970
2971         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2972         the selection stuff. This code is kind of broken since it doesn't 
2973         use the theme engine.
2974
2975         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2976         fix infinite loop and y offset problem
2977         (gdk_draw_layout_line_with_colors): fix foreground color handling
2978
2979         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2980         that makes the label selectable.
2981         
2982         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2983         layout when the style is set, since fonts etc. could have changed.      
2984
2985 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2986
2987         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2988
2989         * gtk/gtktreemodelsimple.[ch]: removed.
2990
2991 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2992
2993         * gtk/gtktreemodelmapping.[ch]:
2994         New files. Implement GtkTreeModelMapping.
2995         
2996         * gtk/Makefile.am:
2997         Add gtktreemodelmapping.[ch].
2998         
2999         * gtk/gtk.h:
3000         Add gtktreemodelmapping.h
3001
3002         * gtk/treestoretest.c:
3003         Test the GtkTreeModelMapping
3004
3005 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3006
3007         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3008         have a demo, we might as well pass in real values.  Thanks to
3009         clahey for pointing this out.
3010
3011 2001-02-14  Havoc Pennington  <hp@pobox.com>
3012
3013         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3014         "static" to a private function
3015         (gtk_image_menu_item_class_init): remove destroy handler,
3016         add "image" object property
3017
3018 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3019
3020         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3021         Add a shortcut if the window and the current clip_region doesn't
3022         overlap. This is needed when there are a lot of windows in a
3023         window. The layout test in testgtk is a good test.
3024
3025         * gdk/linux-fb/gdkwindow-fb.c:
3026         Whitespace fix.
3027
3028 2001-02-13  Sven Neumann  <sven@convergence.de>
3029
3030         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3031
3032 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3033
3034         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3035         Don't reference last_cursor if it is null. Fixes crash when rotating
3036         the screen before having moved the mouse.
3037
3038         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3039
3040         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3041
3042         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3043         when using 90 or 270 degrees rotation.
3044
3045 2001-02-12  Havoc Pennington  <hp@pobox.com>
3046
3047         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3048         it always set the foreground, even if we were only using
3049         a stipple.
3050         (gdk_draw_layout_line_with_colors): new function, allow
3051         override colors
3052         (gdk_draw_layout_with_colors): new function, allow override
3053         colors
3054         (gdk_pango_layout_line_get_clip_region): function to get the clip
3055         region for a logical text range
3056         (gdk_pango_layout_get_clip_region): get the clip region for a
3057         logical text range
3058
3059         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3060         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3061         the right number of arguments.
3062
3063         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3064         enhance the function to check that node data corresponds to a 
3065         view still belonging to the tree.
3066
3067         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3068         GtkTreePath
3069         (gtk_tree_view_inserted): ditto
3070         (gtk_tree_view_child_toggled): ditto
3071
3072         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3073         simplify this code.
3074
3075         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3076         a PangoAttrList
3077
3078         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3079
3080         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3081
3082         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3083         size in the size request 
3084         (gtk_menu_bar_size_allocate): consider toggle size here
3085
3086         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3087         that displays a widget in the toggle slot
3088
3089         * gtk/testgtk.c: test GtkImageMenuItem
3090
3091         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3092         
3093         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3094         request and allocation
3095
3096         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3097
3098         * gtk/gtkcheckmenuitem.c
3099         (gtk_check_menu_item_toggle_size_request): ditto
3100         
3101 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3102
3103         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3104         reference.
3105
3106         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3107         and refuse to initialize GTK+ if they fail.
3108
3109 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3110
3111         * configure.in: Add check for gtk-doc version.
3112
3113 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3114
3115         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3116         where the xpad/ypad was only being used on one side!
3117
3118 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3119
3120         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3121         function, copied from X11 version.
3122
3123         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3124         DestroyCursor failures. The reason for the problem (despite the
3125         inconsistent messages from GetLastError()) was that
3126         DestroyCursor() cannot be called while a cursor is set in a
3127         window. Set the new cursor first and then destroy the old one.
3128         Thanks to jpe@archaeopteryx.com.
3129
3130         * gdk/win32/gdkcc-win32.c: Remove.
3131
3132         * gdk/win32/Makefile.am: Remove from here, too.
3133         
3134         * gdk/gdk.def
3135         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3136
3137         * gtk/gtk.def
3138         * gtk/makefile.mingw.in: Updates.
3139
3140 2001-02-08  Havoc Pennington  <hp@redhat.com>
3141
3142         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3143         add a widget to a bin that already has a child.
3144
3145         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3146
3147         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3148         
3149         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3150
3151         * gdk/gdk.h: remove gdkcc.h
3152
3153         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3154
3155         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3156         GdkPixbuf, since the previous implementation was GdkColorContext
3157         dependent.
3158
3159         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3160         
3161 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3162
3163         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3164         a sane value!
3165
3166 2001-02-08  Havoc Pennington  <hp@redhat.com>
3167
3168         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3169         lighten them.
3170
3171 2001-02-08  Havoc Pennington  <hp@redhat.com>
3172
3173         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3174         validation idle
3175
3176         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3177         cell renderer
3178
3179         * demos/pixbuf-demo.c (timeout): remove deprecated
3180         gtk_widget_draw
3181
3182         * demos/testpixbuf-save.c (main): remove deprecated
3183         gtk_drawing_area_size
3184
3185         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3186         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3187         at the start of the allocation.
3188         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3189         unsetup or NULL model.
3190
3191         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3192         even/odd/sorted cells in the tree view.
3193
3194         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3195         bugfixes
3196
3197         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3198         backgrounds with draw_flat_box using different detail for even/odd
3199         rows.
3200
3201         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3202         row, so we can draw the alternating colors thing
3203
3204         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3205         property from a synonym property, notify for the synonym.
3206         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3207         (gtk_text_tag_get_property): Always return the font, even if
3208         all its fields aren't set
3209
3210         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3211         store the attr list; it leaves us with no way to change attributes
3212         in _render according to the render flags, and no way to implement
3213         get_property. Instead store all the specific text attributes. 
3214         Separate whether an attribute is enabled from its value. Sync all
3215         properties with GtkTextTag, make them all consistent, etc.
3216
3217         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3218         renderers can highlight the sort row/column     
3219
3220         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3221         accessor functions to get values; this has the side effect of
3222         showing up which accessor functions were missing. Added those.
3223
3224         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3225         set_alignment, to be consistent with GtkLabel, GtkMisc
3226
3227         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3228         arrow.
3229
3230         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3231
3232         * gtk/gtktreesortable.h: updates in here
3233
3234 2001-02-07  Sven Neumann  <sven@convergence.de>
3235
3236         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3237         pango dimensions after painting the background. We used to draw
3238         gigantic flat boxes here.
3239
3240 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3241
3242         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3243         error introduced with earlier commit) (pointed out by
3244         Ollie Lho)
3245
3246 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3247
3248         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3249         which are no longer necessary.
3250
3251 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3252
3253         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3254
3255 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3256
3257         * gdk/gdk.def
3258         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3259         Provide dummy implementations.
3260
3261 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3262
3263         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3264
3265         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3266         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3267         deprecated this function.
3268
3269         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3270         argument.
3271
3272 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3273
3274         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3275
3276 2001-02-03  Havoc Pennington  <hp@pobox.com>
3277
3278         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3279         Mikael Hermansson with patch from Mikael (if there was a toggle
3280         start one after the first character in the range, this function
3281         was broken). Bug #50380
3282
3283 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3284
3285         * configure.in: Remove confusing comment about X11.
3286
3287 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3288
3289         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3290         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3291         
3292 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3293
3294         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3295         it breaks things on BSD. If you want to compile GTK+ with
3296         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3297         when configuring, since GTK+ simply can't be "pure ANSI" 
3298         in the header files it uses. (#8170, Greg Hudson)
3299
3300 2001-02-02  Havoc Pennington  <hp@redhat.com>
3301
3302         * gtk/gtkwindow.c: docs
3303
3304         * gtk/gtkwidget.c: docs
3305         (gtk_widget_set_colormap): add a reference to the colormap
3306         (gtk_widget_get_default_colormap): add a reference to the colormap
3307
3308         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3309
3310         * gtk/gtktextiter.c: docs
3311
3312         * gtk/gtkmain.c (gtk_propagate_event): docs
3313
3314         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3315         (gtk_paned_set_position): docs
3316
3317         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3318         sort interface, no implementation yet.
3319
3320         * demos/testpixbuf.c (new_testrgb_window): replace
3321         gtk_drawing_area_size() with gtk_widget_set_usize()
3322
3323         * demos/testpixbuf-drawable.c (main): ditto
3324         
3325         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3326
3327         * gtk/gtktextbuffer.c: docs
3328
3329         * gtk/gtkstock.c: docs
3330
3331         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3332
3333         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3334
3335         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3336         
3337         * gtk/gtkimage.c: add some docs in here
3338         (gtk_image_size_request): change name of
3339         gtk_widget_render_stock_icon
3340         (gtk_image_get_icon_set): don't dup returned string
3341         (gtk_image_get_icon_set): don't dup returned string
3342
3343         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3344         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3345         and gtkiconfactory.h functions
3346
3347         * gtk/gtkiconfactory.c: add some docs in here
3348
3349         * gtk/gtkmain.c (gtk_get_default_language): document
3350         (gtk_get_current_event): document
3351         (gtk_get_current_event_state): document
3352         (gtk_get_event_widget): document
3353
3354         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3355
3356         * gtk/gtkcontainer.c: Add some documentation
3357         (gtk_container_add): give a more explanatory warning on adding an
3358         already-parented widget, this is kind of a FAQ and also a common
3359         typo that's easier to debug with a nice warning 
3360
3361         * gtk/gtkcellrenderertoggle.c
3362         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3363         adding this, it's useless
3364         (gtk_cell_renderer_toggle_set_active): remove
3365         (gtk_cell_renderer_toggle_get_radio): add
3366
3367         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3368         the NULL cell renderer, that doesn't make any sense to me. 
3369
3370         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3371         demo code should never use deprecated features.
3372
3373         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3374         code should never use deprecated features.
3375
3376         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3377         gtk_widget_queue_clear_area deprecated
3378
3379         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3380         deprecated
3381
3382         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3383
3384         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3385         a GdkImage deprecated, replaced by new consistently-named
3386         functions       
3387
3388         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3389
3390         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3391
3392         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3393         deprecated
3394
3395         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3396         so it won't appear in docs and confuse people.
3397
3398         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3399
3400         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3401         macros deprecated. (can't mark the type itself deprecated, since
3402         GtkProgressBar is not deprecated and we need the type decl to use
3403         GtkProgressBar)
3404
3405         * gtk/gtkpixmap.h: Mark deprecated
3406
3407         * gtk/gtkoldeditable.h: Mark deprecated
3408
3409         * gtk/gtklist.h: Mark deprecated
3410
3411         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3412         for anything anymore.
3413
3414         * gtk/gtkctree.h: Mark deprecated
3415
3416         * gtk/gtkclist.h: Mark deprecated
3417
3418         * gtk/gtkpreview.h: Mark deprecated
3419
3420         * gtk/gtkpacker.h: Mark deprecated
3421
3422         * gtk/gtktipsquery.h: Mark deprecated
3423
3424         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3425
3426         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3427
3428         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3429
3430         * gtk/gtkruler.h: Add comment that it will move out of GTK
3431
3432         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3433
3434         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3435
3436 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3437
3438         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3439         gdk_colormap_sync private since it was never exported
3440         in a header file.
3441
3442         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3443         colormap->colors[] for StaticGray, StaticColor colormaps.
3444
3445         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3446         was being used as if it was image->bits_per_pixel.
3447
3448         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3449         for the image in the GdkImage structure since it isn't
3450         reconstructable, and we need it to handle packed types
3451
3452         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3453         the assumption that on Win32 image->bits_per_pixel == image->depth,
3454         always.
3455
3456         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3457
3458         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3459         warning message if no converter can be found. 
3460
3461 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3462
3463         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3464         chars to isupper() / tolower(). (#567)
3465
3466         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3467         to clear up 64-bit warnings. (#567)
3468
3469 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3470
3471         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3472         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3473
3474         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3475         since some people set $(libdir) separately. (#1290, David Kaelbling)
3476
3477 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3478
3479         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3480         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3481         MAXPATHLEN, but the code here depends on a fixed value.)
3482         (#4524)
3483
3484 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3485
3486         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3487         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3488
3489 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3490
3491         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3492         viewable there is no way that moving the node will cause the 
3493         focus row to become not viewable, so omit check on the visibility
3494         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3495
3496 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3497
3498         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3499         selection before inserting new text.
3500
3501 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3502
3503         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3504         Make the sensitivity of the reparented child track that of
3505         the original parent menu item. (#34218, David Hodson)
3506
3507         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3508         the case where the current item is destroyed properly.
3509
3510         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3511         some edge cases with child-less menuitems.
3512         
3513 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3514
3515         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3516         key pop down window. (#12074, Jon K Hellan)
3517
3518 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3519
3520         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3521         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3522         The solution here isn't perfect - you get an extraneous
3523         emission of "toggle", which could conceivably confuse an app,
3524         but better than the current situation. LXR search seems to
3525         indicate that no apps in GNOME CVS connect to "toggle".
3526
3527 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3528
3529         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3530         gtk_public_h_sources to directly here to avoid warning when
3531         building srcdir != builddir. (#9656)
3532
3533 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3534
3535         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3536         handlers in gtkrange.c return the proper values (TRUE == handled)
3537         (#10316).
3538
3539         This is just the tip of the iceberg, but gtkrange.c is the
3540         most common place where the propagation is problematical,
3541         and also a place where it is almost certainly safe to change
3542         this in the stable branch.
3543
3544         (You don't want right click popups on a range control or anything...)
3545
3546 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3547
3548         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3549         area on focus out, even if a background pixmap isn't set.
3550         (#13941)
3551         
3552 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3553
3554         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3555         to deal with setting the shape properly when scrolling arrows are
3556         turned on, but not visible because there is sufficient space.
3557         (#13432)
3558
3559 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3560
3561         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3562         items with submenus, destroy the item along with the submenu.
3563         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3564         properly.
3565
3566         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3567         later.
3568
3569 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3570
3571         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3572         the focus widget sometimes wasn't drawn with the default if there
3573         was no default widget.
3574
3575         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3576         unreference pixmaps. 
3577
3578         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3579         for some extra safety.
3580
3581 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3582
3583         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3584         the text of a cell to the old pointer value better, by
3585         copying the new text before freeing the old text. Some code
3586         cleanup. (#8079, Karl Nelson)
3587
3588 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3589
3590         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3591         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3592
3593 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3594
3595         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3596         item from a menu, check to see if it matches 
3597         menu->old_active_menu_item, and if so, unref and clear
3598         old_active_menu_item (Patch from Pavel Cisler)
3599
3600         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3601         menu_shell->active_menu_item, if it is the child being
3602         removed. (Patch based on that of Gene Ragan, #50337)
3603
3604 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3605
3606         * gdk/linux-fb/gdkselection-fb.c: 
3607         * gdk/linux-fb/gdkcolor-fb.c: 
3608         * gdk/linux-fb/gdkdrawable-fb2.c: 
3609         * gdk/linux-fb/gdkfont-fb.c: 
3610         * gdk/linux-fb/gdkim-fb.c: 
3611         * gdk/linux-fb/gdkinput.c: 
3612         * gdk/linux-fb/gdkkeyboard-fb.c: 
3613         * gdk/linux-fb/gdkmain-fb.c: 
3614         * gdk/linux-fb/gdkrender-fb.c: 
3615         A bunch of whitespace cleanup.
3616         
3617 2001-01-30  Havoc Pennington  <hp@pobox.com>
3618
3619         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3620         #ifdef GTK_ENABLE_BROKEN.
3621
3622         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3623         GTK_ENABLE_BROKEN just before including the broken headers.
3624         
3625         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3626         deprecated types registered.
3627
3628         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3629         we have to test the broken stuff.
3630
3631         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3632         
3633 2001-01-30  Havoc Pennington  <hp@redhat.com>
3634
3635         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3636         here where prev pointer was set to the wrong thing
3637
3638         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3639         (gtk_tree_path_is_descendant): new function
3640
3641         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3642         cached length
3643         (gtk_list_store_get_iter): don't modify iter if we can't get the
3644         path.
3645
3646         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3647         
3648         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3649         GtkTreeDragDest
3650
3651         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3652         was causing segfault
3653
3654         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3655         pointer to NULL
3656
3657         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3658
3659         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3660         on returning FALSE
3661         (gtk_list_store_iter_children): ditto
3662         (gtk_list_store_iter_nth_child): ditto
3663         (gtk_list_store_iter_nth_child): ditto
3664         (gtk_list_store_iter_parent): ditto
3665
3666         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3667         on iter->user_data != NULL instead of silently accepting it.
3668         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3669         we are returning TRUE.
3670         (gtk_tree_store_iter_children): ditto
3671         (gtk_tree_store_iter_nth_child): ditto
3672         (gtk_tree_store_iter_parent): ditto
3673         (gtk_tree_store_insert): remove handling of parent->user_data ==
3674         NULL, replace with parent == NULL       
3675
3676         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3677         and a comment explaining things
3678
3679         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3680         interface support to GtkTreeStore.
3681
3682         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3683         FALSE if no prev, fix
3684
3685         * gtk/gtktreeview.c (set_source_row): use a row reference
3686         (set_dest_row): use a row reference
3687
3688 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3689
3690         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3691         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3692         (gtk_tree_selection_select_iter): The same as above.
3693
3694 2001-01-26  Havoc Pennington  <hp@redhat.com>
3695
3696         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3697         which holds a handle to a specific row (particular set of values
3698         in the model, i.e. pointer-identity row).
3699
3700         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3701         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3702         Still need to use it for the src/dest row saved on the drag context.
3703
3704 2001-01-26  Havoc Pennington  <hp@redhat.com>
3705
3706         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3707
3708         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3709         not offset by TREE_VIEW_HEADER_HEIGHT
3710         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3711         TREE_VIEW_HEADER_HEIGHT
3712
3713         * configure.in (included_loaders): for me, --with-included-loaders
3714         generates the error "the specified loader yes does not exist",
3715         i.e. the arg defaults to "yes", so change test for value ""
3716         to test for value "yes", and include all loaders in that case.
3717
3718         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3719
3720         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3721         handle TREE_VIEW_VERTICAL_SEPARATOR
3722         (gtk_tree_view_bin_expose): fix to consider the row offset as
3723         pointing halfway into vertical separator.       
3724         (gtk_tree_view_draw_node_focus_rect): ditto
3725
3726         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3727         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3728         (TRUE) to be called.
3729
3730         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3731         debug mode where the invalid region is colored in on invalidate,
3732         so you can see the flicker and know whether your redraw code is 
3733         doing a good job.
3734
3735         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3736         tree window coordinates (clip rect is in tree window coords)
3737
3738         * gtk/Makefile.am: add gtktreednd.[hc]
3739
3740         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3741
3742         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3743         drag-and-drop data operations on a model (so we can set up tree
3744         drag-and-drop automatically)
3745
3746         * gtk/testgtk.c: Add a window to change sensitivity in the
3747         GtkLabel test; add a way to change the entry frame in GtkEntry
3748         test
3749
3750         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3751         (gtk_entry_get_has_frame): new functions to remove the frame
3752         around an entry
3753         (gtk_entry_size_request): shrink requisition if no frame
3754         (gtk_entry_draw_focus): don't draw frame if no frame
3755
3756         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3757         checks inside a cell renderer
3758         (gtk_default_draw_option): ditto for options
3759
3760         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3761         children from the alignment, not the button
3762         (gtk_tree_view_column_init): ref/sink the column, to emulate
3763         GObject refcounting.
3764
3765         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3766         
3767         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3768         Use theme functions to draw the toggles 
3769
3770         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3771
3772         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3773         GdkPangoAttrEmbossed to use in rendering insensitive text
3774
3775         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3776
3777         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3778         using new GDK features
3779         
3780 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3781
3782         * gtk/gtkimage.c:
3783         Splitted gtk_image_clear into gtk_image_clear() and
3784         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3785         to avoid leaks.
3786
3787         * gtk/gtklabel.c (set_markup):
3788         Don't leak text.
3789
3790         * gtk/gtktextlayout.c:
3791         Always free display->shaped_objects.
3792
3793         * gtk/testgtk.c (create_clist):
3794         Don't leak custom style.
3795
3796 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3797
3798         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3799         Don't leak image. Simplify using gdk_colormap_query_color().
3800         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3801
3802         * linux-fb/gdkcolor-fb.c:
3803         Implemented gdk_colormap_query_color.
3804
3805 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3806
3807         * linux-fb/gdkcursor-fb.c:
3808         Don't leak built-in cursors.
3809
3810         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3811         Don't leak tmp_points.
3812
3813         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3814         Don't modify desc. Don't leak font if the PangoFont
3815         isn't found.
3816         
3817         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3818         Free dash_list.
3819
3820         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3821         Don't leak string.
3822         
3823 2001-01-20  Havoc Pennington  <hp@pobox.com>
3824
3825         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3826         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3827         me, matches Pango
3828
3829 2001-01-22  Havoc Pennington  <hp@redhat.com>
3830
3831         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3832
3833         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3834
3835         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3836         Remove, move back to gdk-pixbuf
3837
3838         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3839         to all the word functions
3840
3841         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3842         before doing anything on NULL layout or if we don't have the focus
3843
3844         * gtk/testtext.c (fill_example_buffer): "justification"
3845
3846         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3847         to be called "justification" not "justify"
3848
3849         * demos/gtk-demo/textview.c (create_tags): "justification"
3850         
3851         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3852
3853 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3854
3855         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3856         Don't leak visible_region. Use visible_region instead of region.
3857         
3858         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3859         Don't do extra gdk_drawable_ref(). This is not X.
3860         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3861         gdk_fb_focused_window is ref:ed.
3862         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3863         windows.
3864
3865 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3866
3867         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3868         Don't leak the PangoFontDescriptor.
3869
3870 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3871
3872         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3873         when not realized.
3874         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3875         (gtk_tree_view_realize): add scroll_to support
3876         (gtk_tree_view_finalize): add a finalize method.  Populate.
3877         (gtk_tree_view_insert_column): ref and sink the column.
3878         (gtk_tree_view_append_column): ref and sink the column.
3879         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3880         individual nodes.  Should make the code much more efficient, if
3881         actually used.
3882
3883 2001-01-19  Havoc Pennington  <hp@redhat.com>
3884
3885         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3886         byte_offset variable was being used to mean both "offset into
3887         layout" and "offset into buffer line" which was no longer true
3888         with addition of preedit string; fix
3889
3890 2001-01-19  Havoc Pennington  <hp@redhat.com>
3891
3892         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3893
3894         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3895         function
3896
3897         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3898         implement
3899
3900         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3901         scroll_to_cell, matches TextView scroll functions better
3902         (gtk_tree_view_tree_to_widget_coords): new function
3903         (gtk_tree_view_widget_to_tree_coords): new function
3904         (gtk_tree_view_get_visible_rect): new function
3905         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3906         (gtk_tree_view_draw_node_focus_rect): new function moved from
3907         draw_focus, also, use width of bin_window as width of the focus
3908         rect
3909         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3910         already-expanded rows
3911         (gtk_tree_view_get_cell_rect): new function
3912         (gtk_tree_view_get_path_at_pos): return the click position
3913         relative to the passed-in cell
3914         (gtk_tree_view_set_expander_column): new function
3915
3916         * configure.in: remove gtk-config-2.0 chmod
3917
3918         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3919         and properly handle drags with targets we don't understand
3920         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3921         scrolling anyway
3922         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3923         mark invisible
3924
3925         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3926         function
3927         (gtk_drag_dest_get_target_list): new function
3928         (gtk_drag_dest_set_target_list): new function
3929         
3930         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3931
3932         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3933         related to drag-and-drop
3934
3935 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3936
3937         * gdk/linux-fb/gdkprivate-fb.h:
3938         Define EMULATE_GDKFONT.
3939         Add extra pango_font stuff to GfkFontPrivate.
3940         
3941         * gdk/linux-fb/gdkdrawable-fb2.c:
3942         * gdk/linux-fb/gdkfont-fb.c:
3943         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3944         emulation using PangoFont.
3945
3946 2001-01-17  Havoc Pennington  <hp@pobox.com>
3947
3948         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3949         all the non-deprecated set_foo functions. Added missing object
3950         properties, and added g_object_notify() to setters. 
3951         Wrote docs.
3952         
3953 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3954
3955         * gtk/gtkmain.c
3956         * gtk/gtkrc.c: (Win32) Use the new
3957         g_win32_get_package_installation_(sub)directory() functions.
3958
3959         * config.h.win32.in: New file.
3960         
3961         * config.h.win32: Removed.
3962
3963         * configure.in: Output config.h.win32.
3964
3965         * Makefile.am: Add it to EXTRA_DIST.
3966
3967         * gtk/gtk.def: Update.
3968
3969 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3970
3971         * gtk/gtklabel.c (gtk_label_size_request): Set the
3972         attributes onto the PangoLayout even if they are newly
3973         created from label->pattern.
3974
3975 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3976
3977         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3978
3979         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3980         structures in functions. Fixes bug where gtk_dataset_*
3981         was accidentally still being used in one place, causing
3982         every dest side event to be treated independently.
3983
3984         * gtk/gtkdnd.c: Remove last vestages of handling
3985         ::draw (fixes warning)
3986         
3987         * gtk/gtkentry.[ch]: Add drag and drop support.
3988
3989         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3990         new function gtk_check_drag_threshhold() for checking
3991         to check if (dx,dy) has exceeded the threshhold for starting
3992         a drag and use it everywhere.
3993
3994 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3995
3996         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3997         add -I{includedir}/gtk-2.0.
3998
3999         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4000         gdk/gdk-pixbuf.h: Doc fixups.
4001         
4002         * gtk/gtkobject.h: Remove trailing , from enum
4003
4004 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4005
4006         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4007         Doh! Mixed up x and y.
4008
4009         * gdk/linux-fb/gdkglobals-fb.c:
4010         Removed gdk_fb_pointer_grab_window_events,
4011         added _gdk_fb_pointer_grab_owner_events and
4012         _gdk_fb_keyboard_grab_owner_events.
4013
4014         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4015         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4016         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4017         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4018         Send crossing events after ungrab finished.
4019         (gdk_keyboard_grab): Set ..._owner_events
4020         (type_masks): Move out of function.
4021         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4022         gdk_fb_keyboard_event_window): New functions, return the
4023         window an event should be targeted at. Handles grabs and
4024         event propagation. Can return NULL.
4025         (gdk_event_make): Remove event_mask checking. Now always
4026         returns an event.
4027                 
4028         * gdk/linux-fb/gdkkeyboard-fb.c:
4029         * gdk/linux-fb/gdkproperty-fb.c:
4030         * gdk/linux-fb/gdkselection-fb.c:
4031         Use new event_window/gdk_event_make() behaviour.
4032         
4033         * gdk/linux-fb/gdkmouse-fb.c:
4034         Use new event_window/gdk_event_make() behaviour.
4035         Only send motion events if in the same window.
4036         If grabbed, use cursor from window if sibling of grabbed
4037         window, and cursor from grabbed window otherwise.
4038
4039         * gdk/linux-fb/gdkprivate-fb.h:
4040         Update gdk_fb_window_send_crossing_events, gdk_event_make
4041         and grab varaible declarations. Add gdk_fb_*_event_window().
4042
4043         * gdk/linux-fb/gdkwindow-fb.c:
4044         Use new event_window/gdk_event_make() behaviour.
4045         Keep correct track of focus window.
4046         (gdk_window_set_events): Set all specific button motion masks
4047         if GDK_BUTTON_MOTION_MASK set.
4048
4049         * gtk/gtkdnd.c (gtk_drag_update):
4050         Free info->last_event if gdk_drag_motion returned FALSE.
4051
4052 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4053
4054         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4055         Eliminate redraws when input-only windows are shown or
4056         hidden. Thanks to jpe@archaeopteryx.com.
4057
4058 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4059
4060         * docs/faq/gtk-faq.sgml: FAQ update:
4061           - Update to bugzilla
4062           - Add GTK+ and security/SUID/SGID
4063           - Add DnD question
4064
4065 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4066
4067         * gdk/linux-fb/gdkdnd-fb.c:
4068         Some cleanups.
4069         
4070 2001-01-15  Havoc Pennington  <hp@pobox.com>
4071
4072         * tests/testtreeview.c: add test stuff for CellRendererToggle
4073
4074         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4075         accessor
4076
4077         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4078         only toggle on button press (would do release like GtkButton, but
4079         we'd need implicit grab code for treeview cells)
4080
4081 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4082
4083         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4084
4085         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4086         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4087
4088         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4089         to g_{locale,filename}_{to,from}_utf8 to match current API.
4090
4091         * gtk/makefile.msc.in (gtk_OBJECTS)
4092         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4093
4094         * gtk/gtk.def: Update.
4095
4096 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4097
4098         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4099         implementaion that more closely mimics the events that an X server
4100         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4101         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4102         with nested preview widgets, for instance, more responsive when
4103         you move the mouse quickly into them.
4104         (find_window_for_pointer_event): Make it actually compile.
4105         (gdk_event_translate): Set send_event to the value of
4106         InSendMessage (). This doesn't really mean the same as X11's
4107         send_event flag, but is close enough, says jpe@archaeopteryx.com
4108
4109 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4110
4111         * gdk/linux-fb/gdkdnd-fb.c:
4112         Implemented drag and drop.
4113         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4114         when it tries to free and then copy the same event (info->last_event).
4115         I am not sure about why this happens, but will continue looking.
4116
4117 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4118
4119         * gdk/linux-fb/gdkwindow-fb.c:
4120         Use gdk_window_invalidate_rect instead of
4121         gdk_window_invalidate_rect_clear to minimise flashing.
4122         When hiding windows you need to clear the root window though.
4123
4124 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4125
4126         * gdk/linux-fb/gdkdrawable-fb2.c:
4127         For optization, add an full_shapes argument to gdk_fb_clip_region.
4128         If this is false, only the cliprects of the shapes are used.
4129
4130         * gdk/linux-fb/gdkprivate-fb.h:
4131         Export gdk_fb_window_peek_shape.
4132         Add full_shapes to gdk_fb_clip_region.
4133
4134         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4135         When moving a window, don't clear everything under the it, just the
4136         root window. Makes stuff faster and flash less.
4137         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4138         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4139         offset of the shape.
4140         
4141
4142 2001-01-12  Havoc Pennington  <hp@redhat.com>
4143
4144         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4145         current invalid region, fixes redraw bug while scrolling the 
4146         text widget
4147
4148         * gtk/gtktextview.c, gtk/gtktextview.h:
4149         Rearrange the scrolling/validation/etc. code in a major way, 
4150         so it seems to make sense to me. Probably isn't genuinely that
4151         much better, but...
4152
4153         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4154         notifies
4155
4156         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4157
4158 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4159
4160         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4161         Hide mouse pointer while rotation. Show it afterwards.
4162
4163 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4164
4165         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4166         windows in consideration when generating clip region.
4167
4168         * gdk/linux-fb/gdkfb.h:
4169         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4170
4171         * gdk/linux-fb/gdkprivate-fb.h:
4172         Add shape to GdkWindowFBDatat.
4173         exported gdk_fb_window_get_abs_shape().
4174         removed gdk_fb_draw_lines declaration.
4175
4176         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4177         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4178         send focus changes when there is a grabbed window.
4179         (gdk_window_get_pointer): Handle shaped windows.
4180         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4181         (gdk_fb_window_peek_shape): Returns the shape for a window,
4182         handles GDK_FB_USE_CHILD_SHAPE.
4183         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4184         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4185         (gdk_window_shape_combine_mask): Implement.
4186
4187         * gtk/gtkwindow-decorate.c:
4188         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4189         setting the shape of a window makes the window transparent.
4190
4191 2001-01-11  Havoc Pennington  <hp@redhat.com>
4192
4193         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4194
4195 2001-01-10  Havoc Pennington  <hp@redhat.com>
4196
4197         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4198         add this function, bug 40251
4199
4200         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4201         of type macro   
4202
4203 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4204
4205         * acconfig.h:
4206         Added ENABLE_SHADOW_FB
4207
4208         * configure.in:
4209         Added --disable-shadowfb
4210
4211         * gdk/linux-fb/gdkcursor-fb.c:
4212         Update shadowfb when updating cursor
4213
4214         * gdk/linux-fb/gdkdrawable-fb2.c:
4215         Added wrappers for shadowfb that calls  the normal drawable
4216         methods, but calls gdk_shadow_fb_update(bounding box) when
4217         GdkWindows are drawed to.
4218         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4219         which also returns the bounding box.
4220
4221         * gdk/linux-fb/gdkfb.h:
4222         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4223
4224         * gdk/linux-fb/gdkgeometry-fb.c:
4225         Update shadowfb when scrolling window.
4226
4227         * gdk/linux-fb/gdkglobals-fb.c:
4228         Add _gdk_fb_screen_angle.
4229         
4230         * gdk/linux-fb/gdkkeyboard-fb.c:
4231         Test code for screen rotation. Shift-F2 in the xlate driver
4232         rotates the screen.
4233
4234         * gdk/linux-fb/gdkmain-fb.c:
4235         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4236
4237         * gdk/linux-fb/gdkmouse-fb.c:
4238         Use fb_width/height instead of modeinfo.xres/yres.
4239
4240         * gdk/linux-fb/gdkprivate-fb.h:
4241         Added fb_men, fb_width, fb_height & fb_stride. When using
4242         shadow fb these can differ from the framebuffer stuff.
4243         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4244         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4245         _gdk_fb_screen_angle. Removed CM, RP.
4246
4247         * gdk/linux-fb/gdkrender-fb.c:
4248         Added code for shadowfb handling and screen rotation using
4249         shadowfb.
4250
4251         * gdk/linux-fb/gdkwindow-fb.c:
4252         Use fb_mem, fb_stride, fb_width, fb_height.
4253         Added recompute_rowstride to reset the rowstride of all windows.
4254         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4255         window abs positions and window rowstrides. Usefull when the
4256         rotation has changed.
4257
4258 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4259
4260         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4261
4262 2001-01-10  Havoc Pennington  <hp@redhat.com>
4263
4264         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4265         where sibling == iter
4266         (gtk_tree_store_insert_after): handle sibling == iter
4267         (gtk_tree_store_prepend): remove stamp checks
4268         (gtk_tree_store_insert_before): ditto
4269         (gtk_tree_store_append): ditto
4270         (gtk_tree_store_get_path): ditto
4271         (gtk_tree_store_get_value): ditto
4272         (gtk_tree_store_iter_has_child): ditto
4273         (gtk_tree_store_iter_n_children): ditto
4274         (gtk_tree_store_iter_nth_child): ditto
4275         (gtk_tree_store_insert_after): ditto
4276         (gtk_tree_store_is_ancestor): ditto
4277         (gtk_tree_store_iter_depth): ditto
4278         (gtk_tree_store_insert_before): assert that sibling's parent is
4279         the same as the passed-in parent
4280         (gtk_tree_store_insert_after): assert that sibling's parent is
4281         the same as the passed-in parent
4282
4283         
4284         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4285         function to get the first iterator in a model
4286         
4287         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4288         conventionally the "root" in this sense is just NULL afaict.
4289
4290         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4291         where sibling == iter
4292         (gtk_list_store_insert_after): handle case where sibling == iter
4293
4294         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4295         automated tests for ListStore, TreeStore
4296
4297         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4298         (gtk_list_store_insert): update tail pointer, and fix it to work
4299         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4300         (gtk_list_store_append): use tail to be faster
4301         (gtk_list_store_prepend): fix it, update tail pointer
4302         (gtk_list_store_insert_after): fix it, update tail pointer
4303
4304         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4305         the list
4306
4307 2001-01-09  Havoc Pennington  <hp@redhat.com>
4308
4309         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4310         is NULL due to a pending resize
4311
4312         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4313         column width to values less than 1
4314
4315         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4316         width to be between min/max width, and still set the width 
4317         even if autosize is turned on, so the tree view can use this 
4318         function in order to autosize.
4319         (gtk_tree_view_column_init): set initial width to 1 not 0
4320
4321         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4322         setter function to modify column width, so we get notification
4323         (gtk_tree_view_insert_iter_height): ditto
4324         (gtk_tree_view_calc_size): ditto
4325         (gtk_tree_view_check_dirty): ditto
4326
4327         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4328         properties to change all the interesting attributes of the tree
4329         view column.
4330         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4331         (gtk_tree_view_column_get_clickable): add
4332         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4333         attributes; assume a cell renderer with equivalent object
4334         properties has been swapped in. Do g_object_notify().
4335         (gtk_tree_view_column_set_visible): g_object_notify
4336         (gtk_tree_view_column_get_sizing): rename from get_col_type
4337         (gtk_tree_view_column_set_sizing): g_object_notify
4338         (gtk_tree_view_column_set_width): add g_object_notify
4339         (gtk_tree_view_column_set_min_width): ditto
4340         (gtk_tree_view_column_set_max_width): ditto
4341         (gtk_tree_view_column_set_title): ditto
4342         (gtk_tree_view_column_set_clickable): ditto
4343         (gtk_tree_view_column_set_widget): ditto
4344         (gtk_tree_view_column_set_justification): ditto
4345
4346 2001-01-09  Havoc Pennington  <hp@redhat.com>
4347
4348         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4349         there are no rows in the model
4350
4351         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4352         NULL, then return the start of the list
4353
4354         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4355         if we can't get any rows from an empty model 
4356
4357         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4358         extraneous * after function pointer typedef usage
4359
4360         * Makefile.am: don't specify full path to cp and rm
4361
4362         * gtk/gtkcellrenderertextpixbuf.c
4363         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4364         NULL before dereferencing, fixes a segfault that happened from
4365         time to time
4366
4367         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4368         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4369         and reindent the function
4370         (gtk_cell_renderer_pixbuf_get_size): indentation
4371
4372         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4373         we quit it
4374         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4375         (gtk_dialog_set_default_response): New function, to set default
4376         button
4377         (gtk_dialog_set_response_sensitive): New function, to set 
4378         sensitivity of buttons
4379
4380         * gtk/gtkcellrendererpixbuf.c
4381         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4382         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4383
4384         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4385         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4386         also boxed types.
4387         (_gtk_tree_data_list_value_to_node): ditto
4388
4389         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4390         --gtk-debug=tree
4391
4392         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4393
4394         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4395
4396 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4397
4398         * gdk/win32/gdkevents-win32.c: Implement better mouse
4399         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4400         (find_window_for_pointer_event): New function.
4401         (gdk_event_translate): Use it when handling mouse events.
4402
4403 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4404
4405         * configure.in:
4406         Added --with-included-loaders option
4407
4408         * gdk-pixbuf/Makefile.am:
4409         * gdk-pixbuf/gdk-pixbuf-io.c:
4410         Add support for including selected gdk-pixbuf loaders only.
4411
4412         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4413         gtk_window_set_has_frame):
4414         Added inline documentation.
4415
4416         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4417         * docs/reference/gdk/tmpl/windows.sgml:
4418         Added inline documentation.
4419
4420 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4421
4422         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4423         realizing buttons that have already been realized.
4424
4425 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4426
4427         * tests/testtreeview.c (main): Show menu items before adding to
4428         option menu.
4429
4430         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4431         around if we kill them.
4432
4433         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4434         Return if we pass in a NULL model.
4435
4436 2001-01-08  Havoc Pennington  <hp@redhat.com>
4437
4438         * tests/testtreeview.c: hack on this some
4439
4440         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4441         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4442         list
4443         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4444
4445         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4446         functions
4447
4448 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4449
4450         * gtk/gtkwindow-decorate.[hc]:
4451         * gtk/Makefile.am:
4452         New files. Contains an implementation of a minimal WM for
4453         linux-fb.
4454
4455         * gtk/gtkwindow.h:
4456         Add the possibility for GtkWindows to specify a frame. This
4457         is used for the window decoration code, but could concievably
4458         be used for X programs too (xmms style windows).
4459         GtkWindow->frame is the toplevel window if the window is framed.
4460         The signal frame_event gets all events that are targeted to
4461         GtkWindow->frame.
4462         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4463         
4464         * gtk/gtkwindow.c:
4465         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4466         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4467
4468 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4469
4470         * docs/README.linux-fb:
4471         Correct filename ~/.pangoft2_aliases
4472
4473         * gdk/gdkwindow.h:
4474         Added new function gdk_window_get_decorations.
4475
4476         * gdk/linux-fb/gdkfb.h:
4477         Removed _gdk_window_get_decorations declaration.
4478         Renamed _gdk_window_set_child_handler to
4479         gdk_fb_window_set_child_handler.
4480
4481         * gdk/linux-fb/gdkwindow-fb.c:
4482         Renamed _gdk_window_set_child_handler to
4483         gdk_fb_window_set_child_handler.
4484
4485         * gdk/x11/gdkwindow-x11.c:
4486         New function gdk_window_get_mwm_hints().
4487         Implemented gdk_window_get_decorations.
4488
4489         * docs/reference/gdk/tmpl/windows.sgml:
4490         * docs/reference/gdk/gdk-sections.txt:
4491         Added gdk_window_get_decorations docs.
4492         
4493 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4494
4495         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4496         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4497         gdk_fb_window_send_crossing_events):
4498         Possibly send focus events when the mouse moves from one
4499         window to another.
4500
4501 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4502
4503         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4504         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4505         to match current API.
4506
4507         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4508         environment variable is set, don't call g_error when on a
4509         palettized (PseudoColor) display. Some people want to use GTK+ 
4510         in 256-colour mode even though works only partially.
4511
4512         * gdk/gdk.def
4513         * gtk/gtk.def
4514         * gtk/makefile.mingw.in: Update.
4515
4516 2001-01-05  Havoc Pennington  <hp@redhat.com>
4517
4518         * tests/testtreeview.c: hack on this a bit
4519
4520         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4521         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4522
4523         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4524         was spelled incorrectly
4525         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4526
4527         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4528         from gtk_tree_view_set_headers_active   
4529
4530         * gtk/gtktexttag.c:
4531         (gtk_text_tag_get_property): handle PROP_DIRECTION
4532         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4533         properties, bug 40235
4534
4535         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4536         forward_to_line_end
4537
4538 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4539
4540         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4541         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4542         for unicode,locale,filename conversion functions.
4543
4544 2001-01-05  Havoc Pennington  <hp@redhat.com>
4545
4546         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4547         broken if called on the first position in the buffer.
4548
4549         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4550         forward_to_delimiters to be called only if we aren't already at
4551         the delimiters.
4552
4553 2001-01-05  Havoc Pennington  <hp@redhat.com>
4554
4555         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4556
4557 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4558
4559         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4560         colormap in here. Sync from X port.
4561         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4562         Sync from X port.
4563         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4564         This happens now and then, and i don't think it is a bug.
4565         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4566         != endpoint.
4567         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4568         GDK_LINE_SOLID.
4569
4570         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4571         some of the fields filled in at least.
4572
4573         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4574         miLineArcD is no more, remove it from the function definition.
4575
4576 2001-01-04  Havoc Pennington  <hp@redhat.com>
4577
4578         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4579         this
4580
4581         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4582         user_data instead of tree_node
4583
4584         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4585         TREE_VIEW_COLUMN_SIZE
4586
4587         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4588         "size" field to "width" finishes bug 40061
4589
4590         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4591         for bitfields, bug 40268
4592
4593 2001-01-04  Havoc Pennington  <hp@redhat.com>
4594
4595         Rename some stuff:
4596         
4597         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4598
4599         s/GtkModelSimple/GtkTreeModelSimple/g;
4600         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4601         s/gtk_model_simple/gtk_tree_model_simple/g;
4602         s/gtkmodelsimple/gtktreemodelsimple/g;
4603
4604         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4605
4606         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4607         s/column_set_col_type/column_set_sizing/g;
4608
4609         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4610         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4611
4612         s/GtkCellRendererType/GtkCellRendererState/g;
4613         
4614         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4615         (gtk_cell_renderer_toggle_class_init): change "state" property to
4616         "active", to match GtkToggleButton
4617         (gtk_cell_renderer_toggle_get_active): new function, bug
4618         40269
4619         (gtk_cell_renderer_toggle_set_active): new function
4620         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4621         state through gtk_cell_renderer_set_active
4622
4623 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4624
4625         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4626         temporarily until they work again.  Brought up to date with
4627         changes in the model.
4628         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4629         model.
4630
4631 2001-01-04  Havoc Pennington  <hp@redhat.com>
4632
4633         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4634         equal to the line length, then position iterator before paragraph 
4635         separators. Fixes crash reported by Mikael Hermansson when
4636         pressing left arrow from the start of a line.   
4637
4638         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4639         about byte indexes off the end
4640         (iter_set_from_char_offset): add g_error about char offsets
4641         off the end
4642
4643 2001-01-03  Havoc Pennington  <hp@redhat.com>
4644
4645         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4646
4647         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4648         of private functions; remove inclusion of private headers.
4649
4650         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4651         function, so we don't need private functions in gtktextdisplay.c
4652
4653         * gtk/gtktextiterprivate.h: underscore-ification
4654
4655         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4656         to instead say "only useful to implement widgets"
4657
4658         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4659         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4660         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4661
4662         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4663         This function was completely broken
4664
4665         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4666
4667         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4668
4669         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4670
4671         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4672
4673         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4674
4675         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4676
4677         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4678         gtk_paint_layout
4679
4680         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4681         gtk_paint_layout
4682
4683         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4684         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4685         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4686         which were not implemented.     
4687
4688         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4689         insert_pixbuf signal. Rename delete_text to delete_range since it
4690         also deletes pixbufs and child anchors. This almost closes bug
4691         40245 (still need to deal with child anchors)
4692
4693         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4694         insert_pixbuf, change signal names as appropriate, change types of
4695         signals taking marks/tags to have the specific type, not just
4696         G_TYPE_OBJECT
4697         
4698         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4699         closes bug 40051
4700
4701         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4702         unnecessary remove_contents() call
4703         (gtk_option_menu_class_init): add a "changed" signal, closes
4704         bug 40039
4705         (gtk_option_menu_update_contents): emit "changed" if the 
4706         active menu item changes
4707
4708         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4709         cast to GtkObject, reported by Jonas Borgstrom
4710         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4711         we can't do stuff with side effects in finalize. Instead, spew a
4712         warning if the loader isn't closed.
4713
4714         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4715         colormap in here, non-X ports probably need to sync to this change
4716
4717         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4718         assertion that colormap != NULL, you can set the colormap to NULL
4719         if you like.
4720         
4721         * Makefile.am: remove gtk-config-2.0
4722
4723         * configure.in: Use pkg-config to locate GLib. Remove
4724         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4725         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4726         Use pkg-config to locate Pango. Output correct Pango libs to
4727         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4728
4729         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4730         files
4731         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4732         X11 pc files
4733
4734         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4735         unref from here
4736
4737 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4738
4739         * configure.in:
4740         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4741
4742 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4743
4744         * gtk/gtktextlayout.c
4745         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4746         variable when moving back onto a single line.
4747
4748 2001-01-01  Havoc Pennington  <hp@redhat.com>
4749
4750         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4751
4752         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4753
4754         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4755         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4756
4757 2001-01-01  Havoc Pennington  <hp@redhat.com>
4758
4759         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4760
4761         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4762         GtkTextAttributes
4763
4764         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4765         #40246
4766         (gtk_text_attributes_copy_values): rename from 
4767         gtk_text_attributes_copy
4768         (gtk_text_attributes_copy): a more standard GTK copy function, 
4769         which returns a new object
4770
4771 2001-01-01  Havoc Pennington  <hp@redhat.com>
4772
4773         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4774         
4775         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4776         don't fill in tree_view->priv->selection, kind of an unexpected
4777         side effect
4778
4779         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4780         gtkintl.h
4781         
4782         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4783         gtkintl.h
4784         (gtk_cell_renderer_get_property): remove calls to g_value_init
4785
4786         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4787         gtkintl.h
4788
4789         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4790         and include gtkintl.h
4791         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4792         property names
4793
4794         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4795         GtkTreeSelection
4796         (_gtk_tree_selection_new_from_with_view): rename, return
4797         GtkTreeSelection
4798         (_gtk_tree_selection_set_tree_view): rename with uscore
4799         (gtk_tree_selection_get_selected): fill in the "model" out param
4800         first, so it gets filled in even if we return at the top of the 
4801         function
4802         (gtk_tree_selection_real_select_all): add a comment and an else{}
4803         to clarify this a bit
4804         (gtk_tree_selection_real_unselect_all): add the same else{}
4805
4806         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4807         set_tree_view to have underscore prefixes, move them to the
4808         private header, fix return type of new_with_tree_view
4809         (struct _GtkTreeSelection): mark struct
4810         fields private  
4811
4812         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4813         GtkTreeModelFlags, not a guint
4814         (gtk_tree_path_prev): return gboolean not gint
4815         (gtk_tree_path_up): return gboolean not gint
4816
4817         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4818         return GtkTreeModelFlags, not a guint
4819
4820         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4821         that child model is non-null before unrefing it
4822         (g_value_int_compare_func): make this a qsort compare func, not 
4823         a boolean predicate
4824
4825         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4826         (add -umn to the end), and mark it unimplemented
4827         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4828         I don't see what it's for - doesn't the model always sort itself?
4829         (gtk_tree_model_sort_set_compare): this had the wrong signature
4830
4831         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4832         Fix the docs to say that it destructively replaces existing
4833         attributes (previously said that it added attributes).
4834         (gtk_tree_view_column_set_visible): canonicalize bool before
4835         equality testing. Also, check for realization before
4836         hiding/showing the tree_column->window; if this window could exist
4837         before realization, then it's busted and needs fixing, we can't 
4838         create GDK resources pre-realization. Also, remove
4839         superfluous queue_resize(), since set_size() does that for us.
4840         (gtk_tree_view_column_set_col_type): check realization before 
4841         using tree_column->window
4842
4843         * gtk/gtktreedatalist.c: fix filename in copyright notice
4844
4845 2000-12-31  Havoc Pennington  <hp@pobox.com>
4846
4847         * gtk/gtktextview.c: Rearrange all the
4848         scroll-while-dragging-or-selecting code to be different, not
4849         necessarily better. ;-)
4850         (gtk_text_view_scroll_to_mark): Change this
4851         function to take within_margin as a fraction instead of a pixel
4852         value, and to take alignment arguments (indicating where to align 
4853         the mark inside the visible area)
4854         
4855         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4856         to GtkObject
4857
4858         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4859         behavior so that offsets past the end of the line are not 
4860         allowed, and an offset equal to the line length moves the iterator
4861         to the next line
4862         (gtk_text_iter_set_line_index): make parallel change
4863         (gtk_text_iter_get_bytes_in_line): add this function
4864         
4865         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4866         of byte indexes off the end of the line; byte index at the end of
4867         the line now returns FALSE and doesn't fill in the requested
4868         values, byte index past the end of the line is an error.  Also,
4869         don't allow -1 offset anymore, since its meaning is unclear.
4870
4871         This change exposes some bug in visual cursor motion, where we
4872         end up with a huge invalid byte index; needs fixing. Symptom of 
4873         bug is a crash when you hit up arrow.
4874         
4875         (_gtk_text_line_char_locate): match the change to byte_locate
4876
4877         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4878         from start of line properly. fixes bug reported by Mikael
4879         Hermansson where backspace would delete all text before the
4880         cursor.
4881
4882 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4883
4884         * gdk/win32/gdkwindow-win32.c
4885         (gdk_window_impl_win32_get_visible_region): New function, as in
4886         the X11 backend.
4887         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4888         instead of duplicating the same code here.
4889
4890         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4891         GDK_COLORMAP macro.
4892
4893         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4894         destroy function.
4895         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4896         access that.
4897
4898         * gtk/gtk.def: Update.
4899
4900         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4901
4902 2000-12-30  Havoc Pennington  <hp@pobox.com>
4903
4904         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4905         colormap on input only windows, to avoid special cases all over
4906         the code for these windows.
4907
4908 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4909
4910         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4911         we are on a palettized display ("PseudoColor" in X11), as the code
4912         for that doesn't work anyway, and never has.
4913
4914 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4915
4916         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4917         Don't use isprint() for chars > 255.
4918
4919 2000-12-21  Havoc Pennington  <hp@redhat.com>
4920
4921         * tests/testtreeview.c: more work
4922
4923 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4924
4925         * docs/README.linux-fb:
4926         Update the docs to the new pangoft2 way.
4927
4928 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4929
4930         * configure.in:
4931         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4932         pango version.
4933         Remove modules/linux-fb/Makefile.
4934
4935         * gdk/linux-fb/gdkdrawable-fb2.c:
4936         Render glyphs using freetype.
4937
4938         * gdk/linux-fb/gdkfb.h:
4939         Add new fb-specific functions needed for managing windows.
4940
4941         * gdk/linux-fb/gdkmain-fb.c:
4942         Remove gdk_font_init/fini() calls.
4943
4944         * gdk/linux-fb/gdkpango-fb.c:
4945         Remove old implementation. Use pangoft2 instead.
4946
4947         * gdk/linux-fb/gdkprivate-fb.h:
4948         Remove PangoFBFont and related stuff.
4949
4950         * gdk/linux-fb/gdkwindow-fb.c:
4951         Implement drawable->get_visible_region.
4952         Implement support for _gdk_window_set_child_handler () and
4953         _gdk_window_get_decorations().
4954
4955         * modules/Makefile.am:
4956         Remove linux-fb subdir.
4957
4958         * modules/linux-fb/*:
4959         Removed all.
4960         
4961 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4962
4963         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4964         calls, as they are no longer needed.
4965
4966         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4967         
4968         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4969         figure out how to emit a signal on an interface.
4970
4971 2000-12-20  Havoc Pennington  <hp@redhat.com>
4972
4973         * tests: new directory to contain tests, gtk/test* should move
4974         here sometime (with appropriate on-cvs-server hackery)
4975
4976         * tests/testtreeview.c, tests/Makefile.am: a test
4977         
4978         * configure.in (AC_OUTPUT): add tests/Makefile
4979
4980         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4981         and "invisible_set" which were missing
4982
4983         * gtk/gtkrbtree.h: some cheesy indentation fix
4984         
4985 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4986
4987         * gtk/gtkinvisible.c (gtk_invisible_realize):
4988         Attach the style to the window so that the style it is not
4989         leaked when unrealizing the window.
4990
4991 2000-12-18  Havoc Pennington  <hp@redhat.com>
4992
4993         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4994         begin/end user action where appropriate
4995         (gtk_text_view_commit_handler): add begin/end user action
4996
4997         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4998         bracket interactive operations with begin/end user action pair.
4999         
5000         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5001         "interactive" arg from insert_text and delete_text signals.
5002         Add begin_user_action, end_user_action signals
5003         (gtk_text_buffer_begin_user_action): 
5004         (gtk_text_buffer_end_user_action): New functions to delimit 
5005         a user-visible action
5006
5007         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5008         signals.
5009         
5010 2000-12-18  Havoc Pennington  <hp@redhat.com>
5011
5012         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5013         was pretty non-working.
5014
5015         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5016         by passing the length to g_utf8_validate().
5017
5018 2000-12-16  Havoc Pennington  <hp@pobox.com>
5019
5020         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5021         Port to GObject, can go back in gdk-pixbuf after setting up 
5022         a gdk-pixbuf-marshal.h header over there.
5023
5024         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5025         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5026         args
5027         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5028         set
5029         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5030         here, do it when we create the buttons later
5031         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5032         (gtk_tree_view_map): paranoia checks that column->button is shown 
5033         and unmapped
5034         (gtk_tree_view_size_request): only request visible children.
5035         Move header size calculation in here, for cleanliness, and 
5036         to maintain invariants for child widgets if we eventually 
5037         let users set different children inside the buttons
5038         (gtk_tree_view_map_buttons): factor out code to map buttons,
5039         since it was being called several times
5040         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5041         windows instead of just moving them; their height may change 
5042         if we allow random widgets in there, or the theme changes.
5043         (gtk_tree_view_size_allocate): move button size allocation 
5044         above emitting the scroll signals, to ensure a sane state when we
5045         hit user code
5046         (gtk_tree_view_button_release): remove queue_resize after
5047         tree_view_set_size(), set_size() will handle any resize queuing
5048         that's needed
5049         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5050         draw_focus goo
5051         (gtk_tree_view_focus): use gtk_get_current_event() and
5052         gdk_event_get_state()
5053         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5054         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5055         semicolon
5056         (gtk_tree_view_create_button): show the button here
5057         (gtk_tree_view_button_clicked): actually emit the clicked signal
5058         on the column
5059         (_gtk_tree_view_set_size): return right away if the size is
5060         unchanged, as a cheesy optimization
5061         (gtk_tree_view_setup_model): rename set_model_realized to 
5062         setup_model to match the flag that indicates whether we've 
5063         called it
5064         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5065         exist, because set_scroll_adjustment does that and it shouldn't
5066         matter what order you call these in
5067         (gtk_tree_view_get_vadjustment): ditto
5068         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5069         for paranoia
5070         (gtk_tree_view_set_headers_visible): call
5071         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5072         (gtk_tree_view_append_column): clarify whether the return value
5073         is the count of columns before or after, and do the increment 
5074         separately from the return statement so you can tell from the code.
5075         (gtk_tree_view_remove_column): ditto
5076         (gtk_tree_view_insert_column): ditto
5077         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5078         outside the existing range, the docs say that outside-range
5079         columns are allowed, so we handle them as documented. (Presumably
5080         this allows a nice loop with column != NULL as test.)
5081         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5082         mean (left/right/center etc.).
5083         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5084         (gtk_tree_view_expand_row): add docs
5085         (gtk_tree_view_collapse_row): add docs
5086
5087         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5088         function to emit the clicked signal on a column
5089         
5090         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5091         state of an event
5092         (gdk_event_get_time): don't treat GDK_SCROLL 
5093         as a button event, remove default case from switch so gcc 
5094         will whine if we don't explicitly handle all event types
5095
5096         * gtk/gtktreeselection.h: added some FIXME 
5097         
5098         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5099         "columns" to "n_columns" and "column" to "columns" for clarity
5100
5101 2000-12-16  Havoc Pennington  <hp@pobox.com>
5102         
5103         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5104         stuff. This should make e.g. the delete key work again in the
5105         text widget...
5106         (gtk_text_iter_forward_cursor_positions): handle negative count
5107         (gtk_text_iter_backward_cursor_positions): handle negative count
5108         (gtk_text_iter_forward_word_ends): handle negative count
5109         (gtk_text_iter_backward_word_starts): handle negative count
5110
5111         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5112         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5113         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5114         GObject. No doubt will cause breakage.
5115
5116         * demos/gtk-demo/textview.c: remove hacks around
5117         non-GObject-ification of the text objects
5118
5119         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5120         the text tag
5121         
5122 2000-12-14  Havoc Pennington  <hp@pobox.com>
5123
5124         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5125         that we have Xrender
5126
5127 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5128
5129         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5130         Add two virtualized functions gdk_drawable_get_clip_region - to
5131         get the clip region when drawing.
5132         
5133         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5134         use invalidate_region.
5135
5136         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5137         region.
5138
5139         * acconfig.h configure.in: Check for Xft. For now, assume
5140         that if Xft is found, Pango was compiled with Xft support
5141         as well.
5142
5143         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5144         gdk_colormap_query_color().
5145         
5146         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5147         with Xft if appropriate.
5148
5149         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5150         a pangoxft context if we have XFT and the environment
5151         variable GD_USE_XFT is set.
5152         
5153         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5154         and also possibly an XftDraw structure.
5155
5156         * gtk/gtkfontsel.c: Handle the case where the font from the
5157         style doesn't match any of the fonts a bit better.
5158         
5159         * gtk/testgtk.c: Add tabs between directional segments for
5160         hebrew/arabic test. (Not really necessary, just a little
5161         prettier.)
5162
5163 2000-12-14  Havoc Pennington  <hp@redhat.com>
5164
5165         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5166         reading a file
5167
5168 2000-12-14  Havoc Pennington  <hp@redhat.com>
5169
5170         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5171         unused call to get_last_line()
5172
5173         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5174         here until boxed is working (and maybe after that - we should
5175         really not gratuitously break old code)
5176
5177         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5178         specific types for font_desc and tabs args, move them to
5179         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5180         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5181
5182         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5183         use GTK_TYPE_POINTER for signal signatures as a hack-around
5184
5185         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5186         PangoTabArray
5187
5188         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5189         make static
5190         (line_display_index_to_iter): make static
5191
5192         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5193         to marshal a string not a boxed
5194
5195         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5196
5197         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5198         since the UTF-8 isn't validated yet
5199
5200         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5201         lines to end in '\n'
5202         
5203         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5204         forward_to_delimiters, and grapheme boundaries
5205         (gtk_text_view_delete_from_cursor): properly handle non-newline
5206         delimiters, and grapheme boundaries
5207
5208         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5209         to gtk_text_iter_forward_to_delimiters, and make it work properly
5210         if empty lines end with a character other than '\n'
5211
5212         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5213         position
5214
5215 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5216
5217         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5218
5219         * gtk/gtk.def
5220         * gdk/gdk.def: Update.
5221
5222         * gdk/win32/gdkmain-win32.c
5223         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5224         gdkmain-win32.c here.
5225
5226         * gdk/win32/makefile.mingw.in (all): No need to make
5227         gdk-win32res.o here, the makefile one step up will call us to make
5228         it.
5229
5230         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5231         gdkkeys-win32.
5232
5233         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5234
5235         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5236         call to g_source_add().
5237
5238         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5239         leak. Thanks to Andreas Kemnade.
5240
5241 2000-12-13  Havoc Pennington  <hp@pobox.com>
5242
5243         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5244
5245         * gtk/gtktext*.[hc]: update accordingly
5246         
5247 2000-12-13  Havoc Pennington  <hp@pobox.com>
5248
5249         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5250         header file
5251
5252         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5253
5254 2000-12-13  Alex Larsson  <alexl@redhat.com>
5255
5256         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5257         Add support for ps2 intellimouse.
5258
5259         * gdkkeyboard-fb.c:
5260         Move shift-F1 repaint handling to xlate handler only.
5261         
5262         * docs/README.linux-fb:
5263         Add imps2 to docs.
5264         Document the new refresh keys.
5265         
5266 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5267
5268         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5269
5270         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5271         ::position and ::padding.
5272
5273         * gtk/gtkcontainer.c: make ::border_width an INT property.
5274
5275         * gtk/gtkpacker.c: make ::position an INT property.
5276
5277         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5278         guard against NULL h/v scrollbars, since this is used at construction
5279         time.
5280
5281         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5282         internal gtk_clist_constructor().
5283
5284         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5285         gtk_ctree_constructor().
5286
5287         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5288         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5289
5290         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5291         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5292
5293         * gtk/gtkwidget.[hc]:
5294         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5295         and gtk_widget_get().
5296         (gtk_widget_new): use g_object_new_valist().
5297         (gtk_widget_set): use g_object_set_valist().
5298
5299         * gtk/gtkobject.[hc]:
5300         removed gtk_object_arg_get_info(), gtk_object_getv(),
5301         gtk_object_query_args(), gtk_object_newv(),
5302         gtk_object_class_add_signals(),
5303         gtk_object_class_user_signal_new(),
5304         gtk_object_class_user_signal_newv(),
5305         gtk_object_arg_set(), gtk_object_arg_get(),
5306         gtk_object_args_collect(),
5307         gtk_object_default_construct(),
5308         gtk_object_constructed(),
5309         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5310         removed nsignals, signals and n_args members from GtkObjectClass.
5311         (gtk_object_new): use g_object_new_valist().
5312         (gtk_object_set): use g_object_set_valist().
5313         (gtk_object_get): use g_object_get_valist().
5314         
5315         * gtk/gtkcompat.h: define gtk_object_default_construct().
5316         
5317         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5318         g_object_new().
5319
5320         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5321         fucntions, cleaned up method assignments (make sure your structures
5322         are setup properly before calling out). removed all GTK_CONSTRUCTED
5323         hacks ;)
5324
5325 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5326
5327         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5328         off-by-one error in checks. (Dave Lambert)
5329
5330 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5331
5332         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5333         Don't free gdk_fb_keyboard twice.
5334
5335 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5336
5337         * gtk/testgtk.c:
5338         (create_tooltips): 
5339         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5340         use GObject swapped_signal:: properties instead.
5341
5342         * gtk/gtkcellrenderertoggle.c: 
5343         * gtk/gtkcellrenderertextpixbuf.c: 
5344         * gtk/gtkcellrenderertext.c: 
5345         * gtk/gtkcellrendererpixbuf.c: 
5346         * gtk/gtkcellrenderer.c:
5347         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5348         missing warnings for invalid property ids, install properties
5349         with g_object_class_install_property() now.
5350         
5351         * gtk/gtksignal.c:
5352         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5353         
5354 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5355         
5356         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5357         to determine if a window is the focus widget within
5358         its toplevel.
5359
5360         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5361         to be boolean.
5362
5363         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5364         of the case where the container CAN_FOCUS to here instead
5365         of having it in each individual move-the-focus place.
5366
5367         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5368         focusing to be geometric in a much more obvious sense. Arrowing
5369         around is still non-intuitive because it isn't perfect and
5370         because entries, etc, grab the arrow keys, but it at least
5371         usually will do what you expect now.
5372         
5373         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5374         file.
5375
5376         * gtk/gtknotebook.c: Change tabs to be a single item in
5377         the focus chain. Make movement of focus on tabs with arrow
5378         keys wrap around.
5379         
5380         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5381         CHECK_FIND_CHILD macro to give informative error messages
5382         instead of silent returns.
5383
5384         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5385         flag since we handle GdkReturn on the tabs.
5386
5387         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5388         windows rather than sending expose events directly.
5389
5390         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5391         definition for GtkNotebookPage into .c file, since it is private.
5392
5393         * gtk/testgtk.c (create_notebook): Add option for 
5394         testing borderless notebook.
5395
5396         * gtk/testgtk.c (page_switch): Removed egregious poking
5397         around in GTK+ internals.
5398
5399         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5400
5401         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5402         properly through gtk_clist_focus. Make the title headers a
5403         single item in the tab-focus chain, and make left-right wrap
5404         around.
5405
5406         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5407         focus method so that wrapping around works properly.
5408
5409         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5410         that is handled for the widget now. 
5411
5412 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5413
5414         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5415         widgets as TOPLEVEL.
5416
5417         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5418         TOPLEVEL widgets are containers.
5419
5420         * gtk/gtkinvisible.h: Remove useless include.
5421
5422 2000-12-11  Havoc Pennington  <hp@redhat.com>
5423
5424         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5425         Handle chopping off \r\n and 0x2029 in addition to \n before
5426         passing to PangoLayout
5427
5428         * gtk/gtkimcontextsimple.c
5429         (gtk_im_context_simple_get_preedit_string): 
5430         return an empty string if no match is pending
5431
5432         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5433         assertion that the returned preedit string was sane
5434
5435         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5436         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5437         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5438
5439 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5440
5441         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5442         Fix up finalizer to chain to its parent.
5443
5444 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5445
5446         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5447         Clearified the difference between the keyboard types. Wrote a note
5448         about the magic sysrq key to get out of raw mode.
5449
5450 2000-12-09  James Henstridge  <james@daa.com.au>
5451
5452         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5453         member to hold masks for detecting the start of a protocol packet.
5454         (mouse_devs): add packet start masks for ps2 and ms device types.
5455         Left the mask for fidmour blank, as I have no idea what it should
5456         be.
5457         (handle_mouse_io): skip bytes until we get to the start of a
5458         packet.  My Logitech mouse seems to be passing an extra NULL pad
5459         byte, and GPM does a similar thing here.
5460         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5461         this is the ms mouse driver.
5462         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5463         completely broken except for button1.  It was checking the wrong
5464         bit in the packet for the status of the right mouse button, and
5465         wrongly assuming right == button2 rather than 3.  I fixed that and
5466         also added support for middle button (button2).
5467
5468 2000-12-08  Havoc Pennington  <hp@redhat.com>
5469
5470         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5471         that cause a segfault on text insertion
5472
5473         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5474         warning
5475
5476         * gtk/gtktextiter.c (test_log_attrs): use
5477         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5478
5479         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5480         Get log attrs for a line, using a cache stored on the buffer
5481         
5482         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5483         reported by Jeff Franks
5484
5485 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5486
5487         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5488         /dev/ttyS0 -> /dev/mouse
5489
5490 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5491
5492         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5493         Added dummy gdk_fontset_load.
5494
5495 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5496
5497         * docs/README.linux-fb:
5498         * docs/Makefile.am:
5499         Initial GtkFB docs.
5500         
5501         * gdk/linux-fb/Makefile.am:
5502         Define GDK_DATA_PREFIX.
5503
5504         * gdk/linux-fb/gdkmain-fb.c:
5505         Fix typo.
5506         Change default display to /dev/fb0.
5507
5508         * gdk/linux-fb/gdkpango-fb.c:
5509         Add $(prefix)/share/fonts/ to font path.
5510         
5511 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5512
5513         * gdk/linux-fb/gdkkeyboard-fb.c:
5514         New file containing the abstracted keyboard driver. Most code
5515         taken from gdkinput-ps2.c
5516
5517         * gdk/linux-fb/gdkinput-ps2.c:
5518         Removed file.
5519         
5520         * gdk/linux-fb/Makefile.am:
5521         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5522
5523         * gdk/linux-fb/gdkcolor-fb.c:
5524         display->fb was renamed to display->fb_fd.
5525
5526         * gdk/linux-fb/gdkcursor-fb.c:
5527         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5528
5529         * gdk/linux-fb/gdkinput.c:
5530         Moved gdk_input_init here from gdkinput-ps2.c
5531
5532         * gdk/linux-fb/gdkmain-fb.c:
5533         display->fb was renamed to display->fb_fd.
5534         Now the tty and the console is opened here instead
5535         of in the keyboard driver. Also check GDK_VT to see what
5536         tty to open.
5537         Move gdk_beep () here from gdkinput-ps2.c
5538         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5539
5540         * gdk/linux-fb/gdkmouse-fb.c:
5541         Add header.
5542         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5543         Return correct keyboard modifiers.
5544         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5545
5546         * gdk/linux-fb/gdkprivate-fb.h:
5547         Add tty and vt info to display.
5548         Add orignal modeinfo storage to display
5549         Update global functions
5550
5551         * gdk/linux-fb/gdkwindow-fb.c:
5552         Added gdk_fb_window_find_focus().
5553         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5554
5555 2000-12-07  Havoc Pennington  <hp@pobox.com>
5556
5557         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5558         function, noticed by Alex
5559
5560 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5561
5562         * configure.in: Detect freetype properly
5563
5564         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5565         above.
5566
5567 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5568
5569         * gdk/linux-fb/Makefile.am:
5570         Add gdkmouse-fb.c
5571         
5572         * gdk/linux-fb/gdkmouse-fb.c:
5573         New file. Abstracted the mouse drivers a bit.
5574
5575         * gdk/linux-fb/gdkcursor-fb.c:
5576         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5577
5578         * gdk/linux-fb/gdkinput-ps2.c:
5579         Removed old mouse handling code. Moved cursor handling code
5580         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5581         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5582         gdk_mouse_get_info.
5583
5584         * gdk/linux-fb/gdkmain-fb.c:
5585         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5586
5587         * gdk/linux-fb/gdkprivate-fb.h:
5588         Removed public gdk_fb_find_common_ancestor, added and renamed
5589         functions for the new mouse handling code.
5590
5591         * gdk/linux-fb/gdkwindow-fb.c:
5592         Moved gdk_fb_window_send_crossing_events here. added global
5593         variable gdk_fb_window_containing_pointer. made
5594         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5595         renamed to gdk_mouse_get_info.
5596
5597 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5598
5599         * gdk/linux-fb/gdkevents-fb.c:
5600         Update to match latest gmain/gsource changes.
5601
5602         * gdk/linux-fb/gdkinput-ps2.c:
5603         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5604         it links. Will be implemented later.
5605
5606 2000-12-03  Havoc Pennington  <hp@pobox.com>
5607
5608         * gdk/Makefile.am: add gdkkeys.[hc]
5609
5610         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5611         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5612
5613         * acconfig.h, configure.in: add checks and command line options
5614         for XKB
5615
5616         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5617         
5618         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5619         and group in the key event
5620
5621         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5622         field with the low-level hardware key code, and a group
5623         field with the keyboard group
5624
5625         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5626         and declare a couple globals used for keymap handling
5627         
5628         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5629         hold down Shift-Control and type a hex number to get a Unicode 
5630         character corresponding to the hex number
5631         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5632         (return bytes not chars)
5633
5634 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5635
5636         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5637         to avoid waste on 64-bit platforms.
5638
5639 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5640
5641         * INSTALL: Fix link to PNG home, remove reference
5642         to fribidi.
5643
5644         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5645         
5646         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5647         tested.)
5648
5649         * gtk/gtkcheckmenuitem.c: Permanently turn on
5650         always_show_toggle.
5651
5652         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5653         be NULL. (Vladimir Klebanov, #26545)
5654
5655         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5656         some signed/unsigned comparison problems. (#6510,
5657         David Kaelbling)
5658
5659         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5660         return type to boolean (Oskar Liljeblad, #18648)
5661
5662 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5663
5664         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5665         Remove bogus colormap setting.
5666
5667 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5668
5669         * gdk/linux-fb/gdkcolor-fb.c:
5670         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5671
5672         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5673         Must set colormap.
5674         
5675 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5676
5677         * docs/tutorial/gtk-tut.sgml: DND updates
5678
5679 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5680
5681         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5682         Remove old debug g_warning().
5683         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5684         or an implementation, just pass the implementation to draw_drawable_2.
5685         
5686         * gdk/linux-fb/gdkprivate-fb.h:
5687         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5688
5689         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5690         clear and invalidate area when window is destroyed.
5691         (send_map_events): Remove old commented out code.
5692
5693 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5694
5695         * gdk/linux-fb/gdkpango-fb.c:
5696         Use italic instead of oblique in font aliases.
5697         
5698         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5699         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5700         other unsupported functions.
5701
5702 2000-12-04  Havoc Pennington  <hp@redhat.com>
5703
5704         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5705
5706         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5707
5708         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5709
5710         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5711         hack to avoid infinite loops (synthetic expose event) - 
5712         Owen has more appropriate fixes in a branch he'll check in later.
5713
5714         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5715         separator, CR, and CRLF as line ends
5716
5717         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5718         into lines using pango_find_paragraph_boundary(); other bits of
5719         the widget are still going to be broken if the boundary isn't '\n'
5720         though
5721
5722 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5723
5724         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5725         multiply.
5726
5727         * gdk/linux-fb/gdkpango-fb.c:
5728         Copied some 26.6 scaling macros from pango to clean up the rounding.
5729         (pango_fb_font_get_glyph_info): Correct sign on x value.
5730
5731         * gdk/linux-fb/gdkprivate-fb.h:
5732         Removed unreferenced external functions.
5733
5734         * modules/linux-fb/Makefile.am: Use ` instead of '.
5735
5736         * modules/linux-fb/basic.c:
5737         Remove dead code. In particular the dummy lang engine which broke all
5738         pango layouts in GtkFB. Don't include tables-big.i anymore.
5739
5740         * modules/linux-fb/tables-big.i:
5741         Upgrade to latest version from pango. Left for reference, basic_ranges
5742         moved to basic.c.
5743         
5744 2000-12-04  Havoc Pennington  <hp@redhat.com>
5745
5746         Fix bugs Alex found:
5747         
5748         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5749         to "draw"
5750
5751         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5752
5753         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5754
5755         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5756         implementation in here, apparently the expose() implementation was
5757         dead code.
5758
5759 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5760
5761         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5762         Return positive descent.
5763
5764 2000-12-02  Havoc Pennington  <hp@pobox.com>
5765
5766         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5767         method and signal
5768         
5769         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5770         calls gdk_window_process_updates() to push the exposes through
5771         (gtk_widget_class_init): No more draw signal, no
5772         gtk_widget_real_draw()  
5773         
5774         * gtk/gtkbin.c (gtk_bin_draw): remove
5775
5776         * gtk/gtkbox.c (gtk_box_draw): remove
5777
5778         * gtk/gtkbutton.c (gtk_button_draw): remove
5779
5780         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5781
5782         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5783
5784         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5785
5786         * gtk/gtkclist.c (gtk_clist_draw): remove
5787
5788         * gtk/gtkentry.c (gtk_entry_draw): remove
5789
5790         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5791
5792         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5793
5794         * gtk/gtkframe.c (gtk_frame_draw): remove
5795
5796         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5797
5798         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5799
5800         * gtk/gtklayout.c (gtk_layout_draw): remove
5801
5802         * gtk/gtklist.c (gtk_list_draw): remove
5803
5804         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5805
5806         * gtk/gtkmenu.c (gtk_menu_draw): remove
5807
5808         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5809
5810         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5811
5812         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5813
5814         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5815
5816         * gtk/gtkpacker.c (gtk_packer_draw): remove
5817
5818         * gtk/gtkrange.c (gtk_range_draw): remove
5819
5820         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5821
5822         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5823
5824         * gtk/gtktable.c (gtk_table_draw): remove
5825
5826         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5827
5828         * gtk/gtktext.c (gtk_text_draw): remove
5829
5830         * gtk/gtktextview.c (gtk_text_view_draw): remove
5831
5832         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5833
5834         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5835
5836         * gtk/gtktree.c (gtk_tree_draw): remove
5837
5838         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5839
5840         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5841
5842         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5843
5844         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5845
5846         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5847
5848         * gtk/gtkwindow.c (gtk_window_draw): remove
5849
5850 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5851
5852         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5853         a GtkToggleButton is both insensitive and active, it was being
5854         drawn by the GtkButton draw handler which doesn't check the
5855         state. Now it's calling gtk_toggle_button_paint instead.
5856         
5857 2000-12-01  Havoc Pennington  <hp@redhat.com>
5858
5859         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5860         dangling pointers to the appearance attributes from the 
5861         line display
5862
5863         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5864         width/height to mean "full width/height of drawable"
5865
5866         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5867         click to select word/line
5868         
5869         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5870         when getting log attrs. Get a slice, so that pixmaps and stuff
5871         are properly handled.
5872
5873         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5874         paste into the selection (replaces selection now, previously
5875         crashed or added to selection). Reveals longstanding btree bug -
5876         select multiple lines, middle-click on the selection, boom. This
5877         isn't related to my changes though.
5878
5879         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5880         PangoLogAttrs changes
5881         (gtk_entry_move_backward_word): ditto
5882
5883         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5884         functions return bool whether the iter moved onto a
5885         dereferenceable position.
5886  
5887         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5888         functions for motion in terms of display lines.
5889
5890         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5891         get the buffer a mark is inside
5892         
5893 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5894
5895         * gdk/linux-fb/Makefile.am:
5896         * modules/linux-fb/Makefile.am:
5897         Freetype 2 final uses freetype-config
5898
5899         * gdk/linux-fb/gdkpango-fb.c:
5900         Upgrade to use Freetype 2 final.
5901         More flexible support for font aliases, this also fixes a bug with
5902         GtkFontSelector, as the aliases must be visible in the font/family list,
5903         or GtkFontSelector reads uninitialized memory.
5904
5905 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5906
5907         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5908         XGetIMValues to properly terminate variable argument list, and do
5909         NULL return check for ic_values and xim_styles.
5910
5911         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5912         Restore preedit state after XmbResetIC().
5913         
5914         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5915         XvaCreateNestedList() should take XvaNestedList, but not
5916         XvaNestedList*.
5917
5918         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5919         preedit_draw_callback, preedit_caret_callback): Match
5920         "preedit-changed" signal name to "preedit_changed" to be
5921         consistent to the spec.
5922
5923         * gtk/gtkimcontextsimple.c (check_table):
5924         Match "preedit-changed" to "preedit_changed" to be consistent
5925         to the spec.
5926
5927 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5928
5929         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5930         gc->clip_region == NULL>
5931
5932 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5933
5934         Changes by Hans Breuer:
5935         
5936         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5937         Dont't use negative width and height as max_hints. This fixes
5938         Owen's recent testgtk changes for win32.
5939
5940         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5941         gdk_win32_hdc_release): These are exported and may be called with
5942         other drawable types than our GdkDrawableImplWin32 (?).
5943
5944         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5945         so always #define USE_BACKING_STORE.
5946
5947         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5948         of printf for debugging output.
5949
5950         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5951         
5952         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5953
5954         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5955         declaration.
5956
5957         * gtk/gtktexttypes.h: Ditto.
5958
5959         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5960         (GDK_VoidSymbol) also if in case of arg check failure.
5961
5962         * gtk/gtkimcontextsimple.c
5963         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5964         position to the pointer, but to the variable it points to.
5965
5966         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5967
5968         * gtk/gtk.def: Updates.
5969
5970 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5971
5972         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5973         GTK_TYPE_TREE_MODEL.
5974
5975 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5976
5977         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5978         Set the size of the font from the description.
5979         (gdk_text_width): Gross hack that calculates the width
5980         of text by text_length * size/2. This is necessary because
5981         GtkLabel does some ugly gtk_string_width call to calculate
5982         an good size.
5983         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5984
5985 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5986
5987         * docs/tutorial/gtk-tut.sgml: DND updates
5988
5989 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5990
5991         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5992         If you pass width or height == 0 to gdk_window_clear_area they
5993         should be calculated from the window size.
5994
5995 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5996
5997         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5998         a grab, but no grab-cursor, use the cursor from the grabbed
5999         window. (gdk_fb_window_send_crossing_events): Send normal
6000         enter/leave notifications if grab and owner_events == TRUE.
6001
6002 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6003
6004         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6005         Do implicit button grabs, even if the window doesn't
6006         want the event.
6007         (gdk_fb_window_send_crossing_events): If there is a
6008         grab, only the grabbed window gets normal enter/leave
6009         notifications. On ungrab go from grabbed window to current.
6010         Don't send any notification to b when propagating from c -> b.
6011         If setting a grab on window, don't set prev_window.
6012         (handle_mouse_input): Send enter/leave events to the window the
6013         mouse is over, not the grabbed one.
6014         
6015 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6016
6017         * gdk/gdkregion-generic.c: Zap warning.
6018         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6019         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6020
6021 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6022
6023         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6024         The cursor should be hidden if it is part of either the
6025         source or destination region. Not only if it is in both.
6026         (gdk_window_set_transient_for): Silence warnings.
6027
6028 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6029
6030         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6031         The default mode in X is Pie Arcs, therefore that is
6032         what Gtk+ uses.
6033
6034 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6035
6036         * gdk/linux-fb/gdkinput-ps2.c:
6037         Implement correct EnterNotify/LeaveNotify:
6038         (gdk_fb_window_send_crossing_events): New function that sends
6039         all GdkCrossingEvents from the last mouse-window to the specified
6040         destination.
6041         (gdk_fb_window_visibility_crossing): Removed function.
6042         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6043         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6044         instead of gdk_window_get_pointer() for better readability.
6045
6046         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6047         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6048
6049         * gdk/linux-fb/gdkprivate-fb.h:
6050         removed gdk_fb_window_visibility_crossing, added
6051         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6052
6053         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6054         New function that finds the least common ancestor of two windows.
6055         (gdk_window_show, gdk_window_hide):
6056         Use gdk_fb_window_send_crossing_events.
6057         (gdk_fb_window_move_resize): Send configure events to toplevel
6058         windows. Use gdk_fb_window_send_crossing_events.
6059
6060 2000-11-27  Havoc Pennington  <hp@redhat.com>
6061
6062         * gtk/gtkprivate.h (enum): Remove a trailing comma
6063
6064 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6065
6066         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6067         the "changed" callback of the adjustment.  We need to redraw the
6068         spin button's arrows when the adjustment's range changes.
6069         (adjustment_changed_cb): Draw the arrows.
6070         (gtk_spin_button_value_changed): Draw the arrows.
6071
6072 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6073
6074         * gdk/linux-fb/gdkselection-fb.c:
6075         Initial selection implementation.
6076
6077         * gtk/gtkselection.c:
6078         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6079         requestor in gtk_selection_request.
6080         
6081         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6082         Added gdk_selection_property atom.
6083
6084         * gdk/linux-fb/gdkprivate-fb.h:
6085         Export _gdk_selection_window_destroyed.
6086         Removed mask_off_x/y from GdkCursorPrivateFB.
6087         Removed hbearing, added top, left to PangoFBGlyphInfo.
6088
6089         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6090         Call _gdk_selection_window_destroyed
6091         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6092         the root window has been created.
6093         (static_dx_hack, static_dy_hack, compare_draw_rects,
6094         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6095         in region. They are already sorted. Instead just traverse them in
6096         reverse if draw_direction < 0.
6097         
6098         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6099         Double-clicks must be sent after the normal button_press.
6100         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6101         
6102         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6103         Pass _gdk_fb_screen_gc instead of NULL.
6104
6105         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6106         Initialize gdk_selection_property.
6107         (gdk_event_make): Remove unused code.
6108
6109         * gdk/linux-fb/gdkcursor-fb.c:
6110         Make the pixmap for the cursor the same size as the mask. Also remove
6111         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6112         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6113         Now the whole cursor is visible.
6114
6115         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6116         Fix bug where xdest+height instead of ydest+height was used
6117         to calculate if the source and dest overlapped. This fixes the
6118         redraw bug when the main window in testgtk was scrolled when
6119         partially covered by a tall window.
6120         Copy rectangles in region in order depending on draw_direction.
6121         Also moved the draw_direction flipping of start_y and end_y into
6122         the gc functions, as this might not be what all of them want.
6123         (gdk_fb_draw_lines): Support dashed lines.
6124         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6125         so that the text is positioned correctly (was 1 pixel high).
6126
6127         gdk/linux-fb/gdkgc-fb.c:
6128         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6129         all lines were drawn a pixel to short. Also checked the default of
6130         the rest of the values, and they're the same as X now.
6131
6132         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6133         Clean up pixel positioning of the glyphs. Just use bgy->top and
6134         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6135         to all divisions to get correct rounding behaviour.
6136
6137         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6138         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6139         Moved start_y/end_y flip into draw_drawable implementations.
6140         Flip also x rendering when draw_direction < 0.
6141         Remove unneccesary multiply with draw_direction.
6142
6143 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6144
6145         * docs/tutorial/gtk-tut.sgml:
6146           - get rid of gtk_toggle_button_toggled FUD
6147           - start DND section - needs work - based on:
6148                 http://wolfpack.twu.net/docs/gtkdnd/
6149
6150 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6151
6152         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6153         Correct calculation of font metrics. Now GtkEntrys have sane
6154         size.
6155
6156 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6157
6158         * gdk/gdktypes.h:
6159         Add new type GdkSpan
6160         
6161         * docs/reference/gdk/gdk-sections.txt,
6162         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6163         gdk/gdkregion.h:
6164         Implement and document gdk_region_spans_intersect_foreach.
6165
6166         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6167         Add new file gdkrender-fb.c which contains all core
6168         rendering code.
6169         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6170         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6171         (optimized rectangle fillers).
6172
6173         * gdk/linux-fb/gdkdrawable-fb2.c:
6174         Move all rendering code to gdkrender-fb.c.
6175         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6176         Use the new span intersection functions in gdk_fb_fill_spans.
6177         gdk_fb_draw_rectangle() clips filled rectangles and calls
6178         gc->fill_rectangle with the result.
6179         gdk_fb_fill_spans() gets extra argument "sorted".
6180
6181         * gdk/linux-fb/gdkevents-fb.c:
6182         Remove unused includes and defines.
6183         New function gdk_fb_get_time() to get correct time for events.
6184
6185         * gdk/linux-fb/gdkinput-ps2.c:
6186         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6187         Make sure to set the time of all events.
6188
6189         * gdk/linux-fb/gdkmain-fb.c:
6190         Use gdk_fb_get_time ().
6191
6192         * gdk/linux-fb/gdkprivate-fb.h:
6193         New virtual GC calls: fill_span & fill_rectangle.
6194         Export gdk_fb_get_time().
6195         gdk_fb_fill_spans() gets extra argument "sorted".
6196
6197         * gdk/linux-fb/mi*.c:
6198         Use GdkSpan instead of GdkRectangle.
6199         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6200         from XFree 4 source)
6201         
6202 2000-11-22    <jrb@redhat.com>
6203
6204         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6205         reversing the order in an if statement will do.  Doing so managed
6206         to make the treemodelsort half work.  Other half will follow after
6207         I get the insert function fully fixed.
6208
6209 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6210         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6211         more than 2 bits. Besides, I need to implement an evil hack. :)
6212
6213 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6214
6215         * docs/tutorial/gtk-tut.sgml: minor corrections
6216
6217 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6218         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6219           convert to and from relative path's and iters.
6220
6221         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6222           testing sorting functions a bit better.  Currently broken -- will
6223           fix in morning.
6224
6225 2000-11-20  Havoc Pennington  <hp@redhat.com>
6226
6227         * gtk/gtkwidget.c: Documented a bunch of functions in here
6228         (gtk_widget_realize): Warn if you try to realize
6229         a widget with no parent that isn't a toplevel
6230         (gtk_widget_intersect): return a gboolean
6231
6232 2000-11-20  Havoc Pennington  <hp@redhat.com>
6233
6234         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6235         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6236         scrolling to be implemented in GDK to finish. Also, right now
6237         we just size_allocate all children on every layout change,
6238         which is pretty lame. Test commented out of testtext.c, 
6239         until it works better.
6240
6241 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6242
6243         * gdk/linux-fb/gdkdrawable-fb2.c:
6244         Removed unused arguments from gdk_fb_drawable_get_pixel().
6245
6246         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6247         Renamed fidur specific mouse packet data in MouseDevice to
6248         generic. Used it in ps2 mouse handling code to avoid blocking
6249         reads.
6250
6251 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6252
6253         * demos/gtk-demo/main.c: Changed to have the list become
6254         non-italic when the demo window is destroyed through an external
6255         event (like a close button).  Doing so found three bugs in the
6256         widget.
6257
6258         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6259
6260         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6261         we actually set the cell.
6262
6263         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6264
6265         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6266         free a leaked path.  Thanks memprof.
6267
6268 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6269
6270         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6271         off-by-one error when destroying allocated segments
6272         on failure. (Elliot)
6273
6274 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6275
6276         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6277         memleaks found by Evan Martin.
6278
6279 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6280
6281         * Released 1.3.2
6282         
6283         * NEWS: Updates for 1.3.2
6284
6285 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6286
6287         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6288         but in general for window system specific events.
6289
6290         * gtk/gtk.def
6291         * gtk/makefile.mingw.in
6292         * gtk/makefile.msc.in: Update.
6293         
6294         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6295
6296 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6297
6298         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6299         distribute gtk.immodules.
6300
6301         * gtk/Makefile.am (install-data-local): Don't install the
6302         gtk.immodules file created for the uninstalled modules;
6303         instead run gtk-query-immodules after install
6304
6305 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6306
6307         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6308         -rpath to the right install location.
6309
6310         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6311         -export-dynamic.
6312
6313         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6314         properly.
6315
6316 2000-11-15  Havoc Pennington  <hp@pobox.com>
6317
6318         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6319         patch from Mikael Hermansson to temporarily stop blinking while
6320         the user is using the keyboard to type or navigate. 
6321
6322         Also, when blinking, stay on for longer than we stay off. Also,
6323         return from start_cursor_blink if !cursor_visible, to save
6324         checking that flag all over the place before we call
6325         start_cursor_blink.
6326
6327 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6328
6329         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6330         only contain a "fontset" line, which is now ignored.
6331
6332         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6333         double-click-to-select-word work.
6334         
6335 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6336
6337         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6338         Don't move back one char when we are actually at the end of the 
6339         paragraph.
6340
6341 2000-11-15  Robert Brady  <robert@suse.co.uk>
6342
6343         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6344         'o' < 'p'.
6345         
6346         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6347         bind_textdomain_codeset.
6348
6349         (gtk_init_check): Make the warning about translating default:LTR
6350         sterner.
6351         
6352 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6353
6354         * **/Makefile.am : remove unecessary rules for win32-specific
6355         config-substituted targets. If you want these rules, use
6356         --enable-maintainer-mode (called automatically by autogen.sh).
6357         Stops a lot of unneccessary make-time warnings.
6358
6359         * gtk/gtktext{layout,display}.c: Factor in total width as
6360         well as screen when figuring alignment for word-wrap as well as
6361         no wrap; this is necessary to handle lines that cannot be wrapped
6362         at all.
6363
6364 2000-11-15  Havoc Pennington  <hp@redhat.com>
6365
6366         * gtk/testtext.c: Implement essential color cycling feature
6367
6368 2000-11-15  Havoc Pennington  <hp@redhat.com>
6369
6370         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6371         when we invalidate the main window.
6372
6373         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6374         GtkTextView will now invalidate the side windows for us when text
6375         changes.
6376
6377 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6378
6379         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6380         unconditionally, since we may need to update the horizontal
6381         scrollbars even if the height didn't change.
6382
6383         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6384         the extra attrs, since some of them affect size.
6385
6386         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6387         x_offset correctly.
6388
6389 2000-11-15  Havoc Pennington  <hp@redhat.com>
6390
6391         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6392         don't move the first line out into the margin, instead move the
6393         whole paragraph in order to make space for the first line within 
6394         the margin
6395
6396 2000-11-15  Havoc Pennington  <hp@redhat.com>
6397
6398         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6399         xoffset in addition to yoffset, so horizontal scrolling doesn't
6400         break redraws
6401
6402 2000-11-15  Havoc Pennington  <hp@redhat.com>
6403
6404         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6405         from the cursor
6406         (render_layout_line): fix reversed test that caused weird
6407         underlines to get drawn
6408
6409 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6410
6411         * gdk/linux-fb/gdkprivate-fb.h:
6412         Fix debug macros.
6413         
6414 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6415
6416         * gdk/linux-fb/gdkprivate-fb.h:
6417         Added virtual functions set_pixel, get_color,
6418         fill_span and draw_drawable to the GC.
6419         Added global _gdk_fb_screen_gc to use instead of
6420         NULL when drawing to the screen.
6421         Added _gdk_fb_gc_calc_state() prototype.
6422
6423         * gdk/linux-fb/gdkgc-fb.c:
6424         Call _gdk_fb_gc_calc_state() on any gc state change.
6425
6426         * gdk/linux-fb/gdkglobals-fb.c:
6427         Add _gdk_fb_screen_gc
6428                 
6429         * gdk/linux-fb/gdkdrawable-fb2.c:
6430         _gdk_fb_gc_calc_state() calculates best functions
6431         for the GC state and depth.
6432         Moved bpp specialized code to separate functions.
6433         Added optimized 24 bpp AA draw_drawable.
6434
6435         * gdk/linux-fb/gdkevents-fb.c:
6436         Silence gcc warning.
6437
6438         * gdk/linux-fb/gdkimage-fb.c:
6439         Use _gdk_fb_screen_gc
6440
6441         * gdk/linux-fb/gdkwindow-fb.c:
6442         Init and use _gdk_fb_screen_gc
6443
6444         * gdk/linux-fb/mitypes.h:
6445         Remove unused types.
6446
6447 2000-11-14  Havoc Pennington  <hp@pobox.com>
6448
6449         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6450         to pixels
6451
6452 2000-11-14  Havoc Pennington  <hp@pobox.com>
6453
6454         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6455
6456         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6457         unknown char, no real reason we were using a variable. 
6458         Remove gtk_text_unknown_char variable. Fix all the text widget
6459         files accordingly.
6460
6461         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6462         since the Unicode spec seems to prefer that character for our
6463         purposes.
6464
6465 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6466
6467         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6468         value of g_getenv() isn't freeable, so g_strdup it.
6469
6470         * modules/input/inuktitut.c: Inuktitut input method.
6471
6472         * modules/input/Makefile.am: Build this.
6473         
6474 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6475
6476         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6477         of gtk programs.
6478
6479 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6480
6481         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6482         reversed > that was causing Home to go to end of previous line.
6483
6484         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6485         modified-keypresses (leave for bindings.)
6486
6487         * modules/input/Makefile.am: Remove useless -export-dynamic
6488         from module LDFLAGS.
6489
6490 2000-11-14  Havoc Pennington  <hp@redhat.com>
6491
6492         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6493         higher.
6494
6495         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6496         account. Also, render rise, underline, background, etc. for
6497         pixbufs as well as text. Also, draw underlines one pixel higher.
6498
6499         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6500         PangoAttribute for the rise, so it gets drawn properly. Also,
6501         add the GtkTextAppearance attribute for pixbuf/widget segments
6502         as well; we should go ahead and have rise, underline, background,
6503         stipple work for those
6504
6505         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6506         Pango
6507
6508 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6509
6510         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6511
6512         * gtk/gtk.def: Update.
6513
6514         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6515         included.
6516         (gtk_rc_get_im_module_file): Use run-time installation directory
6517         on Win32.
6518
6519         * gdk/win32/rc/gdk.rc: Remove.
6520         * gdk/win32/rc/gdk.rc.in: New file.
6521         * gdk/win32/rc/Makefile.am: New file
6522         * gdk/win32/Makefile.am: Corresponding changes.
6523
6524         * gtk/gtk.rc: Remove.
6525         * gtk/gtk-win32.rc.in: New file.
6526         * gtk/Makefile.am: Corresponding changes.
6527
6528         * configure.in: Corresponding changes.
6529
6530         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6531         has a built gtkcompat.h. Developers using CVS code on Win32 can
6532         hand-edit it from gtkcompat.h.in.
6533
6534         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6535         gtkcompat.h from gtkcompat.h.win32.
6536
6537 2000-11-14  Havoc Pennington  <hp@redhat.com>
6538
6539         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6540         to default to GDK_ACTION_MOVE if the drag is within a single
6541         widget. Defaults to GDK_ACTION_COPY between widgets.
6542
6543 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6544
6545         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6546
6547         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6548
6549         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6550         srcdir != builddir
6551
6552         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6553
6554         * configure.in (GTK_VERSION): Up to 1.3.2
6555
6556         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6557         gtkimcontextxim.h
6558
6559         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6560         missing doc comment.
6561
6562 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6563
6564         * modules/linux-fb/basic.c:
6565         Use the glib iconv wrappers.
6566
6567 2000-11-13  Havoc Pennington  <hp@pobox.com>
6568
6569         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6570         still more bugs.
6571
6572         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6573         scroll the GdkWindows before realization.
6574
6575 2000-11-13  Havoc Pennington  <hp@redhat.com>
6576
6577         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6578         where GC didn't always get updated properly
6579
6580         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6581         of fonts instead of setting the entire font
6582
6583         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6584         setting entire font
6585
6586         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6587
6588         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6589         a bunch of individually-settable font attributes. You can still 
6590         use the "font" and "font_desc" args, they just set all the font
6591         attributes at once.
6592
6593 2000-11-13 Elliot Lee <sopwith@redhat.com>
6594
6595         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6596
6597 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6598
6599         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6600         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6601
6602         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6603         work better.
6604
6605 2000-11-13  Havoc Pennington  <hp@redhat.com>
6606
6607         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6608         the module file.
6609
6610         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6611         dest->language
6612
6613         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6614         settings
6615
6616         * gtk/gtktextview.c: Implement object args and setters/getters for
6617         all the aspects of the GtkTextAttributes that are not set from
6618         GtkWidget attributes. This is spacing, justification, margins,
6619         etc.
6620
6621         (gtk_text_view_set_arg)
6622         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6623         args
6624         (gtk_text_view_class_init): Add args for justify, left_margin,
6625         right_margin, indent, and tabs
6626         
6627
6628         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6629         attribute properly
6630
6631         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6632         replace with indent attribute
6633
6634         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6635         PANGO_SCALE
6636
6637         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6638         rearranging code to do that
6639         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6640         i.e. don't subtract the top_margin first, just to keep
6641         all margin-futzing in one place.
6642
6643         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6644
6645         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6646         special case of last line, Pango now handles this itself.
6647         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6648         Y coordinate
6649         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6650         (find_display_line_above): wasn't moving the byte index as it
6651         iterated over lines, so always returned byte 0. Also, port to use
6652         PangoLayoutIter.
6653         (find_display_line_below): same problem as
6654         find_display_line_above. Also, port to use PangoLayoutIter.
6655
6656 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6657
6658         * gdk/linux-fb/*.[ch]:
6659         Massive reindent to gtk+ standard. My hands hurt.
6660
6661         * gdk/linux-fb/gdkcolor-fb.c:
6662         Move GdkColorPrivateFB from inherited to windowing_data
6663
6664         * gdk/linux-fb/gdkcursor-fb.c:
6665         _gdk_cursor_new_from_pixmap made static
6666
6667         * gdk/linux-fb/gdkdnd-fb.c:
6668         GdkDragContextPrivate moved to windowing_data
6669
6670         * gdk/linux-fb/gdkdrawable-fb2.c:
6671         Removed endian.h, use glib endianness macros instead
6672         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6673         and GDK_DRAWABLE_IMPL_FBDATA
6674
6675         * gdk/linux-fb/gdkfont-fb.c:
6676         Add empty gdk_font_load(). Needed for linking of Gtk+.
6677
6678         * gdk/linux-fb/gdkimage-fb.c:
6679         Removed endian.h, use glib endianness macros instead
6680         Moved GdkImagePrivateFB to windowing_data
6681         gdk_image_new_bitmap didn't always allocate enough
6682         memory.
6683
6684         * gdk/linux-fb/gdkinput-ps2.c:
6685         Added semi-working support for MS serial mice.
6686
6687         * gdk/linux-fb/gdkprivate-fb.h:
6688         s/GdkWindowPrivate/GdkWindowObject/
6689         Removed GdkWindowPrivate typedef
6690         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6691         Removed GDK_DRAWABLE_P
6692         Move GdkColorPrivateFB from inherited to windowing_data
6693         Moved GdkImagePrivateFB to windowing_data
6694
6695         * gdk/linux-fb/gdkvisual-fb.c:
6696         Removed some unused debug code.
6697
6698         * gdk/linux-fb/gdkwindow-fb.c:
6699         Use stock cursors instead of including X headers.
6700         s/GdkWindowPrivate/GdkWindowObject/
6701
6702         * gdk/linux-fb/mitypes.h:
6703         Removed unused types.
6704
6705         * modules/linux-fb/basic.c:
6706         Use the pango fribidi wrappers.
6707
6708 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6709
6710         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6711         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6712         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6713         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6714         GEqualFunc where applicable.
6715         
6716         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6717         pango_font_description_equal as changed in pango.
6718         
6719         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6720
6721         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6722
6723         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6724
6725         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6726
6727         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6728
6729         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6730
6731         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6732         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6733
6734         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6735         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6736
6737 2000-11-12  Havoc Pennington  <hp@pobox.com>
6738
6739         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6740         dir to datadir/gtk+-2.0/demo
6741
6742         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6743         sorts of text widget and Pango font bugs. Urgh.
6744
6745         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6746
6747         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6748         tree that you should double click to see the demo. Fix 
6749         types of variables to reflect changed return values from 
6750         GtkTreeStore and GtkTreeViewColumn constructors.
6751
6752         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6753         newly-created buffer to prepare for GObject semantics
6754
6755         * gtk/testtext.c: don't leak the buffer with GObject semantics
6756
6757         * gtk/testtextbuffer.c: ditto
6758         
6759 2000-11-12  Havoc Pennington  <hp@pobox.com>
6760
6761         Rename this testgtk to gtk-demo to avoid confusion, and 
6762         install it so people can use it as a supplement to 
6763         the documentation.
6764         
6765         * demos/gtk-demo: Moved from demos/testgtk
6766
6767         * demos/testgtk: Removed
6768
6769         * configure.in: make Makefile in gtk-demo
6770         
6771         * demos/gtk-demo/Makefile.am: Install sample source to 
6772         datadir/gtk-demo (maybe there's a better place?), and 
6773         rename the binary to gtk-demo
6774         
6775         * demos/gtk-demo/main.c (load_file): Load installed sample
6776         source if source isn't found in pwd.
6777
6778 2000-11-09  Havoc Pennington  <hp@pobox.com>
6779
6780         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6781         argument to set the char displayed when visibility == FALSE
6782         (gtk_entry_create_layout): If !entry->visible, replace 
6783         all chars with the "invisible char"
6784
6785         * gtk/testgtk.c: Test the invisible_char deal
6786         
6787 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6788
6789         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6790         can't get a native font in the right encoding.
6791
6792 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6793
6794         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6795         respectively.
6796
6797 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6798
6799         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6800         Fix warning when moving between paragraphs.
6801
6802         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6803         delete => delete_from_cursor, insert => insert_at_cursor
6804
6805 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6806
6807         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6808
6809         * modules/input/imthai-broken.c: A Thai input method for use if
6810         Thai keys are really generating Latin1 keysyms.
6811
6812         * modules/input/Makefile.am: Build these.
6813
6814 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6815
6816         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6817         g_filename_{to,from}_utf8 now takes an extra parameter.
6818
6819         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6820         strftime into UTF-8.
6821
6822         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6823         calendars.
6824
6825         (gtk_calendar_paint_day_names): Draw day names in the right 
6826         place.
6827         
6828 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6829
6830         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6831         problem with using result of g_get_charset() backwards -
6832         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6833
6834         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6835         negative min_width/height and max_width/height to
6836         mean "requisition"; this allows setting a window
6837         to be user-resizable in only one direction easily.
6838
6839         * gtk/testgtk.c (create_main_window): Remove hard-coded
6840         usize - set a default size in the vertical direction.
6841
6842 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6843
6844         * gtk/gtkrange.c: Add some missing casts. Support 
6845         2 and 3 button clicks on the arrows to mean 
6846         "move by pages" and "jump to end". (Like gtkspinbutton)
6847
6848 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6849
6850         * gdk/win32/makefile.msc : reflect build module changes
6851
6852         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6853         from GdkPixmap*, cast implementation member instead.
6854
6855         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6856         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6857         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6858         more Gdi functions return value checking. 
6859         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6860         GdkImagePrivateWin32 *.
6861
6862         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6863         menus useable again. Add #pragma message to keep reminded on this issue.
6864         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6865         windows. This allows to enable backing store on Win32!
6866
6867         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6868         in drawable is of impl type. Correct specific type checks appropriate.
6869  
6870         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6871         GDK_WINDOW_DESTROYED before allocating new resources.
6872
6873         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6874
6875         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6876         (gdk_window_foreign_new) initialize parent handle.
6877         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6878
6879         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6880         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6881         problems (e.g. main buttons in testgtk). 
6882
6883 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6884
6885         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6886         gtk_widget_activate for GDK_Return.
6887
6888         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6889         of preedit cursor position.
6890
6891 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6892
6893         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6894         static.
6895
6896 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6897
6898         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6899         out support for multiple locales; that simple doesn't
6900         work reliably with current Xlib
6901
6902         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6903         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6904         Add support for positioning the cursor within the preedit string.
6905
6906 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6907
6908         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6909         at XIM input method module.
6910
6911         * gtk/gtktextview.c: Check for bindings after passing
6912         events to im context filter.
6913
6914 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6915
6916         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6917         empty attribute lists properly.
6918
6919 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6920
6921         * gtk/queryimmodules.c (main): Return non-zero exit
6922         status if errors were encountered querying any
6923         modules.
6924
6925         * modules/input/Makefile.am (moduledir): remove
6926         leftover bin program target.
6927
6928         * docs/make-todo: Fix typo in error message.
6929
6930 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6931
6932         * configure.in: Add modules/input/Makefile
6933
6934 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6935
6936         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6937         don't include gtkthemes.h.
6938
6939         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6940         to point
6941
6942         * gtk/Makefile.am: Add new .c and .h files, build 
6943         gtk-query-immodules and use it to create a gtk.immodules
6944         file for use of test programs.
6945
6946         * gtk/gtkpreview.c: remove extra blank line.
6947
6948 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6949
6950         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6951         Add the ability to add extra tables beyond the default
6952         one, and also the ability to have compose sequences 
6953         that are prefixes of other compose sequences. 
6954
6955         * gtk/gtkimcontextsimple.c: Export a preedit string which
6956         consists of possible candidates for keystrokes that have
6957         been entered but not yet committed.
6958
6959         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6960         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6961
6962         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6963         Add a function to add input-method switching menu items
6964         to a menu.
6965
6966         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6967         when switching input methods.
6968
6969         * gtk/gtkimcontextsimple.[ch]: Change the format of
6970         the compose table to allow compose tables of different
6971         lengths / sequence.
6972
6973 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6974
6975         * gtk/gtkimmodule.[ch]: Support routines for loading
6976         GtkIMContext implementations dynamically at runtime.
6977
6978         * modules/input/imcyrillic-translit.c: A sample input
6979         method (based on GtkIMContextSimple with an extra table),
6980         which demonstrates preedit strings and the module
6981         system for input modules
6982
6983         * gtk/queryimmodules.c: Program to query the available
6984         input modules and write the results into a file.
6985          
6986         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6987         extra config options "im_module_file" (cache file for
6988         input method modules), and "im_module_path" - path
6989         to look for modules when generating cache file.
6990
6991         This doesn't scale.
6992
6993 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6994
6995         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6996         generic code from gtkthemes into a new abstraction
6997         GtkModule which has the logic for implementing
6998         a loadable module which implements a number of 
6999         GObject types.
7000
7001 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7002
7003         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7004         a class into an interface  
7005         
7006         * gtk/gtkoldeditable.[ch]: Move the old editable
7007         implementation into here, so legacy widgets can
7008         still rely on the implemenation. GtkOldEditable
7009         exports GtkEditable. Make selection handling
7010         code use new text conversion functions (and
7011         handle UTF-8 as a side-effect). Use GtkClipboard
7012         for CLIPBOARD.
7013
7014         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7015         Adopt to match above changes.
7016
7017         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7018         avoid GtkOldEditable implementation. Restructure
7019         to reduce number of places that modify state directly.
7020         Move to GtkBindingSet. Display the preedit string.
7021         Queue recomputation of PangoLayout and scroll position
7022         to improve effiency of doing complex changes naively.
7023         Add a menu with cut/copy/paste and input method selection.
7024
7025 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7026
7027         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7028         to set preedit string and attributes; display preedit string by
7029         inserting string and attributes at cursor when creating the
7030         GtkTextLineDisplay.
7031
7032         * gtk/gtktextlayout.c: Move all conversions between byte
7033         positions in PangoLayout and GtkTextIter into new functions
7034         line_display_iter_to_index/index_to_iter that properly
7035         handle the preedit string.
7036
7037         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7038         it to return const char * (eventually will end up
7039         as GCONST char *, most likely.)
7040
7041         * gtk/gtktextview.[ch]: Handle the preedit string, call
7042         gtk_im_context_reset() as necessary, add a menu to switch
7043         input methods.
7044         
7045         * gtk/gtktextlayout.[ch]: Remove useless
7046         gtk_text_layout_get_log_attrs() function.
7047
7048 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7049
7050         * gdk/gdk.def
7051         * gtk/gtk.def: Update.
7052
7053         * gdk/win32/*.c: Add last argument to g_type_register_static()
7054         calls.
7055
7056         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7057
7058         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7059         generated by older wheel mouse drivers. Get the correct y
7060         coordinate from WM_MOUSEWHEEL messages.
7061
7062         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7063         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7064         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7065         Debugging functions.
7066
7067         * gdk/win32/gdkprivate-win32.h: Declare them.
7068
7069         * gdk/win32/gdkinput-win32.h: Add declaration for
7070         gdk_input_window_destroy().
7071
7072         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7073
7074 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7075
7076         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7077         function to help handle keeping things in sync.
7078
7079 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7080
7081         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7082         BOXED marshallers.
7083
7084         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7085         (gtk_list_store_class_init): use the new BOXED marshallers.
7086
7087         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7088         new_with_values to new_with_types.
7089         (gtk_tree_store_get_column_type): add this.
7090         (gtk_tree_store_class_init): use the new BOXED marshallers.
7091
7092         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7093         mirror some POINTER marshallers.
7094
7095 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7096
7097         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7098         allow more interesting iterators.  Also, made the lifecycle of
7099         iterators more explicit.
7100
7101         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7102
7103         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7104         types.
7105
7106 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7107
7108         * demos/testgtk/menus.c:
7109         Changes to make the new testgtk compile after
7110         gtk_menu_append was removed.
7111
7112         * gdk/linux-fb/gdkdrawable-fb2.c
7113         (gdk_fb_get_depth, gdk_fb_get_visual,
7114         gdk_drawable_impl_fb_class_init): Implement
7115         these drawable functions. Now GtkImages work again.
7116
7117         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7118
7119         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7120         
7121         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7122         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7123         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7124         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7125
7126 2000-11-08  Havoc Pennington  <hp@pobox.com>
7127
7128         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7129         visible_set args, don't know where these had gone, I thought they
7130         used to be there
7131
7132         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7133         now we can test the feature and see that it's totally broken.
7134
7135 2000-11-08  Havoc Pennington  <hp@pobox.com>
7136
7137         Make DND copy pixbufs and tags when source and target share a 
7138         tag table.
7139         
7140         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7141         in-process GTK_TEXT_BUFFER_CONTENTS target
7142         (gtk_text_view_drag_data_received): Paste from
7143         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7144
7145 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7146
7147         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7148         API changes.
7149
7150         * gtk/gtkmenu.c: Add support for scrolling menus.
7151         Remove gtk_menu_append/prepend/insert, these have been moved to
7152         gtkcompat.h as #defines.
7153
7154         * gtk/gtkcompat.h.in:
7155         Add compatibility #defines for gtk_menu_append/prepend/insert
7156
7157         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7158         GtkMenuPositionFunc gets an extra argument push_in.
7159         gtk_menu_append/prepend/insert removed.
7160         
7161         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7162         positioning behaviour to fit to scrolling menus.
7163
7164         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7165         into menuitem->submeny. That is wrong, and broke torn
7166         off submenus of torn off menus, since they were unrealized
7167         when the first menu was unrealized.
7168
7169         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7170         gtk_menu_shell_select_item() since these need to be overridden in
7171         GtkMenu.
7172
7173         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7174         positioning behaviour to fit to scrolling menus.
7175         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7176         the current item so that it is prelighted when the menu pops up.
7177         This is a workaround to the fact that the menu doesn't get the
7178         initial enter event (due to grabs).
7179
7180         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7181         s/gtk_menu_append/gtk_menu_shell_append/
7182
7183         * gtk/gtknotebook.c:
7184         s/gtk_menu_insert/gtk_menu_shell_insert/
7185
7186         * gtk/testgtk.c (create_menu, create_menus):
7187         Create the first menu with 50 items so that menu scrolling
7188         can be tested.
7189         
7190         
7191         Patch from Jonathan Blandford  <jrb@redhat.com>
7192
7193         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7194         system to handle size requests.  First, we ask what the size of
7195         the toggle is.  Then, when allocating the size, we allocate the
7196         toggle_size first.  This way we can have multiple menu-item
7197         classes w/o needing a seperate class for each.
7198
7199         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7200         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7201
7202         * gtk/gtkcheckmenuitem.c
7203         (gtk_check_menu_item_toggle_size_request): New function to handle
7204         the toggle size-request.
7205
7206 2000-11-07  Havoc Pennington  <hp@redhat.com>
7207
7208         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7209         Half-ass somewhat fix this function, so that scrolling to the
7210         insertion point works. Pango hacking is in the future to really
7211         fix it.
7212
7213         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7214         length of data, no longer used.
7215
7216         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7217         method contents in here, get rid of destroy method
7218         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7219         that were backward. Remove debug spew.
7220         (cut_or_copy): Make the clipboard work with insert_range to
7221         preserve tags and pixbufs, not just the primary selection.
7222
7223 2000-11-07  Havoc Pennington  <hp@redhat.com>
7224
7225         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7226         to gtk_text_mark_get_visible
7227
7228         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7229         bug that was generating an invalid iterator
7230
7231         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7232         ensure_char_offsets() in front of code placing the iter in an
7233         invalid state.
7234
7235         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7236         make override_location arg const
7237         (paste): Replace the selection if we paste into the 
7238         current selection
7239
7240         * gtk/gtkselection.h: Remove "GtkSelectioData"
7241         (struct _GtkSelectionData): move the definition here.
7242
7243         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7244         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7245
7246         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7247
7248         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7249         (gtk_text_buffer_insert_range_interactive): implement
7250         (gtk_text_buffer_get_tags): Remove, replaced by
7251         gtk_text_iter_get_tags()
7252
7253         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7254         limit parameter, to avoid infinite linear scan.
7255         (gtk_text_iter_backward_search): Add search limit
7256         (gtk_text_iter_forward_find_char): Add search limit
7257         (gtk_text_iter_backward_find_char): Add search limit
7258
7259 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7260
7261         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7262         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7263         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7264         gdk/linux-fb/gdkwindow-fb.c:
7265         use g_object_new() instead of g_type_create_instance() which
7266         is a private function for fundamental type implementations.
7267
7268         * gdk/linux-fb/gdkinput-ps2.c:
7269         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7270         instead just store the current modifier state. Add a (somewhat broken)
7271         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7272         Rename exported function gdk_input_ps2_get_mouseinfo to
7273         gdk_input_get_mouseinfo.
7274
7275         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7276         gdk/linux-fb/gdkwindow-fb.c:
7277         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7278         
7279
7280 2000-11-02  Havoc Pennington  <hp@redhat.com>
7281
7282         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7283         use stock buttons. Should be 100% source compatible, appropriate
7284         filesel fields now point to dialog->vbox and dialog->action_area.
7285         On the bizarre side, dialog->action_area and filesel->action_area
7286         are not the same widget.
7287         (gtk_file_selection_init): Put some padding around the selection
7288         entry, so it isn't touching the GtkDialog separator.    
7289
7290         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7291         use stock buttons, etc. Should also be source compatible.
7292         Set the dialog default title in _init not _new().
7293         
7294         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7295         Use stock buttons; don't put a button box inside the existing
7296         dialog button box. Don't bother with push/pop colormap anymore.
7297
7298         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7299         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7300         for message dialog, and necessary for the font selection and color
7301         selection with help and apply buttons.
7302         
7303         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7304         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7305         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7306         between buttons, put less padding around the action area.
7307         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7308         This will also exit the loop if the widget is hidden.
7309         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7310         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7311         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7312         special-case delete event.
7313
7314         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7315         formatting
7316         
7317 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7318
7319         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7320         button to temporarily disable position recording in the
7321         "saved position" test.
7322
7323 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7324
7325         * gtk/gtkthemes.c: added compat code that temporarily implements
7326         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7327         going to be revamped by owen's upcoming GtkModule patches, but
7328         untill then people want gtk to build, right? ;)
7329
7330 2000-11-04  Havoc Pennington  <hp@pobox.com>
7331
7332         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7333         list
7334
7335         * docs/Changes-2.0.txt: Add note about
7336         gtk_container_get_toplevels()
7337
7338         * gtk/gtktextview.h: formatting
7339         
7340         * gtk/gtktextview.c: don't start descriptions with "Returns",
7341         confuses gtk-doc
7342
7343 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7344
7345         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7346         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7347
7348 2000-11-03  Havoc Pennington  <hp@redhat.com>
7349
7350         * gtk/gtktexttagtable.c: Docs
7351         (gtk_text_tag_table_size): return a signed int
7352
7353         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7354         (gtk_text_tag_event): make the event_object a GObject
7355
7356         * gtk/gtktextview.c: Write API docs for all functions.
7357
7358         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7359         for gtk_text_view_get_window_type() called on one of the private
7360         windows.
7361
7362         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7363         directly, call get_buffer() which demand-creates a default
7364         buffer. So gtk_text_view_new() can be used to create a view with a
7365         default buffer in it, if you just want an empty text box users can
7366         put data in. Useful for GUI builders also.
7367
7368 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7369
7370         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7371         the charset encodign portion MUST be in lowercase.
7372         * gtk/gtkrc.az: added file for Azeri language
7373
7374 2000-11-03  Havoc Pennington  <hp@redhat.com>
7375
7376         Get widgets working on the btree/buffer side. Display of them 
7377         still doesn't work.
7378         
7379         * gtk/gtktextview.c: start implementing child widget stuff
7380
7381         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7382
7383         * gtk/gtktextlayout.c: handle embedded widgets
7384
7385         * gtk/gtktextdisplay.c: handle embedded widgets
7386
7387         * gtk/gtktextchild.c: Implement all the child anchor goo
7388
7389         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7390         function
7391
7392         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7393         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7394         creating a child anchor or a pixbuf segment.
7395         (gtk_text_btree_create_child_anchor): new function
7396         (gtk_text_btree_unregister_child_anchor): new function
7397
7398         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7399         allocate_child signal on GtkTextLayout
7400
7401         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7402         values
7403         (gtk_text_iter_get_child_anchor): new function
7404
7405         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7406         default handler for the changed signal, which calls
7407         gtk_text_buffer_set_modified(), instead of just always emitting
7408         changed then calling set_modified() manually. I guess this is
7409         maybe more flexible. It seems logical.
7410
7411 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7412
7413         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7414         now.
7415
7416         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7417
7418 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7419
7420         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7421         been marked static.
7422
7423 2000-11-02  Havoc Pennington  <hp@redhat.com>
7424
7425         * gtk/testgtk.c (create_labels): had a test backward
7426
7427         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7428         fields, so the dest GC ends up with the correct clip origin, 
7429         etc. Fixes a bug where colored labels didn't redraw 
7430         properly.
7431
7432 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7433
7434         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7435         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7436         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7437         Add last argument to t_type_register_static call.
7438         
7439         * gdk/linux-fb/gdkdrawable-fb2.c:
7440         Add last argument to t_type_register_static call.
7441         export the get_image drawable virtual function.
7442
7443         * gdk/linux-fb/gdkimage-fb.c:
7444         Add last argument to t_type_register_static call.
7445         rename gtk_image_get to _gdk_fb_get_image and
7446         export it for use by gdkdrawable-fb2.
7447
7448         * gdk/linux-fb/gdkprivate-fb.h:
7449         export _gdk_fb_get_image.
7450
7451         * gdk/linux-fb/gdkselection-fb.c:
7452         Add new api call stubs.
7453
7454         * gtk/Makefile.am:
7455         Missing ( in linux-fb part.
7456
7457         * modules/linux-fb/Makefile.am:
7458         Must link with gdk_pixbuf or get unresolved symbol.
7459
7460 2000-11-01  Havoc Pennington  <hp@pobox.com>
7461
7462         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7463         GTK_TYPE_TEXT_ITER and BOXED marshallers
7464
7465         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7466
7467         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7468         
7469         * gtk/gtk-boxed.defs: add GtkTextIter
7470
7471         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7472         properly use OBJECT and BOXED
7473
7474 2000-11-01  Havoc Pennington  <hp@redhat.com>
7475
7476         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7477
7478         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7479         before returning it. 
7480         
7481 2000-11-01  Havoc Pennington  <hp@redhat.com>
7482
7483         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7484         Clip the rectangle to be rendered to the drawable, since
7485         get_from_drawable() requires a region within the drawable
7486
7487 2000-11-01  Havoc Pennington  <hp@redhat.com>
7488
7489         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7490         from coordinates.
7491
7492 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7493
7494         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7495         it isn't NULL.
7496
7497 2000-11-01  Havoc Pennington  <hp@pobox.com>
7498
7499         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7500         on a label
7501         (gtk_label_finalize): unref the attr list if any.
7502
7503         * gtk/testgtk.c (create_get_image): close test on second click
7504         (make_message_dialog): close dialog if it exists
7505
7506         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7507
7508         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7509         gdk-pixbuf
7510
7511         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7512         from Pango markup format
7513         (gtk_label_set_markup_with_accel): ditto but with accelerator
7514         parsing
7515
7516         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7517
7518         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7519         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7520         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7521         call gdk_window_get_origin().
7522
7523         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7524         implement GDK_PIXBUF_ALPHA_FULL
7525         
7526 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7527
7528         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7529         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7530         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7531         multiple handlers respectively, instead of only treating the
7532         first handler found (bug reported by owen).
7533
7534 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7535
7536         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7537
7538         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7539
7540         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7541         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7542         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7543
7544         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7545         widget.  Needs writing someday.
7546
7547         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7548         the docs.
7549
7550 2000-10-30  Havoc Pennington  <hp@redhat.com>
7551
7552         * gtk/gtktextview.h, gtk/gtktextview.c:
7553         Rename delete_at_cursor delete_from_cursor, and 
7554         move to move_cursor.
7555
7556 2000-10-30  Havoc Pennington  <hp@redhat.com>
7557
7558         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7559         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7560         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7561         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7562         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7563         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7564         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7565         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7566         gtktexttypes.h, gtktextview.c, gtktextview.h:
7567
7568         Massive reindentation and reformatting. Arg alignment and comments
7569         still need fixing in various places.
7570
7571 2000-10-30  Havoc Pennington  <hp@redhat.com>
7572
7573         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7574         to be named insert_at_cursor and delete_at_cursor so C++ can
7575         handle them.
7576
7577 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7578
7579         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7580         to get a double directory separator in case the home directory
7581         ends with one. This would cause trouble especially on Windows,
7582         where the path will be confused with the syntax for an an UNC
7583         (network share) path \\server\share\path.
7584         (gtk_rc_add_initial_default_files): Ditto.
7585
7586 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7587
7588         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7589
7590         * gtk/gtktextview.c: Use correct marshallers.
7591
7592 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7593
7594         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7595         use new iter stuff, and added all the appropriate signals et al.
7596
7597         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7598         code is internal to gtk only.
7599
7600 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7601
7602         * gtk/gtk.def
7603         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7604         glib-genmarshal etc.
7605
7606 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7607
7608         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7609         parallel builds.
7610
7611 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7612
7613         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7614
7615 2000-10-27  Robert Brady  <robert@suse.co.uk>
7616
7617         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7618         en_GB (British), ia (Interlingua).
7619
7620 2000-10-26  Havoc Pennington  <hp@redhat.com>
7621
7622         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7623
7624         Fixed output of:
7625         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7626         
7627         * gtk/gtktextsegment.c (char_segment_new): rename
7628         (_char_segment_new_from_two_strings): rename
7629         (_toggle_segment_new): rename
7630         
7631         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7632         (make_clipboard_widget): make it static
7633         (text_get_func): static
7634         (text_clear_func): static
7635
7636         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7637         static
7638         (hex_changed): make it static
7639         (hsv_changed): make it static
7640         (opacity_entry_changed): make it static
7641
7642         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7643         (toggle_segment_check_func): rename with _gtk
7644
7645         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7646         (_widget_segment_new): rename
7647         (_widget_segment_add): rename
7648         (_widget_segment_remove): rename
7649         (_widget_segment_ref): rename
7650         (_widget_segment_unref): rename
7651
7652         * gtk/gtktextmark.c (_mark_segment_new): Rename
7653         _gtk_mark_segment_new   
7654
7655 2000-10-26  Havoc Pennington  <hp@redhat.com>
7656
7657         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7658         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7659         types
7660
7661         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7662         marshaller types
7663
7664         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7665         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7666         license on these files.
7667
7668         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7669         work.
7670
7671         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7672         runtime random number different for each tree, instead of 
7673         a constant I made up.
7674
7675 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7676
7677         * gtk/Makefile.am: buncha cleanups, kludged build sources
7678         dependencies with a Makefile: oldest-source-stamp dependancy
7679         for the moment. automake is really fighting us here, with
7680         intentionally not allowing user-defined rules or dependancies
7681         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7682
7683         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7684         to public headers. tehy have a comment stating that they are
7685         "semi-public" aren't included by gtk.h and if enums popup there,
7686         they can be /*< skip >*/-ed.
7687
7688         * gtk/gtktextlayout.h: 
7689         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7690         added LGPL... <SIGH>
7691
7692 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7693
7694         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7695         GtkTreeIter.  Added iterators everywhere.
7696
7697         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7698
7699         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7700
7701         * gtk/gtktreestore.c: Changed to use the iterators.
7702
7703         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7704         iterators tomorrow.
7705
7706         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7707         iterators tomorrow.
7708
7709         * gtk/treestoretest.c: Changed to use iterators.
7710
7711         * demos/testgtk/main.c: Moved to use the new iterator system.
7712
7713 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7714
7715         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7716         localization misbehaviour.
7717
7718         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7719         a useless type without copy/free.
7720
7721         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7722         of GTK_TYPE_CTREE_NODE.
7723
7724 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7725
7726         * gtk/gtksignal.c:
7727         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7728         applicable.
7729
7730         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7731         gtk_selection_data_copy and gtk_selection_data_free
7732         do GtkSelectionData work as params in signals.
7733
7734 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7735
7736         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7737         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7738         couldn't they at least give it a non-standard name?
7739         
7740         * gtk/gtktextlayout.c: arg! yet another implementation of
7741         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7742
7743         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7744         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7745         home. now i know this _is_ a conspiracy.
7746
7747         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7748         ::state-changed.
7749
7750         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7751         (gtk_accel_group_create_add): marshaller signature fixups.
7752
7753         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7754         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7755
7756         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7757         anymore.
7758
7759 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7760
7761         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7762         due to the signal system changes, it wouldn't build currently. to
7763         be fixed soon.
7764
7765         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7766
7767         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7768         so it needs gtk_marshal_VOID__ENUM() instead of
7769         gtk_marshal_NONE__UINT().
7770
7771         * gdk/gdk*.c: adapted type registration functions.
7772
7773         * gtk/gtkbindings.c:
7774         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7775         gone.
7776
7777         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7778
7779         * gtk/gtkobject.c:
7780         (gtk_object_destroy):
7781         (gtk_object_shutdown): fixed recursion guards. basically we have to
7782         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7783         is called during ::destroy, and avoid recursion there.
7784
7785         * gtk/gtktypeutils.c:
7786         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7787         boxed_copy/boxed_free. this needs a more general solution based on a
7788         publically installed code-generator utility.
7789
7790         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7791         glib's gobject has support for that now.
7792         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7793
7794 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7795
7796         * gtk/gtksignal.[hc]:
7797         * gtk/gtkmarshal.[hc]:
7798         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7799         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7800         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7801         care of that.
7802
7803         * *.c: marshaller name fixups.
7804
7805         * gtk/gtkmarshal.list: added a comment briefing the format.
7806
7807 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7808
7809         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7810         compatibility macros here now. more specifically, most of
7811         the API is preserved (yes, _most_, nonwithstanding the
7812         following exceptions listed, the API is stil lHUGE ;)
7813         things that got removed completely:
7814         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7815         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7816         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7817         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7818         gtk_signal_remove_emission_hook().
7819         non-functional functions variants:
7820         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7821         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7822         not supported anymore.
7823         (gtk_signal_compat_matched): new internal function to aid
7824         implementation of the compatibility macros, it  provides
7825         functionality to block/unblock/disconnect handlers based
7826         on func/data.
7827
7828         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7829
7830         * *.c: adaptions to new type registration API signatures.
7831
7832 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7833
7834         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7835
7836 2000-10-25  Robert Brady  <robert@suse.co.uk>
7837
7838         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7839         gdk_property_delete): If window == NULL, assume the root window.
7840         (restoring the behaviour that was in 1.2).
7841         
7842         * gtk/testtext.c (save_buffer): Allow creation of new files when
7843         saving.
7844
7845         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7846         calls to read().
7847
7848 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7849
7850         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7851
7852         * gdk/win32/gdkdrawable-win32.c
7853         * gdk/win32/gdkimage-win32.c
7854         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7855         X11 backend.
7856
7857         * gdk/win32/gdkcc-win32.c
7858         * gdk/win32/gdkcolor-win32.c
7859         * gdk/win32/gdkfont-win32.c
7860         * gdk/win32/gdkinput-win32.c
7861         * gdk/win32/gdkmain-win32.c
7862         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7863
7864 2000-10-24  Havoc Pennington  <hp@redhat.com>
7865
7866         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7867         it a static function
7868
7869         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7870         redraw text when a tag is applied to it.
7871
7872         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7873         (gtk_text_tag_affects_nonsize_appearance): private functions to
7874         see if a tag requires various kinds of redraw/layout to be queued
7875         up.
7876
7877         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7878
7879         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7880         at the start of the buffer, so search works by default
7881
7882         * gtk/gtktextiter.c (lines_match): init match_start always
7883
7884         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7885         function, get iter at a line + a byte index
7886
7887         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7888         to set byte position within a line
7889         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7890
7891 2000-10-23  Havoc Pennington  <hp@redhat.com>
7892
7893         * gtk/testtext.c: Re-enable the "find" dialog
7894
7895         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7896         
7897         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7898         the arguments to gdk_draw_drawable were in the wrong order
7899         (gdk_window_paint_init_bg): This function was ignoring the
7900         init_region, instead of clipping to it, so the entire backing
7901         pixmap was cleared on every begin_paint()
7902         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7903         was in here again, the loop kept using the same GtkWindowPaint
7904         over and over.
7905         (gdk_window_begin_paint_region): Fix a bug where we had two
7906         x_offset instead of x_offset and y_offset
7907
7908         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7909         before we get the image.
7910         (gdk_draw_drawable): get the composite before we draw the drawable.
7911         (gdk_drawable_real_get_composite_drawable): default
7912         get_composite_drawable implementation that returns the drawable 
7913         itself
7914
7915         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7916         get_composite_drawable virtual function
7917
7918         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7919         list-walking bug
7920
7921         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7922         make this work if the source drawable is a GdkDrawableImplX11
7923         instead of a public drawable type. This is really broken; the
7924         problem is that GdkDrawable needs a virtual method get_xid(), but
7925         of course that doesn't work in practice. Enter RTTI.
7926
7927         Also, improve mismatched depth message.
7928
7929         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7930         GdkPixmap
7931
7932         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7933         install _gdk_x11_get_image as our implementation of get_image
7934         
7935         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7936         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7937
7938         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7939         gdk_drawable_get_image
7940
7941         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7942
7943         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7944         get_image
7945
7946         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7947         trailing semicolon after for loop
7948
7949 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7950
7951         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7952         where font_desc for widget's context lagged widget's font_desc by
7953         one step.
7954
7955 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7956
7957         * gdk/win32/gdkgc-win32.c
7958         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7959
7960         * gtk/makefile.mingw.in
7961         * gtk/gtk.def: Updates.
7962
7963         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7964         library.
7965
7966         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7967
7968         * gtk/makefile.msc: Remove
7969
7970         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7971
7972         * gtk/Makefile.am: Add it.
7973
7974         * configure.in: Generate it.
7975
7976         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7977         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7978         something even if not implemented, to satisfy picky MSVC.
7979
7980         Patches by Hans Breuer:
7981         
7982         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7983         SetBkMode() and SetTextAlign() before calling
7984         pango_win32_render().
7985
7986         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7987         Set hcliprgn to NULL after destroying it.
7988         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7989
7990         * gdk/win32/gdkgeometry-win32.c
7991         (_gdk_windowing_window_queue_antiexpose): More effective
7992         implementation.
7993
7994         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7995         depth as default, not the visual's.
7996
7997         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7998         against empty title.
7999
8000         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8001         IMAGE_PRIVATE_DATA.
8002
8003         * gdk/win32/gdkimage-win32.c: Use it.
8004
8005 2000-10-22  Robert Brady  <robert@suse.co.uk>
8006
8007         * configure.in: Check for bind_textdomain_codeset
8008
8009         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8010         present, make use of it.
8011
8012         Add a translatable string "default:LTR" which, if translated
8013         to "default:RTL", will cause the default direction to be
8014         Right-to-Left.
8015
8016         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8017         direction if marked as flippable.
8018
8019         * gtk/gtkhscale.c: Mark widget as flippable.
8020         
8021 2000-10-04  Havoc Pennington  <hp@redhat.com>
8022
8023         * gtk/testgtk.c (create_buttons): create some stock buttons
8024         with the default accel group
8025         (create_image): test some new GtkImage features
8026         (make_message_dialog): test GtkMessageDialog
8027         (create_modal_window): fix someone's bizzarro indentation
8028
8029         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8030         GTK_WIN_POS_CENTER_ON_PARENT. 
8031         Add "destroy with parent" setting, which means the window goes
8032         away with its transient parent.
8033         (gtk_window_get_default_accel_group): get the default accel group
8034         for the window.
8035         (gtk_window_set_destroy_with_parent): set/unset destroy with
8036         parent flag
8037         (gtk_window_read_rcfiles): invalidate icon set caches
8038         after reloading rcfiles 
8039
8040         * gtk/gtkenums.h (GtkWindowPosition): add
8041         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8042         on its parent window when the dialog is mapped for the first time.
8043
8044         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8045         a simple message dialog class
8046         
8047         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8048         handler to emit response signal, and maybe later it would
8049         honor a hide_on_delete flag - though that isn't there yet.
8050         Set border width on the vbox to 2, so we get some padding.      
8051         Use a button box for the action area.
8052         (gtk_dialog_key_press): synthesize a delete event if Esc
8053         is pressed and the GtkWidget key press handler didn't 
8054         handle the escape key.
8055         (gtk_dialog_new_with_buttons): new function creates a dialog
8056         with some default buttons in it.
8057         (gtk_dialog_add_action_widget): add an activatable widget
8058         as a button in the dialog - you can also add a non-activatable
8059         widget by accessing the action area directly.
8060         (gtk_dialog_add_button): add a simple button - stock ID or 
8061         label - to the action area
8062         (gtk_dialog_response): emit response signal
8063         (gtk_dialog_run): block waiting for the dialog, return 
8064         the response. Override normal delete_event behavior, so that 
8065         delete_event does nothing inside gtk_dialog_run().
8066
8067         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8068         emitted when an action widget is clicked or the dialog gets
8069         delete_event
8070
8071         * gtk/gtk.h: add gtkmessagedialog.h
8072
8073         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8074
8075 2000-10-18  Havoc Pennington  <hp@redhat.com>
8076
8077         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8078         where any number of empty lines would get skipped
8079
8080         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8081         edge.
8082
8083         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8084         warning about invalid iterators (explain more thoroughly)
8085         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8086
8087         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8088         big
8089
8090         * demos/*.c: Add error handling
8091
8092         * gtk/gtktextbuffer.c: don't modify const iterators
8093
8094         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8095
8096         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8097         on file load
8098
8099         * gtk/gtkiconfactory.c: Update to reflect addition of error
8100         handling to gdk-pixbuf loaders
8101
8102 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8103
8104         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8105         move to new modularized testgtk.
8106
8107 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8108
8109         * gtk/gtktreeview.c: Draw the arrows correctly.
8110
8111         * gtk/gtktreemodel.c: Added user docs.
8112
8113         * gtk/gtk.h: remove gtktreedatalist.h.
8114
8115         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8116         parent when generating my type.
8117
8118         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8119         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8120
8121 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8122
8123         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8124         GtkTreeModel from object to interface.
8125
8126 2000-10-16  Havoc Pennington  <hp@redhat.com>
8127
8128         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8129         compilation
8130
8131 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8132
8133         * gtk/gtktreeselection.c: Add API documentation to all public
8134         functions.
8135
8136         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8137         functions.
8138
8139 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8140
8141         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8142         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8143         docs to all public functions.
8144
8145         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8146         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8147         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8148         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8149         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8150         issue.
8151
8152 2000-10-14  Robert Brady  <robert@suse.co.uk>
8153
8154         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8155
8156 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8157
8158         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8159         values other then G_TYPE_STRING.
8160         * gtk/gtktreeselection.c: Minor commenting updates.
8161         * gtk/gtktreeview.c: Format updates.
8162
8163 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8164
8165         * README.win32: Update.
8166
8167         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8168         lines that had been deleted by mistake (?).
8169
8170         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8171         also the case fg==white and bg==black (but still not randomly
8172         coloured cursors). Thanks to Wolfgang Sourdeau.
8173
8174         * gdk/win32/*.c: Silence gcc -Wall.
8175
8176         * gtk/gtk.def: Add missing entry points.
8177
8178         Fixes by Hans Breuer:
8179
8180         * gdk/makefile.msc
8181         * gdk/win32/makefile.msc: Update.
8182
8183         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8184         some MSVC thing, presumably), cause breakpoint on failures. Add
8185         GDK_NOR case. Call g_log_set_always_fatal.
8186
8187         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8188         should be pased by reference.
8189         
8190         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8191         
8192         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8193
8194         * gdk/win32/gdkevents-win32.c
8195         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8196
8197         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8198         implementation object.
8199
8200         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8201         not just windows.
8202         
8203         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8204         Use the wrapper object.
8205         
8206 2000-10-06  Havoc Pennington  <hp@redhat.com>
8207
8208         * Makefile.am (SRC_SUBDIRS): contrib subdir
8209
8210         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8211         so it can be used in Xlib version
8212
8213         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8214         tree
8215
8216         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8217         change from 1.0 tree that returns first frame of animation
8218         if the loaded file is an animation.
8219
8220         * contrib: add new directory to hold stuff that comes with GTK+
8221         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8222         
8223         * configure.in: add contrib/*
8224
8225 2000-10-05  Havoc Pennington  <hp@redhat.com>
8226
8227         * demos/testpixbuf-save.c: add pixbuf save test
8228
8229         * demos/Makefile.am: add testpixbuf-save.c
8230
8231 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8232
8233         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8234         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8235         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8236         * gtk/gtktreeselection.[ch]: Replaced
8237         "node_selected"/"node_unselected" signal with "selection_changed"
8238         signal.
8239
8240 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8241
8242         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8243         tree widget.
8244
8245 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8246
8247         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8248         drawing.
8249
8250 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8251
8252         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8253         Move list pointer forwards before removing item from
8254         list. (Crash reported by Salmaso Raffaele)
8255
8256         * gdk/gdkwindow.h: Remove spurious trailing ,
8257
8258         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8259         dependencies on uninstalled libraries, sorry folks.
8260
8261 2000-10-04  Havoc Pennington  <hp@redhat.com>
8262
8263         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8264         gtk/gtkiconfactory.c: Fix copyrights    
8265
8266         * demos/testpixbuf.c: add inline pixbuf test
8267         
8268 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8269
8270         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8271         Add gdk_window_iconify.
8272
8273         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8274         (gdk_window_set_geometry_hints): Add win_gravity
8275         to geometry structure.
8276
8277         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8278         Implement _NET_WM_PING.
8279
8280         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8281         Set _NET_WM_PID on the client leader.
8282
8283         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8284         Handle UTF-8 better.
8285
8286         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8287         UTF-8 better, set _NET_WM_NAME as well. Only set
8288         icon name if it hasn't previously been explicitely 
8289         set.
8290
8291 2000-10-03  Havoc Pennington  <hp@redhat.com>
8292
8293         * gtk/testtextbuffer.c: clean up trailing whitespace,
8294         add extensive tests for tag toggle iteration.
8295         
8296         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8297         distance
8298
8299         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8300         optimize case where the tag root is on level 1
8301         (gtk_text_line_previous_could_contain_tag): attempt to implement
8302         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8303         functionality
8304
8305         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8306         Implement this, though not very efficiently.
8307
8308         * gtk/gtktextiterprivate.h: reformat
8309
8310         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8311         iterator
8312
8313         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8314         this to properly revalidate the iterators.
8315
8316         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8317         properly at the end of the line (and therefore on empty lines)
8318
8319         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8320         maybe we should return a value...
8321
8322 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8323
8324         * config.h.win32: Guard definition of alloca(). glib.h now handles
8325         that.
8326
8327         * gdk/gdk.def
8328         * gtk/gtk.def: Add new entry points.
8329
8330         Changes just to make GTK+ build without errors on Win32. No hope
8331         of it working in its current state, though...:
8332         
8333         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8334         some functions from the X11 backend, just to make GTK+ build.
8335
8336         * gdk/makefile.mingw.in
8337         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8338         number. Add new object files.
8339
8340         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8341         GetMessageTime to get timestamp (where on X11 uses
8342         gdk_x11_get_server_time()).
8343
8344 2000-10-02  Havoc Pennington  <hp@pobox.com>
8345
8346         * gtk/gtktextview.c: text_window_* weren't static and should have
8347         been.
8348         Start work on child widgets; not yet complete, syncing to 
8349         office computer.
8350
8351         * gtk/gtktextchild.h: change this to contain a public interface,
8352         starting work on child interfaces.
8353         * gtk/gtktextchildprivate.h: move private interfaces here
8354
8355         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8356
8357         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8358         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8359         gtk/gtktextmark.c: copyright notices
8360
8361         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8362         internal functions      
8363
8364         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8365         internal function
8366
8367         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8368         Reformatting    
8369
8370 2000-09-30  Havoc Pennington  <hp@pobox.com>
8371
8372         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8373         NULL start/end pointers
8374
8375         * gtk/gtktextbuffer.c: Write some docs
8376         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8377         NULL, so you can just check whether there's a selection.        
8378
8379         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8380         cleanup_line or segments_changed ourselves, it gets done 
8381         in unlink_segment
8382
8383         * gtk/gtktextmark.h:
8384         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8385         
8386         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8387
8388         * gtk/gtktextmark.c: delete some more old Tk cruft
8389
8390         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8391         mark before removing it, so we can emit MARK_DELETED with a valid
8392         pointer.
8393         (gtk_text_buffer_mark_set): hold ref across signal emission
8394
8395         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8396         whining about attempts to delete special marks
8397
8398         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8399         underscore, since it's internal.
8400
8401         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8402         now implemented in terms of iterators in gtktextiter.h
8403
8404         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8405         New function, destructively sets contents of buffer. Also 
8406         a convenient way to clear the buffer by setting text to ""
8407
8408         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8409         multiline string literal
8410
8411         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8412         text changes.
8413
8414         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8415         is not dereferenceable
8416         (gtk_text_iter_forward_lines): fix return value
8417
8418 2000-09-29  Havoc Pennington  <hp@redhat.com>
8419
8420         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8421
8422         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8423         that set border window size to have nicer name
8424         (gtk_text_view_mark_set_handler):  Fix this to have the 
8425         right signature.
8426
8427         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8428
8429         * gtk/testtext.c: Update with API changes, put line numbers on 
8430         both sides.
8431         
8432         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8433         with this
8434
8435         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8436         pixbuf; delete a big block of #if 0 Tk code
8437
8438         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8439         insert_pixmap with insert_pixbuf
8440
8441 2000-09-29  Martin Baulig  <baulig@suse.de>
8442
8443         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8444         confusion with the GdkPixbuf of the GNOME 1.x platform.
8445
8446 2000-09-29  Havoc Pennington  <hp@pobox.com>
8447
8448         * gtk/gtktextview.c: Implement the side windows.
8449
8450         * gtk/testtext.c: Implement simple line numbering in the 
8451         left side window; seems to make scrolling sloooow. Oops.
8452         Also, cursor blink is for some reason causing redraws
8453         of the line numbers. Should investigate...
8454
8455 2000-09-28  Havoc Pennington  <hp@redhat.com>
8456
8457         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8458         scrolling child windows, and draw focus rectangle properly.
8459         
8460         (gtk_text_view_buffer_to_window_coords):
8461         Coordinate transformation to deal with all these freaking windows
8462         and offsets
8463         (gtk_text_view_window_to_buffer_coords): transform the other way
8464
8465         * gtk/testtext.c (create_buffer): Update to match Pango API change
8466
8467         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8468         anonymous tags
8469         (foreach_unref): don't emit remove signal from finalize, just
8470         set tag's parent to NULL
8471
8472 2000-09-26  Havoc Pennington  <hp@redhat.com>
8473
8474         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8475         Fix some warnings       
8476
8477 2000-09-26  Havoc Pennington  <hp@redhat.com>
8478
8479         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8480         headers into the private header list
8481
8482         * Makefile.am (pkgconfig_DATA): install pkg-config files
8483
8484         * configure.in: add pkg-config files
8485
8486         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8487
8488         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8489         outstanding icon caches on theme change.
8490
8491         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8492         important types:
8493
8494         (GtkIconSource): Specification for creating a pixbuf 
8495         appropriate for a direction/state/size triplet from 
8496         a source pixbuf or filename
8497
8498         (GtkIconSet): List of GtkIconSource objects that are used to
8499         create the "same" icon (e.g. an OK button icon), and cache for
8500         rendered icons
8501
8502         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8503         up the icon set for a given stock ID.  GTK maintains a stack of
8504         GtkIconFactory to search, and applications or libraries can add
8505         additional icon factories on top of the stack
8506         
8507         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8508         the set of GtkIconSource specified for a given stock ID into 
8509         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8510         RcStyle, under the specified stock ID.
8511
8512         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8513         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8514         This allows people to theme how prelight, insensitive, etc. are
8515         done.
8516
8517         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8518         icon factories for a style, and return the resulting 
8519         icon set if any.
8520
8521         (gtk_style_render_icon): Render an icon using the render_icon 
8522         method in the GtkStyleClass.
8523
8524         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8525         Use the style for a given widget to look up a stock ID, get the
8526         icon set, and render an icon using the render_icon method 
8527         of the style
8528
8529         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8530         (contains information about a stock item), the built-in stock item
8531         IDs, and functions to add/lookup stock items.
8532
8533         * gtk/stock-icons/*: Stock icons that come with GTK
8534
8535         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8536         a button based on a GtkStockItem
8537         (gtk_button_new_accel): Takes a uline string and accel group, and
8538         installs the accelerator.
8539
8540         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8541         image-display widget.
8542
8543 2000-09-25  Havoc Pennington  <hp@redhat.com>
8544
8545         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8546
8547         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8548         Fix a bug when removing node data, we didn't properly 
8549         re-splice the linked list after removing the data.
8550
8551         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8552         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8553
8554         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8555
8556         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8557         for the layout from the GtkTextTag.
8558
8559         * gtk/gtktexttypes.h: delete tab and search cruft, 
8560         remove g_convert() in favor of GLib version
8561
8562         * gtk/gtktexttypes.c: remove tab implementation from here,
8563         move to Pango
8564
8565         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8566         tab stuff using new PangoTabArray from Pango
8567
8568         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8569         unused border_width stuff
8570
8571 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8572
8573         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8574         glib) and now useless utf_to_latin1() latin1_to_utf()
8575
8576         * gtk/gtktextview.[ch]: Change ::move_insert and
8577         ::delete_text action signals to ::move and ::delete;
8578         create the signals with the right enumeration type,
8579         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8580         C-v bindings, change Home, End to move to beginning/end
8581         of line, Add C-Home C-End to move to beginning/end
8582         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8583         combine ::scroll_text into ::move; use new GtkSelectionData
8584         functions to simplify DND text handling.
8585         
8586         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8587         deletion enumerations here, rename enumeration values to 
8588         be consistently plural.
8589
8590         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8591         for cut/copy/paste and primary selection.
8592
8593         * gtk/gtktextbuffer.[ch]: Remove excess time and
8594         'interactive' arguments from cut/copy/paste;
8595         rename cut to cut_clipboard, etc; remove
8596         gtk_text_buffer_get_clipboard_contents().
8597
8598         * gtk/gtktextlayout.[ch]: Add 
8599         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8600         line ends.
8601
8602         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8603         Functions to set or get a UTF-8 string on the selection
8604         data.
8605
8606         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8607         interfaces.
8608
8609         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8610         created widgets - one of these is useless if we don't.
8611
8612         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8613         a public function clear all targets registered for the
8614         widget.
8615
8616         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8617         Never call gtk_widget_realize() - that was just asking
8618         for bizarre side-effects.
8619
8620         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8621         gdk_selection_owner_set even if the widget is the
8622         same so that we reliably update the timestamp on
8623         the server.
8624
8625         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8626         gdk_x11_get_server_time() function.
8627         
8628         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8629         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8630         Add some tricky filtering on serial numbers for
8631         selection clear events to fix up long-standard
8632         race condition FIXME's in gtkselection.c.
8633
8634         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8635         routines to convert from utf8 to compound text or
8636         STRING and from a text property to UTF-8.
8637
8638         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8639         a convenience function gdk_get_current_event_time().
8640
8641         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8642         and free selection_data->data properly
8643
8644 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8645
8646         * gtk/gtkthemes.c: Remove some unecessary includes.
8647
8648 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8649
8650         * gtk/gtktextdisplay.c
8651         * gtk/gtktextlayout.c
8652         * gtk/gtktexttag.c
8653         * gtk/gtktexttag.h
8654         * gtk/testtext.c: Change the overstrike property to strikethrough,
8655         to closer match pango.
8656
8657 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8658
8659         * gtk/gtktextview.c: Fix up visibility so that focus,
8660         cursor_visible and blink interact properly.  Reenable cursor blink
8661         which had been roughly disabled. Make blink and focus
8662         properly per-view.
8663
8664         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8665         Add a flag for whether to display insertion cursor and
8666         a function to set the flag.
8667
8668         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8669         get_line_y() to get_line_yrange(), to be a bit more generally
8670         useful.
8671
8672 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8673
8674         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8675           do stop_navigating_submenu, to clear last timeout properly.
8676           Also in gtk_menu_motion_notify move ignore_enter above
8677           the conditional to make it always happen as suggested by Owen
8678
8679 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8680
8681         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8682
8683         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8684         w32api headers.
8685
8686         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8687         declarations.
8688
8689         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8690         (gdk_win32_get_colormap): A line had been deleted by mistake.
8691
8692         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8693         (gdk_event_translate): Handle more virtual keycodes to be able to
8694         generate GDK events for Control-comma, Control-period, etc.
8695
8696         * gtk/gtk.def: Add some missing entry points.
8697
8698 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8699
8700         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8701         Doc comment fixing. (Mostly non-matching parameter names.)
8702
8703         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8704         comments a little to avoid looking like a doc comment.
8705
8706         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8707         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8708         conversions be changed to GError?)
8709
8710         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8711         Move private #defines into .c file.
8712
8713         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8714         order of argument addition, remove duplicates.
8715
8716         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8717         parent class is FrameClass, not BinClass.
8718
8719         * gtk/gtk.h: Add gtkinvisible, which was missing.
8720         (It's occasionalyl useful for client apps, if seldom.)
8721
8722         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8723         #define.
8724
8725 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8726
8727         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8728         coordinates when creating window, instead of GDK-space
8729         coordinates. (Avoid BadValue on too large windows.)
8730
8731 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8732
8733         * configure.in (use_mmx_asm): Remove conftest* after use along the
8734         lines of AC_TRY_COMPILE.        
8735         
8736         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8737         of g_dirname, which is deprecated.
8738         (gtk_rc_parse_any): Removed calls to
8739         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8740
8741         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8742         Removed calls to g_hash_table_{freeze,thaw}, as they are
8743         deprecated now.
8744
8745         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8746         instead of g_basename.
8747         
8748 2000-09-04 Elliot Lee <sopwith@redhat.com>
8749         
8750         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8751         ANSI warning.
8752
8753 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8754
8755         * gtk/gtkwidget.h:  Add some documenting comments about 
8756           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8757           just as owen said on irc.
8758
8759         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8760           set HAS_DEFAULT.  Only set it if there isn't another window
8761           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8762           it if the widget is not the focused window with RECEIVES_DEFAULT.
8763           This fixes weird double default bugs in dialogs which has things
8764           call gtk_window_set_default at times.
8765
8766 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8767
8768         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8769         Nils Barth and David Santiago to improve submenu
8770         navigation. The patch does this by creating a triangular
8771         region from the point where the pointer leaves the
8772         menu to the submenu.  While the pointer is in
8773         that region and a timeout has not expired, events 
8774         that would cause the active submenu to change are
8775         ignored.
8776
8777 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8778
8779         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8780         moving a toplevel window immediately after sizing it would
8781         result in it being sized back to the old size since 
8782         impl->width, impl->height aren't updated until we hear
8783         back from the server. There is still a (longstanding) bug
8784         here that gdk_window_get_size() will give the wrong size
8785         until we do hear back.
8786
8787 2000-08-31  Havoc Pennington  <hp@redhat.com>
8788
8789         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8790         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8791         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8792         Rename GtkTextStyleValues to GtkTextAttributes
8793
8794 2000-08-31  Havoc Pennington  <hp@pobox.com>
8795
8796         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8797         for rapid testing whether an iterator is the end iterator
8798         (gtk_text_btree_new): init end line cache
8799         (gtk_text_line_is_last): use fast cached line to 
8800         see if we're the last line.
8801         (get_last_line): use cached line here too, should 
8802         speed up some random unrelated code.
8803         
8804 2000-08-30  Havoc Pennington  <hp@pobox.com>
8805
8806         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8807         signals.
8808
8809         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8810         delete_text signals. This allows the signals to be used for
8811         implementing undo.
8812
8813         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8814         provide "interactive" argument when emitting insert_text or
8815         delete_text signal.
8816         
8817 2000-08-30  Havoc Pennington  <hp@pobox.com>
8818
8819         * gtk/gtktextbuffer.c: Docs
8820
8821 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8822
8823         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8824         from switch statements, since Tor removed the enumeration
8825         value.
8826         
8827         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8828         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8829
8830 2000-08-29 Elliot Lee <sopwith@redhat.com>
8831         * */*.h: Use G_GNUC_CONST.
8832
8833 2000-08-27  Havoc Pennington  <hp@pobox.com>
8834
8835         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8836         minor indentation fixes, inserted some FIXME about stuff I
8837         realized was broken while documenting it.
8838         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8839         GTK convention  
8840
8841 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8842
8843         * gtk/testgtk.c (create_styles): Fix double free of
8844         font desc.
8845
8846 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8847
8848         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8849         
8850         * gtk/testgtk.c (create_styles): Add a test for modifying
8851         the style through gtk_widget_modify_*.
8852
8853         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8854         a function to get the current modifier style.
8855
8856         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8857         of the passed in GtkRcStyle instead of ref'ing it.
8858
8859         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8860
8861 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8862
8863         * gdk/gdkimage.h
8864         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8865         shared memory image+pixmap GdkImage type, or
8866         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8867         I am dropping that.
8868
8869         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8870         actually call gtk_init_abi_check(), passing also
8871         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8872
8873         * gtk/gtk.def
8874         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8875         New functions, used to check that the GTK+-using code has been
8876         compiled using the correct compiler and switches. In particular,
8877         with gcc one has to use the -fnative-struct switch as GTK+ is
8878         compiled with that.
8879
8880 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8881
8882         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8883         ->prev fields when merging lists. (Found simultaneously
8884         by Pawel Salek and Jakub Jelinek)
8885
8886 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8887
8888         * gdk/gdk.def
8889         * gtk/gtk.def: Add missing entries.
8890
8891         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8892         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8893
8894         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8895         function. Dummy implementation at this point.
8896
8897         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8898         rules. Undefine GTK_COMPILATION when compiling the test programs.
8899         
8900         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8901
8902 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8903
8904         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8905         to convert back and forth from UTF-8 and the "system" (or "current
8906         locale") charset when necessary. Indentation/spacing cleanup.
8907
8908 2000-08-10  Havoc Pennington  <hp@redhat.com>
8909
8910         * Makefile.am (snapshot): Change the format of the snapshot
8911         version to match glib
8912
8913         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8914         from EXTRA_DIST since it doesn't seem to exist
8915
8916 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8917
8918         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8919         version of the directory name (not the UTF-8 one) when building
8920         the path name to stat().
8921
8922 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8923
8924         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8925         PANGO_ATTR_SHAPE set.
8926
8927 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8928
8929         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8930         Peter Osterlund to simplify the code while keeping the
8931         functionality the same.
8932
8933 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8934
8935         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8936         is_viewable() test further inside the function, since removing the 
8937         window from the redraw list without clearing ->update_area
8938         was also very broken.
8939
8940 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8941
8942         * configure.in: Check for <unistd.h>.
8943
8944 2000-08-01  Martin Baulig  <baulig@suse.de>
8945
8946         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8947         to display the message that this is a development version of GTK+.
8948
8949 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8950
8951         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8952         was depending on widget->allocation instead of the width of text_area,
8953         which was incorrect for subclasses like GtkSpinButton.
8954
8955         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8956         with width == 1 tests that should be width == -1.
8957
8958 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8959
8960         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8961         (broken, Elliot, every single window blank on X) custom code with call
8962         to gdk_window_is_viewable() which a) prevents code duplicate and
8963         b) works. 
8964
8965 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8966
8967         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8968         to get the GDK_PARENT_ROOT() macro to work.
8969         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8970         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8971         of, windows that aren't shown.
8972         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8973         pointer grab stuff.
8974
8975 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8976
8977         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8978           s/gtk_main_iteration/g_main_iteration/
8979
8980           Did this already in change:
8981                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8982           don't know how it got reverted.
8983
8984 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8985
8986         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8987         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8988
8989         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8990         not gdk_pixbuf.
8991
8992 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8993
8994         * configure.in,po/{sp,sr}.po: Added Serbian files
8995
8996 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8997
8998         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8999
9000         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9001         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9002         GIOChannel implementation.
9003
9004         * gdk/win32/gdkinput.c
9005         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9006
9007         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9008         definition to match prototype.
9009
9010         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9011
9012 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9013
9014         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9015         function, to allow handling image formats that cannot be detected
9016         by looking at content alone.
9017
9018 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9019
9020         * docs/tutorial/*.gif *.jpg *.eps
9021           Update these to the same look-n-feel.
9022           Why does including images in DocBook suck so badly?
9023
9024 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9025
9026         * gtk/gtktable.c: applied patch from Phil Thompson
9027         <phil@river-bank.demon.co.uk> that enables space settings for
9028         the last row/columns as well.
9029
9030 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9031
9032         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9033         updates the license headers to the GNU Lesser General Public License,
9034         as well as updating the copyright year to 2000.
9035
9036 2000-07-26  Robert Brady  <rwb197@zepler.org>
9037
9038         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9039           and po/Makefile, was installing and looking for them under gtk20
9040           and gtk2 respectively.
9041
9042 2000-07-25  Havoc Pennington  <hp@redhat.com>
9043
9044         * gtk/testtext.c: Comment out some stuff that depends on the rest
9045         of my patches.
9046
9047 2000-07-25  Havoc Pennington  <hp@redhat.com>
9048
9049         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9050         buffer
9051
9052 2000-07-25  Havoc Pennington  <hp@redhat.com>
9053
9054         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9055         widget changes.
9056
9057         * gtk/gtktextview.h: To be consistent with usage of "line"
9058         throughout the API to mean "newline-terminated thingy", change
9059         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9060         to MOVEMENT_LINE.
9061
9062         (GtkTextView): Add flags for default editability, and whether to
9063         show the cursor. Add functions to get/set that. Add 
9064
9065         (gtk_text_view_get_iter_location): new function
9066
9067         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9068         gtktextlayout.h
9069         (g_convert): Add g_convert temporarily, will go in glib in a bit
9070         
9071         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9072         GtkTextTagTableForeach instead of brokenly using GHFunc.
9073         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9074
9075         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9076         moved to public header.
9077
9078         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9079         "invisible", since "elide" was a bad name.
9080         (gtk_text_tag_get_priority): Added
9081
9082         (GtkTextStyleValues): put this in public header, along with
9083         functions to use it.
9084
9085         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9086         longer include gtktextbtree.h.
9087
9088         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9089         gtk_text_mark_deleted
9090
9091         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9092         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9093         to make this possible. Now we only need to install
9094         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9095         (However the Makefile.am isn't changed yet because of the
9096         logistics of merging gtk-hp-patches piecemeal)
9097
9098         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9099         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9100         gtk_text_iter_get_line is now used in the public API for a
9101         different purpose.
9102
9103         * gtk/gtktextiter.h: Clean up function names to be more
9104         consistent. Always call char offset "offset" and byte index
9105         "index". A "line" is always a line number. 
9106
9107         (gtk_text_iter_is_last): new function, more efficient than 
9108         the existing way to check
9109         (gtk_text_iter_is_first): new function, also more efficient
9110
9111         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9112
9113         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9114         gtk_text_iter_forward_char, etc.
9115
9116         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9117         forward_find_tag_toggle, since this isn't a linear search
9118
9119         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9120
9121         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9122         New functions, search for a buffer substring.
9123
9124         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9125         interactive and default editable (since we need to store that info
9126         until we receive the selection data).
9127
9128         Remove all the _at_char and at_line etc. versions of functions;
9129         only have iterator versions.
9130
9131         Add _interactive() versions of functions, that consider the
9132         editability of text. (FIXME add interactive flag to the 
9133         insert/delete signals per Darin's suggestion)
9134
9135         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9136         tag table if necessary
9137
9138         Remove declaration of gtk_text_buffer_get_iter_from_string
9139
9140         (_gtk_text_buffer_get_btree): private/internal function, added.
9141         
9142
9143         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9144         (gtk_text_line_is_last): new function
9145
9146 2000-07-25  Havoc Pennington  <hp@redhat.com>
9147
9148         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9149         using GtkProgressBar. See Changes-2.0.txt for details.
9150
9151         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9152         "pulse_step" which are the equivalent of
9153         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9154         Implement new API.
9155         
9156         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9157         (use_text_format) to mark whether text set on the progress bar is
9158         a format string. Deprecate entire GtkProgress interface.
9159
9160         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9161         (gtk_progress_build_string): make this a no-op if use_text_format
9162         is FALSE
9163
9164         * docs/Changes-2.0.txt: Describe progress bar changes.
9165
9166 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9167
9168         * Makefile.am: Include the build directory.
9169
9170         * configure.in: Generate build/Makefile, build/win32/Makefile,
9171         gdk/, gdk/win32/, and gtk/makefile.mingw.
9172
9173         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9174         Add GETTEXT_PACKAGE.
9175         
9176         * gdk/gdk.def
9177         * gtk/gtk.def: Updates.
9178
9179         * gdk/gdkfont.h
9180         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9181         need them any longer.
9182
9183         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9184
9185         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9186         PANGOWIN32_LIBS and gdk_pixbuf.
9187
9188         * gdk/win32: Compiles, but no doubt doesn't work at all.
9189
9190         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9191
9192         * gdk/win32/gdkinput.c: New file, temporarily.
9193         
9194         * gdk/win32/gdkinput-win32.h: New file
9195
9196         * gdk/win32/gdkinputprivate.h: Remove.
9197
9198         * gdk/win32/gdkpango-win32.c: New file.
9199
9200         * gtk/makefile.mingw.in: New file
9201
9202         * gtk/makefile.cygwin: Removed
9203         
9204         * gtk/Makefile.am: Update accordingly.
9205
9206         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9207         made externally visible.
9208
9209         * gtk/gtkmain.c: Use it.
9210         
9211         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9212         is enough.
9213
9214         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9215
9216 2000-07-24 Elliot Lee <sopwith@redhat.com>
9217         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9218         individual backends already.
9219         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9220         again. Yes, there really is a good reason for this, if you are using the gdkregion
9221         internals, and if you're not, why do you care?
9222         * gdk/gdkwindow.c: Fix inverted condition
9223         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9224         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9225         * gtk/gtkrange.c: Redraw trough when moving.
9226         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9227         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9228
9229 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9230
9231         * configure.in: Check for mkstemp and sigsetjmp. Output
9232         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9233
9234         More work on GDK for Win32. Still in an intermediate state.
9235
9236         * gdk/makefile.cygwin
9237         * gdk/win32/makefile.cygwin: Removed.
9238         
9239         * gdk/makefile.mingw.in
9240         * gdk/win32/makefile.mingw.in: New files.
9241
9242         * gdk/Makefile.am
9243         * gdk/win32/Makefile.am: Generate and distribute them.
9244
9245         * gdk/win32/gdkwindow-win32.h
9246         * gdk/win32/gdkdrawable-win32.h
9247         * gdk/win32/gdkpixmap-win32.h: New files.
9248
9249         * gdk/win32/gdkcolor-win32.c
9250         * gdk/win32/gdkcursor-win32.c
9251         * gdk/win32/gdkdrawable-win32.c
9252         * gdk/win32/gdkgc-win32.c
9253         * gdk/win32/gdkimage-win32.c
9254         * gdk/win32/gdkprivate-win32.h
9255         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9256         Rename fields and variables called xcursor, xid, etc (these names
9257         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9258
9259 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9260
9261         * gtk/gtkentry.[ch]: Fix some problems with vertical
9262         alignment.
9263
9264         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9265         char/byte confusion.
9266
9267 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9268
9269         * gtk/gtktextview.c (changed_handler): Fix bug where
9270         redraw wasn't being done properly when height of
9271         dirty region changed.
9272
9273         * demos/Makefile.am: Remove various references to
9274         -lgmodule
9275
9276 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9277
9278         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9279         PangoAttrShape to reserve space for pixmaps, add 
9280         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9281         in the display functions.
9282         
9283         * gtk/testgtk.c (create_layout): Set some more exotic
9284         scrolled window options
9285
9286         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9287         Add function to set the shadow type of a window, to allow
9288         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9289         which don't draw their own frame.
9290
9291 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9292
9293         * docs/tutorial/package-db-tutorial.sh: New file for
9294           packaging DocBook format tutorial
9295
9296 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9297
9298         * docs/tutorial/gtk-tut.sgml: Minor updates
9299
9300         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9301
9302 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9303
9304         * gtk/gtksignal.c: Fix C++ comment.
9305
9306         * gtk/gtkimmulticontext.c
9307         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9308         don't return value from void functions.
9309
9310         * gtk/gtk.def: Add gtk_rc_style_unref.
9311
9312 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9313
9314         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9315         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9316         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9317         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9318         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9319         gtk/gtktypeutils.h: Include files outside of the extern "C"
9320         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9321         <vakatov@peony.nlm.nih.gov>.
9322
9323 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9324
9325         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9326           Completes first pass. Hurrah!
9327
9328 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9329
9330         * docs/tutorial/gtk-tut.sgml: More clean ups.
9331
9332 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9333
9334         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9335         paint the background of the text area which was accidentally
9336         removed at some point.
9337
9338         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9339           
9340          - Move most of the functionality from the theme vtable
9341            into GtkRcStyleClass and GtkStyleClass. The moved
9342            vtable functions were changed a bit in the move to
9343            work better in their new home.
9344
9345          - Get rid of the engine and engine_data fields from
9346            GtkRcStyle and GtkStyle; instead the theme
9347            engine derives theme-specific subclasses of GtkRcStyle
9348            and GtkStyle
9349
9350          - Add extra dlsym() found entry point to themes,
9351            theme_create_rc_style().
9352
9353         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9354         in gtk_style_real_copy.
9355
9356         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9357         to register a type associated with an engine. (The engine
9358         won't be unloaded as there is an instance of the type.)
9359
9360
9361 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9362
9363         * docs/tutorial/gtk-tut.sgml: Clean ups.
9364
9365 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9366
9367         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9368           of cleaning up to do.
9369
9370 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9371
9372         * gdk/testgdk.c: New file, quick hack to test backends for
9373         pixel-by-pixel correctness of the most simple graphic operations.
9374
9375 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9376
9377         * Really release 1.3.1
9378         
9379         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9380         include structure.
9381
9382 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9383
9384         * Released 1.3.1
9385
9386 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9387
9388         * gtk/gtktextlayout.c: use FALSE for size_only most
9389         of the time when calling gtk_text_layout_get_line_display()
9390         to avoid causing double reshapes when a redraw follows
9391         immediately after.
9392
9393 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9394
9395         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9396         appropriate region and gdk_window_process_updates() so trough
9397         updating doesn't lag behind the window being scrolled.
9398
9399         * gdk/gdkgc.c: Make parent_class pointer static.
9400          
9401 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9402
9403         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9404         include <string.h>.
9405          
9406         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9407         cut-and-paste error in computing memory offset for 4 channels.
9408
9409 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9410
9411         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9412         gtk_rc_append_default_pixmap_path(), since it wasn't
9413         adding an interesting path and we don't have a meaningful
9414         default for this value.
9415
9416 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9417
9418         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9419         gtk-config to gtk-config-2.0 move gtk_.m4 to
9420         gtk-2.0.m4
9421
9422         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9423         gdk/Makefile.am demos/Makefile.am: Change 
9424         library names to libgtk-1.3.la, etc, so that we
9425         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9426
9427         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9428         gdk/Makefile.am gdk/x11/Makfile.am
9429         Move include files into /usr/include/gtk-2.0, 
9430         /usr/lib/gtk-2.0/include/
9431          
9432         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9433         gtk/gtkintl.h: Change package for gettext from 
9434         gtk+ to gtk20. Put hack in autogen.sh to modify
9435         po/Makefile.in.in after gettextize to make this
9436         possible.
9437
9438         * gtk+.spec: Some updates, not tested.
9439
9440         * gdk-pixbuf/Makefile.am: Move loaders into
9441         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9442
9443         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9444         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9445         to THEMENAME/gtk-2.0/. Move engine directory  to
9446         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9447         
9448 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9449
9450         Win32 changes, still doesn't build though.
9451
9452         * gdk/makefile.cygwin
9453         * gdk/win32/makefile.cygwin
9454         * gtk/makefile.cygwin: Updates.
9455
9456         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9457         default values for fg and bg pixel as X11 does (0 and 1), not
9458         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9459         Use 0 for pen width by default (treated as 1 anyway later, but for
9460         apps that might check the value in the GdkGC).
9461         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9462         interface to gdk_gc_predraw and _postdraw.
9463
9464         * gdk/win32/gdkwin32.h
9465         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9466
9467         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9468         extraneous semicolon.
9469
9470         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9471
9472         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9473         not the Win32 bitspixel value.
9474
9475         * gdk/win32/gdkcc-win32.c:
9476         * gdk/win32/gdkcolor-win32.c 
9477         * gdk/win32/gdkprivate-win32.h
9478         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9479         GDK object structure.
9480
9481 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9482
9483         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9484         * docs/tutorial/gtk_tut_it.sgml (name): 
9485         * docs/tutorial/gtk_tut_fr.sgml (name): 
9486         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9487         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9488
9489 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9490
9491         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9492           small changes.
9493
9494 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9495
9496         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9497         a bug here, never been here and never fixed anything ;(
9498         (don't segfault if tree->root_tree is NULL, which happens prior
9499         to widget realization, but puke instead).
9500
9501 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9502
9503         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9504         add the necessary tokens.
9505
9506         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9507         (gtk_rc_style_to_style): copy thicknesses.
9508         (gtk_rc_init_style): apply thicknesses.
9509         (gtk_rc_parse_style): parse xthickness and ythickness.
9510
9511         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9512
9513         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9514         (gdk_window_new): 
9515         (_gdk_windowing_window_init): 
9516         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9517         (gdk_pixmap_create_from_data): 
9518         (gdk_bitmap_create_from_data): 
9519         (gdk_pixmap_new): 
9520         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9521         (gdk_image_new): 
9522         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9523         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9524         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9525         (gdk_colormap_get_system): 
9526         (gdk_colormap_new): 
9527         * gdk/gdkwindow.c (gdk_window_init): 
9528         * gtk/gtkstyle.c (gtk_style_new):
9529         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9530         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9531         * gtk/gtkrc.c (gtk_rc_style_new):
9532         use g_object_new() instead of g_type_create_instance() which
9533         is a private function for fundamental type implementations.
9534
9535 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9536
9537         * configure.in: Add check for db2html
9538
9539 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9540
9541         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9542         hack to set glib_debug_objects based on gtk_debug_flags.
9543
9544 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9545
9546         * INSTALL.in: Update the Prerequisites section.
9547
9548         * Makefile.am demos/Makefile.am docs/Makefile.am
9549         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9550         gdk/linux-fb/Makefile.am: Dist fixes
9551
9552 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9553
9554         * NEWS: 10,000 foot view of 1.3.1 changes.
9555
9556 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9557
9558         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9559         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9560         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9561         gdk/x11/gdkmain-x11.c: 
9562
9563         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9564         as a return value of gdk_*_grab(). Previously, we just
9565         returned the X11 values directly.
9566
9567 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9568
9569         * gdk/x11/Makefile.am: Patch from George Lebl to 
9570         install all the headers in the right place.
9571
9572 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9573
9574         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9575           initial conversion to DocBook.
9576
9577 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9578
9579         * README.win32: Improve a bit.
9580
9581         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9582         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9583         Alt+0nnn on the numpad (used to enter characters by numeric code
9584         from current DOS or ANSI codepage) working correctly, as in other
9585         Windows apps.
9586
9587         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9588         same argument validity tests as in X11 version.
9589         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9590
9591         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9592         definitions in case missing from headers.
9593
9594         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9595         destroy the window-specific cursor.
9596         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9597         calling GetModuleHandle(NULL).
9598         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9599         with CopyCursor before setting it as the window-specific
9600         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9601         also its Windows cursor) after calling this function. Destroy any
9602         previous window-specific cursor.
9603
9604 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9605
9606         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9607         font charset is iso8859-1, not iso-8859-1.
9608
9609 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9610
9611         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9612         Use g_get_charset() instead of g_get_codeset().
9613
9614         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9615         Comment out some strdup'ing functions to keep timj
9616         happy until we finish fighting this out.
9617
9618 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9619
9620         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9621         <= width or height.
9622
9623         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9624         from 1.2 for parent/child states.
9625
9626         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9627         of typos.
9628
9629         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9630         event structures, replace with a generic axes field. Replace 
9631         deviceid/sourec with GdkDevice *device.
9632
9633         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9634         to extract particular axis use value from event. (Also
9635         can be used for normal X/Y.)
9636
9637         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9638         allow for arbitrary number of axes, namespace everything
9639         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9640         everywhere.
9641
9642         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9643         Get rid of the gdk_input_vtable setup if favor of simply
9644         defining the functions in gdkinput-none/gxi/xfree.c in
9645         a similar fashion to the way that the port structure is 
9646         done.
9647
9648         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9649         for new event structures. 
9650
9651         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9652         new device interfaces.
9653
9654 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9655
9656         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9657         set the initial text.
9658
9659         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9660         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9661         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9662         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9663
9664         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9665         pango_layout_set_font_description to simplify.
9666
9667 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9668
9669         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9670         pango_layout_set_font_description to simplify.
9671
9672 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9673
9674         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9675         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9676         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9677
9678         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9679         PANGO_PIXELS() macro.
9680
9681 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9682
9683         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9684         that returns a PangoContext owned by the widget and updated to
9685         match future changes in the widget. Also, make 
9686         gtk_widget_create_pango_layout() use this context. If we ever
9687         add a ::changed signal to PangoContext, this will make things
9688         much more convenient. 
9689
9690         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9691         in the appropriate places instead of destroying the layouts and
9692         creating new ones.
9693
9694         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9695         in a few strategic places.
9696
9697 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9698
9699         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9700         gtk_widget_size_request() on reparented child, if one. Otherwise,
9701         queue_resize() on the child never results in it getting size-requested
9702         at all.
9703
9704         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9705         in option menus, so that (with luck) people won't copy it into
9706         their apps in the future.
9707
9708         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9709         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9710         a lot of problems with changing the size of the menu's menu
9711         items after adding it to the option menu.
9712
9713         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9714
9715         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9716         the text direction for a widget changes.
9717
9718         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9719         ::direction_changed to get rid of various hacks.
9720
9721 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9722
9723         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9724         name.
9725
9726 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9727
9728         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9729         flag to the structure. Do not call XFreePixmap on pixmaps created
9730         by gdk_pixmap_foreign_new().
9731
9732 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9733
9734         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9735         value using GdkRGB functionality given GdkColormap and GdkColor.
9736         (name not final, waiting for inspiration.)
9737         
9738         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9739         set the foreground/background of a GC using the GC's colormap
9740         and GdkRGB. (name not final, waiting for inspiration.)
9741
9742         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9743         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9744
9745         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9746         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9747         purely a function of the corresponding colormap. Make
9748         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9749
9750         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9751         gdk_pixbuf_*create_from_xpm_* in terms of
9752         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9753         code.
9754
9755         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9756         advantage of the new draw_rgb_32_image_dithalign.
9757
9758         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9759
9760         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9761         on each created GC.
9762
9763         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9764
9765         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9766         which we initialize from the drawable when the GC is created,
9767         if the drawable has a colormap.
9768
9769         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9770
9771         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9772
9773         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9774
9775 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9776
9777         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9778         actually returning expose events, make sure to set
9779         the count field properly.
9780
9781         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9782         accidentally reintroced bug which always cleared
9783         the graphics_exposures value. 
9784
9785 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9786
9787         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9788
9789 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9790
9791         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9792
9793 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9794
9795         * docs/faq/gtk-faq.sgml: Start of Section 6.
9796
9797 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9798
9799         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9800         
9801         (Fixes problem with drawing childless frames. Pointed out
9802         by and a first patch from Anders)
9803         
9804         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9805         compute a child_allocation, even if we don't have a child.
9806
9807         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9808         Always chain to the parent's impl, even if we don't have a child.
9809
9810 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9811
9812         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9813         use multiple parts of it instead of creating a bunch of separate
9814         segments, since the maximum number of segments per system is not
9815         large. (This might be worth backporting to GTK+-1.2.x if we make a
9816         new release )
9817
9818         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9819         structure in preparation for per-colormap GdkRGB.
9820
9821         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9822         to False when we get EINVAL from shmget so that the caller of
9823         gdk_image_new can retry with a smaller segment size.
9824
9825 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9826
9827         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9828
9829 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9830
9831         * configure.in: make the current version number 1.3.1 (binary age 0,
9832         interface age 0).
9833         
9834         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9835         gtkcompat.h is all we want.
9836
9837         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9838         GLib primitive types. fixed g_type_register_fundamental() argument
9839         ordering.
9840
9841         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9842         compiles.
9843
9844         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9845         object code cleanup, comment trigraph fixes, etc...
9846
9847 2000-06-23  Havoc Pennington  <hp@redhat.com>
9848
9849         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9850         instead of making up a bogus name for first_para_mark
9851
9852         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9853         0 as a context ID
9854
9855 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9856
9857         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9858
9859 2000-06-21  Havoc Pennington  <hp@pobox.com>
9860
9861         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9862         we didn't check window->bg_pixmap != GDK_NO_BG.
9863
9864         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9865         gdk-pixbuf
9866
9867 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9868
9869         * docs/faq/gtk-faq.sgm: Move file to here.
9870           TODO: Update Makfile.am 
9871
9872 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9873
9874         * docs/gtk-faq.sgm: Add Section 2
9875
9876 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9877
9878         * docs/gtk-faq.sgm: New file. Start of DocBook
9879           version of the FAQ.
9880
9881 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9882
9883         * configure.in (GDK_PIXBUF_MAJOR): Define version
9884         numbers for GDK_PIXBUF_*, as they get substituted
9885         into a header file. Need to consider versioning
9886         for gdk-pixbuf more carefully later.
9887
9888 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9889
9890         Work with srcdir != builddir.   
9891         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9892         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9893         * demos/testpixbuf.c: Likewise.
9894         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9895         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9896         <gdk/x11/gdkx.h>.
9897         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9898         "gdk-pixbuf.h".
9899         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9900
9901 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9902
9903         * TODO.xml: Change 1.4 version numbers to 2.0.
9904
9905 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9906
9907         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9908         fixups to GTK+ standard.
9909
9910 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9911
9912         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9913         gdk-pixbuf.
9914
9915         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9916         fixups for GObject.
9917
9918         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9919         gdk-pixbuf with GDK dependencies moved into GDK.
9920         
9921         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9922         move gdk-pixbuf-loader here until GObject has signals.
9923
9924         * demos/: New directory of demos. Move demos from
9925         gdk-pixbuf here.
9926
9927         * demos/pixbuf-init.c: Small bit of code to check for
9928         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9929         set GDK_PIXBUF_MODULEDIR appropriately.
9930
9931         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9932         define which no longer makes sense.
9933
9934 2000-06-21  Havoc Pennington  <hp@redhat.com>
9935
9936         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9937         gtk_get_default_language
9938
9939         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9940         new function to get the default language
9941
9942         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9943         s/gtk_text_view_style_values/gtk_text_style_values/
9944
9945         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9946         Add a "language" field to tags.
9947
9948         (gtk_text_tag_set_arg): Fix bug in setting
9949         "bg_full_height_set" tag.
9950
9951 2000-06-21  Havoc Pennington  <hp@redhat.com>
9952
9953         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9954         in the interfaces
9955
9956         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9957         stuff instead when possible.
9958
9959         * gtk/gtktexttypes.h: Delete some unused constants
9960
9961         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9962         testtextbuffer.c: use glib instead of custom unicode routines
9963
9964 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9965
9966         * docs/es/: Removed mistakenly added generated sgml
9967
9968         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9969         Remove outdated info files.
9970
9971         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9972         Moved tutorial files into subdir
9973
9974         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9975         subdir.
9976
9977         * docs/man/gtk_button.pod: Remove. (contents will be
9978         integrated into gtk-reference button page.)
9979
9980         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9981         docs/faq/Makefile.am: Adjust for new organization
9982
9983 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9984
9985         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9986         not $(MKINSTALLDIRS)
9987
9988 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9989
9990         * gtk/testgtk.c (create_text): Finish the job Elliot started
9991         of removing font setting test for text widget. (Since text widget
9992         and GdkFont are not deprecated, and cause portability problems.)
9993
9994 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9995
9996         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9997         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9998         Remove use of libunicode in favor of new GLib functions.
9999
10000         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10001         nano-x, framebuffer. The X11 include is just a hack until we get
10002         the necessary functions in gdkcolor.h, so there is no reason to
10003         add other includes of platforms.
10004
10005         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10006         window bigger than the screen change.
10007
10008         * gtk/testgtk.c: Revert some random changes from Elliot
10009         that had no particular point and were causing testgtkrc
10010         not to function correctly.
10011         
10012         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10013         because GdkSegment and GdkRegionBox have the same fields,
10014         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10015         results in clearer code.
10016
10017         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10018         gdk_input_translate_coordinates): Fix missed GdkObjectification
10019
10020 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10021
10022         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10023         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10024
10025 2000-06-20  Havoc Pennington  <hp@redhat.com>
10026
10027         * modules/linux-fb/Makefile.am: Make this compile
10028         without framebuffer enabled
10029
10030         * gdk/linux-fb/Makefile.am: Add conditional to not build
10031         framebuffer unless specified in configure
10032
10033         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10034         the size of the target instead of source if -1 was passed for
10035         width/height
10036
10037         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10038         width/height confusion.
10039
10040 2000-06-19  Havoc Pennington  <hp@redhat.com>
10041
10042         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10043         GDK_DRAWABLE_XID. In the future, we probably want to make it
10044         faster with G_DISABLE_CHECKS turned on.
10045
10046 2000-06-14  Havoc Pennington  <hp@redhat.com>
10047
10048         * gdk/Makefile.am: add gdkpixmap.c
10049
10050         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10051         s/gdk_image_init/_gdk_windowing_image_init
10052
10053         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10054         ref/unref
10055
10056         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10057
10058         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10059         GdkWindowType is now non-deprecated; 
10060         change gdk_window_get_type() compat to be
10061         gdk_window_get_window_type().
10062
10063         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10064
10065         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10066         virtual GObject. Make all functions call into the vtable.
10067         Move gdk_image_put() guts in here. Remove GdkDrawableType
10068         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10069         draw_image, get_depth, get_size, set_colormap, get_colormap,
10070         get_visual added to the vtable.
10071         
10072         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10073         GObject. Virtualize everything. 
10074         (gdk_gc_new_with_values): remove check for destroyed window,
10075         because now GdkWindow::create_gc will check this.
10076         (gdk_gc_set_values): New function to set GC values, this 
10077         was already implemented but wasn't in the header
10078
10079         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10080
10081         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10082         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10083         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10084         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10085         _gdk_windowing_window_init, rename gdk_image_init to
10086         _gdk_windowing_image_init.
10087         
10088         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10089         (gdk_draw_layout): Remove check for destroyed window, 
10090         because all the drawable methods already check it.
10091         
10092         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10093         Add gdkpixmap.c which contains implementation of GdkDrawable
10094         virtual table (by chaining to a platform-specific implementation
10095         object).
10096         
10097         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10098         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10099         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10100         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10101         GdkColormapPrivate. 
10102
10103         * gdk/gdktypes.h: #include <glib-object.h>
10104
10105         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10106         Move most functionality to platform-specific implementation
10107         object. GdkWindow itself now handles the backing store, then
10108         chains to the platform-specific implementation.
10109         (gdk_window_get_window_type): return GdkWindowType of the window.
10110         (gdk_window_peek_children): New routine, returns the children of 
10111         a GdkWindow
10112         (gdk_window_get_children): Was in X11-specific code and did 
10113         XQueryTree. Changed to simply return a copy of window->children; 
10114         so it can go in cross-platform code.
10115         
10116         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10117
10118         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10119         GdkColormap; just changed to use the new private data instead
10120         of casting to GdkColormapPrivate.
10121
10122         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10123         gdk_cursor_new().
10124
10125         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10126         (private data member in the GObject). 
10127         (xdnd_manager_source_filter): Function had broken 
10128         error handling, fix it (use gdk_error_trap_push).
10129
10130         * gdk/x11/gdkdrawable-x11.c: This file now implements
10131         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10132         base class is purely for the convenience of the X port,
10133         and not part of the interface to cross-platform GDK.
10134
10135         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10136         
10137         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10138         specific to X, and returned by the create_gc virtual method
10139         of GdkDrawableImplX11. 
10140         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10141         rather than gchar, this was also changed in the GdkGC vtable.
10142         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10143         mask is 0, return immediately, instead of checking every flag.
10144         This is faster, and keeps us from segfaulting if values is NULL
10145         and the mask contains some nonzero flags.
10146
10147         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10148         GdkWindow.
10149
10150         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10151         GdkWindowPrivate is gone.
10152
10153         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10154
10155         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10156         remove the image_put stuff that got transferred to GdkDrawable.
10157         
10158         * gdk/x11/gdkinput.c: renamings
10159
10160         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10161
10162         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10163
10164         * gdk/x11/gdkprivate-x11.h: indentation fixes
10165
10166         * gdk/x11/gdkproperty-x11.c: renamings
10167
10168         * gdk/x11/gdkselection-x11.c: renamings
10169
10170         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10171         implements the platform-specific "impl" object.
10172         Moved gdk_window_get_children to gdk/gdkwindow.c
10173
10174         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10175         that no longer exist. Add declaration of GdkGCX11 object here.
10176         Fix all the macros to still work. 
10177
10178         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10179         GdkDragContext from the boxed types since they are now GObjects.
10180
10181         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10182         moved xthickness/ythickness into the instance. GtkStyleClass
10183         functions are now in the standard vtable for GtkStyle, so you have
10184         to create a GObject subclass to write a theme engine.
10185         (gtk_style_copy): fixed a leaked PangoFontDescription
10186         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10187         can be the standard GObject function.
10188         
10189         * Throughout GTK:
10190         s/style->klass->[xy]thickness/style->[xy]thickness
10191         s/pango_layout_unref/g_object_unref/
10192
10193         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10194         
10195         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10196         accessing GDK internals.
10197
10198         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10199         accessing GDK internals.
10200
10201 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10202
10203         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10204
10205         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10206         problem by calculating event position relative to the trough
10207         rather than the slider.
10208         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10209
10210         * gdk/gdkgc.h: Add GDK_NOR.
10211
10212         * configure.in, Makefile.am: Add modules top level dir
10213         * configure.in: Only use pangox library if building x11 target.
10214         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10215
10216 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10217
10218         * gtk/gtkcolorsel.c: Change private class member to be named
10219         private_data throughout the file.
10220
10221         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10222         private_data to avoid clashing with keyword.
10223
10224 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10225
10226         * gdk/gdkdnd.h: Add comment to remove warning.
10227
10228 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10229
10230         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10231         Byelorussian language; changed the Makefile and file names 
10232         to reflect that.
10233
10234 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10235
10236         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10237         rather than gdk_window_hide; this makes things work
10238         correctly if the window is programmatically hidden while
10239         iconified.
10240
10241 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10242
10243         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10244         cut and paste typo where wrong pixmap was being
10245         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10246
10247 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10248
10249         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10250         Add helper function to compute format / bytes 
10251         relationship. Use in a couple places to fix up
10252         errors which assume 8 * format.
10253
10254         * gtk/gtkselection.c (gtk_selection_request): Use 32
10255         rather than 8 * sizeof (GdkAtom), to work correctly
10256         on Alpha.
10257
10258 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10259
10260         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10261         libgtk.la
10262         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10263         versions
10264
10265         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10266         checking macros return NULL since the function has a return value.
10267
10268 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10269
10270         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10271         GTK+ from building at all.
10272
10273         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10274
10275 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10276
10277         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10278         gtk/Makefile.am: make it possible to configure gtk for different
10279         targets on the same platform. The library name is now 
10280         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10281         flag. Only the x11 target compiles right now.
10282         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10283         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10284         * gdk/nanox/gdk*generic*: delete generic region code.
10285         * gdk/linux-fb/gdk*generic*: delete generic region code.
10286         * README.nanox: update information.
10287         
10288 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10289
10290         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10291         prepend not append. (Pointed out by Brett Hall.)
10292
10293 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10294
10295         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10296
10297 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10298
10299         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10300         need this later, and this makes sure that the atexit for
10301         glib gets called after that for GDK, so atexits are
10302         properly ordered for object leak checking.
10303
10304         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10305
10306         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10307         pango_x_shutdown_display()
10308
10309         * gtk/simple.c (main): Close window on destroy.
10310
10311 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10312
10313         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10314         to treat initial creation different from setting with 
10315         regards to the graphics-exposures parameter, so add a parameter
10316         indicating whether this is initial or not.
10317
10318 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10319
10320         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10321         to sort of work by adding an extra return_exposes arg
10322         to gdk_event_translate() - it might be better to simply
10323         deprecate the function altogether and force people to rewrite
10324         without it. gdk_window_scroll() handles most of it, and where
10325         gdk_window_scroll() doesn't work, simply redrawing more does.
10326
10327         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10328         assertion.
10329
10330         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10331
10332         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10333         bunch of pretty much useless /* Print debugging info */ comments 
10334         which had drifted away from the code they were commenting.
10335
10336 2000-06-02  Havoc Pennington  <hp@pobox.com>
10337
10338         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10339         is in working order.
10340         
10341         * gtk/testtext.c: Change to reflect anonymous mark API
10342
10343         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10344
10345         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10346         field, which was unused.
10347
10348         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10349         saves some typing.
10350
10351         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10352
10353         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10354         flag on the insertion point and selection bound
10355
10356         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10357         make mark-manipulation functions take a GtkTextMark* instead of a
10358         mark name.
10359         
10360         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10361         GtkTextMarkBody; will be used to detect attempts to delete
10362         the permanent marks (insert and selection bound)
10363
10364         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10365
10366 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10367
10368         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10369         flag to on.
10370
10371         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10372         Honor DOUBLE_BUFFRED_FLAG
10373
10374         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10375         function to set the DOUBLE_BUFFERED flag.
10376
10377         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10378         or not exposes done on the widget should be double-buffered.
10379
10380         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10381         to be what would be expected. (Fixes problem with a
10382         g_return_if_fail() validating a TextDirection enumeration)
10383
10384 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10385
10386         * gtk/gtkwidget.c: Remove all references to 
10387         offscreen flag which was no longer used.
10388
10389         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10390
10391         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10392         for non-null label_widget->parent.
10393
10394         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10395         which no longer was used.
10396
10397         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10398
10399         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10400         for null arguments.
10401
10402         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10403         check for destroyed windows.
10404
10405 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10406
10407         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10408         the slave context there.
10409
10410         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10411         identical to GtkWindow.
10412
10413 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10414
10415         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10416         pangox to here, so we can write them independent of rendering
10417         system, using GDK primitives.
10418
10419         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10420         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10421         since we have a rendering-system independent implementation in
10422         terms of draw_glyphs().
10423         
10424         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10425         function to render a single line.
10426
10427         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10428         into ../gdkpango.c, which simplifies things, since we
10429         don't have to deal with raw X gc's.
10430
10431 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10432
10433         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10434         get the logical attributes for a given GtkTextLine.
10435
10436 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10437
10438         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10439         g_locale_get_codeset() to g_get_codeset() change.
10440
10441 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10442
10443         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10444         descriptions.
10445
10446         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10447         the entry.
10448
10449         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10450         redoing (vastly simplifying) for Pango. Still needs quite
10451         a bit of work. (Size selection is currently poor. List of 
10452         predefined sizes is not a good idea, since all of these
10453         sizes won't necessarily be distinct.)
10454
10455 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10456
10457         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10458         CODESET results for LANG=C.
10459
10460 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10461
10462         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10463         which takes a stringized pango font description;
10464         ignore the older 'font' and 'fontset' declarations.
10465
10466         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10467         field with a GdkFont derived via gdk_font_from_description(),
10468         for compatibility. (Should we just remove it entirely?
10469         Probably too much compatibility breakage, but people
10470         should be migrating to the new Pango stuff as quickly
10471         as possible.)
10472
10473 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10474
10475         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10476
10477 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10478
10479         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10480         redoing; there are some bugs in size allocation right
10481         now, the semi-existant distinction between header / day
10482         fonts was removed, but, with Pango, could actually
10483         be made functional in a nice way.
10484         
10485         * gtk/testcalender: Move calender from examples into this
10486         directory as a test program. (We really need to restrcture
10487         testgtk into a whole directory full of tests for every
10488         widget or functionality group, separated into multiple .c
10489         files.)
10490
10491 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10492
10493         * gtk/testgtk.c (file_exists): Fix stupid typo that
10494         was keeping RC file from being loaded.
10495
10496         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10497         RC file font code.
10498
10499 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10500
10501         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10502         Add function to load a GdkFont from a PangoFontDescription.
10503
10504 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10505
10506         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10507         variable should be of type GdkEventPrivate.
10508
10509 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10510
10511         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10512         to have any widget for the label, use a GtkLabel widget
10513         to display the text. (Based partially on a patch from
10514         Anders Carlson.)
10515
10516         (Quite a bit of code reorganization - strip 90% of the
10517         guts out of gtkaspectframe and add a single virtual
10518         func to GtkFrameClass - compute_child_allocation.)
10519
10520 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10521
10522         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10523         (Removed clist->row_center_offset field because caching
10524         it wasn't saving time or code, added private function
10525         _gtk_clist_create_cell_layout()).
10526
10527 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10528
10529         * gtk/gtkaccellabel.c: Pangoized.
10530
10531         * gtk/[hv]ruler.c: Pangoized
10532
10533 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10534
10535         * gtk/gtkfilesel.c (gtk_file_selection_init):
10536         Use gtk_clist_set_column_auto_resize() to remove need
10537         need for manual column width computations.
10538
10539 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10540
10541         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10542         ensuring Pango correctness, and considerably simplifying the
10543         code.
10544         
10545         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10546
10547         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10548         getting of numbers of lines.
10549
10550         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10551         to the actual requested width of the lable, not to the wrap
10552         width we set.
10553
10554         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10555
10556         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10557           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10558
10559         * gtk/gtktextview.c: Fix structure inheritance.
10560
10561         * gtk/gtkprogressbar.c: Pangoize.
10562
10563 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10564
10565         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10566         in a function.
10567
10568         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10569         bug with computing line tops.
10570
10571         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10572
10573 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10574
10575         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10576         and y_offset coordinates to do what we need now. (The offset between
10577         buffer and layout coordinates has been reintroduced, but is a 
10578         bit different than before.)
10579
10580         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10581         handle the adjustments ourselves, and scroll as necessary using
10582         the new gdk_window_scroll().
10583         
10584         The advantage of this is that when we are incrementally revalidating,
10585         we are essentially rearranging things around the visible portion
10586         of the screen. With the old setup, the visible portion of the
10587         screen was moved around in the layout, so scrolling and redrawing
10588         to track that caused jumping of the display. Since we now
10589         control the scrolling ourselves, we can suppress this and
10590         only redraw when things actually change.
10591
10592 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10593
10594         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10595         the region not just redisplay it after-all, since we store the
10596         cursors in the LineDisplay. (Ugly interactions here between
10597         GtkLayout and GtkTextBTree here.)
10598         
10599         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10600
10601 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10602
10603         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10604         Added function to scroll contents of a window while keeping the
10605         window constant. Works by XCopyArea or guffaw-scrolling depending
10606         on the details of how the window is set up. (guffaw-scrolling
10607         still needs to be filled in.)
10608
10609 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10610
10611         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10612         move the debugging that was tied to a global variable
10613         to that.
10614
10615         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10616
10617         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10618         validated flag, in line data instead of setting height/width to
10619         -1. This allows us to perform operations with partially invalid
10620         buffer (using the old size for invalid lines) and thus to do
10621         incremental vaidation. Keep height/width aggregates up to date
10622         when deleting text and rebalancing the tree.
10623
10624         * gtk/gtktextbtree.[ch]: Add functions validate a line
10625         (gtk_text_btree_validate_line), and to validate up
10626         to a number of pixels (gtk_text_btree_validate).
10627
10628         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10629         that indicates that something is changed and a revalidation
10630         pass is needed. Change ::need_repaint to ::changed, and
10631         make it take old and new yranges instead of a rectangle.
10632
10633         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10634         the line_data_destroy() function from 
10635         gtk_text_btree_add_view() to a virtual function in 
10636         GtkTextLayout
10637
10638         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10639         since we are handling partial repaints in a different fashion
10640         now.
10641
10642         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10643         of the selection instead of queueing a repaint on the
10644         entire widget.
10645
10646         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10647         get_selection_bounds() down to btree, make the function
10648         in buffer a wrapper around the btree function.
10649
10650         * gtk/gtktextlayout.[ch]: Add functions to check if the
10651         layout is valid and to recompute either a range of pixels
10652         aroudn a line or a certain total number of pixels.
10653
10654         * gtk/gtktextlayout.[ch]: Cache a single line display;
10655         now that we only redraw the needed portions, the hit rate
10656         for this cache is quite high.
10657         
10658         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10659         on the screen so that when re-laying-out the buffer, we can
10660         keep the same place. This requires connecting to ::value_changed
10661         on the adjustments
10662
10663         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10664         the buffer after we receive an ::invalidated signal.
10665         
10666 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10667
10668         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10669         to max of allocation and layout size, not just to the
10670         layout size.
10671
10672         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10673         Invalidate window so it gets redrawn properly.
10674
10675         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10676         to mean the entire window.
10677
10678         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10679         into public header.
10680
10681 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10682
10683         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10684         to get the name of a mark.
10685
10686         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10687         to find the paragraph from a y position.
10688
10689 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10690
10691         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10692         nodes have width/height >= 0, not > 0.
10693
10694 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10695
10696         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10697         Add a size_only flag, so when we only need the size, we don't create
10698         useless appearance attributes.
10699
10700         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10701         duplicate setting of font description.
10702
10703         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10704
10705 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10706
10707         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10708         EXTRA_DIST. It does not work well when the file that
10709         everything depends on is not in the tarball.
10710
10711 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10712
10713         * gtk/testgtk.c: Some hacks and fixes so that it basically
10714         works when not sitting in the GTK+ build tree.
10715
10716 2000-05-03  Havoc Pennington  <hp@redhat.com>
10717
10718         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10719         Properly determine the ordering of the tag root and the current
10720         line within the tree. Previous algorithm only worked if the tag
10721         root's immediate parent was the common root of both the current
10722         line and the tag root.
10723
10724 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10725
10726         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10727         alignment.
10728
10729         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10730         the widget text directional dynamically.
10731
10732         * gtk/gtktextview.[ch]: Added functions to get and set default
10733         wrap mode.
10734
10735 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10736
10737         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10738         in cursor location computation.
10739
10740 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10741
10742         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10743         vadjusment values properly when layout gets smaller.
10744
10745         * gtk/gtktextview.c (need_repaint_handler): Areas being
10746         passed in are far completely inaccurate, and sometimes
10747         too small, so, for now, just queue a redraw on the
10748         whole visible region.
10749
10750 2000-04-25  Havoc Pennington  <hp@redhat.com>
10751
10752         * gtk/gtktextbtree.c (summary_destroy): new function to 
10753         destroy tag summary nodes
10754         (gtk_text_line_next_could_contain_tag): this function was 
10755         totally broken if the line passed in wasn't below the tag
10756         root. Fix it.
10757         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10758         "wildcard" case, we have to do a linear scan. Blah.
10759         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10760         we have to do the linear scan
10761         (tag_removed_cb): When a tag is removed from the tag table, 
10762         remove the GtkTextTagInfo node from the btree.
10763         (gtk_text_btree_spew): Implement the spew function, for 
10764         our debugging pleasure.
10765
10766 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10767
10768         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10769         a problem with referring to the wrong buffer.
10770
10771         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10772
10773         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10774         font description to gtk_style_new() - otherwise things
10775         don't work without a .gtkrc file.
10776
10777         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10778         tags table if we create it ourself, too.
10779
10780         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10781         it was conflicting with XKB modifiers.
10782
10783         * gtk/gtktextview.[ch]: Add simple support for 
10784         GtkIMContext.
10785
10786 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10787
10788         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10789         with deletion from last commit.
10790
10791 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10792
10793         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10794         in the context from the current locale.
10795         
10796         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10797         context, not hardcoded value.
10798
10799         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10800         not logical.
10801
10802 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10803
10804         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10805         attributes - that doesn't handle partial-glyph selection
10806         properly. Instead use new pango_layout_line_get_x_ranges()
10807         functionality to draw the selection.
10808
10809         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10810         now properly handles out-of-range coordinates.
10811
10812         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10813
10814         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10815         public.
10816
10817         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10818         for paragraphs opposite to the base direction of the widget.
10819
10820         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10821
10822         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10823         causes Arabic words to reshape as you cursor through.
10824
10825         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10826         cursor position when moving vertically with the arrow keys and
10827         scrolling with page-up/page-down. (Arrow keys save only the X,
10828         scrolling saves both X and Y.)
10829
10830         This means you can line-up / line-down or page-up / page-down
10831         without losing your place, and also that moving vertically
10832         with the cursor keys keeps the same X position, not the same
10833         character count:
10834
10835         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10836         arrow keys move by display lines, not paragraphs.
10837
10838 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10839
10840         * gtk/gtklayout.c: Make sure that the bin window is at least
10841         as big as the allocation. (Should we also make sure that the
10842         bin window is big enough to completely cover widget->window?)
10843
10844         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10845         function to get the onscreen rectangle.
10846
10847         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10848         for offsets in window coordinates.
10849
10850 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10851
10852         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10853         confusion.
10854
10855         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10856         from the widget direction.
10857
10858         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10859         Add a "direction" attribute.
10860
10861         * gtk/gtktextview.c: global s/tkxt/text_view/.
10862
10863         * gtk/testtext.c: Added long block of text in Arabic, to test out
10864         the direction attributes. (Some problems with the shaping system
10865         for arabic become obvious - like the fact the cursor splits words
10866         into unjoined pieces.)
10867
10868 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10869
10870         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10871
10872         * gtk/gtktextlayout.c: Fix up alignment.
10873
10874         * gtk/testtext.c: Add some tests for centering, wrapping.
10875
10876 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10877
10878         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10879         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10880         If we wrote GTK+-specific layout-render function this could just replace
10881         the draw_layout() operation in the vtable.
10882
10883         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10884         pango_layout_get_cursor_pos() and use that function.
10885
10886         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10887         is a non-static symbol.
10888
10889         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10890         with gtk_text_btree_find_line_by_y()
10891
10892         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10893         renderer that handles GtkTextAppearance attributes.
10894
10895         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10896
10897           - Move the values in the style that don't affect geometry into a
10898             GtkTextAppearance structure.
10899           - Change underline to take a PangoUnderline and "font" a string
10900             representation of a font description
10901           - Add a "font_desc" attribute which takes a FontDescription structure.
10902
10903         * gtk/gtktextlayout.[ch]:
10904
10905           - Get rid of the display-line list per each line. Instead, we
10906             generate, on demand, a GtkTextLineDisplay structure which]
10907             contains a PangoLayout * and other necesary information
10908             (offsets, cursor locations) for displaying a paragraph.
10909           - Get rid of the code to wrap lines, create display chunks,
10910             etc. Instead, we just go through a paragraph and convert
10911             it into the necessary inputs to a PangoLayout.
10912           - Implement a new attribute type, GtkTextAttrAppearance. This
10913             holds a GtkTextAppearance, and is used to pass colors, 
10914             stipple, etc, through from the layout to the display without
10915             having to use lots and lots of individual attributes.
10916           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10917             in terms of PangoLayout functions.
10918         
10919         * gtk/gtktextview.c: 
10920          
10921           - Handle passing the necessary PangoContext to the layout
10922           - Some fixups in painting to deal with the automatic backing store
10923             and offsetting of GTK+-1.4
10924           - Add a style_set handler so that the default style reacts
10925             properly to theme changes.
10926         
10927         * gtk/gtktext?*.[ch]: Random code-style fixes.
10928
10929         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10930
10931 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10932
10933         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10934         in original form preparatory to Pango-ization and gdkimcontext-ization.
10935
10936 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10937
10938         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10939         so that we can derive from gtkimcontext in language bindings properly.
10940
10941 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10942
10943         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10944         Add a compose table including (almost) all the compose combinations
10945         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10946         data in the XIM implementation.
10947
10948         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10949         Moved functions to convert keyvalues from and to unicode here from
10950         the win32 port and made them public.
10951
10952 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10953
10954         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10955
10956 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10957
10958         * gtk/gtkimcontext.[ch]: Base class for new input context system
10959
10960         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10961         the real input context implementation to be loaded from modules
10962         and switched on the fly.
10963
10964         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10965         context that just does direct keysymbol => unicode translation.
10966
10967         * gtk/gtkentry.[ch]: Start switching editing over to using
10968         GtkInputContext. (No handling of preedit yet.)
10969
10970 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10971
10972         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10973         many substitutions. (klass should not be subsituted.)
10974
10975 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10976
10977         * configure.in: Add checks for Pango
10978
10979         * configure.in docs/Makefile.am: Add test for sgml2html
10980         and allow 'make dist' without building html, but print out
10981         warnings in that case. (For making snapshots)
10982
10983         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10984         Add Pango libraries and C flags
10985
10986         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10987         Add function (gdk_draw_layout) to draw a pango layout.
10988
10989         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10990         for getting Pango contexts for GDK.
10991
10992         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10993
10994         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10995         editing.
10996
10997         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10998         keysym => unicode translations. More languages can be added
10999         here, but real input-method support is needed.
11000
11001         * docs/Changes-1.4.txt: Added note about entry behavior.
11002         
11003         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11004         to set the reading direction for a widget and the global direction.
11005         Add test which allows toggling the global direction. Two private
11006         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11007
11008         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11009           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11010
11011         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11012
11013         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11014         underlining now handled by Pango.
11015
11016         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11017         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11018         is temporary.)
11019
11020         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11021         convenience functions for creating contexts and layouts for widgets.
11022
11023         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11024
11025 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11026
11027         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11028         titles to be active, even if they aren't visible.
11029         (gtk_clist_column_titles_passive):  Ditto.
11030
11031 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11032
11033         * gtkmenu.c:
11034         * gtkmenu.h:
11035         * gtktypeutils.h: Spelling/grammar fixes in comments.
11036
11037 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11038
11039         * gdk/nanox/*.h: add missing header files.
11040
11041 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11042
11043         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11044         send_event to TRUE.
11045         (gtk_drawing_area_size): queue a resize.
11046
11047 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11048
11049         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11050         the handlers, also invalidate them. bug nailed down by Karl Nelson
11051         <kenelson@ece.ucdavis.edu>.
11052
11053 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11054
11055         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11056         "(nil)" foundries, patch from Grigorios Magklis.
11057
11058         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11059         on non-available fonts, based on a patch by Grigorios Magklis
11060         <maglis@cs.rochester.edu>.
11061
11062 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11063
11064         * gdk/x11/gdkregion-generic.c: If a region does not have any
11065         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11066         instead of GDK_OVERLAP_RECTANGLE_IN.
11067
11068 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11069
11070         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11071         OFFSCREEN, as it is no longer necessary.
11072
11073 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11074
11075         * gtk/gtkcolorsel.c: Patch from David Santiago
11076         <mrcooger@cyberverse.com> to change things so that the 
11077         indicator of the active palette entry is done independently,
11078         not via the focus, since it should always be visible.
11079
11080 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11081
11082         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11083         refcount leaks as in the X11 backend.
11084
11085         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11086         cosmetics.
11087
11088         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11089         backend. Add _gdk_windowing_window_destroy().
11090
11091         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11092         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11093         either, but these probably do exist on nanox?)
11094         
11095         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11096         which isn't necessarily defined by <math.h>.
11097
11098         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11099         ancestry past GtkObject.
11100
11101         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11102         from DLL on Win32.
11103
11104         * gtk/gtk.def: Update corresponding to recent changes.
11105
11106         * gtk/makefile.{cygwin,msc}: Updates.
11107
11108 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11109
11110         * docs/Changes-1.4.txt: A bit of editing.
11111
11112         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11113         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11114         to clear the update area for the window, and clear it
11115         when hiding a window.
11116
11117         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11118         if window destroyed.
11119
11120         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11121
11122         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11123         gdk_window_destroy() to the generic code, since there was a lot of 
11124         window-system-independent logic it in. Add a function:
11125         
11126          _gdk_window_destroy() 
11127
11128         to the internal API to destroy a window without unreferencing it.
11129         Add a function:
11130
11131          _gdk_windowing_window_destroy()
11132
11133         That does the windowing-system-dependent part of destroying 
11134         the window.
11135
11136 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11137
11138         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11139
11140 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11141
11142         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11143         Make gtk_widget_shape_combine_mask() keep a reference count on
11144         the pixmap since it keeps it around.
11145
11146 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11147
11148         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11149         leak.
11150
11151         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11152         leak with event filters.
11153
11154 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11155
11156         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11157         signal handlers with the right data arguments. (Fixes
11158         some warnings when a widget was repeatedly set as a drag
11159         destination.)
11160
11161         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11162         window so we can avoid avoid setting the DND properties on the
11163         toplevel window repeatedly.
11164
11165 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11166
11167         * gdk/win32/gdkwin32.h: Define more message types missing from
11168         mingw headers.
11169
11170         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11171         call gdk_window_destroy_notify(). It was never called. This
11172         probably meant that the GdkWindow was never freed. Thanks Owen for
11173         noticing (!).
11174
11175         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11176         window as destroyed before calling DestroyWindow(). DestroyWindow()
11177         causes a call to the window procedure (gdk_WindowProc), which
11178         calls gdk_event_translate(), which calls
11179         gdk_window_destroy_notify(), which gets confused unless the window
11180         is set as destroyed.
11181
11182         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11183         this function to indicate it's win32 only. Put inside #ifdef
11184         G_ENABLE_DEBUG.
11185
11186         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11187         debugging function. (gdk_event_translate:) Add a default branch
11188         that uses the above function to print debug messages with all
11189         Windows messages symbolically.
11190
11191         * gdk/win32/gdkprivate-win32.h: Declare it, and
11192         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11193
11194 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11195
11196         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11197         public header file.
11198
11199 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11200
11201         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11202
11203         * gtk/gtktext.c: made the adjustments no-construct args, simply
11204         provide default adjustments.
11205         (gtk_text_destroy): release adjustments.
11206
11207         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11208         adjustment argument non-construct.
11209
11210         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11211         instead of in finalize.
11212         (gtk_progress_get_text_from_value): 
11213         (gtk_progress_get_current_text): 
11214         (gtk_progress_set_value): 
11215         (gtk_progress_get_percentage_from_value): 
11216         (gtk_progress_get_current_percentage): 
11217         (gtk_progress_set_percentage): 
11218         (gtk_progress_configure): ensure an adjustment is present.
11219
11220 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11221
11222         * gtk/gtkcolorsel.[hc]:
11223         * gtk/gtkcolorseldialog.[hc]:
11224         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11225         their parent implementation, use bit fields for boolean values, don't
11226         create unused widgets, usage of glib types, braces go on their own
11227         lines, function argument alignment, #include directives etc. etc. etc..
11228
11229         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11230
11231 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11232
11233         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11234
11235         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11236         of NULL.
11237
11238         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11239         to freed data.
11240         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11241
11242         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11243         to NULL when the toplevel is getting destroyed.
11244         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11245         (gtk_menu_destroy): 
11246         (gtk_menu_init): store the information of whether we have to
11247         readd the initial child ref_count during destruction in a new
11248         GtkMenu field needs_destruction_ref_count.
11249
11250         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11251         here, those reading: learn from my mistake! ;)
11252         in order for set_?adjustment to support a default adjustemnt if
11253         invoked with an adjustment pointer of NULL, the code read (pseudo):
11254         if (v->adjustment) unref (v->adjustment);
11255         if (!adjustment) adjustment = adjustment_new ();
11256         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11257         now imagine the first unref to actually free the old adjustment and
11258         adjustment_new() creating a new adjustment from the very same memory
11259         portion. here, the latter comparision will unintendedly fail, and
11260         all hell breaks loose.
11261         (gtk_viewport_set_hadjustment):
11262         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11263         after unreferencing it.
11264
11265         * gtk/gtkcontainer.[hc]: removed toplevel registration
11266         functions: gtk_container_register_toplevel(),
11267         gtk_container_unregister_toplevel() and
11268         gtk_container_get_toplevels() which had wrong semantics
11269         anyways: it didn't reference and copy the list.
11270
11271         * gtk/gtkwindow.c: we take over the container toplevel registration
11272         bussiness now. windows are registered across multiple destructions,
11273         untill they are finalized. the initial implicit reference count
11274         users are holding on windows is removed with the first destruction
11275         though.
11276         (gtk_window_init): ref & sink and set has_user_ref_count, got
11277         rid of gtk_container_register_toplevel() call. add window to
11278         toplevel_list.
11279         (gtk_window_destroy): unref the window if has_user_ref_count
11280         is still set, got rid of call to
11281         gtk_container_unregister_toplevel().
11282         (gtk_window_finalize): remove window from toplevel list.
11283         (gtk_window_list_toplevels): new function to return a newly
11284         created list with referenced toplevels.
11285         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11286
11287         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11288         adjustment a non-construct arg.
11289         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11290         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11291         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11292
11293         * gtk/gtkrange.c: added some realized checks.
11294         (gtk_range_destroy): get rid of the h/v adjustments in the
11295         destroy handler instead of finalize. remove timer.
11296         (gtk_range_get_adjustment): demand create adjustment.
11297
11298         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11299         we simply create them on demand now and get rid of them in
11300         the destroy handler.
11301         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11302         destroy handler instead of finalize.
11303         (gtk_viewport_get_hadjustment): 
11304         (gtk_viewport_get_vadjustment): 
11305         (gtk_viewport_size_allocate): demand create h/v adjustment
11306         if required.
11307
11308         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11309         gtk_widget_real_destroy () functionality.
11310         (gtk_widget_real_destroy): reinitialize with a new style, instead
11311         of setting widget->style to NULL.
11312
11313 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11314
11315         * gtk/gtkcalendar.c:
11316         * gtk/gtkbutton.c: ported _get_type() implementation over to
11317         GType, either to preserve memchunks allocation facilities,
11318         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11319
11320         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11321         over. prepare for ::destroy to be emitted multiple times.
11322         removed reference tracer magic. chain into GObjectClass.shutdown()
11323         to emit ::destroy signal.
11324
11325         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11326         fundamental.
11327
11328         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11329         cludge.
11330
11331         * gtk/gtksocket.c:
11332         * gtk/gtkplug.c:
11333         * gtk/gtklayout.c:
11334         * gtk/gtklabel.c:
11335         * gtk/gtkargcollector.c:
11336         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11337         not being a fundamental anymore, and to work with the new
11338         type system (nuked fundamental type varargs clutter).
11339
11340         * gtk/*.c: install finalize handlers in the GObjectClass
11341         part of the class structure.
11342         changed direct GTK_OBJECT()->klass accesses to
11343         GTK_*_GET_CLASS().
11344         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11345
11346         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11347         GType. made most of the GTK_*() type macros and Gtk* typedefs
11348         simple wrappers around macros and types provided by GType.
11349         most notably, a significant portion of the old API vanished:
11350         GTK_TYPE_MAKE(),
11351         GTK_TYPE_SEQNO(),
11352         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11353         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11354         GTK_TYPE_ARGS,
11355         GTK_TYPE_CALLBACK,
11356         GTK_TYPE_C_CALLBACK,
11357         GTK_TYPE_FOREIGN,
11358         GtkTypeQuery,
11359         gtk_type_query(),
11360         gtk_type_set_varargs_type(),
11361         gtk_type_get_varargs_type(),
11362         gtk_type_check_object_cast(),
11363         gtk_type_check_class_cast(),
11364         gtk_type_describe_tree(),
11365         gtk_type_describe_heritage(),
11366         gtk_type_free(),
11367         gtk_type_children_types(),
11368         gtk_type_set_chunk_alloc(),
11369         gtk_type_register_enum(),
11370         gtk_type_register_flags(),
11371         gtk_type_parent_class().
11372         replacements, where available are described in ../docs/Changes-1.4.txt.
11373         implemented compatibility functions for the remaining API.
11374
11375         * configure.in: depend on glib 1.3.1, use gobject module.
11376
11377 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11378
11379         * TODO.xml: Various updates to current status.
11380
11381 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11382
11383         * gtk.m4: Print out version when test succeeds.
11384
11385 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11386
11387         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11388         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11389         
11390         (Original triangle color selector from Simon Budig
11391         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11392         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11393         Santiago <mrcooger@cyberverse.com>)
11394
11395         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11396         out into a separate widget.
11397
11398         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11399         and opacity controls.
11400
11401 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11402
11403         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11404         snuck in prematurely.
11405
11406 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11407
11408         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11409         had deleted a ! operator by mistake, which caused
11410         GDK_SELECTION_CLEAR events never to be generated, which caused
11411         only the first copy to the clipboard from an gtkeditable to
11412         actually cause a copy to the Windows clipboard.
11413
11414 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11415
11416         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11417         compilation, too. Current mingw gcc distributions include the
11418         necessary headers. Also the necessary IIDs are now in mingw
11419         headers/libraries, and own definitions unnecessary.
11420
11421         More hacking on OLE2 DND, still doesn't work though, and thus
11422         ifdeffed out.
11423
11424         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11425         here, too.
11426
11427 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11428
11429         * gdk/nanox/*: nano-X port work in progress.
11430         * gdk/simple.c: simple test for Gdk.
11431         * README.nanox: notes about the port: read this first!
11432         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11433         with nano-X.
11434
11435 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11436
11437         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11438         gdk_window_clear() into common code, implement in terms of
11439         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11440         not redirected to the backing rectangle.
11441
11442 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11443
11444         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11445         EXTRA_DIST. It does not work well when the file that
11446         everything depends on is not in the tarball.
11447
11448 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11449
11450         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11451         with recursion where process_updates() is called from
11452         an expose handler. (GtkTextView is highly broken in
11453         doing this, but it should work, so it is a nice test
11454         case.)
11455
11456 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11457
11458         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11459         handle the case where updates are queued during processing of
11460         updates.
11461
11462 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11463
11464         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11465         window is on gdk_display - use that instead of segfaulting.
11466
11467 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11468
11469         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11470         broken and require an empty arg, give it to them.
11471
11472 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11473
11474         * gtk/gtklabel.h: indentation fixes.
11475
11476 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11477
11478         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11479         draw too narrow or too low arcs, they seem to fail, at least with
11480         some display drivers.
11481
11482         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11483
11484         Large changes to the Win32 backend, partially made necessary by
11485         the changes to the backend-independent internal
11486         structures. Attempts to implement similar backing store stuff as
11487         on X11. The current (CVS) version of the Win32 backend is *not* as
11488         stable as it was before the no-flicker branch was merged. A
11489         zipfile with that version is available from
11490         http://www.gimp.org/win32/. That should be use by "production"
11491         code until this CVS version is usable. (But note, the Win32
11492         backend has never been claimed to be "production quality".)
11493
11494         * README.win32: Add the above comment about versions.
11495
11496         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11497
11498         * gdk/gdk.def: Update.
11499
11500         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11501         presumably be replaced by some more better mechanism as 1.4 gets
11502         closer to release shape.
11503
11504         * gdk/makefile.{cygwin,msc}: Update.
11505
11506         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11507         internal headers. Change code according to changes in these. Use
11508         gdk_drawable_*, not gdk_window_* where necessary.
11509
11510         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11511         our old DND.
11512
11513         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11514         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11515         Use correct function name in warning messages.
11516
11517         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11518         GSourceFuncs gdk_event_prepare and gdk_event_check.
11519         (gdk_event_get_graphics_expose): Do implement, use
11520         PeekMessage. Thanks to Hans Breuer.
11521         (event_mask_string): Debugging function to print an GdkEventMask.
11522         (gdk_pointer_grab): Use it.
11523
11524         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11525         (old) book I used claimed was Hangul actually is CJK Unified
11526         Ideographs Extension A. Also, Hangul Syllables were missing.
11527         Improve logging.
11528
11529         * gdk/win32/gdkgc-win32.c: Largish changes.
11530
11531         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11532         g_win32_getlocale() from GLib, and not setlocale() to get current
11533         locale name.
11534
11535         * gdk/win32/gdkprivate-win32.h
11536         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11537         gdkwin32.h, similarily as in the X11 backend.
11538
11539         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11540         assignment was used instead of equals in if test. Thanks to Hans
11541         Breuer.
11542
11543         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11544         the X11 version.
11545
11546         * gdk/win32/makefile.{cygwin,msc}
11547         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11548         path to the Win32 headers that works also with the mingw compiler.
11549
11550         * gtk/gtkstyle.c: Include <string.h>.
11551
11552 2000-04-26  Havoc Pennington  <hp@redhat.com>
11553
11554         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11555         replacing the broken gtk_label_get ()
11556
11557 2000-04-15  Havoc Pennington  <hp@pobox.com>
11558
11559         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11560         this keeps scanner scripts from getting confused.
11561
11562         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11563         data, rather than void
11564
11565 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11566
11567         * gtk/gtkclist.c (gtk_clist_motion)
11568         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11569         with is_hint FALSE, get x and y from the event. They used to be
11570         used uninitialised. The Win32 backend never sends motion events
11571         marked as hints. This for instance fixes the annoying file and
11572         font selector behaviour in the Win32 version.
11573
11574 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11575
11576         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11577         gtk_private_n_signals variables, they are used by some software,
11578         sigh.
11579
11580         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11581         installation directory from the Registry, where the installer
11582         should have put it.
11583
11584 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11585
11586         * gdk/x11/Makefile.am: Fix problem with installation directory for
11587         gdkx.h
11588
11589         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11590         <mrcooger@cyberverse.com> so that when selecting menus with the
11591         mouse, the first item will not be selected, but when selecting
11592         with an accelerator, or navigating left-right on a menubar with
11593         the menus popped up, the first item will be selected.
11594
11595 2000-04-05  Dan Damian  <dand@dnttm.ro>
11596
11597         * configure.in: Added "ro" to ALL_LINGUAS.
11598
11599 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11600
11601         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11602         indentation.
11603
11604         * Makefile.am (EXTRA_DIST): Fix typo.
11605
11606         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11607         to catch gdkconfig.h
11608
11609         * gtk/gtkitemfactory.c: Added FIXME.
11610
11611 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11612
11613         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11614         s/return_if_fail/return_val_if_fail/g and add a return value.
11615
11616 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11617
11618         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11619         merge slipup.
11620
11621         * gdk/gdkinput.h: Fix missing line from merge.
11622
11623 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11624
11625         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11626         instead of gdkprivate.h.
11627
11628 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11629
11630         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11631         parent class to correctly be GtkDialogClass.
11632
11633 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11634
11635         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11636         toplevel windows and their immediate children by their parents,
11637         since the size of toplevel windows is out of our immediate
11638         control and we don't get any real benefit from trying to track
11639         this size for clipping.
11640
11641         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11642         for input_only windows.
11643
11644         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11645         to fix some hacks and make sure that we don't try to set the
11646         background of input only windows.
11647
11648 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11649
11650         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11651         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11652         stuff that we've traditionally exposed.
11653
11654         * gdk/**.c: Use gdkinternals.h where appropriate.
11655
11656         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11657         not include gdkprivate-x11.h, move all stuff of conceivable public
11658         interest into gdkx.h; keep all really private stuff in
11659         uninstalled header gdkprivate-x11.h.
11660
11661         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11662         image->image_put on windows through a new function _gdk_window_draw_image()
11663         to allow us to do backing store for images. (Sort of ugly)
11664
11665         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11666         contexts locally so that we can offset them properly when drawing 
11667         onto backing pixmaps.
11668
11669         * gdk/gdkinput.h: Reindented
11670
11671         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11672         pixmap or color for the window, so we can properly initialize
11673         our double-buffer pixmaps, and also so that we temporarily set
11674         a background of None while scrolling.
11675
11676         * gdk/gdkregion.h: Revise region boolean operators to have an
11677         interface that is actually convenient - switch from creating new
11678         regions on every op, to "methods" that modify existing regions
11679         (A = A OP B). 3 argument forms which allow dest == src, would also
11680         be possible, but the current interfaces seem to map nicely
11681         onto what needs to be done. (There is quite a lot of region
11682         code in GDK now.)
11683
11684         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11685         operator.
11686
11687         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11688         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11689         to 32 bit coordinates, modify it to be mostly GTK+ style
11690         and to have interfaces that match gdkregion.h.
11691
11692         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11693         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11694         create a backing pixmap and redirect all drawing to
11695         that backing pixmap until a matching gdk_window_end_paint().
11696
11697         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11698         Create a special drawable class for GtkWindow's that 
11699         redirects the drawing to the backing pixmap as necessary
11700         and then calls the real operations in _gdk_windowing_window_class.
11701
11702         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11703         Store invalid region for each window. Generate expose events for invalid
11704         region in an idle. This replaces both the expose compression
11705         and the redrawing queuing in GTK+. It is both more efficient and
11706         simpler than either one individually and far more so then the
11707         combination.
11708
11709         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11710         Emulate 32 bit coordinates for windows with 16 bit coordinates
11711         by offsetting drawing, guffaw scrolling techniques and
11712         mapping/unmapping child windows as necessary.
11713
11714         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11715         where, when invalid regions are processed, the region is stored,
11716         and if expose events come in that are detectably duplicate
11717         the processed exposes (by comparison of event serial numbers),
11718         the stored region is subtracted out of those exposes.
11719
11720         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11721         regions newly exposed when scrolling or resizing windows.
11722         This, combined with forcing processesing of queued invalidated
11723         regions, gives nice flicker-free scrolling.
11724
11725         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11726         invalidated regions after every scroll.
11727
11728         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11729         emulation in GDK. Its, for all practical purposes just a
11730         GtkViewport/GtkFixed hybrid now.
11731
11732         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11733         (16-bit) structures as necessary instead of just casting.
11734
11735         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11736         in terms of the structures from gdkregion-generic.c, using appropriate
11737         offsets from GDK to X11 coordinates. Cache clip mask and
11738         origin and ts origin locally and only flush to the server
11739         when drawing, to avoid constantly setting and resetting these
11740         values when offsetting GC's for scrolling and backing pixmaps.
11741
11742         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11743
11744         * gtk/gtkcontainer.c: Call process_all_updates at end
11745         of resizing to reduce flicker. (Avoids having redraw
11746         lag arbitrarily behind resize under some circumstances)
11747
11748         * gtk/gtkentry.c: Remove old backing store code, and simply take
11749         advantage of the new backing store capabilities of GDK.
11750
11751         * gtk/gtkmain.c: Simple implementation of widget backing
11752         store - simply push a paint while handling each expose.
11753         (Should really be configurable widget for widget.)
11754         
11755         * gtk/gtkwidget.c: Remove all the old complicated redraw
11756         code, and simply invalidate the GDK windows from
11757         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11758         debugged complexity ... gone to the winds.)
11759
11760         Remove all the code for suppressing expose events while
11761         resizes are pending; this isn't needed since the invalid
11762         areas won't be processed until after the resizes are
11763         processed, since they are in a lower priority idle.
11764
11765 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11766
11767         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11768         and height of dest rectangle for non-intersecting rectangles.
11769
11770 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11771
11772         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11773         for GdkRectangle.
11774
11775 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11776
11777         * gdk/gdk{events,image,private,types,window}.h
11778          gdk/x11/gdkinputprivate.h: Change all coordinates
11779          from int16 to int. Also, Change width and height from
11780          unsigned to signed to avoid all the stupid C 
11781          signedness bugs.
11782
11783 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11784
11785         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11786         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11787         Add some more detailed checking.
11788
11789         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11790         New function to retrieve the depth of a drawable.
11791
11792         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11793         field, reorder fields to save memory. 
11794
11795 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11796
11797         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11798         of the background image instead of scaling the background down to
11799         a line.
11800
11801         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11802         which temporarily set slider to wrong size.
11803
11804         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11805         queue_clear().
11806
11807 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11808
11809 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11810
11811         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11812
11813 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11814
11815         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11816         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11817
11818         * gdk/win32/gdkfont-win32.c
11819         * gdk/win32/gdkproperty-win32.c
11820         * gdk/win32/gdkselection-win32.c
11821         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11822         now declared such.
11823
11824 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11825
11826         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11827
11828 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11829
11830         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11831         is called without trapping X errors.
11832
11833 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11834
11835         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11836         way into the fontset lists.
11837
11838 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11839
11840         * gtk/gtkthemes.h: add extern "C" scope.
11841
11842 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11843
11844         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11845         to make appends to the list constant. (gtk-guy-990901-0.patch)
11846
11847 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11848
11849         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11850         for the typename hash table.
11851
11852 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11853
11854         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11855         to make sure we never divide by zero. 
11856         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11857
11858 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11859
11860         * gtk/gtkfontsel.c: Apply patch from
11861         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11862         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11863
11864         Also, some cleanups in atom handling.
11865
11866 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11867
11868         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11869         not GtkWidget.
11870
11871 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11872
11873         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11874         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11875         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11876         more guint wrap-around bugs before going to bed.
11877
11878 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11879
11880         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11881         guint wrap arounds in allocation.width.
11882
11883         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11884         process untill we fit the allocation given.
11885
11886 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11887
11888         * gtk/gtkwidget.c:
11889         (gtk_widget_unrealize): guard widget access with ref/unref
11890         around signal emission.
11891         (gtk_widget_hide): same here, but also check its destroyed
11892         state before queueing a resize.
11893
11894 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11895
11896         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11897         of gtk_default_insensitive_bg as insensitive base color.
11898
11899         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11900         to the widget's state.
11901         (gtk_text_realize): same here.
11902         (gtk_text_state_changed): same here.
11903         (draw_bg_rect): compare background color against base[] from
11904         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11905
11906 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11907
11908         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11909         grabs are active, unless a delete event is send to the toplevel
11910         of the currently grab holding widget.
11911
11912 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11913
11914         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11915         debugging g_print's.
11916
11917 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11918
11919         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11920         ever make the scrolled-window requisition ever depend on the 
11921         visibility state of the scrollbars for the AUTOMATIC policy. 
11922         This breaks the GTK+ requisition model, and causes loops.
11923
11924 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11925
11926         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11927         the default font to avoid problems with XFree86-4.0 where the
11928         default charset is iso10646-1, not iso8859-1.
11929
11930 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11931
11932         * acinclude.m4
11933         * config.guess
11934         * config.sub
11935         * ltconfig
11936         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11937
11938         * gtk/Makefile.am: minor cosmetic consistency tweak
11939
11940 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11941
11942         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11943         the activate_time to 0, so that we handle a quick
11944         press/release press/release properly and don't suppress
11945         the second release. (Red Hat bug #7545)
11946
11947 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11948
11949         * gtk/gtkctree.c (row_delete):
11950         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11951         bugs with destruction notifier, *always* update internal
11952         structures *before* calling user code.
11953
11954 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11955
11956         A few more fixes for bug #5487, #2051, #2677.
11957         * gtk/gtkclist.c : 
11958         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11959         not GDK_BUTTON_PRESS.
11960         (resync_selection): resync only if selection_mode is
11961         GTK_SELECTION_EXTENDED
11962         * gtk/gtkctree.c (resync_selection): same here
11963
11964 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11965
11966         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11967         gdk_drag_get_selection() and gtk_menu_detach().
11968
11969         [ From Jeroen Ruigrok/Asmodai ]
11970
11971 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11972
11973         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11974         page->tab_label can be NULL.
11975
11976 2000-01-25  Havoc Pennington  <hp@pobox.com>
11977         
11978         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11979         arg is boolean
11980
11981         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11982
11983         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11984
11985         * gdk/gdkproperty.c (gdk_property_get): return boolean
11986
11987         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11988
11989         * gdk/gdkim.c (gdk_im_ready): return boolean
11990
11991         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11992
11993         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11994         glib clash, should fix glib)
11995
11996         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11997         (gdk_get_show_events): return gboolean, and canonicalize 
11998         to TRUE/FALSE
11999
12000         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12001         colormap is private
12002         (gdk_colors_alloc): gboolean whether to be contiguous
12003         (gdk_color_equal): return gboolean since we are a predicate
12004         and not a qsort() (this looks semi-wrong due to glib breakage,
12005         IMO glib should be fixed)
12006         
12007         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12008         (gdk_get_use_xshm): return gboolean
12009         (gdk_pointer_is_grabbed): return gboolean
12010
12011         * gdk/gdk.h: Change prototypes to match all the above changes,
12012         and re-run egtk-format-protos as required.
12013
12014 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12015
12016         * gtk/gtkctree.c (resync_selection): 
12017         * gtk/gtkclist.c (resync_selection):
12018
12019         Return immediately if clist->drag_pos < 0. This is a workaround
12020         for the corrupt state that the clist gets into when a
12021         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12022
12023         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12024         
12025         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12026         variable from recent commit.
12027
12028 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12029
12030         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12031
12032 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12033
12034         * gtk/Makefile.am: prefix all autogenerated source that get build in
12035         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12036         in builddir. since we subsequently cd into srcdir for autogeneration,
12037         the paths have to be stripped from the target file names, thusly we
12038         use $(@F) as target names now.
12039         put a comment about configure.in's --disable-rebuilds option,
12040         which can be used for non-writable source directories, for development
12041         setups though, srcdir has to be *writable*.
12042
12043 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12044
12045         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12046           Finish the job of allowing event to be NULL.
12047           (Fixes bug #4283, reported by Chris Blizzard)
12048
12049         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12050           things so that the cursor appears on screen, properly
12051           take into account INNER_BORDER.
12052           (Fixes bug #4754, reported by Antonio Campos)
12053
12054 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12055
12056         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12057           show the tab_label unless it itself is visible.
12058
12059           gtk/gtknotebook.c (gtk_notebook_size_request):
12060           Do a better job of making sure that the visibility
12061           of the tab label corresponds to whether it should
12062           be mapped or not.
12063
12064 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12065
12066         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12067           Use the requisition, not the allocation, since the
12068           allocation has not necessarily been computed yet.
12069           (Pointed out by Eugene Osintsev)
12070
12071 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12072
12073         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12074           style/base[GTK_STATE_INSENSITIVE] both to
12075           gtk_default_insensitive_bg!
12076           (Bug #2187, reported by Jonathan Blandford)
12077
12078         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12079           Add Alt_L, Alt_R to list of invalid accelerators.
12080           (Bug #3736, reported by Vlad Harchev)
12081
12082 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12083
12084         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12085         bugs which occured after an attempt to open 
12086         invalid home directory left cmpl_state->reference_dir == NULL.
12087
12088          - completion on files in home directory didn't work
12089          - completion on an empty string caused  segfault
12090
12091          (Bug #3678, reported by Steve Ratcliffe)
12092
12093         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12094         cut and paste error that was causing scales to
12095         be incorrectly positioned.
12096         (Bug #2956,
12097          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12098
12099 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12100
12101         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12102         when checking for dcgettext, if we've found we needed
12103         it for dgettext.
12104 +
12105 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12106
12107         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12108         queue_clear on NO_WINDOW widgets during a reparent,
12109         since at that point the window and widget heirarchies
12110         are out of sync. This stops crashing in some cases
12111         (the scrolled window reparent test, for instance), and
12112         _probably_ won't cause drawing errors.
12113
12114         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12115         test do what it was supposed to do and be robust against
12116         window closings, etc. (Bug #2443)
12117
12118 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12119
12120         * gtk/gtkentry.c: Fix return values on mouse events.
12121         (Bug #2686, Sky <seb_sky@yahoo.com>)
12122
12123         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12124         (pointed out by George Lebl)
12125
12126         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12127         (From Ettore Perazzoli  <ettore@helixcode.com>)
12128  
12129 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12130
12131         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12132         clicks between rows or outside calender area correctly.
12133         (Patch from Damon Chaplin)
12134
12135         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12136         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12137           Call destroy function when overwriting existing data. 
12138           (Pointed out by Damon Chaplin)
12139
12140 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12141
12142         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12143           which was causing problems on various systems with Xmu.
12144           This hasn't been needed for a very long time.
12145           (Fixes #1185 3167)
12146
12147 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12148
12149         * gdk/gdki18n.h: Include <ctype.h> when defining
12150           gdk_isw* in terms of is* as a fallback.
12151           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12152
12153 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12154
12155         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12156           realize the widget when it is size allocated!
12157           (old, old bug)
12158
12159         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12160           Removed unused call to gdk_window_get_size() that
12161           showed up when the above was fixed.
12162
12163 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12164
12165         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12166           fix up widget->window when the widget is a
12167           NO_WINDOW container widget.
12168
12169 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12170
12171         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12172           to account for the fact that feof() does _not_ 
12173           return TRUE on errors, and thus avoid infinite loops
12174           when trying to use gdk_pixmap_create_from_xpm()
12175           on unreadable values.
12176
12177 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12178
12179         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12180
12181 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12182
12183         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12184           gdk_gc_set_dashes to take gint8 instead of gchar to
12185           make it clearer that it is _not_ a NULL terminated string.
12186
12187         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12188           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12189           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12190           arguments.
12191
12192 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12193
12194         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12195         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12196         background size relative to our allocation, guard against small
12197         allocations, we may have not yet been size allocated.
12198
12199 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12200
12201         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12202         not just version == 3. We implement all 3 + most of 4 - 
12203         (we don't support matching text/plain;charset=iso-8859-1
12204         to a dest that expects text/plain). We'll still advertise
12205         3 to be safe, but any client implementing version >= 3
12206         must interoperate with 3.
12207         
12208 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12209
12210         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12211         background and gc members, add a warning in gtk_tooltips_set_color()
12212         indicating that this function is deprecated.
12213
12214 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12215
12216         * docs/gtkfaq.sgml: FAQ Update:
12217           - Minor cleanups (Emmanuel, me)
12218           - New questions:
12219                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12220                 How can I retrieve the text from a GtkMenuItem? (timj)
12221                 How do I validate/limit/filter the input to a GtkEntry? (me)
12222                 Memory does not seem to be released when I free the list
12223                         nodes I've allocated (timj)
12224
12225 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12226
12227         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12228         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12229         for which it is no use to call GetLastError onWin9x.
12230         (gdk_other_api_failed) New function, for general error
12231         reporting without calling GetLastError.
12232         (gdk_win32_api_failed) OTOH, this function always calls
12233         GetLastError. (gdk_win32_last_error_string) Remove this function,
12234         GLib has the equivalent now.
12235
12236         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12237         call them with function name, file name and line number in the
12238         arguments.
12239
12240         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12241         functions.
12242         
12243         * gtk/gtk.def: Add some missing entry points.
12244
12245         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12246         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12247         
12248         Fixes by Hans Breuer:
12249
12250         * gdk/makefile.msc: Update for debugging.
12251
12252         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12253         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12254         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12255         in the dash_list.
12256
12257         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12258         the x11 backend.
12259
12260         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12261
12262         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12263
12264 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12265
12266         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12267         just pixel value of background colour.
12268
12269         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12270         containing code snippet previously duplicated in a couple of
12271         places.
12272         
12273         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12274         gdk_colormap_color.
12275
12276         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12277         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12278         events for autorepeated Shift, Control and Alt keys. Use
12279         gdk_colormap_color.
12280
12281         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12282         pointer is inside the window the cursor of which we are setting,
12283         call SetCursor immediately.
12284
12285         * gdk/win32/makefile.cygwin
12286         * gtk/makefile.cygwin: If we don't have the build number stamp
12287         file, use zero.
12288
12289         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12290         gtk_paned_set_gutter_size as empty.
12291
12292         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12293         
12294 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12295
12296         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12297           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12298           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12299           docs/gtk_tut.sgml docs/gtk.texi TODO:
12300
12301           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12302
12303 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12304
12305         * gtk/gtkcalendar.c: Implement num_marked_dates,
12306           and don't emit mutiple day_selected signals on
12307           month_prev.
12308
12309 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12310
12311         * docs/make-todo (lineno): let title and logo be configurable so
12312         that GNOME can use this script too.
12313
12314         * TODO.xml: added logourl and a title
12315
12316 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12317
12318         * TODO.xml: Added some UI items, and an explanatory
12319         comment at the top of the file.
12320
12321 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12322
12323         * TODO.xml: some updates, added abunch of new entries.
12324         a note for those fiddeling with this file, when done
12325         with it, invoke:
12326         $ ./docs/make-todo TODO.xml >/dev/null
12327         and correct output errors before comitting changes.
12328
12329 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12330
12331         * TODO.xml: Added XML-structured TODO file.
12332         * docs/make-todo: python script to turn TODO.xml into
12333           pretty XML output. 
12334
12335 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12336
12337         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12338         the function to let it draw the seven dots, instead of the old,
12339         much maligned, method.
12340         (draw_dot): New function to draw a dot.
12341
12342         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12343         to draw the handle inside the border width as opposed to outside.
12344         Use paint function instead of gdk_draw_point.
12345
12346         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12347         to draw the handle inside the border width as opposed to outside.
12348         Use paint function instead of gdk_draw_point.
12349
12350         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12351         Change indenting to be more GTK like.
12352
12353 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12354
12355         * docs/gtk_tut.sgml: New section on GtkCalendar
12356         * examples/calendar: Update example code
12357
12358 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12359
12360         * docs/gtkfaq.sgml: FAQ Update
12361
12362 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12363
12364         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12365         to prevent the scroll event to be propagated upwards.
12366
12367 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12368
12369         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12370         OwnerGrabButtonMask from button entries for
12371         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12372
12373         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12374         to the event mask (which will result in button/press release
12375         being added to the event mask on Unix) so scrolling works
12376         for layouts in scroll windows.
12377
12378         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12379
12380         Patch from Anders Carlsson  <andersca@gnu.org> to add
12381         a scroll event.
12382
12383         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12384         scrolling to the "Test Scrolling" part of testgtk.
12385  
12386         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12387  
12388         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12389         it against GDK_SCROLL.
12390  
12391         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12392         way of mouse wheel scrolling.
12393  
12394         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12395  
12396         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12397  
12398         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12399  
12400         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12401         gdk_event_mask_table.
12402  
12403         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12404         GdkEventScroll handler.
12405  
12406         * gdk/gdkevents.h: Added GdkEventScroll structure.
12407  
12408 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12409
12410         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12411         and Anders Carlsson to change the Paned widgets so that they
12412         can be dragged from anywhere along the length. Also change
12413         the way that this is drawn to make this apparent.
12414
12415         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12416         from George Lebl to check that option_menu->menu is present
12417         before getting history.
12418
12419 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12420
12421         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12422         before the assertion for non-NULL segment list.
12423
12424         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12425         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12426         machine, but it might be display driver dependent. Sigh, so make
12427         sure the stipple is that size. Does Windows suck or what?
12428
12429         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12430         places.
12431
12432 2000-02-13  Havoc Pennington  <hp@pobox.com>
12433
12434         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12435         refcount to 1
12436         (gdk_cursor_new): init refcount to 1
12437
12438         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12439
12440 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12441
12442         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12443         so that we don't have to do unnecessary settings to the HDC.
12444
12445         * gdk/win32/gdkdrawable-win32.c
12446         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12447         gdk_gc_predraw.
12448
12449         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12450         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12451         GDI paths, call WidenPath to get the outline of the stroken path,
12452         and then fill the outline (with the brush that was built from the
12453         stipple).
12454
12455         * gdk/win32/gdkgc-win32.c: Factor out common code from
12456         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12457         gdk_win32_gc_values_to_win32values. Use correct colour for
12458         SetBkColor() (Until now the code actually used a random colour in
12459         the call to SetBkColor()... but that didn't show up as not many
12460         GDI APIs use the background colour. Pattern (opaque stippled)
12461         brushes do.)
12462
12463         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12464         gdk_win32_api_failed): New functions for error logging.
12465
12466         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12467         WIN32_API_FAILED to call them, passing function or file name and
12468         line number.
12469
12470         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12471
12472         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12473         GdkColor for foreground and background in GdkGCWin32Data.
12474
12475         * gdk/makefile.cygwin: Link in the resource object separately.
12476
12477         * gdk/win32/rc/gdk.rc
12478         * gtk/gtk.rc (New file)
12479         * gdk/win32/makefile.cygwin
12480         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12481         as in GLib.
12482
12483 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12484
12485         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12486         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12487         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12488         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12489         parameters given and cursor->ref_count. coding style fixups.
12490
12491         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12492         not GtkWidget.
12493         
12494         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12495         fix up widget macros and add _GET_CLASS() variant.
12496         
12497         * gtk/*.c: some GtkType fixups.
12498
12499 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12500
12501         * gdk/win32/gdkproperty-win32.c
12502         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12503         were reversed.
12504
12505 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12506
12507         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12508         g_filename_to_utf8 to convert the font names Windows gives us from
12509         whatever is the default codepage to UTF-8.
12510         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12511         in the other direction.
12512
12513         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12514         error in debugging output.
12515
12516 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12517
12518         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12519         and height parameters to gdk_window_clear_area(). Not minus one.
12520
12521 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12522
12523         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12524         checks if the widget passed to gtk_drag_get_data() was not the
12525         dest widget.
12526
12527 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12528
12529         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12530         g_filename_from_utf8 functions (which were added a moment ago to
12531         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12532         size buffers.
12533
12534         gtk_file_selection_get_filename returns the filename in the C
12535         runtime encoding. It calls g_filename_from_utf8, but copies the
12536         returned string to a static buffer, which is returned. I think
12537         this is better than returning the result from g_filename_from_utf8
12538         directly, which would mean all apps that use it would have to free
12539         the return value. Or should this function care about this issue at
12540         all? Maybe a new function with clearly defined semantics.
12541
12542         * gtk/gtkfilesel.h: Add comment about
12543         gtk_file_selection_get_filename returning the filename in the C
12544         runtime's encoding.
12545
12546         * README.win32
12547         * gdk/gdk.def
12548         * gdk/makefile.{cygwin,msc}
12549         * gtk/gtk.def: Updates.
12550
12551         * gdk/gdkcursor-win32.c: Initialise refcount.
12552
12553 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12554
12555         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12556
12557 2000-01-30  Havoc Pennington  <hp@pobox.com>
12558
12559         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12560         destroy
12561
12562         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12563
12564         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12565         implemented in platform-specific code
12566
12567         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12568
12569         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12570         underscore in front
12571
12572         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12573         put an underscore in front
12574
12575         * gdk/gdkcursor.c: new file, implements
12576         gdk_cursor_ref/gdk_cursor_unref
12577
12578         * gdk/gdkcursor.h: Refcount GdkCursor
12579
12580         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12581
12582 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12583
12584         * gdk/gdkwindow.h
12585         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12586
12587 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12588
12589         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12590         structures to properly inherit from GtkWidget not GtkBin.
12591
12592 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12593
12594         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12595         (bug #5178 - Peter Wainright)
12596         
12597         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12598         so that it will be installed.
12599         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12600
12601 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12602
12603         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12604         for the GtkStyleClass vtable const.
12605
12606         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12607         take a const string argument like GtkTranslateFunc. This will
12608         require changes in use code.
12609
12610 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12611
12612         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12613         semantics (to mimic the X11 backend, which just calls XClearArea)
12614         is to check for zero width (and height), and in that case use the
12615         window's width minus x (height minus y). This fixes for instance
12616         some redraw problems with gtkclist, which were easily noticeable
12617         in the gtk file selection widget.
12618
12619         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12620         windows.
12621
12622 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12623
12624         * configure.in
12625         * gdk/Makefile.am
12626         * gdk/x11/Makefile.am
12627         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12628         (bug #5177).
12629         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12630         out later.
12631
12632 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12633
12634         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12635         WM_MOVE for iconified or invisible windows. This fixes various
12636         problems when minimising windows. Thanks to Bernd Herd.
12637
12638 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12639
12640         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12641         backend's draw_lines method, not draw_points.
12642
12643 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12644
12645         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12646         before Owen's reorganisation: Don't have queued_events and
12647         queued_tail statics in this file, but use gdk_queued_events and
12648         gdk_queued_tail. This makes exposure event compression work again.
12649
12650         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12651         seem to be needed?
12652
12653 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12654
12655         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12656         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12657         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12658         doesn't do anything.
12659
12660         * gdk/gdk.def: Add gdk_xid_table_insert.
12661
12662         * gdk/win32/gdkprivate-win32.h
12663         * gdk/win32/gdkevents-win32.c
12664         * gdk/win32/gdkinput-win32.c
12665         
12666         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12667         extension_events field in the GdkWindowWin32Data struct. Use only
12668         the extension_events field in GdkWindowPrivate. Previously one was
12669         set, and the other one tested, which broke tablet
12670         functionality. Thanks to Keishi Suenaga for pointing this out.
12671
12672 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12673
12674         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12675         When handling a single character (text length == 1), don't handle
12676         it as if it was UTF-8.
12677
12678 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12679
12680         * Makefile.am: Distribute README.win32.
12681         
12682         * gdk/Makefile.am
12683         * gdk/win32/Makefile.am: Distribute Win32 files.
12684
12685         * gdk/makefile.msc: New file.
12686
12687         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12688         after label).
12689
12690         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12691         gdk_error_code as GDKVAR, as they are referred outside GDK.
12692
12693         * gdk/win32/makefile.msc: Update.
12694
12695         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12696         tweaks. Check only if at least one of those Unicode subrange bits
12697         we care for is set. If no code page bits are set, guess (wildly)
12698         based on the charset.
12699
12700         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12701
12702         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12703         non-NULL.
12704
12705         * gtk/gtkdnd.c
12706         * gtk/gtklayout.c
12707         * gtk/gtkplug.c
12708         * gtk/gtkselection.c
12709         * gtk/gtksocket.c
12710         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12711         appropriate. There must be a cleaner way to handle this?
12712
12713         * gtk/gtkrc.c: Must include windows.h on Win32.
12714
12715         * gtk/testgtk.c: No need to include gdkx.h.
12716
12717         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12718
12719 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12720
12721         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12722         the rbearing is set to the same as the width, but this should be
12723         fixed.
12724
12725 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12726
12727         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12728         function. If Windows doesn't tell us what Unicode subranges a font
12729         covers, guesstimate based on the codepages it covers. This will
12730         hopefully help those Windows versions or fonts that don't give us
12731         any useful Unicode subrange information with GetTextCharsetInfo.
12732         Call this function in gdk_font_load_internal.
12733
12734         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12735         minor changes.
12736
12737 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12738
12739         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12740         New function, long needed.
12741
12742 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12743
12744         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12745         only_if_exists argument of gdk_atom_intern to
12746         bool.
12747
12748 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12749
12750         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12751         Fix two copy&paste errors.
12752
12753         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12754         win32 has changed.
12755
12756         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12757         GdkWin32SingleFont struct.
12758
12759         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12760         subranges of loaded fonts. Clear font signature first, in case
12761         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12762         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12763
12764         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12765         Unoffset clip region.
12766
12767 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12768
12769         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12770         event->any.window before calling filter functions.
12771
12772 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12773
12774         * gtk/gtkgamma.h: Adapt cast macros to standard.
12775
12776 [ Merges from 1.2 ]
12777
12778 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12779
12780         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12781         If translation does not include a '/', use entire
12782         translation instead of crashing.
12783
12784 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12785
12786         * docs/gtk_tut.sgml:
12787         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12788
12789 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12790
12791         * gtk/gtkselection.c (gtk_target_list_remove): Use
12792         g_list_remove_link, not g_list_remove.
12793
12794         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12795         
12796 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12797
12798         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12799         statement upon unselection (how the heck did that slip in?).
12800
12801 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12802
12803         * gtk/gtktext.c (gtk_text_freeze): 
12804         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12805         in frozen state (and aparently crashes). patch provided by Anders
12806         Melchiorsen <and@kampsax.dtu.dk>.
12807
12808 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12809
12810         * fix insensitive default/focus widget activation,
12811         reported by Matt Goodall <mgg@isotek.co.uk>.
12812
12813         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12814         (gtk_window_activate_default):
12815         (gtk_window_activate_focus):
12816         return handled=FALSE for actiavtion of insensitive default
12817         widgets. return handled=TRUE for activation of insensitive
12818         focus widgets. don't activate in either case.
12819
12820 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12821
12822         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12823         and $glib_cflags to match library order and in the
12824         theory that an old version of GLib is more likely to
12825         be in the include directory for X then vice-versa.
12826         (Bug #2776)
12827
12828 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12829
12830         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12831         to determine the locale for fontsets, not LC_MESSAGES;
12832         the user may want English messages with a handling
12833         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12834         will still be broken) (Bug #2891)
12835
12836 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12837
12838         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12839
12840 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12841
12842         * gtk/gtkrc.ko: Changed the Korean default fontset.
12843
12844 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12845
12846         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12847         where when scrolling to the left or top double exposes
12848         were done, causing major slowdowns.
12849
12850 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12851
12852         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12853         names to lowercase and alphanumeric, before looking
12854         them up.
12855
12856         * gtk/Makefile.am: Install codeset variant gtkrc files
12857         with normalized names.
12858
12859 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12860
12861         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12862         popup menus when the menu is already visible, but its parent
12863         is still hidden, (happens after tornoff window got hidden).
12864
12865 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12866
12867         * gtk/Makefile.am (install-data-local): Fix
12868         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12869         deleted, causing error messages on install.
12870
12871 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12872
12873         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12874         the handle as well, since we now sometimes ignore
12875         exposes on the handle while resizing.
12876
12877 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12878
12879         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12880         extra g_free introduced in one of the last one or two 
12881         commits.
12882
12883 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12884
12885         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12886         consistent, put each style that a gtkrc.* file creates
12887         in a unique namespace, remove old files before installing.
12888
12889 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12890
12891         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12892         gtk_rc_init is called multiple times. (Yes, people who
12893         do that have bugs in their code.)
12894
12895 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12896
12897         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12898         Remove it since it's generated by the Makefile anyway
12899
12900 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12901
12902         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12903         device->info.axes for core pointer.
12904
12905 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12906
12907         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12908         idle_id, to deal with obsolete, broken C libraries.
12909
12910 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12911
12912         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12913         allocation->x/y twice!
12914
12915         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12916         consistent with gtk_vscale_pos_trough().
12917
12918 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12919
12920         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12921         be queueing a resize on a toplevel container between
12922         the time we show it and when we map it. So, we need
12923         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12924         use GTK_WIDGET_DRAWABLE() for child windows.
12925
12926 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12927
12928         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12929         (fixes bug #2144)
12930
12931 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12932
12933         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12934         container DRAWABLE (instead of VISIBLE), so we don't queue
12935         resizes on non-toplevel containers.
12936
12937 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12938
12939         * gtk/gtkselection.[ch]: Make the data argument
12940         const guchar *.
12941
12942 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12943
12944         * gtk/gtkwindow.c: Try to behave sensibly if 
12945         the focus widget is the window itself. (Should
12946         we allow this at all?)
12947
12948 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12949
12950         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12951         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12952         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12953         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12954         in prototypes and implementations consistent (Tomas Ogren).
12955
12956         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12957         before the widget is unparented (reported by damon).
12958
12959         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12960         since we provide unsigned data anyways.
12961
12962 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12963
12964         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12965         the call to gtk_tooltips_layout_text() until later.
12966
12967         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12968         Call gtk_widget_ensure_style() before using the style.
12969
12970 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12971
12972         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12973         for old widgets that don't propagate draws to all
12974         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12975
12976 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12977
12978         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12979         for a redraw but just the widget that requested the resize.
12980
12981 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12982
12983         * gtk/gtkcontainer.c: added new widget level method
12984         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12985         reallocate_redraws : 1 to reflect the setting, exported this through
12986         the argument system as a boolean ::reallocate_redraws.
12987
12988         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12989         on the widget because the allocation changes, do so as well for
12990         widget->parent if the parent has reallocate_redraws set to TRUE.
12991         with that containers requesting reallocation redraws get automatically
12992         redrawn if their children changed allocation (this unfortunately
12993         affects also other children that didn't change allocation, but we
12994         cannot work around that before 1.3).
12995
12996 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12997
12998         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12999         _and_ height are >0 (not _or_).
13000
13001         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13002         instead of gtk_container_queue_resize(), which is a core gtk internal
13003         function (must have been on crack when i queued that).
13004
13005         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13006         we can check more reliably if we want to discard expose events.
13007         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13008         flag.
13009         
13010         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13011         we simply trust these events. for deciding whether to discard exposes,
13012         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13013         
13014 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13015
13016         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13017         queues of areas that are completely off screen.
13018
13019         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13020         logic for handleboxes.
13021
13022         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13023         check on width/height.
13024
13025 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13026
13027         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13028         we are fine with using $@ the way we do (if we actually encounter
13029         brokeness with $@ in VPATH builds because of additional path prefixes,
13030         we need to use $(@F) actually).
13031
13032 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13033
13034         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13035         short lived bugs, that would allow language bindings to do surgeries
13036         to our guts.
13037
13038 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13039
13040         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13041         where comparison was being done against an uninitialized
13042         value causing intermittant results depending on
13043         compiler flags. Also make it clearer that we aren't
13044         ever initializing the child as 0x0 (though this will
13045         be caught in gtk_widget_size_allocate())
13046
13047 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13048
13049         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13050         gtk_window_unset_transient_for() call after we do checks
13051         involving the old transient parent.
13052         [ From Lance Capser <lmc@cyberhighway.net> ]
13053
13054 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13055
13056         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13057         an empty file.
13058
13059 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13060
13061         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13062         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13063
13064 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13065
13066         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13067         `$@' is valid only in the build dir, not after we've done 
13068         `cd $srcdir'.  Also use `test -f' instead of less portable
13069         `test -e'.
13070
13071 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13072
13073         * gtk/gtktext.c (correct_cache_insert): Rewrite
13074          for simplicity, and hopefully correctness.
13075          (Fixes bug #1322, which was a segfault when
13076           on some insertions with the properties around
13077           the insertion set up just wrong.)
13078
13079         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13080          a "changed" signal, clamp the new value to the adjustment
13081          bounds to avoid segfaulting if someone tries to change
13082          the adjustment to a bogus value. (Bug #1795)
13083
13084 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13085
13086         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13087         for children, for toplevel windows handle them
13088         like delete_event.
13089
13090         * gtk/gtkplug.c: Add an unrealize handler so that
13091         we unref plug->socket_window when we are done
13092         with it.
13093
13094 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13095
13096         * gtk/gtktext.c (clear_area): Fix stupid signedness
13097          problem that was causing background to sometimes
13098          be misaligned.
13099
13100 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13101
13102         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13103         
13104         * gtk/gtkmenu.c (gtk_menu_position): Make
13105          sure we never position menus with negative x, y,
13106          since gtk_widget_set_uposition() can't handle that.
13107
13108         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13109          Modify the positioning code a bit so that we always
13110          put the top-left corner onscreen. (This is for
13111          UI reasons, gtk_menu_position() now takes care of
13112          gtk_widet_set_uposition() brokeness.)
13113
13114 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13115
13116         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13117
13118 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13119
13120         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13121           RC style that is passed in. The lack of the ref
13122           before was a bug. If people worked around this
13123           bug, this will introduce a slight memory leak
13124           in their code. The code should typically look like:
13125
13126             rc_style = gtk_rc_style_new ();
13127             [...]
13128             gtk_widget_modify_style (widget, rc_style);
13129             gtk_rc_style_unref (rc_style);
13130
13131         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13132           the style if it was already set.
13133
13134         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13135           style if it was set before.
13136
13137 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13138
13139         * gtk/testgtk.c (main): Add a check to see if we
13140           are being run from the correct directory and
13141           to quit nicely if we are not.
13142
13143         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13144           static.
13145
13146 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13147
13148         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13149
13150         * gtk/gtkwindow.c:
13151         queue resizes unconditionally (gtk_widget_queue_resize will figure
13152         what to do if the window is not realized).
13153         (gtk_window_move_resize): only recenter the window
13154         for GTK_WIN_POS_CENTER_ALWAYS.
13155         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13156         the same way as GTK_WIN_POS_CENTER.
13157
13158 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13159
13160         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13161         with (!(info->last_flags & GDK_HINT_POS)) instead of
13162         (!info->last_flags & GDK_HINT_POS).
13163
13164         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13165         new_height unconditionally, because we use these values even if
13166         !default_size_changed && !hints_changed.
13167         comented the (default_size_changed || hints_changed) case with
13168         respect to resize rejects from the window manager.
13169
13170         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13171         in the zvt condition hack, since this includes the window hints, set
13172         the hints after the handling_resize case.
13173
13174         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13175         window is initially shown with to the geometry.
13176
13177 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13178
13179         * gtk/gtkwindow.c (gtk_window_move_resize):
13180         s/size_changed/default_size_changed/g so i know what's
13181         really going on (frying brain on smaller flame now).
13182
13183 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13184
13185         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13186         we have size_changed upon handling_resize. this is a gross
13187         workaround for the broken zvt widget and should be removed in
13188         1.3 again (search for FIXME).
13189         Owen provided an accurate comment for this:
13190
13191         /* We could be here for two reasons
13192          *  1) We coincidentally got a resize while handling
13193          *     another resize.
13194          *  2) Our computation of size_changed was completely
13195          *     screwed up, probably because one of our children
13196          *     is broken. It's probably a zvt widget.
13197          *
13198          * For 1), we could just go ahead and ask for the
13199          * new size right now, but doing that for 2)
13200          * might well be fighting the user (and can even
13201          * trigger a loop). Since we really don't want to
13202          * do that, we requeue a resize in hopes that
13203          * by the time it gets handled, the child has seen
13204          * the light and is willing to go along with the
13205          * new size. (this happens for the zvt widget, since
13206          * the size_allocate() above will have stored the
13207          * requisition corresponding to the new size in the
13208          * zvt widget)
13209          *
13210          * This doesn't buy us anything for 1), but it shouldn't
13211          * hurt us too badly, since it is what would have
13212          * happened if we had gotten the configure event before
13213          * the new size had been set.
13214          */
13215
13216 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13217
13218         * gtk/gtkrc.c: deal properly with the fact that RC
13219           style lists may include rc styles more than once.
13220
13221         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13222           unused static function.
13223
13224         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13225           stack of directories of RC files currently being
13226           parsed and implicitely add them to pixmap path.
13227           
13228           This fixes a bug where the directory would get
13229           appended then overwritten by pixmap_path declarations.
13230
13231           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13232
13233         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13234           theme's exit function. (Patch from Peter Wainwright,
13235           bug #1454)
13236
13237         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13238           Add a destroy() handler to take care of removing
13239           group for menu item. (Fixes bug #1197)
13240
13241         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13242           in warning message.
13243
13244 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13245
13246         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13247         roundtrip to figure window's width and height, since we know that
13248         anyways from widget->allocation.
13249
13250 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13251
13252         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13253           the hints after we request the new size.
13254
13255 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13256
13257         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13258           GTK_WIDGET_REALIZED() assertion - we can compute the
13259           hints before we are realized.
13260
13261         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13262           hint changing so that we have a value of hints_changed
13263           when we decide whether to constrain the window size.
13264
13265         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13266
13267         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13268         change back to G_MAXINT.
13269
13270 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13271
13272         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13273         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13274         contain uncluttered values.
13275         (gtk_window_compute_hints): simply assert that window is realized
13276         and that geometry_info is valid, since we rely on this anyways.
13277         (gtk_window_constrain_size): major cleanups to the code.
13278         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13279         for the base size, instead of the minimums. use 32767 as max width
13280         and height (like in gtkwindow.c) instead of G_MAXINT.
13281
13282 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13283
13284         * cleaned up the GtkContainer.need_resize flag handling mess, we
13285         only need to force resize requests when we were prematurely
13286         realized, or our widget tree was modified when we were temporarily
13287         hidden. handling these cases directly upon showing the window (i.e.
13288         while the GdkWindow is still unmapped) avoids the need to wait for
13289         a configure event response and therefore makes the GUI more snappier
13290         and avoids blank windows during the roundtrip.
13291
13292         * gtk/gtkwidget.c:
13293         (gtk_widget_hide): 
13294         (gtk_widget_show): don't queue resizes on toplevels, they know how
13295         to deal with matters.
13296
13297         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13298         flag directly for not visible resize containers and spare us unecessary
13299         signal emissions.
13300
13301         * gtk/gtkwindow.c:
13302         (gtk_window_realize): if we need to enforce premature size allocation,
13303         queue a container resize so we are correctly resized later on.
13304         (gtk_window_init):
13305         (gtk_window_size_request):
13306         don't freak around with the ->need_resize flag,
13307         gtk_container_queue_resize() will care about that.
13308         (gtk_window_show):
13309         handle initial resizing issues here, we can handle matters better in
13310         this place, especially since we know that our GdkWindow is still
13311         unmapped.
13312         (gtk_window_move_resize):
13313         don't care about ->need_resize at all.
13314         handle size changes properly that occoured while we waited for a
13315         configure event.
13316
13317 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13318
13319         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13320         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13321         Move the hint setting code from gtk_widget_set_uposition
13322         to here; set the hints so that we respect any previously
13323         set geometry hints.
13324
13325         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13326         change the window hints here or move the window here,
13327         let that happen in gtk_window_move_resize().
13328
13329 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13330
13331         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13332         to already queued resizes (and therefore redraws) on a widget, check
13333         its anchestry as well.
13334
13335         * gtk/gtkcontainer.c:
13336         (gtk_container_queue_resize): clear resize widgets for resize
13337         containers before aborting prematurely. this is especially important
13338         for toplevels which may need imemdiate processing or their resize
13339         handler to be queued.
13340         (gtk_container_dequeue_resize_handler): added new internal function for
13341         gtkwindow.c.
13342
13343         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13344         configure event, take possible changes in window position into account
13345         as well.
13346         if we request a new window size, queue up a resize handler that will
13347         last until the configure event response arrives.
13348         combined the ->need_resize case (initial show) with the general size
13349         (hints) changed case and added even more comments.
13350         if !auto_shrink, only revert to the old allocation if the new size
13351         is smaller than the current allocation.
13352
13353 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13354
13355         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13356                            gtk_window_set_geometry_hints
13357                            gtk_window_set_default_size):
13358         When hints are set, queue a resize so that the hints will
13359         be eventually reset on the toplevel.
13360
13361         * gtk/gtkwindow.c (gtk_window_show): Use
13362         gtk_window_compute_default_size(). Clear the need_resize flag
13363         on the initail map so that we don't unnecessarily trigger the
13364         resize code.
13365
13366         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13367         into separate functions. Compare the hints we are setting
13368         with what we set last time so that we can accurately
13369         tell when we need to reset the hints.
13370
13371         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13372         function to figure out the size from requisition
13373         and default_size.
13374
13375         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13376         from fvwm to constrain a size to the geometry hints.
13377
13378         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13379         to compare two sets of geometry hints.
13380
13381         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13382         from gtk_window_set_hints(), just compute the hints,
13383         don't set them.
13384
13385         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13386         code from gtk_window_move_resize() to separate function,
13387         rationalize a bit.
13388
13389 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13390
13391         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13392         structure into a new private structure.
13393
13394         * gtkrc.c: Split GtkRcStyle into public/private.
13395         In the private part, add a list of pointers to the
13396         RcStyle lists this RcStyle participates in.
13397
13398         * gtkrc.c: When a RcStyle is free, remove all
13399         lists referencing it from the 
13400         realized_style_ht hash, and free those lists.
13401         
13402         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13403         gtk_rc_init(), since that adds the default styles
13404         to the list of parsed RC files again.
13405
13406         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13407         
13408 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13409
13410         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13411         checks that ensure that a widget's allocation is at least 1 in width
13412         and height. (GNOME note: this doesn't affect old panel code anymore,
13413         because GtkSocket will request width and height of at least 1 since
13414         Fri Jul 23).
13415
13416         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13417         allocated yet (happens if the user realizes the window prematurely),
13418         size request and allocate it.
13419         (gtk_window_size_allocate): guard against guint underflows.
13420
13421 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13422
13423         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13424         in gtk_built_sources, so gtk.defs gets built prior to all other
13425         sources.
13426
13427 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13428
13429         * gtk/Makefile.am:
13430         invoke indent on gtkmarshal.*. 
13431         rewrote source generation rules, use COPYING as oldest source tag for
13432         a piggyback rule to generate all sources from (don't touch it ;).
13433         major cleanups, strip spaces on build rules for GNU Make.
13434
13435         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13436         source and target files from commandline arguments. don't invoke indent.
13437
13438 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13439
13440         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13441         notebook after switch to avoid drawing problems.
13442         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13443         
13444         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13445         show them instead. 
13446         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13447
13448 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13449
13450         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13451         notebook after switch to avoid drawing problems.
13452         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13453         
13454         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13455         show them instead. 
13456         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13457
13458 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13459
13460         * gtk/gtkwindow.c:
13461         we use window->need_resize from configure_event now, to indicate that
13462         the gtkwindow should keep its allocation (e.g. because the user resized
13463         the window through window manager handles). resize_count is now reliably
13464         used to figure whether we got the allocation we requested from the
13465         window manager.
13466         configure events get queued as resizes now, the real stuff (size
13467         computation and allocation) now only goes on in gtk_window_move_resize().
13468         GtkWindow's requisition now contains its *real* requisition (like all
13469         other widgets), *not* taking usize into account.
13470         geometry_info->last_{width|height} is now updated from set_hints() only
13471         so it always contains the last hints we set for the window manager.
13472         made some event handlers return TRUE instead of FALSE.
13473         the overall code should be much more straight forward now, and the
13474         significant code portions are accompanied by comments now.
13475         (gtk_window_set_hints):
13476         removed requisition argument and made it
13477         fetch the requisition through gtk_widget_get_child_requisition.
13478         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13479         does that now.
13480         (gtk_window_show):
13481         ensure that the widget is realized before calling 
13482         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13483         ensure that we got properly size requested and allocated before
13484         realization.
13485         (gtk_window_configure_event):
13486         ignore plain window moves, or reallocate the widget tree through the
13487         resize queue otherwise.
13488         (gtk_window_move_resize):
13489         mostly rewrote this function to figure window manager hints more
13490         reliably, coalesce window moves and resizes to reduce configure events
13491         and do actuall size allocations.
13492
13493 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13494
13495         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13496         that have a resize pending, because a redraw is already queued for them.
13497
13498         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13499         hack to clear resize_widgets.
13500
13501         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13502         for resize containers prior to size allocation. (this is also a bit
13503         ugly, but avoids side effects for stopped emissions and is thus more
13504         reliable).
13505         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13506
13507         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13508         function from gtk_tooltips_expose, as we connect to ::expose_event
13509         *and* ::draw now.
13510
13511 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13512
13513         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13514         checks.
13515         (gtk_target_list_unref): Likewise.
13516
13517         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13518
13519 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13520
13521         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13522         guard against division by zero. (Fixes bug #1339)
13523
13524 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13525
13526         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13527         Prevent the trivial leak of information of allowing
13528         word motion when the entry is not visible.
13529
13530 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13531
13532         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13533         modality to error dialog as well as confirmation dialogs.
13534         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13535
13536 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13537
13538         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13539         tree->view_lines.
13540         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13541
13542         * gtk/Makefile.am (install-data-local): Solaris apparently
13543         has various troubles with ln -f; use rm first instead.
13544         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13545
13546 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13547
13548         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13549         use `cp' followed by `rm' (the `rm' was already there).
13550
13551 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13552         
13553         * configure.in: Fix autoconf warnings about cross compilation by
13554         trying to provide sane defaults for AC_TRY_RUN.
13555         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13556         put them into $(srcdir) when generated. Also add a dependency of
13557         gtksignal.h on gtkmarshal.h for -j builds. 
13558         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13559
13560 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13561
13562         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13563         GDK_THREADS_{LEAVE,ENTER} pair.
13564         (From Paul Fisher <pnfisher@redhat.com>)
13565
13566 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13567
13568         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13569         width and height are always >0 (owen).
13570
13571 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13572
13573         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13574         change that assured that a widget's allocated with and height are
13575         always >1, since this breaks *buggy* panel code. unfortunately this
13576         back-breaks the gimp's color selector.
13577
13578         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13579         allocation is always >0 in width and height, before sending the
13580         configure event; this is a *gross* hack to get the gimp back to work.
13581         
13582         * marked both cases with TODO-1.3
13583
13584 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13585
13586         * gtk/gtktext.c: Don't display wrap indicators when
13587         text is not editable and word wrap is on.
13588
13589 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13590
13591         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13592         option menus here as they are not derived from menu shell, assure that
13593         the option menu has a menu we can add items to.
13594
13595 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13596
13597         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13598         width/height to (gint) before calculations and check against < 0 to
13599         avoid guint wraparounds.
13600
13601 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13602
13603         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13604         width and height is never zero. sanity check both dimensions against
13605         32767 and issue a warning if the allocation is greater than that.
13606
13607 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13608
13609         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13610         to g_main_pending() as well.
13611
13612 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13613
13614         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13615         call to g_main_iteration() - since that will regrab
13616         GTK+ lock to process events.
13617
13618 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13619
13620         * gtk/gtkwindow.c
13621         - Regularize with the rest of GTK+ by making widget->requisition
13622           not reflect the set_usize()
13623         - Always recompute geometry hints, then check if they
13624           changed before sending them to the X server. The
13625           previous checks for changes would fail in a number
13626           of circumstances. 
13627
13628 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13629
13630         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13631
13632 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13633
13634         * gtk/gtkdnd.c:
13635         - Code cleanups
13636         - Instantaneously update on modifier key presses
13637         - Allow cancellation of the drag with Escape.
13638
13639 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13640
13641         * gtk/testgtk.c (create_handle_box): Set the policy
13642         to auto_shrink - otherwise the appearance is rather
13643         strange when flipping between horizontal and vertical.
13644
13645 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13646
13647         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13648         (gtk_window_set_default_size): don't change a value if it's < 0.
13649         queue a resize.
13650
13651 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13652
13653         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13654
13655 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13656
13657         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13658         add an extra "/" when concating "/" + filename.
13659         (From Matt Grossman <mattg@oz.net>)
13660
13661 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13662
13663         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13664         for fg_gc if we set it for drawing pixmap.
13665
13666 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13667
13668         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13669         
13670         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13671         already set, call old engine's destroy function and
13672         unref the old engine.
13673
13674 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13675
13676         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13677
13678 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13679
13680         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13681
13682 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13683
13684         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13685         expand behaviour changed.
13686
13687         * gtk/gtklabel.c (gtk_label_set_pattern):
13688         (gtk_label_set_justify):
13689         (gtk_label_set_line_wrap):
13690         don't bother invoking queue_clear, the reallocation does
13691         that for us, always free_words so the upcoming resize will
13692         relayout the label's contents.
13693
13694 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13695
13696         * applied argument implementation patches from Elena Devdariani
13697         <elena@cogent.ca>.
13698
13699         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13700         ::space_style, ::relief
13701         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13702         * gtk/gtkpreview.c: ::expand
13703         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13704         * gtk/gtknotebook.c: ::homogeneous
13705         * gtk/gtklabel.c: ::wrap
13706         * gtk/gtklist.c: ::selection_mode
13707         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13708         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13709         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13710         * gtk/gtkclist.c: ::sort_type
13711         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13712         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13713
13714 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13715
13716         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13717         comment.
13718
13719 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13720
13721         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13722         counting right when we have to attach a new style
13723         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13724
13725         * gtk/gtkstyle.c: Documented the refcounting
13726         peculularities of gtk_style_attach.
13727
13728 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13729
13730         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13731         window types.
13732
13733         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13734         of GTK_TOPLEVEL for creating the window.
13735
13736 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13737
13738         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13739         the last argument (reported by Per Winkvist).
13740         
13741 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13742
13743         Fixes for invisible XOR lines (Frank Loemker
13744         <floemker@TechFak.Uni-Bielefeld.DE>)
13745         
13746         * gtk/gtkclist.c (gtk_clist_realize): Always use
13747         a non-zero pixel for GDK_XOR.
13748
13749         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13750         Use GDK_INVERT instead of GDK_XOR.
13751
13752 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13753
13754         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13755         signals if h/voffsets differ from adjustment values.
13756         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13757
13758 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13759
13760         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13761         ::selection-done emissions up to the topmost menu shell.
13762
13763 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13764
13765         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13766         the user data on the window before destroying it.
13767
13768         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13769         unrealize handler to take care of destroying 
13770         notebook->panel properly. 
13771         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13772
13773         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13774         of g_new and g_realloc to stop memory leak. (Actually,
13775         we could just use g_realloc(), but I'm not 100% sure
13776         that is portable).
13777         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13778
13779 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13780
13781         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13782
13783         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13784         for fontsets.
13785
13786         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13787         with bin/button confusion.
13788
13789 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13790
13791         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13792         and show how preselection of radio items is done.
13793
13794 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13795
13796         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13797         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13798         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13799         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13800         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13801         * gtk/gtktable.c (gtk_table_attach): 
13802         * gtk/gtklist.c (gtk_list_insert_items): 
13803         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13804         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13805         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13806         * gtk/gtkbin.c (gtk_bin_add): 
13807         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13808         * gtk/gtkfixed.c (gtk_fixed_put): 
13809         * gtk/gtklayout.c (gtk_layout_put):
13810         general fixups to container_add logic. always realize child if
13811         child->parent is realized, only map the child and queue a resize
13812         if child and child->parent are both visible.
13813
13814 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13815
13816         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13817         instead of gtk_container_foreach to walk and unrealize children, so
13818         composite children get also unrealized.
13819         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13820         (gtk_widget_map): assert that the widget is visible (basic constrain).
13821         (gtk_widget_real_map): assert that the widget is realized (basic
13822         constrain).
13823
13824 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13825
13826         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13827
13828 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13829
13830         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13831         file for iso-8859-2 locales.
13832
13833         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13834
13835 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13836
13837         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13838          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13839          Remove some suspicious and useless lines. 
13840
13841 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13842
13843         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13844         width,height = 0, 0 to mean - here to edge of window,
13845         instead of -1, -1, since the former is all we support.
13846
13847 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13848
13849         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13850         when removing from quit_functions list.
13851
13852 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13853
13854         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13855
13856 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13857
13858         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13859          When redrawing characters on non-visible entry, use appropriate
13860          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13861
13862 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13863
13864         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13865         from drag coordinates.
13866         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13867         use drag_dest_cell.
13868
13869         * gtk/gtktree (drag_dest_cell)
13870         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13871         (Bug #1129)
13872
13873 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13874
13875         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13876         translate_* fields.
13877         (gtk_item_factory_finalize): invoke translate_notify independant from
13878         translate_data.
13879         (gtk_item_factory_set_translate_func): likewise.
13880         (gtk_item_factory_destroy): only remove ifactory pointer from those
13881         widgets that belong to us (stupid me).
13882
13883 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13884
13885         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13886         rc_style list when lookup succeeeds.
13887
13888 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13889
13890         * gtk/gtkctree.c (resync_selection): 
13891         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13892         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13893         bug.
13894
13895 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13896
13897         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13898         Add some missing GDK_THREADS_ENTER()/LEAVE around
13899         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13900
13901 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13902
13903         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13904         rather than emit_by_name.
13905
13906         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13907         on the widget across multiple signal emissions.
13908         (gtk_editable_delete_text): same here.
13909         (gtk_editable_class_init): set widget_class->activate_signal after
13910         editable_signals[ACTIVATE] has been created.
13911
13912 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13913
13914         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13915         position here prematurely -- we might not have the
13916         right ->min_position and ->max_position yet.
13917
13918 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13919
13920         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13921         Add error traps so if the other end of the connection
13922         dies, we survive.
13923
13924         * gtk/gtkselection.c (gtk_selection_notify): Clean
13925         up properly when selection property retrieval fails.
13926         
13927         * gtk/gtkselection.c (gtk_selection_request): Correctly
13928         reject SelectionRequest notifies where the handler
13929         returns no data.
13930
13931 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13932
13933         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13934         when we've previously highlighted.
13935
13936         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13937         emit two "drag_leave" signals for Motif drops.
13938
13939         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13940         back the correct status messages when dropping from
13941         Motif onto a proxy window that is rejecting the
13942         drop.
13943
13944 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13945
13946         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13947         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13948         to compare two argument values. added gtk_arg_to_valueloc() to set a
13949         variable from an arg through its location (pointer).
13950
13951         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13952         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13953         as gfloat*, uchars are collected as guchar*, ints are collected as
13954         gint*, etc...
13955
13956 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13957
13958         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13959         Include <string.h> instead of <strings.h>.
13960
13961         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13962         (actually, a lot more duplicate includes occur if
13963          you trace through the sequence of #include's)
13964         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13965         
13966 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13967
13968         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13969         gtk-a-higuti-990322-[0-3]
13970
13971         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13972         that was causing -DX_LOCALE not to work.
13973
13974         * gtk/gtkrc.c (gtk_rc_init):
13975         X_LOCALE will never have LC_MESSAGES defined
13976
13977 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13978
13979         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13980         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13981
13982         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13983         left/right as well (gtk-michael-980726-0.patch.gz).
13984
13985         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13986         for pointer values, use gchar instead of char. fixed uline allocation
13987         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13988         chunks instead of G_ALLOC_ONLY.
13989         (gtk_label_size_request): always alter requisition as passed and leave
13990         widget->requisition alone.
13991         (gtk_label_set_text): allow NULL strings.
13992         (gtk_label_new): likewise.
13993
13994 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13995
13996         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13997
13998 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13999
14000         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14001         *and* mapped (i.e. drawable).
14002         (gtk_bin_expose): only send exposes to drawable children.
14003
14004         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14005         (gtk_box_expose): only send exposes to drawable children.
14006
14007         * gtk/gtkhscale.c (gtk_hscale_draw): 
14008         * gtk/gtkvscale.c (gtk_vscale_draw):
14009         hm, this is an ugly one. we first compute the size of our trough area
14010         here (window relative) and then check intersection with the draw_area
14011         which is parent relative because we're a NO_WINDOW widget, so we need
14012         to offset the trough area by allocation.x and allocation.y before the
14013         check. (this must not be done for the background area though, since
14014         that's already computed parent relative).
14015
14016 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14017
14018         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14019         unrealize title buttons.
14020
14021 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14022
14023         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14024         (gtk_clist_column_title_active): 
14025         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14026
14027         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14028         zero initialize event, removed superfluous gdk_window_get_pointer call
14029
14030         * gtk/gtklist.c (gtk_list_vertical_timeout)
14031         (gtk_list_horizontal_timeout): removed superfluous
14032         gdk_window_get_pointer call
14033
14034 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14035
14036         * plugging problems reported by "Bruce Mitchener, Jr."
14037         <bruce@puremagic.com> due to a purify session.
14038
14039         * gtk/gtkstyle.c:
14040         (gtk_style_ref): 
14041         (gtk_style_unref): assert ref_count to be > 0.
14042
14043         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14044         the requisition.
14045         (gtk_clist_set_shift): likewise.
14046
14047         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14048         adjustments.
14049
14050         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14051         event before sending it and set send_event to TRUE (which needs to
14052         be done for *all* synthesized events).
14053         (gtk_list_vertical_timeout): likewise.
14054
14055         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14056         leaks.
14057
14058         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14059         to TRUE when synthesizing events.
14060
14061 [ *** end of merges from 1.2 *** ]      
14062         
14063 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14064
14065         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14066         (or copied from gdkconfig.h.win32 on Win32, sigh).
14067
14068         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14069
14070         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14071
14072         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14073
14074         * gdk/gdkconfig.h.win32: New file.
14075
14076         * gdk/win32/makefile.cygwin: Build just a static archive here.
14077
14078         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14079         for the DLL from the static archive built above.
14080
14081         * gdk/gdk.def: Moved here from the win32 subdirectory.
14082
14083         * gdk/win32/*: Adapt for the changed private struct organisation.
14084
14085         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14086
14087 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14088
14089         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14090         for wheel mice (buttons 4 and 5).
14091
14092 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14093
14094         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14095         drawables use just the pixel field in the foreground and
14096         background GdkColor of the GdkGC.
14097
14098         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14099         GdkColors containing uninitialized (red,green,blue) fields, and
14100         just the pixel field filled in, and furthermore in the
14101         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14102         It thus turns out that we really don't need to have the full
14103         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14104         it later to have just the pixel values.
14105
14106 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14107
14108         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14109
14110 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14111
14112         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14113         New question on GtkLabel background colors.
14114
14115         * docs/gtk_tut.sgml:
14116           - Correct the example code callback
14117             function definitions.
14118           - Update the gtkdial example code, from Frans van Schaik.
14119           - Update setselection.c to current API.
14120
14121         * examples/Makefile examples/*/*.c: Update to code
14122         listed in tutorial.
14123
14124 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14125
14126         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14127         subrange table (from the "Developing International Software for
14128         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14129         block... Get the loaded font's charset correctly.
14130
14131         (Note that this, and the other *-win32.c files, still really are
14132         the old ones, the win32 subdirectory is not ready for compilation
14133         yet after the reorg.)
14134
14135 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14136
14137         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14138         check.
14139
14140 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14141
14142         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14143         on results of XQueryDeviceState().
14144
14145 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14146
14147         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14148         we need to accesss only ->children. We need an accessor
14149         for the children.
14150
14151         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14152         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14153         to get rid of gdkx.h include.
14154         
14155         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14156         and random references to 'None'.
14157
14158         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14159         Get rid of unused #include <gdk/gdkx.h>
14160
14161         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14162         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14163         gdkconfig.h.
14164
14165 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14166
14167         * gdk/win32/gdkdraw.c
14168         * gdk/win32/gdkfont.c
14169         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14170         following yesterday's changes. (Unrelated to Owen's reorg.)
14171
14172 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14173
14174         * gdk/x11/gdkinput-gxi.c: Add missing include,
14175           fix GdkWindowPrivate => GdkDrawablePrivate.
14176
14177         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14178
14179         * gdk/x11/Makefile.am (xinput_sources): Add missing
14180         backslash to fix building with --with-xinput=none
14181
14182 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14183
14184         Move all X specific code into the x11/ directory.
14185         Aside from shuffling things around, did the following:
14186
14187        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14188          gdk_arg_context_* - a simple argument parsing system
14189          in the style of popt.
14190
14191        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14192          gdk/x11/gdkprivate-x11.h:
14193          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14194          add ->klass and ->klass_data fields. The klass_data
14195          field points to an auxilliary structure that is
14196          windowing system dependent.
14197
14198        * gdk/gdkfont.c: Make most of the measurement functions
14199          simply wrappers around gdk_text_extents().
14200
14201        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14202          _gdk_font_strlen() function that hides the weird
14203          behavior in gtk+-1.[02] where a string is interpreted
14204          differently for 8-bit and 16-bit fonts.
14205
14206        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14207          to store common code for synthesizing double/triple
14208          press events.
14209         
14210        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14211          Make all the function that modify an existing GC
14212          simply wrappers around gdk_gc_set_values().
14213          
14214        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14215          for throwing out later.
14216
14217        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14218          GdkImagePrivate and GdkColormapPrivate to have a
14219          windowing system dependent part (GdkFontPrivateX etc.)
14220          that "derives" from the system-independent part.
14221
14222        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14223          Got rid of the included-source-files for XInput in
14224          favor of automake conditionals. (Which didn't exist
14225          when XInput support was originally added.)
14226
14227        * gdk/gdkrgb.c: Remove the visual id from the debugging
14228          statements since that is X11 specific; print out
14229          type/depth info instead.
14230          
14231
14232 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14233
14234         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14235         loading duplicates of hashed fonts.
14236
14237         * gdk/gdk.c (gdk_keysym_convert_case): rename
14238         gdk_XConvertCase to gdk_keysym_convert_case, allow
14239         results to be NULL in the GTK+ style.
14240
14241         * gdk/gdkcompat.h: Started compatibility header
14242         for renames.
14243
14244 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14245
14246         * gdk/win32/gdkprivate.h: New font private structures, related to
14247         fontsets.
14248
14249         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14250         gdk_font_list_free(). On X11, will just be wrappers to
14251         XListFonts() and XFreeFontNames(). On Win32, the code previously
14252         in gtkfontsel.c is now here.
14253
14254         New function gdk_font_xlfd_create(). On X11 will get the FONT
14255         property of the font (for GDK_FONT_FONTs), or call
14256         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14257         builds a XLFD style name from the font information in the LOGFONT
14258         struct(s).
14259
14260         New function gdk_font_xlfd_free(), which correspondingly frees the
14261         string returned by gdk_font_xlfd_create().
14262
14263         Implement fontsets on Win32. Add a function that iterates over a
14264         wide char string and calls a callback function for each substring
14265         of wide chars from the same Unicode subrange (and thus probably
14266         available in the same real font).
14267
14268         Improve the XLFD emulation a bit.
14269
14270         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14271
14272         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14273         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14274         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14275         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14276         ImmGetCompositionStringW() to get the composed Unicode chars.
14277
14278         * gdk/win32/gdkgc.c
14279         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14280         struct changes.
14281
14282         * gdk/win32/gdk.def: Add the new functions.
14283
14284 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14285
14286         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14287         get the Platform SDK to get <dimm.h>.
14288
14289         * gdk/win32/gdkevents.c: More event handling fixes and
14290         simplification. Never generate motion events with is_hint true. We
14291         used to do that on bogus grounds earlier. Windows sends
14292         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14293         moved, ignore these.
14294
14295         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14296
14297         * gdk/win32/gdkglobals.c
14298         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14299         the TrackMouseEvent function, and use it.
14300
14301         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14302         char before calling WideCharToMultiByte in order to get a string
14303         for the window title.
14304
14305         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14306
14307         * gdk/win32/gdk.def: Remove obsolete functions.
14308
14309         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14310         /nodefaultlib and /defaultlib switches.
14311
14312         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14313
14314 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14315
14316         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14317         EuroSign).
14318
14319         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14320         same type as GdkWChar, especially on Win32.
14321
14322         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14323
14324         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14325         before passing to Windows GDI for drawing etc. Convert to the
14326         system default codepage before passing to Windows as window
14327         titles.
14328
14329         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14330         support changing input locale on the fly.
14331
14332         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14333         on-the-fly changes. Convert incoming characters from the current
14334         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14335         on the current input language. Use keysym<->Unicode mapping tables
14336         and functions borrowed from xterm sources.
14337
14338         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14339         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14340         Manager) if available. IMEs and the Active IMM are available under
14341         the disguise of Chinese, Korean and Japanese support for IE and
14342         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14343         support is present in all editions (as long as you install it).
14344
14345         Call DispatchMessage from gdk_events_queue() (and thus
14346         gdk_WindowProc()), instead of duplicating the code in
14347         gdk_WindowProc().
14348
14349         Reworked the grab handling and propagation code, factored out
14350         duplicated code snippets into separate functions. Other cleanups,
14351         too.
14352
14353         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14354         the <dimm.h> header describing the Active IMM.
14355
14356         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14357         just do the same as for "single" fonts.
14358
14359         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14360         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14361         the new keysyms from gdkkeysyms.h.
14362
14363         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14364         fontset, so that gtkentry uses wide characters.
14365
14366         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14367         GTk+'s system directory "gtk+", not "gtk".
14368
14369 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14370
14371         * docs/gtkfaq.sgml: FAQ update
14372
14373 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14374
14375         * gdk/win32/gdkprivate.h: Add more font private data.
14376
14377         * gdk/win32/gdkfont.c
14378         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14379         fonts and strings. Now works much better. You still have to
14380         have a correct font selected, though. No fontset emulation yet.
14381
14382 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14383
14384         * gtk/maketypes.awk: Use G_OS_WIN32.
14385
14386         * gtk/gtk.def: Add some missing entry points. Also some non-public
14387         ones, but PyGTK porter claims to need them.
14388
14389         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14390         built-in type generation.
14391
14392 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14393
14394         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14395         GDK_FONT_FONT fonts (which is all we have for now, we don't
14396         emulate fontsets). The X11 version uses plain XDrawString in that
14397         case, too. The string passed to gdk_draw_text_wc seems to be in
14398         fact (at least, when used by gtkentry and gtktext) either in a
14399         single-byte charset, or a DBCS. Not Unicode.
14400
14401         This fixes the problem in gtkfontsel, where even if you had
14402         selected a font with a non-Latin1 charset (windows-greek, for
14403         instance), the preview still used Latin-1 glyphs.
14404
14405         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14406         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14407         (gdk_font_load): Recognize the demibold etc weights, even if we
14408         don't have the corresponding constants in the headers.
14409         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14410         version. Should save font resources a bit, when we don't have
14411         multiple HFONTs for the same font.
14412
14413         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14414         version.
14415
14416 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14417
14418         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14419         X values
14420
14421 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14422
14423         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14424         layout support (as mentioned on
14425         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14426
14427 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14428
14429         * gtk/fnmatch.c
14430         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14431
14432 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14433
14434         * configure.in (ALL_LINGUAS): Added Galician (gl)
14435
14436 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14437
14438         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14439
14440         * gdk/win32/gdkcompat.c: New file, actually provide an
14441         implementation for the deprecated functions. (Just temporarily.)
14442
14443         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14444
14445         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14446
14447         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14448
14449 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14450
14451         * configure.in: Added "uk" to ALL_LINGUAS.
14452         
14453 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14454
14455         * configure.in: correct checking for BeOS check
14456
14457         * gdk/gdktypes.h
14458         * gtk/fnmatch.c
14459         * gtk/gtkfilesel.c
14460         * gtk/gtkitemfactory.c
14461         * gtk/gtkmain.[ch]
14462         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14463
14464 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14465
14466         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14467         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14468         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14469         by Bulgarian). 
14470
14471 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14472
14473         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14474         Fix a reference to window_private->destroyed.   
14475
14476         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14477         (ugly) setting of an internal GdkWindow member to use
14478         a _slightly_ cleaner macro.
14479
14480         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14481         GdkDrawablePrivate and GdkWindowPrivate.
14482         Add extra macros for accessing GDK_DRAWABLE_ components.
14483
14484         * *.[ch]: Massive adjustments for the above, use the
14485         new macros in a lot of places.
14486
14487 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14488
14489         * gdk/gdktypes.h: Make GdkDrawable the base type,
14490         not GdkWindow.
14491
14492 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14493
14494         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14495
14496 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14497
14498         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14499
14500 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14501
14502         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14503         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14504
14505         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14506
14507         * docs/gtk-config.1: Now autogenerated.
14508         * docs/Changes-1.4.txt: started
14509         
14510 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14511
14512         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14513         to #ifdef also here.
14514
14515         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14516         Owen did to the X11 backend.
14517
14518         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14519         ScrollWindowEx when blitting inside a window, it can't be correct
14520         in the general case.
14521
14522         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14523         WM_GETMINMAXINFO is easier.
14524
14525         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14526         depth equal to the bitspixel value, not the visual's depth.
14527
14528         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14529         to 24 even if the bitspixel value is 32.
14530
14531         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14532         need to check for depth==32 when bpp==32, depth will always be 24.
14533
14534 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14535
14536         * docs/Changes-1.4.txt: Started
14537         
14538         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14539
14540         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14541         
14542         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14543         into C file.
14544         
14545         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14546         header to gdkinputprivate.h.
14547
14548         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14549         unused since before 1.2.
14550
14551 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14552
14553         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14554         expand possible hex escapes in the font family (put there by
14555         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14556         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14557         On Win32, add hex escapes here, too.
14558
14559 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14560
14561         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14562         to #ifdef GDK_WINDOWING_X11.
14563
14564 [ Merges from gtk-1-2 ]
14565
14566 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14567
14568         * configure.in: fixed "GNU Make" check to pass with new make version
14569         3.77.95.
14570
14571 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14572
14573         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14574         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14575         AM_PATH_GTK() macros don't get confused by the -pre1.
14576
14577 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14578
14579         * configure.in (REBUILD): Change check for perl5
14580           to check explicitely for v >= 5.002. (5.001
14581           does not work with our scripts.)
14582
14583 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14584
14585         * configure.in: evaluate $PERL for the perl version check. added
14586         --disable-rebuilds to give the user an option to completely disable
14587         any source autogeneration rules.
14588
14589 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14590
14591         * configure.in: evaluate $ac_make when checking for GNU Make.
14592
14593 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14594
14595         * docs/Makefile.am: added generation.txt.
14596
14597         * Makefile.am: require automake 1.4, build README from README.in and
14598         INSTALL from INSTALL.in in dist-hook.
14599         
14600         * README.in:
14601         * INSTALL.in: new files to autogenerate README and INSTALL from.
14602
14603         * configure.in: figure whether we have GNU Make
14604
14605         * docs/generation.txt: minor additions/corrections.
14606
14607 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14608
14609         * docs/gtkfaq.sgml: FAQ Update
14610
14611 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14612         
14613         * configure.in: Fix autoconf warnings about cross compilation by
14614         trying to provide sane defaults for AC_TRY_RUN.
14615
14616 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14617
14618         * ltconfig
14619         * ltmain.sh: upgrade to libtool 1.3.3
14620
14621 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14622
14623         * INSTALL: Indicate that the --with-glib= configure
14624         time flag is unsupported.
14625
14626 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14627
14628         * docs/generation.txt: Added a file that gives
14629         documenation about the autogeneration process for
14630         various autogenerated files.
14631         
14632 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14633
14634         * configure.in (LIBS): Look for libgmodule in the
14635         right location.
14636
14637 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14638
14639         * docs/gtk_tut.sgml: Removed references to
14640         code examples in my directory on gtk.org as
14641         they should all be in the tutorial now.
14642
14643         * docs/gtk_tut.sgml: Added sources for dial-test
14644         and scribble-xinput programs that were previously
14645         missing.
14646
14647 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14648
14649         * TODO: Added entry about menu keyboard navigation, removed
14650         some finished items.
14651
14652 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14653
14654         * acinclude.m4: Standardize on func_dgettext
14655         not func_gettext, so that the checks for dgettext
14656         actually are paid attention to.
14657
14658 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14659
14660         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14661         directly, rather than repeating the checks for
14662         gettext.
14663
14664         * INSTALL: Added information about gettext and
14665         NLS support.
14666
14667         * acinclude.m4 (LIBM): Check for dgettext, not
14668         just gettext. This should hopefully fix things wrt
14669         systems with old versions of GNU gettext installed.
14670
14671 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14672
14673         * configure.in (LIBS): Look for libgmodule in the
14674         right location.
14675
14676 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14677
14678         * autogen.sh: add --enable-maintainer-mode
14679
14680         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14681
14682 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14683
14684         * docs/gtk-config.1.in:
14685           docs/Makefile.am:
14686           configure.in: gtk-config is now generated.
14687
14688         * docs/gtk-config.1: Removed, now generated.
14689
14690 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14691
14692         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14693         handle CreateNotify itself, still put out a debuging message for
14694         --gdk-debug=events. made the ReparentNotify debugging message more
14695         verbose.
14696         wrap xcoords translation for ConfigureEvents into an error trap,
14697         a destroy event may already be pending, and in that case, the
14698         actuall coordinate values are not at all critical.
14699
14700 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14701
14702         * gdk/gdkcc.c: Stop leaking the color_hash all over
14703         the place. Simplify and improve the logic.
14704
14705 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14706
14707         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14708         for prototypes and function implementations consistent (reported
14709         by Tomas Ogren).
14710
14711 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14712
14713         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14714         send_event set in debugging output.
14715         (gdk_compress_exposures): default initialize the event so we don't
14716         operate on bogus values (namely send_event).
14717
14718 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14719
14720         * gdk/gdkwindow.c: When we receive an unexpected
14721         destroy notify on one of our windows, don't just
14722         warn about it, also mark our windows as destroyed.
14723
14724 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14725
14726         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14727           name => font and name => fontset hashes. The 
14728           name => fontset hash is a _big_ win since we
14729           weren't previously caching fontsets at all and loading
14730           fontsets is expensive. The name => font hash
14731           is less of a win, but it does save us from doing
14732           repeated XQueryFont calls on the same font.
14733
14734         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14735           list so we can remove font/fontset from hash.
14736
14737 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14738
14739         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14740           and slightly confusing test. [ XInternAtom (,,TRUE)
14741           will never return None ].
14742
14743 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14744
14745         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14746           gdk/gdkwindow.c (gdk_window_set_hints):
14747
14748         Don't omit setting the properties if flags == 0 -
14749         there may be an existing set of properties there
14750         already. (Very old bug. Would it be better to
14751         delete the property instead?)
14752
14753         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14754           spelling error in comment.
14755
14756 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14757
14758         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14759           to avoid stomping over gdk_error_warnings.
14760
14761         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14762           as (bits_per_pixel + 7) / 8. This gives the same
14763           result as before for multiples of 8, but actually
14764           a "reasonable" value for 1bit or 4bit displays.
14765
14766 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14767
14768         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14769         GNU Make.
14770
14771 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14772
14773         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14774         discarding configure events.
14775
14776 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14777
14778         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14779         refcount is greater than zero.
14780
14781         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14782
14783         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14784
14785         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14786
14787         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14788
14789 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14790
14791         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14792         that format 32 => sizeof(item) == 4. It really is
14793         sizeof(long).
14794
14795 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14796
14797         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14798         core dump at all on X IO errors, only core dump
14799         if --enable-debug for X errors.
14800
14801 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14802
14803         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14804         unknown window:" message. disabled ConfigureNotify discarding code,
14805         because it led to events being processed out of order.
14806
14807 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14808
14809         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14810
14811         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14812         we export this function, supress error warnings and don't reset the
14813         error code in the first half of this function.
14814
14815         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14816         code (instead of just -1) so gdk_error_trap_pop() reveals something
14817         actually informative about the error that happened.
14818
14819         * gdk/*.c:
14820         don't rely on gdk_error_code being -1 if an error occoured, but just
14821         gdk_error_code != 0.
14822
14823 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14824
14825         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14826         pointer *before* invoking the filter function, so we at least don't
14827         crash if a filter is removed that is currently executed. window filters
14828         *really* need to be made truely reentrant at some point.
14829
14830 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14831
14832         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14833         PropertyNotify debug messages.
14834
14835 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14836         
14837         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14838         
14839         * gdk/gdkim.c: Fix cut-and-paste errors for 
14840         x/y and PreeditAttributes/StatusAttributes.
14841
14842 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14843
14844         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14845         G_MAXINT to 2^16 to alleviate overflow problems in
14846         various window managers.
14847
14848 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14849
14850         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14851         for fontsets.
14852
14853 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14854
14855         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14856         Initialize size_hints.x and size_hints.y because kwm
14857         brokenly pays attention to them.
14858         (Bug #1181 -  Lars Heete <hel@admin.de>)
14859
14860 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14861
14862         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14863         return value of gdk_list_visuals(). 
14864         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14865
14866 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14867
14868         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14869         XSetIMValues to (void *) when comparing to NULL, to workaround
14870         the problem of some compilers barfing since older X headers don't
14871         have the prototype for it.
14872
14873 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14874
14875         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14876         for pseudocolor where colormap->colors was double
14877         allocated.
14878
14879         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14880         color value in the hash table with the pixel filled
14881         in so when we do later hash table lookups, the color
14882         value is correct.
14883         
14884 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14885
14886         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14887         making the call
14888
14889 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14890
14891         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14892         pointed out by Morten Welinder <terra@diku.dk>.
14893
14894 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14895
14896         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14897           default filter from the list
14898
14899 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14900
14901         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14902           default filter from the list
14903
14904 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14905
14906         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14907
14908         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14909         g_strdup_printf instead of calcing the length separately
14910
14911 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14912
14913         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14914         that we don't do in many other places. (Fixing duplicate 
14915         #include of config.h)
14916
14917         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14918         Otherwise, #ifndef XINPUT_NONE check in the latter
14919         doesn't work. (Bug #546)
14920
14921 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14922
14923         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14924         "None" case insensitive.
14925
14926 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14927
14928         * gdk/gdkselection.c: 
14929         Add error traps so if the other end of the connection
14930         dies, we survive.
14931
14932 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14933
14934         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14935         dest_xid field into two fields - one for the window
14936         to send in messages, one to indicate the last looked
14937         up window for caching purposes. This is needed, so
14938         that Leave messages get the correct window.
14939
14940 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14941
14942         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14943         Fix warning created by people mucking around
14944         with the gsource API.
14945
14946         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14947         Change mapping between GIOCondition and GdkInputCondition
14948         to match the way the Linux kernel does it. This should
14949         fix problems where closed pipes were no longer signalling
14950         GDK_INPUT_READ on systems with a native poll().
14951
14952 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14953
14954         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14955         explicitly for the string "None" - it is in the XPM
14956         spec and some servers treat unknown colors in odd ways
14957         (like asking the user!)
14958
14959 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14960
14961         * gdk/gdkevents.c: made "->" into a "." of previous change so
14962         it compiles
14963
14964 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14965
14966         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14967         window field of the event structure before calling
14968         user filters.
14969
14970 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14971
14972         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14973         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14974
14975 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14976
14977         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14978         intermediate text property - prevents major memory
14979         leak when gdk_use_mb.
14980         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14981
14982 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14983
14984         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14985         gtk-a-higuti-990322-[0-3]
14986
14987         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14988         sizeof(wchar_t) != sizeof (GdkWChar)
14989
14990         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14991         that was causing -DX_LOCALE not to work.
14992
14993         * gtk/gtkrc.c (gtk_rc_init):
14994         X_LOCALE will never have LC_MESSAGES defined
14995
14996         * gdk/gdk.c (gdk_init_check):
14997         Remove --xim-preedit and --xim-status from argv properly.
14998
14999         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15000         that the client window is present on the X server
15001         before we pass it to the input method.
15002
15003 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15004
15005         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15006         if --display is specified on the command line, than
15007         the drag window will not be created on that display.
15008         
15009 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15010
15011         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15012         lookups with only_if_exists == TRUE were inserting
15013         bogus values into the atom cache.
15014
15015 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15016
15017         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15018         then reset it to NULL.
15019
15020         * gdk/gdkcolor.c:
15021         (gdk_colors_free): 
15022         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15023         key for g_hash_table_remove() in both functions, this prevents us
15024         from accessing possibly uninitialized portions of a GdkColor structure
15025         where we are only interested in its pixel value.
15026
15027 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15028
15029         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15030         font hash table, if we have a GdkFontPrivate entry for this font
15031         already, simply increment its reference count, provided by Olaf Dietsche
15032         <olaf.dietsche+list.gtk@netcologne.de>.
15033
15034 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15035
15036         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15037         just to be sure.
15038
15039         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15040         unused variables, leftovers from the X11 version.
15041
15042         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15043
15044         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15045         downcase fields on X11.
15046
15047 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15048         
15049         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15050         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15051
15052 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15053
15054         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15055
15056         * gtk/makefile.msc: Correct path to libintl.
15057
15058         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15059         use of gint vs. int, and gint vs. gboolean in headers and
15060         definitions. Use GtkType for the *_get_type functions. Note that
15061         these changes preserve binary compatibility.
15062
15063         * gdk/gdk.c
15064         * gdk/win32/gdk.c
15065         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15066
15067         * gtk/gtkmain.c
15068         * gtk/gtkclist.c
15069         * gtk/gtkmenufactory.c
15070         * gtk/gtknotebook.c
15071         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15072         vs. gboolean.
15073
15074         * gtk/gtkcolorsel.[ch]
15075         * gtk/gtkcombo.[ch]
15076         * gtk/gtkdrawingarea.[ch]
15077         * gtk/gtkgamma.[ch]
15078         * gtk/gtkhandlebox.[ch]
15079         * gtk/gtkhpaned.[ch]
15080         * gtk/gtkhruler.[ch]
15081         * gtk/gtkplug.[ch]
15082         * gtk/gtkpreview.[ch]
15083         * gtk/gtkruler.[ch]
15084         * gtk/gtksocket.[ch]
15085         * gtk/gtkstatusbar.[ch]
15086         * gtk/gtktoolbar.[ch]
15087         * gtk/gtkvbbox.[ch]
15088         * gtk/gtkvpaned.[ch]
15089         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15090         functions.
15091
15092         * gtk/gtkgamma.h: Fix bug, missing () in call of
15093         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15094
15095 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15096
15097         * gdk/gdkcolor.c (gdk_colormap_new)
15098         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15099         colormap->colors was allocated twice.
15100
15101         * gdk/win32/gdk.c: Remove some unused stuff.
15102
15103         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15104         colormap.
15105
15106         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15107         * gtk/gtklabel.h (gtk_label_get_type)
15108         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15109         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15110         in a couple of places, not guint.
15111
15112 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15113
15114         * configure.in,po/et.po: added Estonian language file
15115
15116 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15117
15118         * configure.in,po/da.po: added Danish file
15119
15120 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15121
15122         * docs/gtkfaq.sgml: Minor FAQ Update
15123
15124 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15125
15126         * docs/gtkfaq.sgml: FAQ update
15127
15128 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15129
15130         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15131         way to get window contents continually refreshed while resizing. I
15132         didn't like the effects myself, so it's not on by default.
15133
15134         * gdk/win32/gdkprivate.h: New flag variable
15135         gdk_event_func_from_window_proc, FALSE by default.
15136
15137         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15138         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15139         are passed --gdk-event-func-from-window-proc.
15140
15141         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15142         and we have am event_func, call it instead of enqueing the event.
15143
15144 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15145
15146         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15147         Kelley: Set expose_count in GdkEventExposes correctly.
15148
15149         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15150         MULTIPLE_WINDOW_CLASSES).
15151
15152         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15153         for bug in NT, apparently NT *does* draw the end pixel, too, in
15154         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15155
15156 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15157
15158         Improvements by Hans Breuer: 
15159
15160         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15161
15162         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15163         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15164         window contents while dragging" is turned on. Allocate at least
15165         one unique class for every GdkWindowType. If support for single
15166         window-specific icons is ever needed (eg. Dialog specific), every
15167         such window should get its own class.
15168
15169 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15170
15171         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15172         error that caused crashes.
15173
15174 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15175
15176         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15177         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15178         bugs when for instance part of the window was outside the
15179         display. Thanks to Philippe Colantoni for finding and fixing this.
15180
15181 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15182
15183         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15184         endpoint calculations which were totally wrong. (A little RTFMing
15185         helps a lot ;-)
15186
15187         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15188         from a separate directory, not from gettext, because of licensing
15189         issues (we want to use the LGPL version).
15190
15191         * README.win32: Mention the intl from glibc vs from gettext issue.
15192
15193 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15194
15195         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15196         in the key event handling: Now AltGr chars work again. Also,
15197         now Alt-digits are passed up as well as Control-digits.
15198         Pass keypad plus and minus as normal plus and minus.
15199
15200 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15201
15202         * docs/gtkfaq.sgml: FAQ Update
15203
15204 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15205
15206         * README.win32
15207         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15208         the Wintab SDK.
15209
15210         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15211         OK, but getting closer. Guard against bogus tilt data from Wacom
15212         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15213         enable easier building without Wintab.
15214
15215         * gdk/win32/gdkinput.h
15216         * gdk/win32/gdkevents.c 
15217         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15218         
15219         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15220         code. As we have just one visual on Win32, no sense to have it in a
15221         table, and no need for the hash table.
15222
15223         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15224         better on white background.
15225
15226 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15227
15228         * README.win32: Update gcc build instructions. Mention gettext is
15229         GPL.
15230
15231         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15232         supported cursor size with GetSystemMetrics.
15233
15234         * gdk/win32/gdkfont.c
15235         * gtk/gtkfontsel.c: Guard against some font weight and charset
15236         symbols being undefined (in mingw32 headers).
15237
15238         * gdk/win32/makefile.cygwin
15239         * gtk/makefile.cygwin
15240         * gtk/gtkthemes.c: No longer need to have differently named
15241         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15242
15243 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15244
15245         * docs/gtkfaq.sgml: Long awaited FAQ update.
15246
15247 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15248
15249         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15250         it. Obscure bit manipulation needed.
15251
15252         * gdk/win32/gdkevents.c: Logging.
15253         
15254         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15255         style (file name include compiler name) for theme engines.
15256
15257 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15258
15259         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15260
15261         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15262         events. The key.string wasn't zero-terminated, still we strdup'ed
15263         it in gdk_event_copy(). Synthesize crossing events for button
15264         events before possible propagation.
15265
15266         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15267
15268         * gdk/win32/makefile.cygwin
15269         * gtk/makefile.cygwin: Use new DLL naming style for the
15270         GCC-compiled ones.
15271
15272         * gdk/win32/makefile.msc
15273         * gtk/makefile.msc: Cosmetics mostly.
15274
15275         * gtk/gtk.def: Add missing entry points.
15276
15277         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15278
15279 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15280
15281         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15282         or height is zero. Don't print a warning if Pie or Arc fails, they
15283         always fail (?) for very narrow ellipses.
15284
15285         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15286         the part or the destination window corresponding to source area
15287         outside of the source drawable's boundary.
15288
15289         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15290         anything if less than two points.
15291
15292         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15293         return NULL. Gtk cut-and-paste inside a single program works
15294         better this way. (It always gets the clipboard contents from
15295         Windows, not from its own copy, which is cleared anyway. I can't
15296         say I fully understand what happens... Emulating the X selection
15297         and property stuff is a bit of a mess.)
15298
15299         * gdk/win32/gdkevents.c
15300         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15301
15302         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15303         that never got deleted). Revamp gdk_region_shrink.
15304
15305         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15306         after use.
15307
15308         * gtk/gtk.def: Add some missing entry points.
15309
15310         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15311         component.
15312
15313 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15314
15315         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15316         Control-digits specially.
15317
15318 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15319
15320         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15321
15322 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15323
15324         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15325         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15326         finding this.)
15327
15328 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15329
15330         * gtk+.spec.in: Corrected some typos in files section.
15331         
15332 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15333
15334         * README.win32: Mention using GNU gettext.
15335         * config.h.win32: Enable NLS stuff.
15336         * gtk/makefile.msc: Use GNU gettext.
15337         * gdk/win32/gdkdnd.c: Minor header reorg.
15338         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15339         cosmetics.
15340         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15341         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15342
15343 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15344
15345         * acinclude.m4
15346         * config.guess
15347         * config.status
15348         * ltconfig
15349         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15350
15351 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15352
15353         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15354         SafeAdjustWindowRectEx. Don't override all calls to
15355         AdjustWindowRectEx by it, but use it only in two places: When
15356         creating a new top-level window and when moving a top-level
15357         window.
15358
15359         Use screen coordinate rectangle, not client rectangle, in
15360         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15361         when we try to place a window so that the decoration (mainly,
15362         title bar) isn't visible.
15363
15364         These changes fix the bug that showed up for instance as the
15365         GIMP's saved top-level windows moving right and down (by an amount
15366         equal to the window decoration) for each session. This bug showed
15367         up also in testgtk's "Saved Position".
15368
15369         gdk_window_resize also redone a bit.
15370
15371 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15372
15373         * gtk/testgtkrc: Add (commented out) Windows-style theme
15374         include line.
15375
15376         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15377
15378 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15379
15380         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15381         gdkx.h to a gdk subdirectory, so that applications can include
15382         these with <gdk/*.h> without trouble.
15383
15384         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15385         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15386         have their bitmap destroyed.
15387
15388         * gdk/win32/gdk.def: Add gdk_root_parent.
15389
15390 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15391
15392         * configure.in
15393           gtk-config.in
15394           ltconfig
15395           ltmain.sh     
15396           gtk/Makefile.am: changes to compile nicely (with xlib) 
15397           on BeOS
15398
15399 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15400
15401         * acinclude.m4
15402         * config.guess
15403         * config.sub
15404         * ltconfig
15405         * ltmain.sh: upgrade to libtool 1.3
15406
15407 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15408
15409         * gtk/gtkclist.c:
15410         * gtk/gtkctree.c: merges from gtk-1-2
15411
15412 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15413
15414         Support added for building using a GNU toolchain on Win32,
15415         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15416
15417         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15418         * config.h.win32: Changes for gcc.
15419         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15420         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15421         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15422         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15423         Protect shl stuff unavaiilable with mingw32 headers.
15424         * gdk/win32/gdkevents.c: Fix typo.
15425         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15426         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15427         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15428         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15429         the mingw32 headers.
15430         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15431         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15432         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15433         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15434         Test for NATIVE_WIN32, not _MSC_VER.
15435         * gtk/gtkmain.c: No use warning about developer version on Win32,
15436         there aren't any non-developer versions anyhow.
15437         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15438         * gtk/makefile.msc: Use pthread from another directory. Minor other
15439         changes. 
15440
15441 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15442
15443         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15444           default filter from the list
15445
15446 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15447
15448         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15449          when gtk_widget_grab_default() is called for a widget that
15450          is not within a GtkWindow.
15451
15452 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15453
15454         * docs/gtk_tut.sgml, examples/clist.c: use a
15455           scrolled window in the clist example. Minor
15456           tutorial fixes.
15457
15458 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15459
15460         * docs/gtk_tut.sgml: Style check from David King
15461           <dking@youvegotmail.net>
15462
15463 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15464
15465         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15466         compile with unknown value of GDK_WINDOWING
15467
15468 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15469
15470         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15471         after the rule is fired.
15472         (install-exec-local): Install gdkconfig.h only if the contents are
15473         different from the currently installed gdkconfig.h.
15474
15475 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15476
15477         * gdk/Makefile.am (configexecincludedir): Rename from 
15478         configincludedir so that gdkconfig.h will be installed 
15479         as part of `make install-exec'. 
15480
15481 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15482
15483         * acinclude.m4
15484         * config.guess
15485         * config.sub
15486         * ltconfig
15487         * ltmain.sh: upgrade to libtool 1.2f
15488
15489         * autogen.sh: libtool is not required to autogen gtk+
15490
15491         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15492         needed)
15493
15494 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15495
15496         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15497         declaring gdk variables exported/imported from the DLL. New image
15498         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15499         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15500         GDK_DRAG_PROTO_OLE2.
15501
15502         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15503         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15504         declared only for the Win32 version, but could be in the X11
15505         version as well. (Needed for a Xlib-less gdk_imlib.)
15506         gdk_color_hash should have only one parameter. Declare
15507         gdk_threads_mutex with GDKVAR.
15508         
15509         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15510         just one parameter.
15511
15512         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15513         per pixel, not bits.
15514
15515         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15516         Fetch bpp (which means bits-per-pixel here) from another place on
15517         Win32. Accept also depth==32 (which we might get on Win32) with
15518         bpp==32.
15519
15520         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15521         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15522         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15523         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15524         in the backend-dependent directory, not in the common gdk
15525         directory.
15526
15527         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15528         headers.
15529
15530 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15531
15532         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15533         want to use the Gtk+ devel version (which is true, and yes - even i am
15534         currently working with the 1.2.x branch). so everyone reading this, you
15535         probably want to issue
15536         cvs checkout -r glib-1-2 glib
15537         and
15538         cvs checkout -r gtk-1-2 gtk+
15539         as your next two comands.
15540
15541 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15542
15543         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15544         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15545
15546         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15547         file. strongly deprecated the GTK_HAVE_* macros, we provide
15548         GTK_CHECK_VERSION() for people that need to check for certain
15549         Gtk+ versions.
15550
15551         * gtk/gtkcompat.h: removed this from CVS.
15552         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15553         idea right from the start, it just didn't seem like that back then.
15554
15555 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15556
15557         * merges from gtk-1-2:
15558
15559 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15560
15561         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15562         item factory class has been created.
15563         (gtk_item_factory_parse_rc): likewise.
15564
15565         * gtk/gtkmenu.c:
15566         keep proper references for old_active_menu_item.
15567         (gtk_menu_reparent): unset the usize of the new parent,
15568         so the menu can sanely be size requested and we don't get nasty screen
15569         artefacts upon next reparentation.
15570         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15571         enter notify. only synthesize enter notifies if the pointer really is
15572         inside the event window.
15573         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15574         (gtk_menu_popup): move the background setting stuff into
15575         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15576
15577         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15578         gtk_menu_shell_select_item() to select the new item.
15579         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15580         do the right thing for deselection as well.
15581
15582 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15583
15584         * gtk/gtkwidget.[hc]:
15585         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15586         are locked.
15587
15588         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15589         existing accelerators if the widget's accelerators are locked.
15590
15591 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15592
15593         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15594
15595         * gtk/gtkmenu.c: truely forward key press and key release events to
15596         the menu widget from the toplevel or tearoff window. we can't simply
15597         connect to that, we need to stop further processing of the events as
15598         well.
15599
15600 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15601
15602         * gtk/gtkmenu.c:
15603         (gtk_menu_key_press): pass event->keyval, event->state to
15604         gtk_accelerator_valid, instead of event->keyval twice.
15605         refuse to install single letter accelerators for menus that use
15606         single letter shortcuts.
15607
15608         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15609         gtk_menu_ensure_uline_accel_group().
15610
15611         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15612         which will always return an uline accel group, made
15613         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15614         yet created.
15615
15616 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15617
15618         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15619
15620         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15621         Leave button sensitive, trap  button_press, button_release,
15622         motion_notify, enter_notify and leave_notify events instead.
15623         (gtk_clist_column_title_active): disconnect event handler.
15624         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15625         Guillaume Laurent <glaurent@worldnet.fr>
15626
15627 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15628
15629         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15630         width/height mixups.
15631
15632         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15633         if needed.
15634
15635 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15636
15637         * gtk/testgtk.c (create_item_factory): unref the item factory after
15638         window's destruction.
15639
15640         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15641         count on the menu shell around the menu item's activation, since the
15642         signal emission may cause menu shell destruction.
15643
15644         * gtk/gtkitemfactory.c:
15645         the previous code leaked one accel group per menu. we use
15646         gtk_menu_get_uline_accel_group() now to fix that, and with that
15647         also create the underline accelerator group of the menus only if
15648         required (i.e. an underline accelerator has been specified).
15649         (gtk_item_factory_construct):
15650         (gtk_item_factory_create_item): removed code that would create an
15651         extra accel group for the menu (and leak references).
15652         (gtk_item_factory_create_item): adapted the underline accelerator
15653         installation code to properly feature gtk_menu_get_uline_accel_group().
15654
15655         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15656         menu->accel_group, this may return NULL if the accelerator group
15657         hasn't been set yet.
15658         added gtk_menu_get_uline_accel_group() to retrive the underline
15659         accelerator group of the menu, this will be created on demand
15660         and proper care is taken about its reference count.
15661
15662         * gtk/gtkitemfactory.h:
15663         * gtk/gtkitemfactory.c:
15664         dumped the approach of keeping a widgets by action list on the
15665         factory since the factory<->widget destroy negotiation didn't work
15666         and would be hard to get going at all. instead we keep a list of
15667         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15668         persistant throughout a program's life time).
15669         also, i removed the static const gchar *key_* variables, and made
15670         them inline strings (they weren't actually used anyways).
15671         (gtk_item_factory_add_item): update ifactory->items.
15672         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15673         the item factory pointer from the remaining ifactory widgets).
15674         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15675         list to find the widget.
15676         (gtk_item_factory_get_item): new function that works around
15677         gtk_item_factory_get_widget() limitations, this function will only
15678         return menu items, even for <Branch> entries.
15679
15680 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15681
15682         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15683         font hash table, if we have a GdkFontPrivate entry for this font
15684         already, simply increment its reference count, provided by Olaf Dietsche
15685         <olaf.dietsche+list.gtk@netcologne.de>.
15686
15687         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15688         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15689
15690 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15691
15692         * gtk/gtkcontainer.c:
15693         (gtk_container_add_with_args):
15694         (gtk_container_addv):
15695         (gtk_container_add): before adding a child to a conatiner, make sure
15696         it is (default) constructed, this is neccessary because under certain
15697         circumstances the child will get relized and mapped immediatedly, in
15698         which case it has to be constructed already.
15699
15700 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15701
15702         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15703         values > 1 as TRUE also.
15704
15705 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15706
15707         * README.win32: New file.
15708                 
15709         * configure.in: Check for lstat.
15710
15711         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15712         completeness.
15713
15714         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15715
15716         * gtk/gtk.def: Removed CRs.
15717
15718         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15719         ..\gdk\win32).
15720
15721         * gdk/win32/makefile.msc: Correct upwards relative paths.
15722         
15723 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15724
15725         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15726           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15727           it was connecting a void function to expose_event and the int
15728           returning function to the draw signal
15729
15730 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15731
15732         * configure.in:
15733         Use correct path to libgmodule.la when ref'ing uninstalled copy
15734         of glib.  (Already in stable branch, Bug #417)
15735
15736 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15737
15738         Win32 merge and general portability stuff:
15739                 
15740         * acconfig.h,configure.in: Check for <sys/time.h>.
15741
15742         * gdk/win32: New directory (actually, been there for a while).
15743         
15744         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15745         NATIVE_WIN32, and use these. Always case fold on Win32. No
15746         backslashed escapes on native Win32.
15747
15748         * gtk/{gtk.def,makefile.msc}: New files.
15749
15750         * gtk/Makefile.am: Add above new files.
15751         
15752         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15753         instead of <strings.h>.
15754
15755         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15756         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15757         <unistd.h> appropriately.
15758
15759         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15760         Use ABS() (from <glib.h>) instead of abs().
15761         
15762         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15763         of gtk (and thus glib) headers, so that WIN32 will be
15764         defined. With MS C, include <direct.h> for mkdir prototype.
15765
15766         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15767         some casts, needed by MS C.
15768
15769         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15770         implemented).
15771
15772         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15773         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15774         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15775
15776         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15777                 
15778         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15779         the event is not a hint, or its window is not the slider. Needed
15780         on Win32, at least.
15781
15782         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15783         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15784         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15785         a subdirectory of the Windows directory as gtk system
15786         configuration directory.
15787
15788         * gtk/gtkselection.c: No chunks on Win32.
15789
15790         * gtk/gtksocket.c: Not implemented on Win32.
15791
15792         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15793
15794         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15795
15796         * gtk/maketypes.awk: Declare variables with a macro that expands to
15797         necessary export/import magic in the case of Win32.
15798                 
15799         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15800
15801 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15802
15803         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15804         since those were meant only for gdki18n.h.  
15805         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15806         for widechar tests.
15807         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15808
15809 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15810
15811         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15812         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15813
15814         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15815         installed) to CFLAGS.
15816
15817         * gdk/Makefile.am: Add rules for gdkconfig.h.
15818
15819         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15820         APIs.
15821
15822         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15823         gdkx.h anyway when compiling for X11.
15824         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15825         general): Merge in Win32 version.
15826         
15827         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15828         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15829         expansion (if we don't have HAVE_PWD_H), allow for drive
15830         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15831         included code from Craig Setera's port to Win32 (the one that uses
15832         X11, and the cygwin dll), even if it probably will be abandoned.
15833
15834         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15835         the user entered one herself.  This way one can complete *.h and
15836         don't get matches on any .help files, for instance.
15837         
15838 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15839
15840         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15841         font hash table, if we have a GdkFontPrivate entry for this font
15842         already, simply increment its reference count, provided by Olaf Dietsche
15843         <olaf.dietsche+list.gtk@netcologne.de>.
15844
15845         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15846         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15847
15848 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15849
15850         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15851         the number of calls to gdk_draw_point() (and thus to X) by
15852         clipping the points by hand.
15853
15854         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15855         the clip parameter.
15856         (gtk_handle_box_paint): Only paint the handle if the expose area
15857         intersects it.
15858
15859 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15860
15861         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15862
15863 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15864
15865         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15866         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15867
15868 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15869
15870         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15871          textmode (O_TEXT) for OS/2 version.
15872
15873 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15874
15875         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15876         GtkSpinButton, "input" and "output", to make the output more flexible.
15877         The user has to provide a mapping between adjustment->value and the
15878         output string (and vice versa, if the spin button is editable). 
15879         See testgtk for examples.
15880
15881 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15882
15883         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15884         new one.
15885         
15886         * configure.in: set gtk+ version to 1.3.0.