]> Pileus Git - ~andy/gtk/blob - ChangeLog
fix some shell typos
[~andy/gtk] / ChangeLog
1 2001-05-04  Havoc Pennington  <hp@redhat.com>
2
3         * configure.in: fix some shell typos
4
5         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
6
7         * gtk/gtkimage.c: handle animations
8
9         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
10         border_width * 2, not just border_width
11
12         * gtk/gtkscale.c: add "format_value" signal to allow people
13         to override the way values are drawn.
14         (gtk_scale_get_value_size): fix width/height mistake,
15         and compute size from actual displayed text, not 
16         from made-up text.
17
18         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
19         signal registration
20
21         * tests/testtext.c: Add "Remove all tags" menu item for testing
22
23         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
24
25         * demos/gtk-demo/main.c (main): add hack so we can find modules
26         without installing gtk
27
28         * demos/gtk-demo/textview.c (insert_text): demo font scaling
29
30         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
31         factor)
32         (gtk_cell_renderer_text_set_property): remove some bogus
33         g_object_notify
34
35         * gtk/gtktexttag.c: add "scale" property which is a font scaling
36         factor
37
38         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
39         to layout
40
41         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
42         gtk_text_iter_is_first
43
44 2001-01-06  Hans Breuer  <hans@breuer.org>
45
46         * gdk/gdk.def : updated exports
47
48         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
49         gdk won't compile anymore
50  
51         * gdk/win32/gdkevents-win32.c : initialize ret_val when
52         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
53         Improved gdk_flush () to not only do pending drawing operations
54         but also process all currently pending events. This should make
55         the behaviour more similar to the X11 version.  
56
57         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
58         option needs to be set even if there is no GDK_GC_BACKGROUND.
59         (gdk_win32_hdc_get) : use predraw_set_background () independent
60         of value_mask. This allows to draw dashed lines leaving the original
61         background intact.
62
63         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
64         after processing, because we can't reuse it as the X11 version does.
65
66         * gtk/gtk.def : updated exports
67
68         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
69         would like to get rid of this file again, and use straight
70         makefile.msc again, as the other Gtk+ subdirs do)
71
72         * test/makefile.msc (new file) : build the test apps here
73
74 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
75
76         * Release 1.3.5
77
78         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
79
80         * NEWS: Updated
81
82         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
83         Makefile breakage.
84
85 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
86
87         * demos/gtk-demo/images.c (progressive_timeout): Fix
88         typo in filename.
89
90         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
91         out FIXME warning; just too annoying.
92
93 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
94
95         * gdk/linux-fb/gdkcolor-fb.c:
96         Better error messages.
97
98         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
99         Initialize abs_x and abs_y.
100         
101         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
102         Correct handling of stipple offset.
103
104         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
105         Treat directcolor framebuffers as truecolor.
106         
107 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
108
109         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
110         dependency on Atk for accessibility support.
111
112         * configure.in **/Makefile.am: Major reworking of substituted
113         variables for CFLAGS/LIBS to make a lot more sane and 
114         keep the the compile/link lines a bit shorter.
115
116         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
117
118 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
119
120         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
121         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
122         use _gtk_boolean_handled_accumulator.
123
124 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
125
126         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
127         to fix things so clicking inside selection leaves cursor
128         at point where clicked. (#50324)
129
130         * gtk/gtksettings.c (gtk_settings_class_init): Restore
131         sane value for default double click time.
132
133         * tests/testtext.c (test_init): Really path to input modules.
134
135 2001-05-03  Sven Neumann  <sven@convergence.de>
136
137         * demos/testpixbuf-save.c: include target-specific headers as
138         done in testpixbuf-drawable.c
139
140 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
141
142         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
143         new_text_length appropriately when we run into the 
144         size limit for the entry. (#53445, reported by Jeff Franks)
145
146         * tests/testgtk.c (create_entry): Remove most of the
147         property toggle buttons. Replace with a "Props" button
148         that brings up a property editor.
149
150         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
151         Split the property editor code out for reuse, improve.
152
153 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
154
155         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
156         trap errors around calls to XSetInputFocus since we have
157         no way of knowing reliably whether we are viewable or
158         not. (#53947)
159
160 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@webwynk.net>
161
162         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
163         fix bug in dropping columns.  Moving columns now basically works
164         modula some fine tuning.
165
166 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
167
168         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
169         autoscroll support.  It mostly works, but could use some fine
170         tuning.
171         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
172         Actually move the column.
173
174 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
175
176         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
177           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
178           New default theme! A slighly improved version of the 2.0 Raleigh
179           theme, with Windows-esque focus/drawing default. 
180           (GtkWidget::interior_focus defaults to TRUE.)
181
182         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
183
184 2001-04-30  Havoc Pennington  <hp@pobox.com>
185
186         * tests/testtext.c (line_numbers_expose): fix to work with
187         gtk_paint_layout change
188
189 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
190
191         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
192           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
193           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
194           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
195
196         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
197           with GtkWidget::interior_focus = TRUE better.
198
199         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
200         ::default_outside_border for more flexibility.
201
202         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
203         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
204         change that had to be made with g_object_get.
205
206 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
207
208         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
209         (gtk_tree_view_move_column_after): Clean up interface. 
210
211 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
212
213         * gtk/gtkpacker.h:
214         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
215          to gtkenum.h.
216
217         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
218         handled in switch).
219
220         * gtk/Makefile.am:
221         (gtk.defs): generate enum portions with  glib-mkenums.
222         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
223         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
224         
225         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
226         addition.
227
228         * docs/Changes-2.0.txt: keep a note on signal handlers now
229         not getting emitted during the emission they were connected within.
230
231 2001-04-28  Havoc Pennington  <hp@pobox.com>
232
233         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
234
235 2001-04-24  Havoc Pennington  <hp@redhat.com>
236
237         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
238         (gtk_text_layout_move_iter_to_next_line): fix these two for
239         invisible text, lots of other stuff still hosed.
240
241         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
242         new function, replaces the get/set palette stuff. This function 
243         is intended for use by libgnomeui which should set the hook to a
244         thing which sets the palette in GConf, and we need the
245         GConf-to-xsettings proxy which will result in the change being
246         propagated back to the GTK app.
247
248         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
249         about unusable signals that it may be because the signal has 
250         parameters.
251
252         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
253         style, otherwise gtkrc.c won't know to create a new GtkStyle for
254         it.
255         (gtk_widget_modify_color_component): call
256         gtk_widget_modify_style() so the rc style will get copied.
257         (gtk_widget_modify_font): ditto
258
259         * gtk/gtkrc.c: make a couple variables static
260
261         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
262         help button by default, since it does nothing
263
264         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
265         around with UI
266
267         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
268         so we can have tooltips
269
270         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
271         can have tooltips
272
273         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
274         GDK_ENABLE_BROKEN, because its memory behavior is completely
275         hosed.
276
277         * gtk/gtknotebook.c: remove key press handler, replace with
278         binding set, add numeric keypad support
279
280         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
281
282         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
283
284         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
285         addition to plain Delete
286
287         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
288         GDK_KP_Enter in addition to GDK_Return
289
290         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
291         activate on entry instead of key press
292         (gtk_font_selection_on_clist_key_press): get
293         rid of this signal handler, not needed with new font sel.
294
295         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
296         no-longer-needed emit_stop_by_name(), just return TRUE
297
298         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
299         cruft, this widget is no longer focusable.
300
301         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
302         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
303         move_slider action signal, add binding set for vscale/hscale, in
304         the process support numeric keypad
305
306         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
307         make GDK_Return and GDK_KP_Enter activate the entry via 
308         binding set, instead of hardcoded.
309
310 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
311
312         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
313         code.  Some documentation added.
314
315 2001-04-27  Havoc Pennington  <hp@redhat.com>
316
317         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
318
319         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
320
321         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
322         line/para separators
323         (gtk_entry_create_layout): set single paragraph mode on the layout
324
325         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
326         spacing between the image and label; instead, inside a button box 
327         the button will get extra space that will go there, but if people 
328         configure button box for 0 chubbiness, then there's no spacing.
329
330         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
331         and min/max size style properties, so people can tune their
332         chubbiness.
333
334         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
335         functions
336
337         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
338         space_style, and button_relief into style properties, remove
339         functions for setting them
340         
341         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
342         it back down
343
344         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
345         types from gtk_widget_style_get
346
347         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
348         with a style property.
349
350         * gdk/x11/gdkevents-x11.c: namespace the settings
351
352         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
353
354         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
355         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
356         be used. Also, translate doc strings for settings. Also, namespace
357         the double-click-time property. Also, remove bell properties crap.
358
359 2001-04-27  Sven Neumann  <sven@gimp.org>
360
361         * Makefile.am: before creating links, check if pkg-config files
362         exist for the default target. Otherwise link to the pkg-config files
363         that got installed with this build.
364
365 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
366
367         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
368         dragging code.  Revealed some (potential) GdkWindow bugs.
369
370         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
371         _gdk_window_init_position to the end of reparent to fix the case
372         of reparenting when new_x != old_x and new_y != old_y.
373
374 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
375
376         * gtk/gtkentry.c (strstr_len): Fix optimization that
377         was correct for the use here, but completely incorrect
378         in general.
379
380 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
381
382         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
383         until patch adding gtk_window_set_size() is recommitted. 
384
385         * **Makefile.am configure.in gdk/x11/gdkim-11.c
386           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
387           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
388           (#10784)
389
390 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
391
392         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
393         window == NULL in a number of cases.
394
395         * tests/testdnd.c: Set module path for gdk-pixbuf.
396
397 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
398
399         * gtk/Makefile.am xembed.h: File containing #defines
400         for XEMBED protocol.
401
402         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
403
404         - Change protocol from old plug/socket specific protocol
405           to XEMBED draft
406         - Various fixes to work with GTK+-2.0
407
408         Still quite a bit of work to do here to handle initiation
409         from the socket side (as specified by XEMBED), to handle
410         the more advanced features of XEMBED, and to figure out
411         a good way to handle same-app embedding with less overhead
412         than using full XEMBED.
413
414 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
415
416         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
417         track of whether the toplevel has the focus; only send
418         focus-in events to the focus widget when the window
419         actually has the focus.
420
421 2001-04-25  Havoc Pennington  <hp@pobox.com>
422
423         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
424         were still in the header
425
426 2001-04-24  Alexander Larsson  <alexl@redhat.com>
427
428         * gtk/gtkclist.[ch]:
429         * gtk/gtkctree.c:
430         When there is a row highlighted for D'n'D it must alse
431         be painted hightlighted on exposes. Otherwise exposes from
432         the icon being dragged will mess up the hightlight.
433
434         * gtk/gtkfontsel.c:
435         Don't recenter selected font when exposing the font family
436         clist. This means you can now actually scroll the font family
437         list.
438
439         * gtk/gtknotebook.c:
440         Fix focus movement on scrolling tabs that are placed on the left
441         and right.
442
443 2001-04-21  Havoc Pennington  <hp@pobox.com>
444
445         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
446         empty/invisible lines.
447
448         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
449         (gtk_text_iter_set_visible_line_index): new functions to set
450         indexes excluding invisible text
451
452         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
453         index
454
455         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
456         (gtk_text_iter_get_visible_line_offset): new functions to 
457         get indexes excluding invisible text
458
459         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
460         bunch of extra padding that served no purpose
461
462         * gtk/gtkdialog.c: Make all the spacings configurable via style
463         properties, for chubbiness configuration in themes
464
465         * tests/testtext.c: fix path to the immodules.
466         
467 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
468
469         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
470         got munched by #endif.
471
472         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
473
474         * gtk/gtktreeview.c: Refactored code to clean up a number of
475         events.
476
477         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
478         values to make consistent with other functions.  Spotted by Jeff
479         Franks <jcf@tpg.com.au>.
480
481         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
482         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
483
484 2001-04-23  Sven Neumann  <sven@gimp.org>
485
486         * gtk/Makefile.am
487         * gtk/gtkplug.c
488         * gtk/gtksocket.c: on request of Owen, reverted my last change 
489         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
490
491 2001-04-23  Sven Neumann  <sven@gimp.org>
492
493         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
494         compile for non-X11 targets again
495
496 2001-04-20  Alexander Larsson  <alexl@redhat.com>
497
498         * gtk/gtkcolorsel.[ch]:
499         API Change. Take GdkColor arguments instead of gdouble *.
500         Leave the old gtk_color_selection_set_color for compatibility,
501         but marked deprecated.
502         Do correct rounding when converting RGB <-> HSV.
503         
504         * gtk/gtkcolorseldialog.c:
505         * tests/testgtk.c:
506         Use new GtkColorSelection API.
507
508         * gtk/gtkhsv.c:
509         Fix problem selecting colors in triangle when Hue is 330.
510         Fix some black dots around the HSB triangle.
511         
512         * gtk/gtkfilesel.c:
513         return FALSE from the focus_in_event handler to fix focus problems.
514
515 2001-04-18  Havoc Pennington  <hp@redhat.com>
516
517         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
518         set, so keybindings are configurable    
519         (gtk_window_activate_default): Change to activate the focus widget
520         instead if there's a focus widget, to be consistent with the
521         behavior that previously existed in key_press_event
522
523 2001-04-18  Havoc Pennington  <hp@redhat.com>
524
525         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
526
527 2001-04-18  Havoc Pennington  <hp@redhat.com>
528
529         Close bug #50615:
530         
531         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
532         the layout
533
534         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
535
536         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
537
538         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
539         
540         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
541         to blue for base, in addition to bg
542         
543 2001-04-18  Havoc Pennington  <hp@redhat.com>
544
545         * tests/testgtk.c (create_image): allow shrinking the image window
546         to test that we clip to allocation.
547
548         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
549         #9845
550
551         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
552
553 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
554
555         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
556         mode on shm segments to 0600. We'll see who complains.
557
558         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
559         _gdk_windowing_window_destroy() AFTER recursing through
560         children.
561
562         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
563         testsocket_child on X.
564
565         * tests/testsocket[_child].c: Fix uses of
566         gtk_window_get_default_accel_group().
567
568         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
569
570         * gdk/gdkimage.c: (gdk_image_get):
571         Deal with the possibility that XGetImage() might return NULL.
572         Allocate the GdkImagePrivate structure only after XGetImage()
573         succeeds in order not to dereference a NULL ximage pointer.  This
574         prevents a core dump when XGetImage() fails - which is unlikely,
575         but can happen due to race conditions accessing the geometries of
576         drawables.  An x error will still be triggered, but the gdk image
577         wrapper at least wont seg fault.
578         
579 2001-04-18  Havoc Pennington  <hp@redhat.com>
580
581         * gtk/gtkimage.c: fix to properly queue resizes when the image is
582         set
583
584         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
585         if the insertion point isn't editable
586
587         * demos/gtk-demo/images.c: Added a GtkImage demo
588
589         * demos/gtk-demo/drawingarea.c: drawing area demo
590         
591         * demos/gtk-demo/menus.c (create_menu): cleanups
592
593 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
594
595         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
596           gdk/x11/gdkevents-x11.c: Introduce an extra child
597         of toplevel windows that serves to hold the focus to
598         avoid events being delivered to embedded windows.
599
600         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
601         some extra variables to clean up code and reduce the
602         number of casts.
603
604         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
605         guint for 1 bit bit fields, not gboolean.
606
607 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
608
609         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
610         not TRUE. (Fixes #52925)
611
612 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
613
614         * Released 1.3.4
615
616         * NEWS: Updated
617
618         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
619         use GTK_TYPE_ENUM.
620
621 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
622
623         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
624
625         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
626         names to compatibility #defines so docs work.
627
628         * gtk/gtkenums.h: Remove GtkMenuFactoryType
629
630         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
631
632         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
633
634         * tests/testgtkrc: No magenta cursors, please.
635
636         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
637
638         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
639         
640 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
641
642         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
643         grabs, since they are no longer necessary.
644
645         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
646         by signal_connect() and call gtk_button_pressed() rather
647         than signal_connect_after().
648
649         * tests/testgtk.c: Restore radio menu items to combos 
650         since they'll look OK with Raleigh, and it is easier
651         than finishing the process of removing them that was
652         started earlier.
653
654 2001-04-16  Hans Breuer  <hans@breuer.org>
655
656         * gdk/gdk.def :
657         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
658
659         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
660         we are interested in the functions return value not the function address
661         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
662
663         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
664
665 2001-04-14  Hans Breuer  <hans@breuer.org>
666
667         * gdk/gdk.def :
668         * gdk/makefile.msc : updated
669
670         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
671         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
672         (the testgtk::text backgound pixmap is drawn again)
673         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
674         Win32 Pango change
675         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
676
677         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
678         Not sure if the returned settings have the right unit, because I couldn't
679         find any docs for the X version ...
680
681         * gtk/gtk.def :
682         * gtk/makefile.msc.in : updated
683
684 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
685
686         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
687         wording problems. (Compared to version from Johannes Stezenbach to
688         check correctness.)
689
690 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
691
692         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
693         this to compile.
694
695 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
696
697         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
698         not pixbufpos.
699
700         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
701
702         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
703         are unsigned insts, therefore use g_value_set_uint.
704         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
705
706 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
707
708         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
709
710         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
711         GTK_TYPE_STRING.
712
713         * gtk/gtktreeview.c: New functions to allow initial column
714         dragging work.
715
716         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
717
718         * tests/testtreefocus.c: give dave some love.
719
720         * tests/testtreesort.c: Modify test to check really long samples.
721
722 2001-04-11  Alexander Larsson  <alexl@redhat.com>
723
724         * gtk-2.0.m4: Pass pkg-config options
725         before the other args so it works even if
726         POSIXLY_CORRECT is set.
727
728 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
729
730         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
731         0, interface 0).
732
733 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
734
735         * gtk/gtkcalendar.c (gtk_calendar_button_press):
736         check for action_func != NULL
737
738 2001-04-04  Sven Neumann  <sven@gimp.org>
739
740         * tests/testgtk.c (test_init): corrected path to gtk.immodules
741
742 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
743
744         * Released Gtk+-1.3.3.
745
746 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
747
748         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
749
750 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
751
752         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
753         files to/from source dir. (if we don't stay in builddir, we
754         can't reach make-inline-pixbuf.
755
756         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
757         deps.
758
759         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
760         ages 0).
761
762 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
763
764         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
765         moved to the GtkTreeSortable interface.
766
767         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
768         Make more efficient (fixes #50262).
769
770 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
771
772         * NEWS: Updated.
773
774         * configure.in: Remove support for uninstalled glib.
775
776         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
777         so as not to stop emission.
778
779         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
780         is no longer supported.
781
782         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
783         into tests, change build order to build modules before
784         gtk/.
785
786         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
787         to here.
788
789 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
790
791         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
792         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
793         GPatternSpec. this is actually unlikely to cause breakage in
794         third-party apps since except for gle, pretty much ever caller
795         passes NULL here.
796
797         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
798
799         * *.c: use g_pattern_*() API.
800
801         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
802
803         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
804         directions aren't passed in.
805
806         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
807         functionality to be usable from gtkstyle.c as well, give precedence
808         for conversion to user-supplied parsers.
809         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
810
811         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
812         _gtk_settings_parse_convert() for rcporperty value conversion.
813
814 2001-04-03  Alexander Larsson  <alexl@redhat.com>
815
816         * gdk/linux-fb/gdkevents-fb.c:
817         Add empty gdk_setting_get().
818
819 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
820
821         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
822         variable names.
823         
824         * gtk/makeenums.pl: touch this so enum files get remade.
825
826 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
827
828         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
829         work again when not sorted.
830
831         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
832         and "expand_row" signal, closing bug 52578.
833
834         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
835         support.
836
837         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
838         support.
839
840 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
841
842         * gdk/gdkevents.h: Add GdkEventSetting event for notification
843         of changes to system settings, gdk_setting_get() to retrieve
844         a single system setting.
845
846         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
847         to the draft XSETTINGS mechanism.
848
849         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
850         XSETTINGS.
851
852         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
853         of GDK settings changes to the GtkSettings object.
854
855         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
856         double-click-timeout property to GDK.
857
858         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
859         Define GDK boxed types here.
860
861         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
862         gdk/gdkenumtypes.[ch] for enum definitions.
863
864         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
865         * gtk/gtk-boxed.defs: Comment out GDK types
866         * gtk/gtktypeutils.h: Remove GDK types
867         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
868
869 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
870
871         * Applied patch from Ron Steinke to add signal accumulators
872         so that signals with the convention 'TRUE return means
873         handled' stop emission on a TRUE return.
874
875         * gtk/gtkmain.[ch]: Add private accumulator 
876         _gtk_boolean_handled_accumulator, used throughout GTK+.
877         
878         * gtk/gtkspinbutton.c: Add accumulator for ::output.
879
880         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
881         
882         * gtk/gtkwidget.c: Add accumulators for event signals,
883         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
884         for ::mnemonic-activate.
885
886         * gtk/gtkwindow.c: Add accumulator for ::frame_event
887
888 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
889
890         * gtk/gtkwidget.c: Add missing include.
891
892 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
893
894         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
895         marshaller.
896
897         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
898         "changed" signal to "range_changed".
899
900         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
901         removing a tree from one model would remove all trees from that
902         model.
903         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
904         changed signal instead.
905
906 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
907
908         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
909         chaining up to parent impl, since we have a INPUT_ONLY
910         window.
911
912         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
913         foreground color for the cursor.
914
915 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
916
917         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
918         param spec when caching property values, since we unref it
919         later when we free the style.
920
921         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
922         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
923
924 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
925
926         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
927         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
928         stupidity.
929
930 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
931
932         [ First pass at adding style properties. Still needs some definite
933         fine-tuning. ]
934
935         * gtk/gtkbutton.c: Add ::default_spacing style property.
936          
937         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
938         ::indicator_spacing style properties.
939
940         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
941         style properties.
942
943         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
944         rather than a normal property.
945
946         * gtk/gtkwidget.c: Add an ::interior_focus style property to
947         draw focus inside buttons, in the Windows/Java Metal/etc. style.
948
949         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
950         Honor ::interior_focus.
951         
952         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
953         TRUE.
954
955         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
956         Add ::slider_width, ::trough_border, ::stepper_size,
957         ::stepper_spacing style properties.
958
959         * gtk/gtkscale.[ch] Add ::slider-length style property.
960
961 2001-04-02 Alexander Larsson   <alexl@redhat.com>
962
963         * gdk/linux-fb/gdkwindow-fb.c:
964         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
965         warnings that were spewed on startup.
966
967         * gtk/gtkwindow-decorate.c:
968         gtk_window_reposition -> _gtk_window_reposition
969
970 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
971
972         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
973         Add boxed type for GtkRequistion. Use it for ::size-request.
974
975         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
976         Add a new GtkBorder structure useful for geometry properties
977         for widgets. Add corresponding GTK_TYPE_BORDER.
978         
979         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
980         Support automatic parser selection like
981         gtk_settings_install_property_parser().
982
983         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
984         functionality for use by gtk_widget_class_install_style_property.
985         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
986
987 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
988
989         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
990         g_param_spec_unichar(). 
991
992 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
993
994         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
995         _NET window managers.
996
997         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
998
999 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
1000
1001         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
1002         bad needs to be nuked, not just deprecated.
1003
1004         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
1005         gtk_widget_popup().
1006
1007         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
1008         
1009         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
1010         widget.
1011         
1012         * docs/Changes-2.0.txt: updates.
1013         
1014 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
1015
1016         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
1017         for (i = 0; i < 100; i ++)
1018           g_print ("I will confirm it compile before committing\n");
1019
1020 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
1021
1022         * gtk/gtktreestore.c: Initial work on implementing the
1023         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
1024
1025 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
1026
1027         * gtk/gtkwidget.c: fixed a bunch of notifications, added
1028         reference counts around emissions where the widget is used afterwards.
1029         added freeze/thaws around multiple properties being notified.
1030         (_gtk_widget_get_aux_info): cleanups.
1031         
1032         * gtk/gtksettings.c (gtk_settings_install_property): provide
1033         default parsing functions for gdkcolor, enums and flags.
1034
1035         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
1036         applied by owen.
1037         backed out gtk_window_get_location(), gtk_window_set_location(),
1038         gtk_window_get_size() and gtk_window_set_size(), these
1039         have to be sorted out wrg x/y/width/height/default_with/default_height
1040         properties.
1041         kept a flag in GtkWindowGeometryInfo to handle user
1042         resetting default sizes.
1043         cleaned up ZVT comments.
1044         bunch of assorted bug fixes, notification fixes.
1045         (_gtk_window_reposition): make this a really internal function.
1046         
1047         * gtk/testgtk.c: fixups.
1048         
1049 2001-03-31  Hans Breuer  <hans@breuer.org>
1050
1051         * config.h.win32.in : disable USE_MMX for msvc build cause
1052         the assembler doesn't fit and is out of my scope. Disable
1053         USE_GMODULE for msvc build as wel. The right way to share
1054         binaries on win32 would be to use libtiff.dll etc. To reduce
1055         installation hassles IMO it's better to include all fileformats
1056         builtin to gdk-pixbuf
1057
1058         * gdk-pixbuf/makefile.msc : new file
1059
1060         * gdk/gdk.def : updated
1061
1062         * gdk/win32/gdkevents-win32.c : don't erase the background if
1063         .no_bg is set. It improves the scrolling (e.g. of testgtk main
1064         buttons
1065         * gdk/win32/gdkgeometry-win32.c : added comment about the above
1066
1067         * gdk/win32/gdkwindow-win32.c : added three new functions like
1068         the X version. Only one is implemented, because the other two
1069         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
1070         be default behaviour on win32 anyway ...
1071
1072         * gtk/gtk.def : updated
1073
1074         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
1075         from where it was built and add an additional rule to automagically
1076         build gtkmarshal.[hc]
1077
1078         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
1079         before array access for the current entry isn't finished
1080
1081         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
1082         use g_return_val_if_fail
1083
1084         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
1085         for the static array, but let the compiler calculate it. It
1086         makes me wonder if gcc isn't capable to catch bugs like this ...
1087
1088 2001-03-31  James Henstridge  <james@daa.com.au>
1089
1090         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
1091         constant "-1" in the aux info structure.
1092
1093 2001-03-30  Alexander Larsson  <alexl@redhat.com>
1094
1095         * gtk/gtkbutton.c (gtk_button_get_property):
1096         * gtk/gtklabel.c:
1097         Remove leaks.
1098         
1099         * gtk/gtkcontainer.c:
1100         * gtk/gtkhscale.c:
1101         * gtk/gtkhscrollbar.c:
1102         * gtk/gtklayout.c:
1103         * gtk/gtkmisc.c:
1104         * gtk/gtkprogress.c:
1105         * gtk/gtkprogressbar.c:
1106         * gtk/gtkrange.c:
1107         * gtk/gtktable.c:
1108         * gtk/gtkviewport.c:
1109         * gtk/gtkvscale.c:
1110         * gtk/gtkvscrollbar.c:
1111         * gtk/gtkwidget.c:
1112         Property patches, based on patches from John Margaglione and Lee Mallabone.
1113
1114 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
1115
1116         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
1117         adjustment. Cleaned redundant preconditions (spin != NULL). Added
1118         inline API function docs.
1119         (gtk_spin_button_new_with_range): New convenience constructor.
1120         (gtk_spin_button_set_increments): New adjustment helper.
1121         (gtk_spin_button_set_range): New adjustment helper.
1122
1123         * gtk/testgtk.c : added test of the new convenince constructor and
1124         value_changed signals.
1125
1126 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
1127
1128         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
1129         listen to the reorder signal.
1130
1131 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
1132
1133         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
1134         to get the aux info structure fo the widget.
1135
1136         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
1137         above function.
1138
1139         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
1140
1141         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
1142         to get the size of the window manager frame, basically the same
1143         code that gdk_window_get_root_origin() had
1144         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
1145
1146         * gtk/gtkwindow.c (gtk_window_set_default_size): use
1147         gdk_window_resize() if the window is realized and resizeable
1148
1149         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
1150         typo so that setting gravity works
1151
1152         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
1153         allocation if auto_shrink is on, even if the default size
1154         has not changed.
1155
1156         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
1157         g_return_if_fail
1158
1159 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
1160
1161         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
1162         reordering/sorting work.  Now pretty much works.
1163
1164         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
1165         reorder mostly work.  Still need to get the parity correct.
1166
1167         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
1168         signal, so I can listen for the sort_column_changed signal so I
1169         can change my "sort_indicator" property.  Cool.
1170
1171 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
1172
1173         [ Patch from Havoc Pennington, hp@redhat.com ]
1174
1175         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
1176         Add functions gdk_window_begin_resize_drag/begin_move_drag
1177         to start resizing or moving a toplevel window. This
1178         is done either using the _NET_WM_MOVERESIZE protocol,
1179         or, if that isn't present, by emulation.
1180
1181         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
1182         to export the above to GTK+-land.
1183
1184         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
1185         
1186         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
1187         Move this function into gdkwindow, since we need it
1188         when implementing fallback resizing.
1189
1190         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
1191         Fix typo when setting gravity.
1192
1193         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
1194         Add an optional (but on by default) resize grip for resizing 
1195         the parent window.
1196
1197 01-03-29  Alexander Larsson  <alexl@redhat.com>
1198
1199         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
1200         Don't return TRUE from the event handler, that blocks all
1201         event signals on the tooltip widget. Now you can press buttons
1202         in toolbars again.
1203
1204 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
1205
1206         * gtk/testtext.c (create_buffer): Add missing NULL on
1207         valist.
1208
1209         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
1210         c-n-p problem with INCONSISTENT property.
1211
1212         [ Patch from Havoc Pennington  <hp@redhat.com> ]
1213
1214         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
1215         hook.
1216
1217         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
1218         signal as a hook for extending the default popup menu
1219
1220         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1221         use radio menu items for the input method menuitems
1222
1223         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
1224         inserted unicode from Ctrl-Shift-hex input method
1225
1226         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
1227         validatation here, already done at GtkTextBuffer level.
1228
1229         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
1230         popup_menu run action signal and Shift+F10 and Menu keybindings.
1231
1232         * gtk/gtkentry.c: implement a default handler for popup_menu
1233
1234         * gtk/gtktextview.c: implement a default handler for popup_menu
1235
1236         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
1237         from a key event
1238         
1239         * gtk/gtklabel.c: remove "trailer" cruft
1240
1241 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
1242
1243         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
1244         handle reordering of trees.  Seems to mostly work w/ the exception
1245         of the parity flag.
1246
1247         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
1248         signal.
1249
1250 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
1251
1252         * gtk/gtkwidget.h: c++ fixes.
1253
1254 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
1255
1256         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
1257         memory.
1258
1259 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
1260
1261         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
1262         Nils Barth fixing event return values. (#51041)
1263
1264         * gtk/gtkwidget.c: Fix some return values for default
1265         functions.
1266
1267         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
1268         return values for trough_keys functions.
1269
1270         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
1271         value for add_accelerator (shoudl have been a void
1272         return.)
1273
1274         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
1275         Fix return type of EVENT.
1276
1277         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
1278         signal return a boolean.
1279
1280 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
1281
1282         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
1283         reordered signal.
1284
1285         * tests/testtreesort.c (main): fix spelling.
1286
1287 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
1288
1289         * gtk/gtkliststore.c: More work on implementing sortable
1290         interface.
1291
1292 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
1293
1294         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
1295         reference the widgets in the resulting list. (#11821)
1296         This makes this consistent with gtk_container_children.
1297
1298         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
1299         uses of gtk_window_list_toplevels.
1300
1301 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
1302
1303         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
1304         a virtual function to set whether the IM context should use 
1305         the preedit string. (#51922)
1306         
1307 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
1308
1309         * gdk/gdkpango.h: Remove stale FIXME comment.
1310
1311 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
1312
1313         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
1314         Fixed bug that returned NULL if a filename was selected.
1315
1316 2001-03-24  Havoc Pennington  <hp@pobox.com>
1317
1318         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
1319         to contain the word "theme"
1320
1321 2001-03-24  Havoc Pennington  <hp@pobox.com>
1322
1323         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
1324         slower but finer-grained
1325         (gtk_hsv_focus): get initial focus on the ring or triangle 
1326         according to tab direction
1327
1328         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
1329
1330 2001-03-23  Havoc Pennington  <hp@pobox.com>
1331
1332         * gtk/gtkhsv.c: make this somewhat key-navigable
1333
1334         * gtk/gtkfontsel.c: mnemonics
1335
1336         * gtk/gtkgamma.c: mnemonics
1337
1338         * gtk/gtkcolorsel.c: add mnemonics to labels
1339
1340 2001-03-22  Havoc Pennington  <hp@pobox.com>
1341
1342         Applied big patch from Seth Lytle to fix event handler return
1343         values, slightly modified.
1344
1345         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
1346         handled.
1347         (gtk_calendar_key_press): return TRUE for GDK_space triggers
1348         select_day
1349
1350         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
1351         (gtk_clist_button_release): return TRUE if handled
1352
1353         * gtk/gtkcolorsel.c (mouse_release):
1354         (palette_activate): 
1355         (palette_press): 
1356         (palette_new): 
1357         (mouse_press): 
1358         (get_screen_color): 
1359         fixed return type (void to gboolean), return TRUE,
1360         added GTK_SIGNAL_FUNC cast
1361
1362         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
1363         (void to gboolean), and return TRUE
1364         (gtk_combo_button_release): changed return value to TRUE after
1365         gtk_grab_add on combo->popwin
1366
1367         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
1368         collapse or expand
1369
1370         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
1371         button/motion
1372
1373         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
1374         press/release and motion that trigger act
1375
1376         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
1377
1378         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
1379         for GDK_Return
1380         
1381         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
1382         (gtk_list_button_release): return TRUE if selection
1383
1384         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
1385         press
1386
1387         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
1388         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1389
1390         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1391         nothing triggered
1392         (gtk_notebook_button_release): return TRUE if we do anything
1393
1394         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1395         (gtk_spin_button_button_release): return TRUE or chained retval
1396
1397         * gtk/gtktext.c (gtk_text_button_press): 
1398         (gtk_text_button_release): return TRUE
1399         (gtk_text_key_press): remove redundant retval code
1400         
1401         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1402         and sensitive
1403         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1404         TRUE if sensitive
1405
1406         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1407         return TRUE
1408
1409 2001-03-23  Havoc Pennington  <hp@redhat.com>
1410
1411         * gtk/testgtk.c: fix warnings
1412
1413         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1414
1415         * gtk/gtktextview.c: fix warnings
1416
1417         * gtk/gtktext.c (find_cursor_at_line): fix warning
1418
1419         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1420
1421         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1422         of this function
1423
1424         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1425         fix warning
1426
1427         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1428
1429         * gtk/gtkfontsel.c: fix warning
1430
1431         * gtk/gtkcolorsel.c: fix warnings
1432
1433 2001-03-23  Havoc Pennington  <hp@redhat.com>
1434
1435         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1436
1437         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1438
1439         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1440         and deprecated gtk_check_menu_item_set_show_toggle().
1441         
1442         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1443
1444         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1445
1446         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1447
1448 2001-03-23  Havoc Pennington  <hp@redhat.com>
1449
1450         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1451         some docs
1452
1453 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1454
1455         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1456         this.
1457
1458         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1459         set_cell to set_value
1460
1461         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1462         set_cell to set_value
1463
1464 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1465
1466         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1467         fix braino.
1468         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1469         support.
1470
1471         * gtk/gtktreeview.c: Addition of initial sortable support.
1472
1473         * gtk/gtktreestore.c: Addition of initial sortable support.
1474
1475         * gtk/gtkliststore.c: Addition of initial sortable support.
1476
1477         * gtk/gtkmarshal.list: yet another marshaller.
1478
1479         * gtk/gtktreedatallist.[ch]: shared code between the store models
1480         for handling sorting headers.
1481
1482 2001-03-22  Havoc Pennington  <hp@redhat.com>
1483
1484         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1485         (gtk_container_unset_focus_chain): Add ability to override the 
1486         focus chain for a container explicitly
1487
1488 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1489
1490         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1491         added PROP_MNEMONIC_WIDGET.
1492
1493         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1494         (gtk_window_remove_mnemonic): 
1495         (gtk_window_add_mnemonic): fixed assertions.
1496         (gtk_window_activate_mnemonic): constrain modifier checks to those
1497         permitted by gtk_accelerator_get_default_mod_mask().
1498         got rid of gtk_window_get_default_accel_group().
1499
1500         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1501         activatable widgets either by focussing or a warning.
1502         added a signal accumulator to ::activate_mnemonic which stops the
1503         emission once a handler returned TRUE.
1504
1505 2001-03-22  Havoc Pennington  <hp@pobox.com>
1506
1507         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1508         the stock item label
1509
1510         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1511
1512         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1513
1514         * demos/gtk-demo/*.c: Add mnemonics all over the place
1515
1516         * gtk/gtklabel.h: mark parse_uline deprecated
1517
1518 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1519
1520         * gtk/gtkitemfactory.[ch]:
1521         Add support for stock and normal imagemenuitems.
1522         
1523         * gtk/testgtk.c:
1524         Add some tests for mnemonics, stock toolbars, stock
1525         and image menuitems in itemfactory and gdk_window_scroll.
1526
1527 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1528
1529         * gtk/gtkbutton.[ch]:
1530         * gtk/gtkdialog.c:
1531         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1532         removed accel_group argument. Renamed gtk_button_new_accel() to
1533         gtk_button_new_with_mnemonic() and removed accel_group argument.
1534
1535         * gtk/gtkcheckbutton.[ch]:
1536         New function gtk_check_button_new_with_mnemonic().
1537
1538         * gtk/gtkentry.c:
1539         Override activate_mnemonic and just grab focus.
1540
1541         * gtk/gtkitemfactory.c:
1542         Don't add menu uline accel group, instead use mnemonics support.
1543
1544         * gtk/gtklabel.[ch]:
1545         New support for mnemonics.
1546
1547         * gtk/gtkmarshal.list:
1548         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1549
1550         * gtk/gtkmenu.[c]:
1551         * gtkmenushell.c:
1552         Use mnemonics instead of accel groups for uline
1553         support in menu items.
1554         Removed gtk_menu_get_uline_accel_group() and
1555         gtk_menu_ensure_uline_accel_group().
1556
1557         * gtk/gtkmenuitem.c:
1558         Override activate_mnemonic to handle switching between
1559         menu items if there are collisions.
1560         
1561         * gtk/gtknotebook.c:
1562         Connect to activate_mnemonic on the tab_label, so that
1563         activating it switches to that notebook page.
1564
1565         * gtk/gtkwidget.[ch]:
1566         Add activate_mnemonic signal. New function
1567         gtk_widget_activate_mnemonic() to emit it.
1568         Default implementation does activate/grab_focus.
1569
1570         * gtk/gtkwindow.[ch]:
1571         Add support for mnemonics in windows.
1572         New functions:
1573         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1574         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1575
1576         * gtk/testgtk.c:
1577         Update to function name changes.
1578         
1579 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1580
1581         * gtk/gtkimagemenuitem.[c]:
1582         Add gtk_image_menu_item_new_from_stock()
1583
1584 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1585
1586         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1587         Fix buglet in meeting.
1588
1589 2001-03-19  Havoc Pennington  <hp@redhat.com>
1590
1591         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1592         add a bunch of accessor functions. This is because we have
1593         reasonable expectations of extending what fields it contains in
1594         the future.
1595
1596         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1597         changes
1598
1599         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1600         GtkIconSource   
1601
1602 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1603
1604         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1605         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1606
1607         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1608           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1609           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1610           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1611         Change float to double everywhere with the exception of 0<->1.0 alignment
1612         and GtkCurve.
1613
1614 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1615
1616         * gdk/win32/gdkdrawable-win32.c
1617         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1618         output.
1619
1620         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1621         gdkwin32.h.
1622
1623 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1624
1625         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1626         print_event_state, print_event): Use preprocessor macro to make
1627         code more compact. Print also GDK_WINDOW_STATE events.
1628         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1629         
1630         * gtk/gtk.def
1631         * gtk/makefile.mingw.in: Update.
1632
1633         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1634         to catch also Cygwin.
1635
1636 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1637
1638         * gtk/gtkspinbutton.[hc]: added rc-style argument
1639         GtkSpinButton::shadow_type.
1640         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1641         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1642         rc-style settings.
1643
1644         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1645
1646         * gtk/gtkwidget.c: quark cleanups.
1647
1648         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1649         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1650         to create_rc_style() (we don't do cloning in standard OO sense).
1651         added per rc style properties.
1652         
1653         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1654         property values and for caching those. some cleanups.
1655         
1656         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1657         
1658         * gtk/gtksettings.[hc]: new file for global rc-file properties
1659         (at least currently, should get extended to support X properties
1660         and other communication mechanisms).
1661         
1662         * gtk/gtkwidget.[hc]: added style property support:
1663         (gtk_widget_class_install_style_property_parser): install style
1664         property pspec with parser function for rc-file values other
1665         than LONG, DOUBLE or STRING.
1666         (gtk_widget_class_install_style_property): same as above without
1667         parser (parsers are going to be needed quite infrequently).
1668         (gtk_widget_style_get_property): retrive style property value.
1669         (gtk_widget_style_get_valist): same as above with varargs support,
1670         has NOCOPY semantics.
1671         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1672
1673 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1674
1675         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1676         "row_activated" signal.
1677
1678         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1679         stupidity.  Lets actually pass in the row with this signal...
1680
1681 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1682
1683         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1684
1685         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1686
1687         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1688         everything into the ::destroy function, and freed a lot more.
1689
1690 2001-03-16  Havoc Pennington  <hp@redhat.com>
1691
1692         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1693         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1694         are now allowed.
1695
1696 2001-03-16  Havoc Pennington  <hp@redhat.com>
1697
1698         * Applied patch from Nils Barth (bug # 51041) to 
1699         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1700         in various places.
1701
1702 2001-03-15  Havoc Pennington  <hp@redhat.com>
1703         
1704         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1705         for properties to set on the tag.
1706
1707         * gtk/testtext.c: fixups to reflect create_tag change
1708         
1709         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1710         background/foreground stipple are objects, not boxed.
1711
1712         * demos/gtk-demo/textview.c: intellihancing
1713
1714 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1715
1716         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1717         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1718
1719 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1720
1721         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1722         Fix sign error with queued region translations.
1723
1724 2001-03-15  HideToshi Tajima  <tajima@happy>
1725
1726         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1727         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1728         * gtk/gtkentry.c (update_im_cursor_location): 
1729         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1730         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1731         set_cursor_pos to set_cursor_location in GtkInputContext class
1732
1733 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1734
1735         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1736         the location of the cell relative to its area.
1737         * gtk/gtkcell*: modified for above change
1738         * gtk/gtktreeview.c: modified for above change.
1739
1740 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1741
1742         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1743          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1744         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1745
1746 2001-03-14  Havoc Pennington  <hp@redhat.com>
1747
1748         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1749         
1750         * gtk/gtk.h: remove gtkdata.h
1751
1752         * gtk/Makefile.am: remove gtkdata
1753         
1754         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1755         not "disconnect" on the adjustments.
1756         
1757         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1758         GtkData
1759
1760         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1761         not GtkData
1762
1763         * configure.in: handle case where X render exists, but Pango lacks
1764         Xft support.
1765
1766 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1767
1768         * gtk/gtktoolbar.[ch]:
1769         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1770         to add stock items to toolbars.
1771
1772         * gtk/Makefile.am:
1773         Remove ../gdk/gdkim.h from gdk_headers.
1774
1775 2001-03-15  Sven Neumann  <sven@gimp.org>
1776
1777         * gdk/gdkim.h: removed
1778         
1779         * gdk/gdkprivate.h
1780         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1781
1782 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1783
1784         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1785         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1786         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1787         set_cursor_pos() virtual method
1788
1789         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1790         (gtk_im_context_xim_set_cursor_pos): add implementation for
1791         set_cursor_pos() method
1792
1793         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1794         position to input methods
1795
1796 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1797
1798         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1799         code a lot.
1800
1801         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1802         g_mem_chunk.
1803         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1804         (_gtk_tree_data_list_node_to_value): Fix to switch on
1805         G_TYPE_FUNDAMENTAL.
1806         (_gtk_tree_data_list_value_to_node): Fix to switch on
1807         G_TYPE_FUNDAMENTAL.
1808         (_gtk_tree_data_list_node_copy): Fix to switch on
1809         G_TYPE_FUNDAMENTAL.
1810
1811 2001-03-12  Havoc Pennington  <hp@redhat.com>
1812
1813         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1814         to convert to new property API. Also, change default_width and
1815         default_height get_property to return 0 as the flag value for
1816         "unset"; -1 is not a valid value for these fields.
1817
1818 2001-03-12  Havoc Pennington  <hp@redhat.com>
1819
1820         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1821         enum with registration for icon sizes, instead of strings.
1822
1823         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1824         gtkwidget.c: Fix to reflect GtkIconSize
1825         
1826 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1827
1828         Make GtkFB compile and link.
1829         
1830         * gdk/linux-fb/gdkdrawable-fb2.c:
1831         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1832         
1833         * gdk/linux-fb/gdkwindow-fb.c:
1834         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1835         Added gdk_window_shape_combine_region.
1836         Added assorted placeholders for unimplemented new GdkWindow API calls.
1837
1838 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1839
1840         * gtk/gtkfilesel.c:
1841         Add more test when converting filenames from/to utf-8.
1842         Don't allow entering text in the filename entry which isn't allowed in
1843         a filename. Just beep instead.
1844
1845 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1846
1847         * gtk/gtkclist.c:
1848         Scroll using gdk_window_scroll(). Don't wait for exposes.
1849         Move the column headers in an order that makes them flash less.
1850
1851 2001-03-10  Hans Breuer  <hans@breuer.org>
1852
1853         * gdk/gdk.def : updated
1854
1855         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1856         to offseting the clip_mask at the right place
1857
1858         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1859         for all the gdkClasses, especially not for the input_only case.
1860         Otherwise flickering wont be avoidable, because we don't get
1861         WM_ERASEBKGND message for these windows.
1862
1863         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1864         and fixed massive redraw problems apparently triggered by Alexanders 
1865         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1866         but it seems to work quite well :-)
1867
1868         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1869         prototype
1870
1871 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1872
1873         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1874         (gtk_list_store_set_cell): Fix a stupid typo.
1875
1876 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1877
1878         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1879         select_all not work if you're in SINGLE mode (it doesn't make that
1880         much sense, anyway.)
1881
1882         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1883         handle types more sanely.
1884         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1885         (_gtk_tree_data_list_node_copy): handle types more sanely.
1886
1887         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1888         GValue better. Converts the type as well.
1889
1890         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1891         GValue better. Converts the type as well.
1892
1893 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1894
1895         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1896         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1897         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1898         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1899
1900         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1901         gdk_im/gdk_ic.
1902
1903 2001-03-09  Hans Breuer  <hans@breuer.org>
1904
1905         * gdk/gdk.def : updated
1906
1907         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1908         for their palette
1909
1910         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1911         removing
1912
1913         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1914         removing and implemented Havoc's GdkWindow state functions; 
1915         stick/unstick only as no-op, cause I don't know how to emulate 
1916         on win32 ...
1917
1918         * gtk/gtk.def : updated
1919
1920         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1921
1922         * gtk/gtktypeutils.c : #include <string.h>
1923
1924         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1925
1926 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1927
1928         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1929         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1930         not a boxed.
1931
1932 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1933
1934         * docs/Changes-2.0.txt:
1935         Document expose event->region change and that gtk_widget_event
1936         doesn't allow passing expose events.
1937
1938         * gdk/gdkevents.h:
1939         Add region to expose event.
1940         
1941         * gdk/gdkevents.c:
1942         Handle event->region in gdk_event_copy() and gdk_event_free().
1943
1944         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1945         Generate expose_event->region when creating expose events.
1946
1947         * gdk/x11/gdkevents-x11.c:
1948         Generate expose events with regions when translating X events.
1949
1950         * gtk/gtkcontainer.[ch]:
1951         Default expose handler that propagates expose events to NO_WINDOW
1952         children. New function gtk_container_propagate_expose()
1953
1954         * gtk/gtkwidget.[ch]:
1955         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1956         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1957         expose events. New function gtk_widget_send_expose() to send expose
1958         events. New function gtk_widget_region_intersect() to calculate
1959         window/region intersections.
1960         
1961         * gtk/gtkmain.c (gtk_main_do_event):
1962         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1963         Use gtk_widget_send_expose() to send expose events.
1964         
1965         * gtk/gtkbin.c:
1966         * gtk/gtkbox.c:
1967         * gtk/gtkfixed.c:
1968         * gtk/gtkimagemenuitem.c:
1969         * gtk/gtklist.c:
1970         * gtk/gtkpacker.c:
1971         * gtk/gtktable.c:
1972         * gtk/gtktree.c:
1973         Remove expose handler, using the default container implementation
1974         instead.
1975         
1976         * gtk/gtkbutton.c:
1977         * gtk/gtkcheckbutton.c:
1978         * gtk/gtkeventbox.c:
1979         * gtk/gtkfixed.c:
1980         * gtk/gtkhandlebox.c:
1981         * gtk/gtklayout.c:
1982         * gtk/gtklistitem.c:
1983         * gtk/gtkmenu.c:
1984         * gtk/gtkmenubar.c:
1985         * gtk/gtkmenuitem.c:
1986         * gtk/gtknotebook.c:
1987         * gtk/gtkoptionmenu.c:
1988         * gtk/gtkpaned.c:
1989         * gtk/gtkscrolledwindow.c:
1990         * gtk/gtktogglebutton.c:
1991         * gtk/gtktoolbar.c:
1992         * gtk/gtktreeitem.c:
1993         * gtk/gtkviewport.c:
1994         Chain expose handler to parent class handler. Use
1995         gtk_container_propagate_expose() to propagate exposes.
1996
1997         * gtk/gtkclist.c (check_exposures):
1998         * gtk/gtktext.c (process_exposes):
1999         Use gtk_widget_send_expose instead of gtk_widget_event.
2000
2001 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
2002
2003         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
2004
2005 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
2006
2007         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
2008         unref the nodes.   Fixes bug #50058.
2009
2010         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
2011         "::ref_iter" to "::ref_node".
2012         (gtk_tree_model_unref_node): change "::unref_iter" to
2013         "::unref_node". Fixes bug #50064.
2014
2015 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
2016
2017         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
2018         support for invisible cells.
2019          (gtk_tree_view_bin_expose): ditto
2020
2021 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
2022
2023         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
2024         on gobjects.
2025
2026         * tests/testtreefocus.c (main): New test file.
2027
2028         * tests/testtreeview.c: update to latest glib changes.
2029
2030         * tests/testtreecolumns.c: update to latest glib changes.
2031
2032 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
2033
2034         * gtk/testgtk.c: re-enabled event watcher emission hooks.
2035
2036 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
2037
2038         * *.c: added accumulator data argument to g_signal_newc()
2039         functions.
2040
2041         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
2042         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
2043         * gtk/treestoretest.c (make_window):
2044         s/g_signal_connect/g_signal_connectc/.
2045
2046         * gtk/gtktextbuffer.c: completed signal arg fixups,
2047         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
2048
2049 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
2050
2051         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
2052         G_CONST_RETURN.
2053
2054         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
2055         ::hierarchy-changed signal when a widget changes
2056         from anchored to unanchored or vice versa.
2057         (anchored means 
2058          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
2059         Use a private flag to keep track of this efficiently.
2060
2061 2001-03-07  Havoc Pennington  <hp@redhat.com>
2062
2063         * gtk/testgtk.c (create_spins): uglify so that size request gets
2064         tested.
2065
2066         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
2067         request on values for upper/lower, completes #6152
2068
2069 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
2070
2071         * Makefile.am: Remove gtk-config-2.0 again.
2072         (Grrrr, pkg-config. And stops make loops.)
2073
2074 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
2075
2076         * gtk/gtksignal.[hc]: removed old emission hook API.
2077         
2078         * docs/Changes-2.0.txt: fixed sections.
2079         
2080         * gtk/gtktextbuffer.c: signal arg fixups.
2081
2082 2001-03-07  Havoc Pennington  <hp@redhat.com>
2083
2084         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
2085
2086         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
2087         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
2088         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
2089         validation and the redraw which is higher priority than the
2090         validation.
2091
2092 2001-03-07  Havoc Pennington  <hp@redhat.com>
2093
2094         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
2095         (gtk_entry_set_property): remove trailer
2096
2097         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
2098         (gtk_entry_get_width_chars): new functions, to set size request to 
2099         a given number of characters
2100
2101         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
2102
2103         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
2104         (gtk_dialog_get_has_separator): new function
2105         (run_delete_handler): fix to not emit "response" signal
2106         because we already did in the delete event handler installed
2107         at dialog creation time.
2108         
2109         * gtk/gtkdialog.h: add a has_separator property,
2110         add GTK_DIALOG_NO_SEPARATOR flag
2111
2112 2001-03-07  Havoc Pennington  <hp@redhat.com>
2113
2114         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
2115         off decorations for a window.
2116
2117         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
2118         changes
2119
2120         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
2121         to get location of PangoLayout inside the label, closes #51198
2122
2123         * gtk/testgtk.c (create_bbox): fix up button box usage
2124
2125         * gtk/testcalendar.c (create_calendar): fix up button box usage
2126
2127         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
2128
2129         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
2130
2131         * gtk/gtkhbbox.h: deprecations
2132
2133         * gtk/gtkvbbox.h: deprecations
2134
2135         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
2136         emulate deprecated gtk_button_box_get_spacing
2137
2138         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
2139         the "set global default" functions
2140         (struct _GtkButtonBox): remove "spacing" field, use the one from 
2141         GtkBox base class
2142
2143         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
2144
2145         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
2146         render the icon, return the missing image icon.
2147
2148         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
2149         image icon if the load fails.   
2150
2151         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
2152         when no image is found; should be the Netscape "missing image"
2153         icon eventually but for now is a random image
2154
2155         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
2156         role for the session manager
2157
2158         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
2159
2160         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
2161         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
2162
2163         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
2164
2165 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
2166
2167         * gtk/*.c: marshaller fixes.
2168         
2169         * gtk/gtkmarshal.list: extreme cleanup.
2170
2171         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
2172         param spec for now.
2173
2174         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
2175         where appliable.
2176
2177         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
2178         special cased autogenerated boxed types from gtktypebuiltins_ids.c
2179         which are not reference counted:
2180         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
2181         PangoFontDescription, GtkTreeIter and GtkTreePath.
2182
2183 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
2184
2185         * gtk/gtktreeselection.h: 
2186         * gtk/gtktreemodel.c:
2187         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
2188         file should be included directly, and gobject/gmarshal.h
2189         as well as gtk/gtkmarshal.h even can't be included directly.
2190
2191         * Makefile.am: grr, install gtk-config-2.0.
2192
2193         * gtk/testgtk.c:
2194         * gtk/simple.c:
2195         * gtk/gtkmenu.c:
2196         * gtk/gtkitemfactory.c: use g_object_connect() instead of
2197         passing "*signal*::*" args to gtk_widget_set().
2198         
2199         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
2200         
2201         * gtk/*.c: removed trailer arg from property setters and getters.
2202         macro fixups.
2203
2204 2001-03-07  Alexander Larsson  <alexl@redhat.com>
2205
2206         * gtk/gtklabel.c (set_markup): Removed warning
2207
2208 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
2209
2210         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
2211         field to allow you to hide cell renderers.
2212
2213         * gtk/gtkcellrenderer.c: Add support for invisible cells.
2214
2215         * gtk/gtktreeview.c: Add support for invisible cells.
2216
2217 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
2218
2219         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
2220         Add "clicked" signal back to columns.
2221
2222         * ChangeLog: remove conflict markers.
2223
2224 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
2225
2226         * gtk/gtkbutton.c: Add animation of activation by, on 
2227         activate, pressing the button, and adding a timeout that 
2228         releases the button after 250ms or on key release and
2229         emits ::clicked. (#51501)
2230
2231         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
2232         action area, we connect to ::clicked instead of ::activate
2233         so the dialog stays up through the animation.
2234
2235 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
2236
2237         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
2238         check the ignore_enter flag for the menu shell that
2239         the item is actually a child of, not for attached
2240         submenus. (#51536)
2241
2242 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2243
2244         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2245         special key-press grab handling for widgets within
2246         GtkWindows. Otherwise, fall through to normal case.
2247
2248         This prevents key events being sent twice to GtkInvisible
2249         widgets, which can cause all sorts of mischief.
2250
2251 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2252
2253         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2254         widget is in effect, give the grab widget a first
2255         crack at KEY_PRESS/RELEASE events. (#424)
2256
2257 2001-03-06  James Henstridge  <james@daa.com.au>
2258
2259         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
2260         offset for the window_state_event to point at window_state_event
2261         rather than no_expose_event.
2262
2263 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
2264
2265         * gtk/gtkimmodule.h: fix busted /* comment */
2266
2267 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
2268
2269         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
2270         object properties.
2271
2272 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
2273
2274         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
2275         add object properties.
2276
2277         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
2278         to add object properties.
2279
2280         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
2281         object properties.
2282
2283         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
2284         add object properties.
2285
2286         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
2287         object properties.
2288
2289 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
2290
2291         * gtk/gtktreemodel.c: renamed "child_toggled" to
2292         "has_child_toggled".
2293
2294         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
2295         handle new signal name.
2296
2297         * gtk/gtktreestore.c: Updated to handle new signal name.
2298         * gtk/gtklisttore.c: Updated to handle new signal name.
2299         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
2300
2301 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2302
2303         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
2304         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
2305
2306 2001-03-05  Michael Natterer  <mitch@gimp.org>
2307
2308         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
2309         pixbuf-engine coincidentially also failed to make one of it's
2310         parent_class pointers static, causing overwriting of GtkLabel's
2311         parent_class pointer in pixbuf_style_class_init().
2312         (Will commit the fix to the pixbuf-engine too).
2313
2314 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2315
2316         * gdk/gdkwindow.h:
2317         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
2318         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
2319         gdk_window_set_icon_list for net wmspec functionality.
2320
2321         * gdk/x11/gdkwindow-x11.c:
2322         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
2323         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
2324         gdk_window_set_icon_list.
2325         Added gdk_wmspec_change_state helper function and used it in the code.
2326         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
2327
2328         * gtk/gtkdialog.c (gtk_dialog_init):
2329         Set GDK_WINDOW_TYPE_HINT_DIALOG.
2330
2331         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
2332         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
2333
2334         * gtk/gtkwindow.c:
2335         new function gtk_window_set_type_hint.
2336         On realize, set type hint and modal hint.
2337
2338         * gtk/gtkwindow.h:
2339         Added type_hint field and gtk_window_set_type_hint.
2340
2341 2001-03-05  Alexander Larsson  <alexl@redhat.com>
2342
2343         * gtk/gtklabel.[ch]:
2344         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
2345         New function gtk_label_get_accel_keyval () to get the underline accelerator
2346         of the label. Setting the label pattern overrides other attributes.
2347
2348 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
2349
2350         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
2351         Added missing initializers to gtk_rc_style_init().
2352
2353 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
2354
2355         * gtk/gtktextview.c: fixed bug #51097 about setting 
2356         gtk_text_view_set_border_window_size() if the widget is 
2357         already realized.
2358
2359 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
2360
2361         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
2362
2363         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
2364         comment. Won't do to have duplicated doc comments between
2365         the platform subdirs.
2366
2367 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
2368
2369         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
2370           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
2371
2372         Detectable auto-repeat - make a repeating key generate
2373         press/press/press/release instead of press/release pairs.
2374
2375         If we have Xkb and XkbSetDectableAutoRepeat supports
2376         that, we do it that way. Otherwise, when we get
2377         a release event, we check ahead with XPending to see
2378         if the next key is a KeyPress with the same keycode
2379         and timestamp. (Not 100% reliable, but pretty close.)
2380           
2381 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
2382         
2383         * gtk/gtkmain.c (gtk_propagate_event): Only do special
2384         special key-press grab handling for widgets within
2385         GtkWindows. Otherwise, fall through to normal case.
2386  
2387         This prevents key events being sent twice to GtkInvisible
2388         widgets, which can cause all sorts of mischief.
2389  
2390 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2391  
2392         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2393         widget is in effect, give the grab widget a first
2394         crack at KEY_PRESS/RELEASE events. (#424)
2395  
2396 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2397
2398         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2399         to extend the selection. (Roughly based on patch
2400         from Jay Cox, #50939)
2401
2402         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2403         to properly handle previous GDK_BUTTON_PRESS. 
2404         (Patch from Jay Cox, #50938)
2405
2406         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2407         '\0' back along with the deleted text. (#51148)
2408
2409 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2410
2411         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2412         the group when extracting it from the X keyboard event.
2413
2414         * modules/input/Makefile.am modules/input/imipa.c: 
2415         Simple module for entering IPA. (Do we need a 
2416         gtk-stupid-input-tricks CVS module?)
2417
2418 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2419
2420         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2421         const.
2422
2423         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2424
2425         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2426         is no focus widget for the dialog currently, grab the focus as well
2427         as the default.
2428
2429         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2430         the action area's children to iterate through, not the
2431         dialog's children.
2432
2433 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2434
2435         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2436         Add plug-socket tests. (Won't work worth a darn until I commit
2437         the rest of the plug-socket changes, but no reason these
2438         can't go into CVS now.)
2439
2440 2001-03-02  Havoc Pennington  <hp@redhat.com>
2441
2442         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2443         _gdk_region_get_xrectangles()
2444
2445         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2446
2447         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2448
2449         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2450         function, contributed by Ron Steinke    
2451
2452         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2453         gdk_net_wm_supports
2454
2455         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2456         New function, contributed by Ron Steinke
2457
2458         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2459         used to line up the text in the entry when using the entry for
2460         editable sheet cell hacks
2461
2462         * gtk/testgtk.c (create_entry): test the activate_default setting
2463         on GtkEntry
2464
2465         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2466         cause the entry to activate the default button for a dialog when 
2467         activated
2468         (gtk_entry_get_activates_default): new function
2469
2470 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2471
2472         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2473         Hwang to move call to sync_selection() up a few lines
2474         to before the row list is modified, to fix crash when
2475         removing rows in the undo_selection list.
2476
2477         (Test case provided by Daniel Elstner:
2478
2479         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2480
2481 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2482
2483         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2484         of tree->root_tree in parent_set rather than _map(), 
2485         fixing #50892 in a bit better manner.
2486
2487 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2488
2489         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2490
2491 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2492
2493         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2494         gtk_default_draw_shadow.
2495
2496 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2497
2498         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2499         warning, make warnings more verbose, treat a error
2500         in shmat as permanent, and don't try again.
2501         (#51163, Ed Randall.)
2502
2503 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2504
2505         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2506         delay for the first click before starting to scroll.
2507         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2508
2509         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2510         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2511
2512 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2513
2514         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2515         cleanup to remove some references to unused
2516         ->xoffset, ->yoffset.
2517
2518 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2519
2520         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2521         mask. (#51039, fix from Martin Maierhofer)
2522
2523 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2524
2525         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2526         for unshifted + and shifted = for non-us keyboards.
2527         Make <Control>+ and <Control>- work as well as 
2528         <Control>KP_Plus, <Control>KP_Minus for recursive
2529         open/close.  (#2682, René Seindal)
2530
2531 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2532
2533         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2534         the active menu item before deactivating the menu,
2535         so gtk_menu_popdown doesn't change the history. (#50964)
2536         
2537 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2538
2539         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2540         draw lines with text_gc rather than black_gc.
2541         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2542
2543 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2544
2545         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2546         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2547         less interrelated then it was, but it still requires the
2548         GtkTreeView to map it.
2549
2550         * test/testtreecolumn.c: Now I can add a column to one view,
2551         remove it, add it to the another view, remove it, then re-add it
2552         to the first.  Nifty.
2553
2554 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2555
2556         * docs/tutorial/gtk-tut.sgml: Minor corrections
2557
2558 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2559
2560         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2561         GtkRowReference.
2562
2563 2001-02-28  Havoc Pennington  <hp@redhat.com>
2564
2565         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2566         draw_default
2567         (gtk_widget_draw_focus): remove this function; we could instead
2568         make it just gtk_widget_draw(), but in most cases I think the
2569         result would be broken user code, so think it's better to have
2570         that code not compile and get fixed
2571         (gtk_widget_draw_default): ditto
2572
2573         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2574         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2575         
2576         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2577         widgets lose/get the default, instead of calling draw_default
2578         
2579         * docs/Changes-2.0.txt: note about all this
2580
2581         Then fixed every widget in GTK, I won't list all the filenames.
2582
2583 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2584
2585         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2586         _gtk_tree_row_reference_deleted.
2587         (inserted_callback): Proxy out to
2588         _gtk_tree_row_reference_inserted.
2589         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2590         get around signal emission ordering problem.
2591
2592         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2593         fix to work with SINGLE 
2594         (_gtk_tree_selection_internal_select_node): Major sanitization on
2595         selections.  SINGLE now seems to work.
2596
2597         * tests/Makefile.am: add testtreecolumn.c:
2598
2599         * tests/testtreecolumn.c: New test.  Mostly points out selection
2600         bugs currently, but will test columns later.
2601
2602         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2603         selection bug.  I hate touching this code -- it's scary.
2604
2605 2001-02-26  Havoc Pennington  <hp@redhat.com>
2606
2607         * gtk/testgtk.c: test the window state stuff
2608
2609         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2610         window come to the user's attention as if it were just created
2611         (gtk_window_iconify): new function
2612         (gtk_window_deiconify): new function
2613         (gtk_window_stick): new function
2614         (gtk_window_unstick): new function
2615         (gtk_window_maximize): new function
2616         (gtk_window_unmaximize): new function
2617
2618         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2619
2620         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2621
2622         * gdk/x11/gdkevents-x11.c: create window state events when
2623         appropriate
2624         (gdk_wmspec_supported): new function
2625
2626         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2627         iconification before showing the window
2628         (gdk_window_deiconify): new function
2629         (gdk_window_stick): new function
2630         (gdk_window_unstick): new function
2631         (gdk_window_maximize): new function
2632         (gdk_window_unmaximize): new function
2633
2634         * gdk/gdkwindow.c: store the window state in the window; 
2635         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2636         window->mapped.
2637         (gdk_window_get_state): return the current window state
2638
2639         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2640         (gdk_event_get_state): handle GDK_WINDOW_STATE
2641         (gdk_synthesize_window_state): function to create the window state
2642         events
2643
2644         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2645         event, for changes to "window state" such as maximized, sticky, 
2646         etc.
2647         
2648         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2649         focuses a window
2650
2651         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2652         finds out if we support a given WM spec hint
2653
2654 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2655
2656         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2657
2658 2001-02-25  Hans Breuer  <hans@breuer.org>
2659
2660         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2661         cause we want to loose those prototypes only in the latter case
2662
2663         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2664         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2665         impl member variable instead
2666
2667         * gtk/gtk.def : updated
2668
2669         * gtk/gtklist.c : 
2670         * gtk/gtkmenus.c : include <string.h> for memset ()
2671
2672         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2673         for everthing built here, but for gtk-x.x.dll only. This solves
2674         problem of indifferent gtk type definitions
2675
2676 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2677
2678         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2679
2680 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2681
2682         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2683         column that is exposed.
2684
2685         (_gtk_tree_view_update_size): Changed name from set_size, and
2686         changed function to do more work, and not force people calling it
2687         to figure out the size.  Simplifies a lot of code elsewhere.
2688
2689 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2690
2691         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2692         return solid masks for xpms that have no transparent color.
2693         This makes the ..._create_from_xpm... API backwards
2694         compatible.
2695
2696 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2697
2698         * README.win32: Update. Mention the gtk-1-3-win32-production
2699         branch.
2700
2701         * gdk/win32/bdfcursor.c: New file. A program that generates
2702         xcursors.h. Thanks to Stefan Ondrejicka.
2703
2704         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2705         compact format.
2706
2707         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2708
2709         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2710         function, uses xcursors.h.
2711         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2712         cursor from inline data instead of using LoadCursor() to generate
2713         it from a resource.
2714
2715         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2716         event, must check the Windows message for mouse button state, as
2717         the GDK event state might not have been built if it is
2718         undelivered. Remove one goto.
2719
2720         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2721         SetCursor() if the current cursor as returned by GetCursor() is
2722         the window's previous cursor. The ChildWindowFromPoint() test
2723         apparently didn't work correctly.
2724
2725         * gdk/win32/rc/*.cur: Remove.
2726
2727         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2728
2729         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2730
2731         * gtk/makefile.{mingw,msc}.in: Updates.
2732
2733 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2734
2735         * gtk/gtktreemodel.h: add functions for signal emission.
2736
2737         * gtk/gtktreestore.c: move to use above functions instead of
2738         g_signal_emit.
2739
2740         * gtk/gtkliststore.c: ditto
2741
2742 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2743
2744         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2745         GObject instead of GtkObject.
2746
2747         * gtk/gtkliststore.c: ditto.
2748
2749         * gtk/gtktreemodelsort.c: ditto.
2750
2751         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2752         GtkTreeModelIface, instead of in each model.
2753
2754 2001-02-21  Havoc Pennington  <hp@redhat.com>
2755
2756         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2757         unbreak this function
2758
2759         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2760         properties
2761
2762         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2763         properties
2764
2765         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2766         properties
2767
2768         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2769         mean unset the max length
2770
2771 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2772
2773         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2774         Changed name to be set_cell_data_func to make it clear what
2775         the functino does.  Close bug #51069.
2776
2777 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2778
2779         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2780         have memory actually freed.  Keeps box running longer.
2781
2782 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2783         
2784         * gtk/gtkseparatormenuitem.[ch]:
2785         Added new menu separator item. The drawing and size handling
2786         is still done in GtkMenuItem, but the API is a bit more sane.
2787         
2788         * gtk/Makefile.am:
2789         Add gtkseparatormenuitem.[ch].
2790
2791         * gtk/gtk.h:
2792         Add gtkseparatormenuitem.h.
2793         
2794         * gtk/gtkentry.c:
2795         * gtk/gtkmenufactory.c:
2796         * gtk/gtktextview.c:
2797         Use the new API for menu separators.
2798         
2799         * demos/gtk-demo/menus.c (create_menu):
2800         Add some GtkSeparatorMenuItem demo code.
2801
2802 2001-02-20  Havoc Pennington  <hp@redhat.com>
2803
2804         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2805         Lee Mallabone
2806
2807         * gtk/gtkarrow.c: Convert to new property API, patch from 
2808         Lee Mallabone
2809
2810 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2811
2812         * tests/testtreeview.c (toggled_callback): fix to reflect change
2813         in GtkTreeModelStore.
2814
2815 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2816
2817         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2818         function to create an icon set from a pixbuf.
2819
2820 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2821
2822         * gtk/gtkcellrenderertext.[ch]:
2823         Add a "markup" property.
2824
2825         * gtk/treestoretest.c:
2826         Use the markup property, remove some leftover stuff from
2827         GtkTreeModelMapping.
2828
2829 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2830
2831         * gtk/gtklabel.c (gtk_label_set_selectable):
2832         Queue a redraw if the selectable setting was changed.
2833
2834 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2835
2836         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2837         Actually copy the whole gc, not just the public parts.
2838         
2839         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2840         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2841         labels.
2842
2843 2001-02-19  Havoc Pennington  <hp@pobox.com>
2844
2845         * gdk/gdkwindow.c: docs
2846
2847         * gdk/gdkrgb.c: docs
2848
2849         * gdk/gdkregion-generic.c: docs
2850
2851         * gdk/gdkgc.c (gdk_gc_set_values): docs
2852
2853         * gdk/gdkdraw.c: docs
2854
2855         * gdk/gdkdrawable.h: deprecate drawable get/set data
2856
2857 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2858
2859         * demos/gtk-demo/dialog.c: Add simple new demo.
2860
2861 2001-02-19  Havoc Pennington  <hp@redhat.com>
2862
2863         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2864         insert_child_anchor signal, bug #50245
2865
2866         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2867         from create_child_anchor, so the anchor is passed in
2868
2869         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2870         (_gtk_widget_segment_new): have the child anchor object passed in, 
2871         instead of creating it.
2872
2873         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2874         to gtk_text_buffer_get_modified
2875
2876 2001-02-19  Havoc Pennington  <hp@redhat.com>
2877
2878         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2879         changed GLib without fixing GTK
2880
2881         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2882         functions to have an underscore in front. Most of them should 
2883         probably just go away, but for starters don't export them.
2884         Bug #50482
2885
2886 2001-02-19  Havoc Pennington  <hp@redhat.com>
2887
2888         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2889         excluded by default
2890
2891         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2892         clean up the old code a bit
2893
2894         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2895         inconsistent state
2896
2897         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2898         draw inconsistent state
2899
2900         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2901         (create_menu): add inconsistent test
2902
2903         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2904         new function
2905         (gtk_check_menu_item_get_inconsistent): new function
2906         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2907         state (using etched in for now)
2908
2909         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2910         draw inconsistent state
2911
2912         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2913         function, used when the user has selected a range of stuff in
2914         different states
2915         (gtk_toggle_button_get_inconsistent): accessor for that
2916         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2917         don't know what else to do)
2918
2919 2001-02-19  Hans Breuer <hans@breuer.org>
2920
2921         * gtk/gtk.def : updated exported symbols
2922
2923         * gtk/makefile.msc.in : updated
2924
2925         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2926         a colormap, when invoked from testgtk::entry. I'm not sure where
2927         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2928         avoids immediate crashing ...
2929
2930         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2931         any objections ?
2932
2933         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2934         0 parameter. At least msvc doesn't like macros with var args. 
2935         I simply removed the extra 0, was it a feature or a typo ?
2936
2937         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2938         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2939         because the value assignment to the internal struct wasn't working.
2940         I'm not absolutely sure. The problem could have been resolved by
2941         changing the "func" declartion in the struct, but was the pointer
2942         to the function pointer intended ?
2943
2944         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2945
2946         * gdk/gdk.def : updated exported symbols
2947
2948         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2949         only use SetDIBitsToDevice if there is a palette at the drawable
2950         and the image is GDK_VISUAL_PSEUDO_COLOR
2951
2952         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2953
2954         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2955
2956         * gdk/*/makefile.msc : updated
2957
2958 2001-02-19  Havoc Pennington  <hp@redhat.com>
2959
2960         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2961         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2962
2963         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2964         (gdk_key_repeat_restore): nuke
2965
2966         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2967         (gdk_init_check): no atexit func
2968
2969         * gdk/gdkrgb.h: mark some stuff deprecated
2970
2971         * gdk/gdkcolor.h: mark some stuff deprecated
2972         
2973         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2974
2975         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2976
2977 2001-02-16  Havoc Pennington  <hp@redhat.com>
2978
2979         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2980         scroll steps.
2981
2982         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2983         steps, and add Ctrl-arrow shortcuts for paging visually as with
2984         HScale, since Page Up and Page Down move logically.
2985
2986         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2987         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2988         
2989         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2990         steps
2991         (gtk_range_scroll): handle the visual steps
2992
2993         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2994         scroll steps
2995
2996         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2997         steps, not the logical ones.
2998
2999         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
3000         (scroll_vertical): handle up/down steps
3001
3002 2001-02-19 Alexander Larsson  <alexl@redhat.com>
3003
3004         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
3005         Copy data and free data with free().
3006
3007         * gdk-pixbuf/gdk-pixbuf.c:
3008         * gdk-pixbuf/io-jpeg.c:
3009         * gdk-pixbuf/io-png.c:
3010         Use g_try_malloc/g_free instead malloc/free.
3011         
3012         * gdk-pixbuf/test-gdk-pixbuf.c:
3013         Must... initialize... gobject...
3014         
3015         * gdk-pixbuf/pixops/timescale.c:
3016         * gtk/gtkcalendar.c:
3017         Use g_malloc instead of malloc.
3018         
3019 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
3020
3021         * gtk/testgtkrc:
3022         Comment out property assignments, these don't work yet.
3023
3024 2001-02-17  Havoc Pennington  <hp@pobox.com>
3025
3026         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
3027         bit.
3028
3029 2001-02-17  Havoc Pennington  <hp@pobox.com>
3030
3031         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
3032         shadowed variables that had broken size request in some cases,
3033         leading to bogus tooltips (#50996)
3034
3035 2001-02-06  Jon K Hellan  <hellan@acm.org>
3036
3037         Implement fast browsing of tooltips, bug #50619
3038         
3039         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
3040         and last_popdown
3041         
3042         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
3043         use_sticky_delay and last_popdown.
3044         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
3045         time of popdown.
3046         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
3047         is NULL.
3048         (gtk_tooltips_recently_shown): New static function.  Return true
3049         if < sticky_delay has elapsed since last popdown.
3050         (gtk_tooltips_event_handler): Display window after sticky_delay
3051         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
3052         since last popdown.
3053         
3054 2001-02-17  Havoc Pennington  <hp@pobox.com>
3055
3056         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
3057         instead of (). #6394
3058
3059         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
3060         G_CONST_RETURN, make it return by reference, #50473
3061         
3062 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
3063
3064         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
3065         generated ENTER_NOTIFY event with 0, otherwise not explicitely
3066         setup fields contain garbage (e.g. subwindow, breaking
3067         gdk_drawable_ref() upon event copy).
3068         (gtk_menu_stop_navigating_submenu_cb): same here.
3069
3070         * gtk/gtklist.c (gtk_list_vertical_timeout): 
3071         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
3072         * gtk/gtkclist.c (vertical_timeout): 
3073         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
3074         default-zero-intialization for unions to memset(,0,), as unions are
3075         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
3076         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
3077
3078         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
3079         g_closure_sink() warning.
3080
3081         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
3082         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
3083         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
3084         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
3085         
3086 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
3087
3088         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
3089         gtk_*_store_get, and moved to GtkTreeModel.
3090
3091         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
3092
3093         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
3094
3095         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
3096
3097         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
3098         set the func.
3099
3100         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3101         freeze/thaw notify between setting all the properties for a cell.
3102
3103         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
3104
3105 2001-02-15  Havoc Pennington  <hp@redhat.com>
3106
3107         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
3108         the X coordinates so they're with respect to the line, rather than 
3109         with respect to the layout.
3110
3111         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
3112         Mallabone
3113
3114         * gtk/testgtk.c (create_range_controls): add vscale tests, 
3115         and inverted test
3116
3117         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
3118         #50806
3119
3120         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
3121
3122         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
3123         gtk_text_iter_is_end
3124
3125         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
3126         rename gtk_text_buffer_get_end_iter
3127
3128         * gtk/testgtk.c (create_labels): Add test for selectable
3129
3130         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
3131         the selection stuff. This code is kind of broken since it doesn't 
3132         use the theme engine.
3133
3134         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
3135         fix infinite loop and y offset problem
3136         (gdk_draw_layout_line_with_colors): fix foreground color handling
3137
3138         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
3139         that makes the label selectable.
3140         
3141         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
3142         layout when the style is set, since fonts etc. could have changed.      
3143
3144 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
3145
3146         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
3147
3148         * gtk/gtktreemodelsimple.[ch]: removed.
3149
3150 2001-02-16  Alexander Larsson  <alexl@redhat.com>
3151
3152         * gtk/gtktreemodelmapping.[ch]:
3153         New files. Implement GtkTreeModelMapping.
3154         
3155         * gtk/Makefile.am:
3156         Add gtktreemodelmapping.[ch].
3157         
3158         * gtk/gtk.h:
3159         Add gtktreemodelmapping.h
3160
3161         * gtk/treestoretest.c:
3162         Test the GtkTreeModelMapping
3163
3164 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
3165
3166         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
3167         have a demo, we might as well pass in real values.  Thanks to
3168         clahey for pointing this out.
3169
3170 2001-02-14  Havoc Pennington  <hp@pobox.com>
3171
3172         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
3173         "static" to a private function
3174         (gtk_image_menu_item_class_init): remove destroy handler,
3175         add "image" object property
3176
3177 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
3178
3179         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
3180         Add a shortcut if the window and the current clip_region doesn't
3181         overlap. This is needed when there are a lot of windows in a
3182         window. The layout test in testgtk is a good test.
3183
3184         * gdk/linux-fb/gdkwindow-fb.c:
3185         Whitespace fix.
3186
3187 2001-02-13  Sven Neumann  <sven@convergence.de>
3188
3189         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
3190
3191 2001-02-13  Alexander Larsson  <alexl@redhat.com>
3192
3193         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
3194         Don't reference last_cursor if it is null. Fixes crash when rotating
3195         the screen before having moved the mouse.
3196
3197         * gdk/linux-fb/gdkcc-fb.c: Zapp!
3198
3199         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
3200
3201         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
3202         when using 90 or 270 degrees rotation.
3203
3204 2001-02-12  Havoc Pennington  <hp@pobox.com>
3205
3206         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
3207         it always set the foreground, even if we were only using
3208         a stipple.
3209         (gdk_draw_layout_line_with_colors): new function, allow
3210         override colors
3211         (gdk_draw_layout_with_colors): new function, allow override
3212         colors
3213         (gdk_pango_layout_line_get_clip_region): function to get the clip
3214         region for a logical text range
3215         (gdk_pango_layout_get_clip_region): get the clip region for a
3216         logical text range
3217
3218         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
3219         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
3220         the right number of arguments.
3221
3222         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
3223         enhance the function to check that node data corresponds to a 
3224         view still belonging to the tree.
3225
3226         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
3227         GtkTreePath
3228         (gtk_tree_view_inserted): ditto
3229         (gtk_tree_view_child_toggled): ditto
3230
3231         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
3232         simplify this code.
3233
3234         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
3235         a PangoAttrList
3236
3237         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
3238
3239         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
3240
3241         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
3242         size in the size request 
3243         (gtk_menu_bar_size_allocate): consider toggle size here
3244
3245         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
3246         that displays a widget in the toggle slot
3247
3248         * gtk/testgtk.c: test GtkImageMenuItem
3249
3250         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
3251         
3252         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
3253         request and allocation
3254
3255         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
3256
3257         * gtk/gtkcheckmenuitem.c
3258         (gtk_check_menu_item_toggle_size_request): ditto
3259         
3260 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
3261
3262         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
3263         reference.
3264
3265         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
3266         and refuse to initialize GTK+ if they fail.
3267
3268 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
3269
3270         * configure.in: Add check for gtk-doc version.
3271
3272 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
3273
3274         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
3275         where the xpad/ypad was only being used on one side!
3276
3277 2001-02-11  Tor Lillqvist  <tml@iki.fi>
3278
3279         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
3280         function, copied from X11 version.
3281
3282         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
3283         DestroyCursor failures. The reason for the problem (despite the
3284         inconsistent messages from GetLastError()) was that
3285         DestroyCursor() cannot be called while a cursor is set in a
3286         window. Set the new cursor first and then destroy the old one.
3287         Thanks to jpe@archaeopteryx.com.
3288
3289         * gdk/win32/gdkcc-win32.c: Remove.
3290
3291         * gdk/win32/Makefile.am: Remove from here, too.
3292         
3293         * gdk/gdk.def
3294         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
3295
3296         * gtk/gtk.def
3297         * gtk/makefile.mingw.in: Updates.
3298
3299 2001-02-08  Havoc Pennington  <hp@redhat.com>
3300
3301         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
3302         add a widget to a bin that already has a child.
3303
3304         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
3305
3306         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
3307         
3308         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
3309
3310         * gdk/gdk.h: remove gdkcc.h
3311
3312         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
3313
3314         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
3315         GdkPixbuf, since the previous implementation was GdkColorContext
3316         dependent.
3317
3318         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
3319         
3320 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
3321
3322         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
3323         a sane value!
3324
3325 2001-02-08  Havoc Pennington  <hp@redhat.com>
3326
3327         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
3328         lighten them.
3329
3330 2001-02-08  Havoc Pennington  <hp@redhat.com>
3331
3332         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
3333         validation idle
3334
3335         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
3336         cell renderer
3337
3338         * demos/pixbuf-demo.c (timeout): remove deprecated
3339         gtk_widget_draw
3340
3341         * demos/testpixbuf-save.c (main): remove deprecated
3342         gtk_drawing_area_size
3343
3344         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
3345         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
3346         at the start of the allocation.
3347         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
3348         unsetup or NULL model.
3349
3350         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
3351         even/odd/sorted cells in the tree view.
3352
3353         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
3354         bugfixes
3355
3356         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
3357         backgrounds with draw_flat_box using different detail for even/odd
3358         rows.
3359
3360         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
3361         row, so we can draw the alternating colors thing
3362
3363         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
3364         property from a synonym property, notify for the synonym.
3365         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
3366         (gtk_text_tag_get_property): Always return the font, even if
3367         all its fields aren't set
3368
3369         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
3370         store the attr list; it leaves us with no way to change attributes
3371         in _render according to the render flags, and no way to implement
3372         get_property. Instead store all the specific text attributes. 
3373         Separate whether an attribute is enabled from its value. Sync all
3374         properties with GtkTextTag, make them all consistent, etc.
3375
3376         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
3377         renderers can highlight the sort row/column     
3378
3379         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
3380         accessor functions to get values; this has the side effect of
3381         showing up which accessor functions were missing. Added those.
3382
3383         * gtk/gtktreeviewcolumn.h: Replace set_justification with
3384         set_alignment, to be consistent with GtkLabel, GtkMisc
3385
3386         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
3387         arrow.
3388
3389         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3390
3391         * gtk/gtktreesortable.h: updates in here
3392
3393 2001-02-07  Sven Neumann  <sven@convergence.de>
3394
3395         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3396         pango dimensions after painting the background. We used to draw
3397         gigantic flat boxes here.
3398
3399 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3400
3401         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3402         error introduced with earlier commit) (pointed out by
3403         Ollie Lho)
3404
3405 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3406
3407         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3408         which are no longer necessary.
3409
3410 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3411
3412         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3413
3414 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3415
3416         * gdk/gdk.def
3417         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3418         Provide dummy implementations.
3419
3420 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3421
3422         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3423
3424         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3425         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3426         deprecated this function.
3427
3428         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3429         argument.
3430
3431 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3432
3433         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3434
3435 2001-02-03  Havoc Pennington  <hp@pobox.com>
3436
3437         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3438         Mikael Hermansson with patch from Mikael (if there was a toggle
3439         start one after the first character in the range, this function
3440         was broken). Bug #50380
3441
3442 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3443
3444         * configure.in: Remove confusing comment about X11.
3445
3446 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3447
3448         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3449         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3450         
3451 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3452
3453         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3454         it breaks things on BSD. If you want to compile GTK+ with
3455         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3456         when configuring, since GTK+ simply can't be "pure ANSI" 
3457         in the header files it uses. (#8170, Greg Hudson)
3458
3459 2001-02-02  Havoc Pennington  <hp@redhat.com>
3460
3461         * gtk/gtkwindow.c: docs
3462
3463         * gtk/gtkwidget.c: docs
3464         (gtk_widget_set_colormap): add a reference to the colormap
3465         (gtk_widget_get_default_colormap): add a reference to the colormap
3466
3467         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3468
3469         * gtk/gtktextiter.c: docs
3470
3471         * gtk/gtkmain.c (gtk_propagate_event): docs
3472
3473         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3474         (gtk_paned_set_position): docs
3475
3476         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3477         sort interface, no implementation yet.
3478
3479         * demos/testpixbuf.c (new_testrgb_window): replace
3480         gtk_drawing_area_size() with gtk_widget_set_usize()
3481
3482         * demos/testpixbuf-drawable.c (main): ditto
3483         
3484         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3485
3486         * gtk/gtktextbuffer.c: docs
3487
3488         * gtk/gtkstock.c: docs
3489
3490         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3491
3492         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3493
3494         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3495         
3496         * gtk/gtkimage.c: add some docs in here
3497         (gtk_image_size_request): change name of
3498         gtk_widget_render_stock_icon
3499         (gtk_image_get_icon_set): don't dup returned string
3500         (gtk_image_get_icon_set): don't dup returned string
3501
3502         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3503         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3504         and gtkiconfactory.h functions
3505
3506         * gtk/gtkiconfactory.c: add some docs in here
3507
3508         * gtk/gtkmain.c (gtk_get_default_language): document
3509         (gtk_get_current_event): document
3510         (gtk_get_current_event_state): document
3511         (gtk_get_event_widget): document
3512
3513         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3514
3515         * gtk/gtkcontainer.c: Add some documentation
3516         (gtk_container_add): give a more explanatory warning on adding an
3517         already-parented widget, this is kind of a FAQ and also a common
3518         typo that's easier to debug with a nice warning 
3519
3520         * gtk/gtkcellrenderertoggle.c
3521         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3522         adding this, it's useless
3523         (gtk_cell_renderer_toggle_set_active): remove
3524         (gtk_cell_renderer_toggle_get_radio): add
3525
3526         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3527         the NULL cell renderer, that doesn't make any sense to me. 
3528
3529         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3530         demo code should never use deprecated features.
3531
3532         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3533         code should never use deprecated features.
3534
3535         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3536         gtk_widget_queue_clear_area deprecated
3537
3538         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3539         deprecated
3540
3541         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3542
3543         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3544         a GdkImage deprecated, replaced by new consistently-named
3545         functions       
3546
3547         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3548
3549         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3550
3551         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3552         deprecated
3553
3554         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3555         so it won't appear in docs and confuse people.
3556
3557         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3558
3559         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3560         macros deprecated. (can't mark the type itself deprecated, since
3561         GtkProgressBar is not deprecated and we need the type decl to use
3562         GtkProgressBar)
3563
3564         * gtk/gtkpixmap.h: Mark deprecated
3565
3566         * gtk/gtkoldeditable.h: Mark deprecated
3567
3568         * gtk/gtklist.h: Mark deprecated
3569
3570         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3571         for anything anymore.
3572
3573         * gtk/gtkctree.h: Mark deprecated
3574
3575         * gtk/gtkclist.h: Mark deprecated
3576
3577         * gtk/gtkpreview.h: Mark deprecated
3578
3579         * gtk/gtkpacker.h: Mark deprecated
3580
3581         * gtk/gtktipsquery.h: Mark deprecated
3582
3583         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3584
3585         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3586
3587         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3588
3589         * gtk/gtkruler.h: Add comment that it will move out of GTK
3590
3591         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3592
3593         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3594
3595 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3596
3597         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3598         gdk_colormap_sync private since it was never exported
3599         in a header file.
3600
3601         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3602         colormap->colors[] for StaticGray, StaticColor colormaps.
3603
3604         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3605         was being used as if it was image->bits_per_pixel.
3606
3607         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3608         for the image in the GdkImage structure since it isn't
3609         reconstructable, and we need it to handle packed types
3610
3611         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3612         the assumption that on Win32 image->bits_per_pixel == image->depth,
3613         always.
3614
3615         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3616
3617         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3618         warning message if no converter can be found. 
3619
3620 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3621
3622         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3623         chars to isupper() / tolower(). (#567)
3624
3625         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3626         to clear up 64-bit warnings. (#567)
3627
3628 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3629
3630         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3631         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3632
3633         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3634         since some people set $(libdir) separately. (#1290, David Kaelbling)
3635
3636 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3637
3638         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3639         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3640         MAXPATHLEN, but the code here depends on a fixed value.)
3641         (#4524)
3642
3643 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3644
3645         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3646         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3647
3648 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3649
3650         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3651         viewable there is no way that moving the node will cause the 
3652         focus row to become not viewable, so omit check on the visibility
3653         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3654
3655 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3656
3657         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3658         selection before inserting new text.
3659
3660 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3661
3662         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3663         Make the sensitivity of the reparented child track that of
3664         the original parent menu item. (#34218, David Hodson)
3665
3666         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3667         the case where the current item is destroyed properly.
3668
3669         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3670         some edge cases with child-less menuitems.
3671         
3672 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3673
3674         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3675         key pop down window. (#12074, Jon K Hellan)
3676
3677 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3678
3679         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3680         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3681         The solution here isn't perfect - you get an extraneous
3682         emission of "toggle", which could conceivably confuse an app,
3683         but better than the current situation. LXR search seems to
3684         indicate that no apps in GNOME CVS connect to "toggle".
3685
3686 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3687
3688         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3689         gtk_public_h_sources to directly here to avoid warning when
3690         building srcdir != builddir. (#9656)
3691
3692 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3693
3694         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3695         handlers in gtkrange.c return the proper values (TRUE == handled)
3696         (#10316).
3697
3698         This is just the tip of the iceberg, but gtkrange.c is the
3699         most common place where the propagation is problematical,
3700         and also a place where it is almost certainly safe to change
3701         this in the stable branch.
3702
3703         (You don't want right click popups on a range control or anything...)
3704
3705 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3706
3707         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3708         area on focus out, even if a background pixmap isn't set.
3709         (#13941)
3710         
3711 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3712
3713         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3714         to deal with setting the shape properly when scrolling arrows are
3715         turned on, but not visible because there is sufficient space.
3716         (#13432)
3717
3718 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3719
3720         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3721         items with submenus, destroy the item along with the submenu.
3722         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3723         properly.
3724
3725         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3726         later.
3727
3728 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3729
3730         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3731         the focus widget sometimes wasn't drawn with the default if there
3732         was no default widget.
3733
3734         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3735         unreference pixmaps. 
3736
3737         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3738         for some extra safety.
3739
3740 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3741
3742         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3743         the text of a cell to the old pointer value better, by
3744         copying the new text before freeing the old text. Some code
3745         cleanup. (#8079, Karl Nelson)
3746
3747 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3748
3749         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3750         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3751
3752 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3753
3754         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3755         item from a menu, check to see if it matches 
3756         menu->old_active_menu_item, and if so, unref and clear
3757         old_active_menu_item (Patch from Pavel Cisler)
3758
3759         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3760         menu_shell->active_menu_item, if it is the child being
3761         removed. (Patch based on that of Gene Ragan, #50337)
3762
3763 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3764
3765         * gdk/linux-fb/gdkselection-fb.c: 
3766         * gdk/linux-fb/gdkcolor-fb.c: 
3767         * gdk/linux-fb/gdkdrawable-fb2.c: 
3768         * gdk/linux-fb/gdkfont-fb.c: 
3769         * gdk/linux-fb/gdkim-fb.c: 
3770         * gdk/linux-fb/gdkinput.c: 
3771         * gdk/linux-fb/gdkkeyboard-fb.c: 
3772         * gdk/linux-fb/gdkmain-fb.c: 
3773         * gdk/linux-fb/gdkrender-fb.c: 
3774         A bunch of whitespace cleanup.
3775         
3776 2001-01-30  Havoc Pennington  <hp@pobox.com>
3777
3778         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3779         #ifdef GTK_ENABLE_BROKEN.
3780
3781         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3782         GTK_ENABLE_BROKEN just before including the broken headers.
3783         
3784         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3785         deprecated types registered.
3786
3787         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3788         we have to test the broken stuff.
3789
3790         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3791         
3792 2001-01-30  Havoc Pennington  <hp@redhat.com>
3793
3794         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3795         here where prev pointer was set to the wrong thing
3796
3797         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3798         (gtk_tree_path_is_descendant): new function
3799
3800         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3801         cached length
3802         (gtk_list_store_get_iter): don't modify iter if we can't get the
3803         path.
3804
3805         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3806         
3807         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3808         GtkTreeDragDest
3809
3810         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3811         was causing segfault
3812
3813         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3814         pointer to NULL
3815
3816         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3817
3818         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3819         on returning FALSE
3820         (gtk_list_store_iter_children): ditto
3821         (gtk_list_store_iter_nth_child): ditto
3822         (gtk_list_store_iter_nth_child): ditto
3823         (gtk_list_store_iter_parent): ditto
3824
3825         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3826         on iter->user_data != NULL instead of silently accepting it.
3827         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3828         we are returning TRUE.
3829         (gtk_tree_store_iter_children): ditto
3830         (gtk_tree_store_iter_nth_child): ditto
3831         (gtk_tree_store_iter_parent): ditto
3832         (gtk_tree_store_insert): remove handling of parent->user_data ==
3833         NULL, replace with parent == NULL       
3834
3835         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3836         and a comment explaining things
3837
3838         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3839         interface support to GtkTreeStore.
3840
3841         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3842         FALSE if no prev, fix
3843
3844         * gtk/gtktreeview.c (set_source_row): use a row reference
3845         (set_dest_row): use a row reference
3846
3847 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3848
3849         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3850         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3851         (gtk_tree_selection_select_iter): The same as above.
3852
3853 2001-01-26  Havoc Pennington  <hp@redhat.com>
3854
3855         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3856         which holds a handle to a specific row (particular set of values
3857         in the model, i.e. pointer-identity row).
3858
3859         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3860         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3861         Still need to use it for the src/dest row saved on the drag context.
3862
3863 2001-01-26  Havoc Pennington  <hp@redhat.com>
3864
3865         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3866
3867         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3868         not offset by TREE_VIEW_HEADER_HEIGHT
3869         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3870         TREE_VIEW_HEADER_HEIGHT
3871
3872         * configure.in (included_loaders): for me, --with-included-loaders
3873         generates the error "the specified loader yes does not exist",
3874         i.e. the arg defaults to "yes", so change test for value ""
3875         to test for value "yes", and include all loaders in that case.
3876
3877         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3878
3879         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3880         handle TREE_VIEW_VERTICAL_SEPARATOR
3881         (gtk_tree_view_bin_expose): fix to consider the row offset as
3882         pointing halfway into vertical separator.       
3883         (gtk_tree_view_draw_node_focus_rect): ditto
3884
3885         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3886         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3887         (TRUE) to be called.
3888
3889         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3890         debug mode where the invalid region is colored in on invalidate,
3891         so you can see the flicker and know whether your redraw code is 
3892         doing a good job.
3893
3894         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3895         tree window coordinates (clip rect is in tree window coords)
3896
3897         * gtk/Makefile.am: add gtktreednd.[hc]
3898
3899         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3900
3901         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3902         drag-and-drop data operations on a model (so we can set up tree
3903         drag-and-drop automatically)
3904
3905         * gtk/testgtk.c: Add a window to change sensitivity in the
3906         GtkLabel test; add a way to change the entry frame in GtkEntry
3907         test
3908
3909         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3910         (gtk_entry_get_has_frame): new functions to remove the frame
3911         around an entry
3912         (gtk_entry_size_request): shrink requisition if no frame
3913         (gtk_entry_draw_focus): don't draw frame if no frame
3914
3915         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3916         checks inside a cell renderer
3917         (gtk_default_draw_option): ditto for options
3918
3919         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3920         children from the alignment, not the button
3921         (gtk_tree_view_column_init): ref/sink the column, to emulate
3922         GObject refcounting.
3923
3924         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3925         
3926         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3927         Use theme functions to draw the toggles 
3928
3929         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3930
3931         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3932         GdkPangoAttrEmbossed to use in rendering insensitive text
3933
3934         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3935
3936         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3937         using new GDK features
3938         
3939 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3940
3941         * gtk/gtkimage.c:
3942         Splitted gtk_image_clear into gtk_image_clear() and
3943         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3944         to avoid leaks.
3945
3946         * gtk/gtklabel.c (set_markup):
3947         Don't leak text.
3948
3949         * gtk/gtktextlayout.c:
3950         Always free display->shaped_objects.
3951
3952         * gtk/testgtk.c (create_clist):
3953         Don't leak custom style.
3954
3955 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3956
3957         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3958         Don't leak image. Simplify using gdk_colormap_query_color().
3959         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3960
3961         * linux-fb/gdkcolor-fb.c:
3962         Implemented gdk_colormap_query_color.
3963
3964 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3965
3966         * linux-fb/gdkcursor-fb.c:
3967         Don't leak built-in cursors.
3968
3969         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3970         Don't leak tmp_points.
3971
3972         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3973         Don't modify desc. Don't leak font if the PangoFont
3974         isn't found.
3975         
3976         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3977         Free dash_list.
3978
3979         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3980         Don't leak string.
3981         
3982 2001-01-20  Havoc Pennington  <hp@pobox.com>
3983
3984         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3985         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3986         me, matches Pango
3987
3988 2001-01-22  Havoc Pennington  <hp@redhat.com>
3989
3990         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3991
3992         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3993
3994         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3995         Remove, move back to gdk-pixbuf
3996
3997         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3998         to all the word functions
3999
4000         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
4001         before doing anything on NULL layout or if we don't have the focus
4002
4003         * gtk/testtext.c (fill_example_buffer): "justification"
4004
4005         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
4006         to be called "justification" not "justify"
4007
4008         * demos/gtk-demo/textview.c (create_tags): "justification"
4009         
4010         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
4011
4012 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4013
4014         * gdk/gdkwindow.c (gdk_window_invalidate_region):
4015         Don't leak visible_region. Use visible_region instead of region.
4016         
4017         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
4018         Don't do extra gdk_drawable_ref(). This is not X.
4019         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
4020         gdk_fb_focused_window is ref:ed.
4021         (gdk_fb_window_send_crossing_events): Watch out for destroyed
4022         windows.
4023
4024 2001-01-22  Alexander Larsson  <alexl@redhat.com>
4025
4026         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
4027         Don't leak the PangoFontDescriptor.
4028
4029 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
4030
4031         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
4032         when not realized.
4033         (gtk_tree_view_scroll_to_cell): Make work when not realized.
4034         (gtk_tree_view_realize): add scroll_to support
4035         (gtk_tree_view_finalize): add a finalize method.  Populate.
4036         (gtk_tree_view_insert_column): ref and sink the column.
4037         (gtk_tree_view_append_column): ref and sink the column.
4038         (gtk_tree_view_queue_draw_node): New function to handle redrawing
4039         individual nodes.  Should make the code much more efficient, if
4040         actually used.
4041
4042 2001-01-19  Havoc Pennington  <hp@redhat.com>
4043
4044         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
4045         byte_offset variable was being used to mean both "offset into
4046         layout" and "offset into buffer line" which was no longer true
4047         with addition of preedit string; fix
4048
4049 2001-01-19  Havoc Pennington  <hp@redhat.com>
4050
4051         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
4052
4053         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
4054         function
4055
4056         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
4057         implement
4058
4059         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
4060         scroll_to_cell, matches TextView scroll functions better
4061         (gtk_tree_view_tree_to_widget_coords): new function
4062         (gtk_tree_view_widget_to_tree_coords): new function
4063         (gtk_tree_view_get_visible_rect): new function
4064         (gtk_tree_view_get_path_at_pos): accept negative coordinates
4065         (gtk_tree_view_draw_node_focus_rect): new function moved from
4066         draw_focus, also, use width of bin_window as width of the focus
4067         rect
4068         (gtk_tree_view_expand_row): fix bug where it didn't recognize
4069         already-expanded rows
4070         (gtk_tree_view_get_cell_rect): new function
4071         (gtk_tree_view_get_path_at_pos): return the click position
4072         relative to the passed-in cell
4073         (gtk_tree_view_set_expander_column): new function
4074
4075         * configure.in: remove gtk-config-2.0 chmod
4076
4077         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
4078         and properly handle drags with targets we don't understand
4079         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
4080         scrolling anyway
4081         (gtk_text_view_drag_drop): stop scrolling here though, and set the
4082         mark invisible
4083
4084         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
4085         function
4086         (gtk_drag_dest_get_target_list): new function
4087         (gtk_drag_dest_set_target_list): new function
4088         
4089         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
4090
4091         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
4092         related to drag-and-drop
4093
4094 2001-01-19  Alexander Larsson  <alexl@redhat.com>
4095
4096         * gdk/linux-fb/gdkprivate-fb.h:
4097         Define EMULATE_GDKFONT.
4098         Add extra pango_font stuff to GfkFontPrivate.
4099         
4100         * gdk/linux-fb/gdkdrawable-fb2.c:
4101         * gdk/linux-fb/gdkfont-fb.c:
4102         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
4103         emulation using PangoFont.
4104
4105 2001-01-17  Havoc Pennington  <hp@pobox.com>
4106
4107         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
4108         all the non-deprecated set_foo functions. Added missing object
4109         properties, and added g_object_notify() to setters. 
4110         Wrote docs.
4111         
4112 2001-01-18  Tor Lillqvist  <tml@iki.fi>
4113
4114         * gtk/gtkmain.c
4115         * gtk/gtkrc.c: (Win32) Use the new
4116         g_win32_get_package_installation_(sub)directory() functions.
4117
4118         * config.h.win32.in: New file.
4119         
4120         * config.h.win32: Removed.
4121
4122         * configure.in: Output config.h.win32.
4123
4124         * Makefile.am: Add it to EXTRA_DIST.
4125
4126         * gtk/gtk.def: Update.
4127
4128 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
4129
4130         * gtk/gtklabel.c (gtk_label_size_request): Set the
4131         attributes onto the PangoLayout even if they are newly
4132         created from label->pattern.
4133
4134 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
4135
4136         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
4137
4138         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
4139         structures in functions. Fixes bug where gtk_dataset_*
4140         was accidentally still being used in one place, causing
4141         every dest side event to be treated independently.
4142
4143         * gtk/gtkdnd.c: Remove last vestages of handling
4144         ::draw (fixes warning)
4145         
4146         * gtk/gtkentry.[ch]: Add drag and drop support.
4147
4148         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
4149         new function gtk_check_drag_threshhold() for checking
4150         to check if (dx,dy) has exceeded the threshhold for starting
4151         a drag and use it everywhere.
4152
4153 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
4154
4155         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
4156         add -I{includedir}/gtk-2.0.
4157
4158         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
4159         gdk/gdk-pixbuf.h: Doc fixups.
4160         
4161         * gtk/gtkobject.h: Remove trailing , from enum
4162
4163 2001-01-17 Alexander Larsson <alexl@redhat.com> 
4164
4165         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
4166         Doh! Mixed up x and y.
4167
4168         * gdk/linux-fb/gdkglobals-fb.c:
4169         Removed gdk_fb_pointer_grab_window_events,
4170         added _gdk_fb_pointer_grab_owner_events and
4171         _gdk_fb_keyboard_grab_owner_events.
4172
4173         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
4174         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
4175         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
4176         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
4177         Send crossing events after ungrab finished.
4178         (gdk_keyboard_grab): Set ..._owner_events
4179         (type_masks): Move out of function.
4180         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
4181         gdk_fb_keyboard_event_window): New functions, return the
4182         window an event should be targeted at. Handles grabs and
4183         event propagation. Can return NULL.
4184         (gdk_event_make): Remove event_mask checking. Now always
4185         returns an event.
4186                 
4187         * gdk/linux-fb/gdkkeyboard-fb.c:
4188         * gdk/linux-fb/gdkproperty-fb.c:
4189         * gdk/linux-fb/gdkselection-fb.c:
4190         Use new event_window/gdk_event_make() behaviour.
4191         
4192         * gdk/linux-fb/gdkmouse-fb.c:
4193         Use new event_window/gdk_event_make() behaviour.
4194         Only send motion events if in the same window.
4195         If grabbed, use cursor from window if sibling of grabbed
4196         window, and cursor from grabbed window otherwise.
4197
4198         * gdk/linux-fb/gdkprivate-fb.h:
4199         Update gdk_fb_window_send_crossing_events, gdk_event_make
4200         and grab varaible declarations. Add gdk_fb_*_event_window().
4201
4202         * gdk/linux-fb/gdkwindow-fb.c:
4203         Use new event_window/gdk_event_make() behaviour.
4204         Keep correct track of focus window.
4205         (gdk_window_set_events): Set all specific button motion masks
4206         if GDK_BUTTON_MOTION_MASK set.
4207
4208         * gtk/gtkdnd.c (gtk_drag_update):
4209         Free info->last_event if gdk_drag_motion returned FALSE.
4210
4211 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4212
4213         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
4214         Eliminate redraws when input-only windows are shown or
4215         hidden. Thanks to jpe@archaeopteryx.com.
4216
4217 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
4218
4219         * docs/faq/gtk-faq.sgml: FAQ update:
4220           - Update to bugzilla
4221           - Add GTK+ and security/SUID/SGID
4222           - Add DnD question
4223
4224 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
4225
4226         * gdk/linux-fb/gdkdnd-fb.c:
4227         Some cleanups.
4228         
4229 2001-01-15  Havoc Pennington  <hp@pobox.com>
4230
4231         * tests/testtreeview.c: add test stuff for CellRendererToggle
4232
4233         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
4234         accessor
4235
4236         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
4237         only toggle on button press (would do release like GtkButton, but
4238         we'd need implicit grab code for treeview cells)
4239
4240 2001-01-16  Tor Lillqvist  <tml@iki.fi>
4241
4242         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
4243
4244         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
4245         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
4246
4247         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
4248         to g_{locale,filename}_{to,from}_utf8 to match current API.
4249
4250         * gtk/makefile.msc.in (gtk_OBJECTS)
4251         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
4252
4253         * gtk/gtk.def: Update.
4254
4255 2001-01-15  Tor Lillqvist  <tml@iki.fi>
4256
4257         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
4258         implementaion that more closely mimics the events that an X server
4259         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
4260         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
4261         with nested preview widgets, for instance, more responsive when
4262         you move the mouse quickly into them.
4263         (find_window_for_pointer_event): Make it actually compile.
4264         (gdk_event_translate): Set send_event to the value of
4265         InSendMessage (). This doesn't really mean the same as X11's
4266         send_event flag, but is close enough, says jpe@archaeopteryx.com
4267
4268 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4269
4270         * gdk/linux-fb/gdkdnd-fb.c:
4271         Implemented drag and drop.
4272         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
4273         when it tries to free and then copy the same event (info->last_event).
4274         I am not sure about why this happens, but will continue looking.
4275
4276 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4277
4278         * gdk/linux-fb/gdkwindow-fb.c:
4279         Use gdk_window_invalidate_rect instead of
4280         gdk_window_invalidate_rect_clear to minimise flashing.
4281         When hiding windows you need to clear the root window though.
4282
4283 2001-01-15  Alexander Larsson  <alexl@redhat.com>
4284
4285         * gdk/linux-fb/gdkdrawable-fb2.c:
4286         For optization, add an full_shapes argument to gdk_fb_clip_region.
4287         If this is false, only the cliprects of the shapes are used.
4288
4289         * gdk/linux-fb/gdkprivate-fb.h:
4290         Export gdk_fb_window_peek_shape.
4291         Add full_shapes to gdk_fb_clip_region.
4292
4293         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
4294         When moving a window, don't clear everything under the it, just the
4295         root window. Makes stuff faster and flash less.
4296         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
4297         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
4298         offset of the shape.
4299         
4300
4301 2001-01-12  Havoc Pennington  <hp@redhat.com>
4302
4303         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
4304         current invalid region, fixes redraw bug while scrolling the 
4305         text widget
4306
4307         * gtk/gtktextview.c, gtk/gtktextview.h:
4308         Rearrange the scrolling/validation/etc. code in a major way, 
4309         so it seems to make sense to me. Probably isn't genuinely that
4310         much better, but...
4311
4312         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
4313         notifies
4314
4315         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
4316
4317 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
4318
4319         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
4320         Hide mouse pointer while rotation. Show it afterwards.
4321
4322 2001-01-12  Alexander Larsson  <alexl@redhat.com>
4323
4324         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
4325         windows in consideration when generating clip region.
4326
4327         * gdk/linux-fb/gdkfb.h:
4328         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
4329
4330         * gdk/linux-fb/gdkprivate-fb.h:
4331         Add shape to GdkWindowFBDatat.
4332         exported gdk_fb_window_get_abs_shape().
4333         removed gdk_fb_draw_lines declaration.
4334
4335         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
4336         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
4337         send focus changes when there is a grabbed window.
4338         (gdk_window_get_pointer): Handle shaped windows.
4339         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
4340         (gdk_fb_window_peek_shape): Returns the shape for a window,
4341         handles GDK_FB_USE_CHILD_SHAPE.
4342         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
4343         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
4344         (gdk_window_shape_combine_mask): Implement.
4345
4346         * gtk/gtkwindow-decorate.c:
4347         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
4348         setting the shape of a window makes the window transparent.
4349
4350 2001-01-11  Havoc Pennington  <hp@redhat.com>
4351
4352         * gtk/gtktreemodelsimple.h: Oops, broke some macros
4353
4354 2001-01-10  Havoc Pennington  <hp@redhat.com>
4355
4356         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
4357         add this function, bug 40251
4358
4359         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
4360         of type macro   
4361
4362 2001-01-11  Alexander Larsson  <alexl@redhat.com>
4363
4364         * acconfig.h:
4365         Added ENABLE_SHADOW_FB
4366
4367         * configure.in:
4368         Added --disable-shadowfb
4369
4370         * gdk/linux-fb/gdkcursor-fb.c:
4371         Update shadowfb when updating cursor
4372
4373         * gdk/linux-fb/gdkdrawable-fb2.c:
4374         Added wrappers for shadowfb that calls  the normal drawable
4375         methods, but calls gdk_shadow_fb_update(bounding box) when
4376         GdkWindows are drawed to.
4377         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
4378         which also returns the bounding box.
4379
4380         * gdk/linux-fb/gdkfb.h:
4381         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
4382
4383         * gdk/linux-fb/gdkgeometry-fb.c:
4384         Update shadowfb when scrolling window.
4385
4386         * gdk/linux-fb/gdkglobals-fb.c:
4387         Add _gdk_fb_screen_angle.
4388         
4389         * gdk/linux-fb/gdkkeyboard-fb.c:
4390         Test code for screen rotation. Shift-F2 in the xlate driver
4391         rotates the screen.
4392
4393         * gdk/linux-fb/gdkmain-fb.c:
4394         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4395
4396         * gdk/linux-fb/gdkmouse-fb.c:
4397         Use fb_width/height instead of modeinfo.xres/yres.
4398
4399         * gdk/linux-fb/gdkprivate-fb.h:
4400         Added fb_men, fb_width, fb_height & fb_stride. When using
4401         shadow fb these can differ from the framebuffer stuff.
4402         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4403         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4404         _gdk_fb_screen_angle. Removed CM, RP.
4405
4406         * gdk/linux-fb/gdkrender-fb.c:
4407         Added code for shadowfb handling and screen rotation using
4408         shadowfb.
4409
4410         * gdk/linux-fb/gdkwindow-fb.c:
4411         Use fb_mem, fb_stride, fb_width, fb_height.
4412         Added recompute_rowstride to reset the rowstride of all windows.
4413         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4414         window abs positions and window rowstrides. Usefull when the
4415         rotation has changed.
4416
4417 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4418
4419         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4420
4421 2001-01-10  Havoc Pennington  <hp@redhat.com>
4422
4423         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4424         where sibling == iter
4425         (gtk_tree_store_insert_after): handle sibling == iter
4426         (gtk_tree_store_prepend): remove stamp checks
4427         (gtk_tree_store_insert_before): ditto
4428         (gtk_tree_store_append): ditto
4429         (gtk_tree_store_get_path): ditto
4430         (gtk_tree_store_get_value): ditto
4431         (gtk_tree_store_iter_has_child): ditto
4432         (gtk_tree_store_iter_n_children): ditto
4433         (gtk_tree_store_iter_nth_child): ditto
4434         (gtk_tree_store_insert_after): ditto
4435         (gtk_tree_store_is_ancestor): ditto
4436         (gtk_tree_store_iter_depth): ditto
4437         (gtk_tree_store_insert_before): assert that sibling's parent is
4438         the same as the passed-in parent
4439         (gtk_tree_store_insert_after): assert that sibling's parent is
4440         the same as the passed-in parent
4441
4442         
4443         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4444         function to get the first iterator in a model
4445         
4446         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4447         conventionally the "root" in this sense is just NULL afaict.
4448
4449         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4450         where sibling == iter
4451         (gtk_list_store_insert_after): handle case where sibling == iter
4452
4453         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4454         automated tests for ListStore, TreeStore
4455
4456         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4457         (gtk_list_store_insert): update tail pointer, and fix it to work
4458         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4459         (gtk_list_store_append): use tail to be faster
4460         (gtk_list_store_prepend): fix it, update tail pointer
4461         (gtk_list_store_insert_after): fix it, update tail pointer
4462
4463         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4464         the list
4465
4466 2001-01-09  Havoc Pennington  <hp@redhat.com>
4467
4468         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4469         is NULL due to a pending resize
4470
4471         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4472         column width to values less than 1
4473
4474         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4475         width to be between min/max width, and still set the width 
4476         even if autosize is turned on, so the tree view can use this 
4477         function in order to autosize.
4478         (gtk_tree_view_column_init): set initial width to 1 not 0
4479
4480         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4481         setter function to modify column width, so we get notification
4482         (gtk_tree_view_insert_iter_height): ditto
4483         (gtk_tree_view_calc_size): ditto
4484         (gtk_tree_view_check_dirty): ditto
4485
4486         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4487         properties to change all the interesting attributes of the tree
4488         view column.
4489         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4490         (gtk_tree_view_column_get_clickable): add
4491         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4492         attributes; assume a cell renderer with equivalent object
4493         properties has been swapped in. Do g_object_notify().
4494         (gtk_tree_view_column_set_visible): g_object_notify
4495         (gtk_tree_view_column_get_sizing): rename from get_col_type
4496         (gtk_tree_view_column_set_sizing): g_object_notify
4497         (gtk_tree_view_column_set_width): add g_object_notify
4498         (gtk_tree_view_column_set_min_width): ditto
4499         (gtk_tree_view_column_set_max_width): ditto
4500         (gtk_tree_view_column_set_title): ditto
4501         (gtk_tree_view_column_set_clickable): ditto
4502         (gtk_tree_view_column_set_widget): ditto
4503         (gtk_tree_view_column_set_justification): ditto
4504
4505 2001-01-09  Havoc Pennington  <hp@redhat.com>
4506
4507         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4508         there are no rows in the model
4509
4510         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4511         NULL, then return the start of the list
4512
4513         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4514         if we can't get any rows from an empty model 
4515
4516         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4517         extraneous * after function pointer typedef usage
4518
4519         * Makefile.am: don't specify full path to cp and rm
4520
4521         * gtk/gtkcellrenderertextpixbuf.c
4522         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4523         NULL before dereferencing, fixes a segfault that happened from
4524         time to time
4525
4526         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4527         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4528         and reindent the function
4529         (gtk_cell_renderer_pixbuf_get_size): indentation
4530
4531         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4532         we quit it
4533         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4534         (gtk_dialog_set_default_response): New function, to set default
4535         button
4536         (gtk_dialog_set_response_sensitive): New function, to set 
4537         sensitivity of buttons
4538
4539         * gtk/gtkcellrendererpixbuf.c
4540         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4541         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4542
4543         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4544         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4545         also boxed types.
4546         (_gtk_tree_data_list_value_to_node): ditto
4547
4548         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4549         --gtk-debug=tree
4550
4551         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4552
4553         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4554
4555 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4556
4557         * gdk/win32/gdkevents-win32.c: Implement better mouse
4558         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4559         (find_window_for_pointer_event): New function.
4560         (gdk_event_translate): Use it when handling mouse events.
4561
4562 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4563
4564         * configure.in:
4565         Added --with-included-loaders option
4566
4567         * gdk-pixbuf/Makefile.am:
4568         * gdk-pixbuf/gdk-pixbuf-io.c:
4569         Add support for including selected gdk-pixbuf loaders only.
4570
4571         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4572         gtk_window_set_has_frame):
4573         Added inline documentation.
4574
4575         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4576         * docs/reference/gdk/tmpl/windows.sgml:
4577         Added inline documentation.
4578
4579 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4580
4581         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4582         realizing buttons that have already been realized.
4583
4584 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4585
4586         * tests/testtreeview.c (main): Show menu items before adding to
4587         option menu.
4588
4589         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4590         around if we kill them.
4591
4592         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4593         Return if we pass in a NULL model.
4594
4595 2001-01-08  Havoc Pennington  <hp@redhat.com>
4596
4597         * tests/testtreeview.c: hack on this some
4598
4599         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4600         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4601         list
4602         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4603
4604         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4605         functions
4606
4607 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4608
4609         * gtk/gtkwindow-decorate.[hc]:
4610         * gtk/Makefile.am:
4611         New files. Contains an implementation of a minimal WM for
4612         linux-fb.
4613
4614         * gtk/gtkwindow.h:
4615         Add the possibility for GtkWindows to specify a frame. This
4616         is used for the window decoration code, but could concievably
4617         be used for X programs too (xmms style windows).
4618         GtkWindow->frame is the toplevel window if the window is framed.
4619         The signal frame_event gets all events that are targeted to
4620         GtkWindow->frame.
4621         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4622         
4623         * gtk/gtkwindow.c:
4624         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4625         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4626
4627 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4628
4629         * docs/README.linux-fb:
4630         Correct filename ~/.pangoft2_aliases
4631
4632         * gdk/gdkwindow.h:
4633         Added new function gdk_window_get_decorations.
4634
4635         * gdk/linux-fb/gdkfb.h:
4636         Removed _gdk_window_get_decorations declaration.
4637         Renamed _gdk_window_set_child_handler to
4638         gdk_fb_window_set_child_handler.
4639
4640         * gdk/linux-fb/gdkwindow-fb.c:
4641         Renamed _gdk_window_set_child_handler to
4642         gdk_fb_window_set_child_handler.
4643
4644         * gdk/x11/gdkwindow-x11.c:
4645         New function gdk_window_get_mwm_hints().
4646         Implemented gdk_window_get_decorations.
4647
4648         * docs/reference/gdk/tmpl/windows.sgml:
4649         * docs/reference/gdk/gdk-sections.txt:
4650         Added gdk_window_get_decorations docs.
4651         
4652 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4653
4654         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4655         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4656         gdk_fb_window_send_crossing_events):
4657         Possibly send focus events when the mouse moves from one
4658         window to another.
4659
4660 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4661
4662         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4663         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4664         to match current API.
4665
4666         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4667         environment variable is set, don't call g_error when on a
4668         palettized (PseudoColor) display. Some people want to use GTK+ 
4669         in 256-colour mode even though works only partially.
4670
4671         * gdk/gdk.def
4672         * gtk/gtk.def
4673         * gtk/makefile.mingw.in: Update.
4674
4675 2001-01-05  Havoc Pennington  <hp@redhat.com>
4676
4677         * tests/testtreeview.c: hack on this a bit
4678
4679         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4680         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4681
4682         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4683         was spelled incorrectly
4684         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4685
4686         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4687         from gtk_tree_view_set_headers_active   
4688
4689         * gtk/gtktexttag.c:
4690         (gtk_text_tag_get_property): handle PROP_DIRECTION
4691         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4692         properties, bug 40235
4693
4694         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4695         forward_to_line_end
4696
4697 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4698
4699         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4700         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4701         for unicode,locale,filename conversion functions.
4702
4703 2001-01-05  Havoc Pennington  <hp@redhat.com>
4704
4705         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4706         broken if called on the first position in the buffer.
4707
4708         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4709         forward_to_delimiters to be called only if we aren't already at
4710         the delimiters.
4711
4712 2001-01-05  Havoc Pennington  <hp@redhat.com>
4713
4714         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4715
4716 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4717
4718         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4719         colormap in here. Sync from X port.
4720         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4721         Sync from X port.
4722         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4723         This happens now and then, and i don't think it is a bug.
4724         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4725         != endpoint.
4726         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4727         GDK_LINE_SOLID.
4728
4729         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4730         some of the fields filled in at least.
4731
4732         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4733         miLineArcD is no more, remove it from the function definition.
4734
4735 2001-01-04  Havoc Pennington  <hp@redhat.com>
4736
4737         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4738         this
4739
4740         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4741         user_data instead of tree_node
4742
4743         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4744         TREE_VIEW_COLUMN_SIZE
4745
4746         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4747         "size" field to "width" finishes bug 40061
4748
4749         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4750         for bitfields, bug 40268
4751
4752 2001-01-04  Havoc Pennington  <hp@redhat.com>
4753
4754         Rename some stuff:
4755         
4756         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4757
4758         s/GtkModelSimple/GtkTreeModelSimple/g;
4759         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4760         s/gtk_model_simple/gtk_tree_model_simple/g;
4761         s/gtkmodelsimple/gtktreemodelsimple/g;
4762
4763         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4764
4765         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4766         s/column_set_col_type/column_set_sizing/g;
4767
4768         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4769         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4770
4771         s/GtkCellRendererType/GtkCellRendererState/g;
4772         
4773         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4774         (gtk_cell_renderer_toggle_class_init): change "state" property to
4775         "active", to match GtkToggleButton
4776         (gtk_cell_renderer_toggle_get_active): new function, bug
4777         40269
4778         (gtk_cell_renderer_toggle_set_active): new function
4779         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4780         state through gtk_cell_renderer_set_active
4781
4782 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4783
4784         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4785         temporarily until they work again.  Brought up to date with
4786         changes in the model.
4787         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4788         model.
4789
4790 2001-01-04  Havoc Pennington  <hp@redhat.com>
4791
4792         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4793         equal to the line length, then position iterator before paragraph 
4794         separators. Fixes crash reported by Mikael Hermansson when
4795         pressing left arrow from the start of a line.   
4796
4797         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4798         about byte indexes off the end
4799         (iter_set_from_char_offset): add g_error about char offsets
4800         off the end
4801
4802 2001-01-03  Havoc Pennington  <hp@redhat.com>
4803
4804         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4805
4806         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4807         of private functions; remove inclusion of private headers.
4808
4809         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4810         function, so we don't need private functions in gtktextdisplay.c
4811
4812         * gtk/gtktextiterprivate.h: underscore-ification
4813
4814         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4815         to instead say "only useful to implement widgets"
4816
4817         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4818         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4819         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4820
4821         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4822         This function was completely broken
4823
4824         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4825
4826         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4827
4828         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4829
4830         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4831
4832         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4833
4834         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4835
4836         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4837         gtk_paint_layout
4838
4839         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4840         gtk_paint_layout
4841
4842         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4843         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4844         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4845         which were not implemented.     
4846
4847         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4848         insert_pixbuf signal. Rename delete_text to delete_range since it
4849         also deletes pixbufs and child anchors. This almost closes bug
4850         40245 (still need to deal with child anchors)
4851
4852         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4853         insert_pixbuf, change signal names as appropriate, change types of
4854         signals taking marks/tags to have the specific type, not just
4855         G_TYPE_OBJECT
4856         
4857         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4858         closes bug 40051
4859
4860         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4861         unnecessary remove_contents() call
4862         (gtk_option_menu_class_init): add a "changed" signal, closes
4863         bug 40039
4864         (gtk_option_menu_update_contents): emit "changed" if the 
4865         active menu item changes
4866
4867         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4868         cast to GtkObject, reported by Jonas Borgstrom
4869         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4870         we can't do stuff with side effects in finalize. Instead, spew a
4871         warning if the loader isn't closed.
4872
4873         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4874         colormap in here, non-X ports probably need to sync to this change
4875
4876         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4877         assertion that colormap != NULL, you can set the colormap to NULL
4878         if you like.
4879         
4880         * Makefile.am: remove gtk-config-2.0
4881
4882         * configure.in: Use pkg-config to locate GLib. Remove
4883         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4884         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4885         Use pkg-config to locate Pango. Output correct Pango libs to
4886         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4887
4888         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4889         files
4890         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4891         X11 pc files
4892
4893         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4894         unref from here
4895
4896 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4897
4898         * configure.in:
4899         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4900
4901 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4902
4903         * gtk/gtktextlayout.c
4904         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4905         variable when moving back onto a single line.
4906
4907 2001-01-01  Havoc Pennington  <hp@redhat.com>
4908
4909         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4910
4911         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4912
4913         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4914         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4915
4916 2001-01-01  Havoc Pennington  <hp@redhat.com>
4917
4918         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4919
4920         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4921         GtkTextAttributes
4922
4923         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4924         #40246
4925         (gtk_text_attributes_copy_values): rename from 
4926         gtk_text_attributes_copy
4927         (gtk_text_attributes_copy): a more standard GTK copy function, 
4928         which returns a new object
4929
4930 2001-01-01  Havoc Pennington  <hp@redhat.com>
4931
4932         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4933         
4934         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4935         don't fill in tree_view->priv->selection, kind of an unexpected
4936         side effect
4937
4938         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4939         gtkintl.h
4940         
4941         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4942         gtkintl.h
4943         (gtk_cell_renderer_get_property): remove calls to g_value_init
4944
4945         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4946         gtkintl.h
4947
4948         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4949         and include gtkintl.h
4950         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4951         property names
4952
4953         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4954         GtkTreeSelection
4955         (_gtk_tree_selection_new_from_with_view): rename, return
4956         GtkTreeSelection
4957         (_gtk_tree_selection_set_tree_view): rename with uscore
4958         (gtk_tree_selection_get_selected): fill in the "model" out param
4959         first, so it gets filled in even if we return at the top of the 
4960         function
4961         (gtk_tree_selection_real_select_all): add a comment and an else{}
4962         to clarify this a bit
4963         (gtk_tree_selection_real_unselect_all): add the same else{}
4964
4965         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4966         set_tree_view to have underscore prefixes, move them to the
4967         private header, fix return type of new_with_tree_view
4968         (struct _GtkTreeSelection): mark struct
4969         fields private  
4970
4971         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4972         GtkTreeModelFlags, not a guint
4973         (gtk_tree_path_prev): return gboolean not gint
4974         (gtk_tree_path_up): return gboolean not gint
4975
4976         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4977         return GtkTreeModelFlags, not a guint
4978
4979         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4980         that child model is non-null before unrefing it
4981         (g_value_int_compare_func): make this a qsort compare func, not 
4982         a boolean predicate
4983
4984         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4985         (add -umn to the end), and mark it unimplemented
4986         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4987         I don't see what it's for - doesn't the model always sort itself?
4988         (gtk_tree_model_sort_set_compare): this had the wrong signature
4989
4990         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4991         Fix the docs to say that it destructively replaces existing
4992         attributes (previously said that it added attributes).
4993         (gtk_tree_view_column_set_visible): canonicalize bool before
4994         equality testing. Also, check for realization before
4995         hiding/showing the tree_column->window; if this window could exist
4996         before realization, then it's busted and needs fixing, we can't 
4997         create GDK resources pre-realization. Also, remove
4998         superfluous queue_resize(), since set_size() does that for us.
4999         (gtk_tree_view_column_set_col_type): check realization before 
5000         using tree_column->window
5001
5002         * gtk/gtktreedatalist.c: fix filename in copyright notice
5003
5004 2000-12-31  Havoc Pennington  <hp@pobox.com>
5005
5006         * gtk/gtktextview.c: Rearrange all the
5007         scroll-while-dragging-or-selecting code to be different, not
5008         necessarily better. ;-)
5009         (gtk_text_view_scroll_to_mark): Change this
5010         function to take within_margin as a fraction instead of a pixel
5011         value, and to take alignment arguments (indicating where to align 
5012         the mark inside the visible area)
5013         
5014         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
5015         to GtkObject
5016
5017         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
5018         behavior so that offsets past the end of the line are not 
5019         allowed, and an offset equal to the line length moves the iterator
5020         to the next line
5021         (gtk_text_iter_set_line_index): make parallel change
5022         (gtk_text_iter_get_bytes_in_line): add this function
5023         
5024         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
5025         of byte indexes off the end of the line; byte index at the end of
5026         the line now returns FALSE and doesn't fill in the requested
5027         values, byte index past the end of the line is an error.  Also,
5028         don't allow -1 offset anymore, since its meaning is unclear.
5029
5030         This change exposes some bug in visual cursor motion, where we
5031         end up with a huge invalid byte index; needs fixing. Symptom of 
5032         bug is a crash when you hit up arrow.
5033         
5034         (_gtk_text_line_char_locate): match the change to byte_locate
5035
5036         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
5037         from start of line properly. fixes bug reported by Mikael
5038         Hermansson where backspace would delete all text before the
5039         cursor.
5040
5041 2000-12-30  Tor Lillqvist  <tml@iki.fi>
5042
5043         * gdk/win32/gdkwindow-win32.c
5044         (gdk_window_impl_win32_get_visible_region): New function, as in
5045         the X11 backend.
5046         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
5047         instead of duplicating the same code here.
5048
5049         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
5050         GDK_COLORMAP macro.
5051
5052         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
5053         destroy function.
5054         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
5055         access that.
5056
5057         * gtk/gtk.def: Update.
5058
5059         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
5060
5061 2000-12-30  Havoc Pennington  <hp@pobox.com>
5062
5063         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
5064         colormap on input only windows, to avoid special cases all over
5065         the code for these windows.
5066
5067 2000-12-26  Tor Lillqvist  <tml@iki.fi>
5068
5069         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
5070         we are on a palettized display ("PseudoColor" in X11), as the code
5071         for that doesn't work anyway, and never has.
5072
5073 2000-12-22  Alexander Larsson  <alexl@redhat.com>
5074
5075         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
5076         Don't use isprint() for chars > 255.
5077
5078 2000-12-21  Havoc Pennington  <hp@redhat.com>
5079
5080         * tests/testtreeview.c: more work
5081
5082 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5083
5084         * docs/README.linux-fb:
5085         Update the docs to the new pangoft2 way.
5086
5087 2000-12-21  Alexander Larsson  <alexl@redhat.com>
5088
5089         * configure.in:
5090         For linux-fb get the pangoft2 cflags and libs. This needs a recent
5091         pango version.
5092         Remove modules/linux-fb/Makefile.
5093
5094         * gdk/linux-fb/gdkdrawable-fb2.c:
5095         Render glyphs using freetype.
5096
5097         * gdk/linux-fb/gdkfb.h:
5098         Add new fb-specific functions needed for managing windows.
5099
5100         * gdk/linux-fb/gdkmain-fb.c:
5101         Remove gdk_font_init/fini() calls.
5102
5103         * gdk/linux-fb/gdkpango-fb.c:
5104         Remove old implementation. Use pangoft2 instead.
5105
5106         * gdk/linux-fb/gdkprivate-fb.h:
5107         Remove PangoFBFont and related stuff.
5108
5109         * gdk/linux-fb/gdkwindow-fb.c:
5110         Implement drawable->get_visible_region.
5111         Implement support for _gdk_window_set_child_handler () and
5112         _gdk_window_get_decorations().
5113
5114         * modules/Makefile.am:
5115         Remove linux-fb subdir.
5116
5117         * modules/linux-fb/*:
5118         Removed all.
5119         
5120 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
5121
5122         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
5123         calls, as they are no longer needed.
5124
5125         * gtk/gtktreemodelsort.c: Fix up the comparison code.
5126         
5127         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
5128         figure out how to emit a signal on an interface.
5129
5130 2000-12-20  Havoc Pennington  <hp@redhat.com>
5131
5132         * tests: new directory to contain tests, gtk/test* should move
5133         here sometime (with appropriate on-cvs-server hackery)
5134
5135         * tests/testtreeview.c, tests/Makefile.am: a test
5136         
5137         * configure.in (AC_OUTPUT): add tests/Makefile
5138
5139         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
5140         and "invisible_set" which were missing
5141
5142         * gtk/gtkrbtree.h: some cheesy indentation fix
5143         
5144 2000-12-20  Alexander Larsson  <alexl@redhat.com>
5145
5146         * gtk/gtkinvisible.c (gtk_invisible_realize):
5147         Attach the style to the window so that the style it is not
5148         leaked when unrealizing the window.
5149
5150 2000-12-18  Havoc Pennington  <hp@redhat.com>
5151
5152         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
5153         begin/end user action where appropriate
5154         (gtk_text_view_commit_handler): add begin/end user action
5155
5156         * gtk/gtktextbuffer.c: add begin/end user action signals, and
5157         bracket interactive operations with begin/end user action pair.
5158         
5159         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
5160         "interactive" arg from insert_text and delete_text signals.
5161         Add begin_user_action, end_user_action signals
5162         (gtk_text_buffer_begin_user_action): 
5163         (gtk_text_buffer_end_user_action): New functions to delimit 
5164         a user-visible action
5165
5166         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
5167         signals.
5168         
5169 2000-12-18  Havoc Pennington  <hp@redhat.com>
5170
5171         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
5172         was pretty non-working.
5173
5174         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
5175         by passing the length to g_utf8_validate().
5176
5177 2000-12-16  Havoc Pennington  <hp@pobox.com>
5178
5179         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
5180         Port to GObject, can go back in gdk-pixbuf after setting up 
5181         a gdk-pixbuf-marshal.h header over there.
5182
5183         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
5184         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
5185         args
5186         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
5187         set
5188         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
5189         here, do it when we create the buttons later
5190         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
5191         (gtk_tree_view_map): paranoia checks that column->button is shown 
5192         and unmapped
5193         (gtk_tree_view_size_request): only request visible children.
5194         Move header size calculation in here, for cleanliness, and 
5195         to maintain invariants for child widgets if we eventually 
5196         let users set different children inside the buttons
5197         (gtk_tree_view_map_buttons): factor out code to map buttons,
5198         since it was being called several times
5199         (gtk_tree_view_size_allocate_buttons): move_resize the drag
5200         windows instead of just moving them; their height may change 
5201         if we allow random widgets in there, or the theme changes.
5202         (gtk_tree_view_size_allocate): move button size allocation 
5203         above emitting the scroll signals, to ensure a sane state when we
5204         hit user code
5205         (gtk_tree_view_button_release): remove queue_resize after
5206         tree_view_set_size(), set_size() will handle any resize queuing
5207         that's needed
5208         (gtk_tree_view_focus_in): just queue a draw, don't fool with
5209         draw_focus goo
5210         (gtk_tree_view_focus): use gtk_get_current_event() and
5211         gdk_event_get_state()
5212         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
5213         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
5214         semicolon
5215         (gtk_tree_view_create_button): show the button here
5216         (gtk_tree_view_button_clicked): actually emit the clicked signal
5217         on the column
5218         (_gtk_tree_view_set_size): return right away if the size is
5219         unchanged, as a cheesy optimization
5220         (gtk_tree_view_setup_model): rename set_model_realized to 
5221         setup_model to match the flag that indicates whether we've 
5222         called it
5223         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
5224         exist, because set_scroll_adjustment does that and it shouldn't
5225         matter what order you call these in
5226         (gtk_tree_view_get_vadjustment): ditto
5227         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
5228         for paranoia
5229         (gtk_tree_view_set_headers_visible): call
5230         gtk_tree_view_map_buttons() instead of using cut-and-paste code
5231         (gtk_tree_view_append_column): clarify whether the return value
5232         is the count of columns before or after, and do the increment 
5233         separately from the return statement so you can tell from the code.
5234         (gtk_tree_view_remove_column): ditto
5235         (gtk_tree_view_insert_column): ditto
5236         (gtk_tree_view_get_column): remove g_return_if_fail for columns
5237         outside the existing range, the docs say that outside-range
5238         columns are allowed, so we handle them as documented. (Presumably
5239         this allows a nice loop with column != NULL as test.)
5240         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
5241         mean (left/right/center etc.).
5242         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
5243         (gtk_tree_view_expand_row): add docs
5244         (gtk_tree_view_collapse_row): add docs
5245
5246         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
5247         function to emit the clicked signal on a column
5248         
5249         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
5250         state of an event
5251         (gdk_event_get_time): don't treat GDK_SCROLL 
5252         as a button event, remove default case from switch so gcc 
5253         will whine if we don't explicitly handle all event types
5254
5255         * gtk/gtktreeselection.h: added some FIXME 
5256         
5257         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
5258         "columns" to "n_columns" and "column" to "columns" for clarity
5259
5260 2000-12-16  Havoc Pennington  <hp@pobox.com>
5261         
5262         * gtk/gtktextiter.c: General cleanup of the log attr iteration
5263         stuff. This should make e.g. the delete key work again in the
5264         text widget...
5265         (gtk_text_iter_forward_cursor_positions): handle negative count
5266         (gtk_text_iter_backward_cursor_positions): handle negative count
5267         (gtk_text_iter_forward_word_ends): handle negative count
5268         (gtk_text_iter_backward_word_starts): handle negative count
5269
5270         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
5271         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
5272         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
5273         GObject. No doubt will cause breakage.
5274
5275         * demos/gtk-demo/textview.c: remove hacks around
5276         non-GObject-ification of the text objects
5277
5278         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
5279         the text tag
5280         
5281 2000-12-14  Havoc Pennington  <hp@pobox.com>
5282
5283         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
5284         that we have Xrender
5285
5286 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
5287
5288         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
5289         Add two virtualized functions gdk_drawable_get_clip_region - to
5290         get the clip region when drawing.
5291         
5292         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
5293         use invalidate_region.
5294
5295         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
5296         region.
5297
5298         * acconfig.h configure.in: Check for Xft. For now, assume
5299         that if Xft is found, Pango was compiled with Xft support
5300         as well.
5301
5302         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
5303         gdk_colormap_query_color().
5304         
5305         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
5306         with Xft if appropriate.
5307
5308         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
5309         a pangoxft context if we have XFT and the environment
5310         variable GD_USE_XFT is set.
5311         
5312         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
5313         and also possibly an XftDraw structure.
5314
5315         * gtk/gtkfontsel.c: Handle the case where the font from the
5316         style doesn't match any of the fonts a bit better.
5317         
5318         * gtk/testgtk.c: Add tabs between directional segments for
5319         hebrew/arabic test. (Not really necessary, just a little
5320         prettier.)
5321
5322 2000-12-14  Havoc Pennington  <hp@redhat.com>
5323
5324         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
5325         reading a file
5326
5327 2000-12-14  Havoc Pennington  <hp@redhat.com>
5328
5329         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
5330         unused call to get_last_line()
5331
5332         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
5333         here until boxed is working (and maybe after that - we should
5334         really not gratuitously break old code)
5335
5336         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
5337         specific types for font_desc and tabs args, move them to
5338         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
5339         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
5340
5341         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
5342         use GTK_TYPE_POINTER for signal signatures as a hack-around
5343
5344         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
5345         PangoTabArray
5346
5347         * gtk/gtktextlayout.c (line_display_iter_to_index): 
5348         make static
5349         (line_display_index_to_iter): make static
5350
5351         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
5352         to marshal a string not a boxed
5353
5354         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
5355
5356         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
5357         since the UTF-8 isn't validated yet
5358
5359         * gtk/gtktextsegment.c (char_segment_check_func): don't require
5360         lines to end in '\n'
5361         
5362         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
5363         forward_to_delimiters, and grapheme boundaries
5364         (gtk_text_view_delete_from_cursor): properly handle non-newline
5365         delimiters, and grapheme boundaries
5366
5367         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
5368         to gtk_text_iter_forward_to_delimiters, and make it work properly
5369         if empty lines end with a character other than '\n'
5370
5371         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
5372         position
5373
5374 2000-12-15  Tor Lillqvist  <tml@iki.fi>
5375
5376         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
5377
5378         * gtk/gtk.def
5379         * gdk/gdk.def: Update.
5380
5381         * gdk/win32/gdkmain-win32.c
5382         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
5383         gdkmain-win32.c here.
5384
5385         * gdk/win32/makefile.mingw.in (all): No need to make
5386         gdk-win32res.o here, the makefile one step up will call us to make
5387         it.
5388
5389         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5390         gdkkeys-win32.
5391
5392         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5393
5394         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5395         call to g_source_add().
5396
5397         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5398         leak. Thanks to Andreas Kemnade.
5399
5400 2000-12-13  Havoc Pennington  <hp@pobox.com>
5401
5402         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5403
5404         * gtk/gtktext*.[hc]: update accordingly
5405         
5406 2000-12-13  Havoc Pennington  <hp@pobox.com>
5407
5408         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5409         header file
5410
5411         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5412
5413 2000-12-13  Alex Larsson  <alexl@redhat.com>
5414
5415         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5416         Add support for ps2 intellimouse.
5417
5418         * gdkkeyboard-fb.c:
5419         Move shift-F1 repaint handling to xlate handler only.
5420         
5421         * docs/README.linux-fb:
5422         Add imps2 to docs.
5423         Document the new refresh keys.
5424         
5425 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5426
5427         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5428
5429         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5430         ::position and ::padding.
5431
5432         * gtk/gtkcontainer.c: make ::border_width an INT property.
5433
5434         * gtk/gtkpacker.c: make ::position an INT property.
5435
5436         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5437         guard against NULL h/v scrollbars, since this is used at construction
5438         time.
5439
5440         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5441         internal gtk_clist_constructor().
5442
5443         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5444         gtk_ctree_constructor().
5445
5446         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5447         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5448
5449         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5450         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5451
5452         * gtk/gtkwidget.[hc]:
5453         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5454         and gtk_widget_get().
5455         (gtk_widget_new): use g_object_new_valist().
5456         (gtk_widget_set): use g_object_set_valist().
5457
5458         * gtk/gtkobject.[hc]:
5459         removed gtk_object_arg_get_info(), gtk_object_getv(),
5460         gtk_object_query_args(), gtk_object_newv(),
5461         gtk_object_class_add_signals(),
5462         gtk_object_class_user_signal_new(),
5463         gtk_object_class_user_signal_newv(),
5464         gtk_object_arg_set(), gtk_object_arg_get(),
5465         gtk_object_args_collect(),
5466         gtk_object_default_construct(),
5467         gtk_object_constructed(),
5468         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5469         removed nsignals, signals and n_args members from GtkObjectClass.
5470         (gtk_object_new): use g_object_new_valist().
5471         (gtk_object_set): use g_object_set_valist().
5472         (gtk_object_get): use g_object_get_valist().
5473         
5474         * gtk/gtkcompat.h: define gtk_object_default_construct().
5475         
5476         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5477         g_object_new().
5478
5479         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5480         fucntions, cleaned up method assignments (make sure your structures
5481         are setup properly before calling out). removed all GTK_CONSTRUCTED
5482         hacks ;)
5483
5484 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5485
5486         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5487         off-by-one error in checks. (Dave Lambert)
5488
5489 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5490
5491         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5492         Don't free gdk_fb_keyboard twice.
5493
5494 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5495
5496         * gtk/testgtk.c:
5497         (create_tooltips): 
5498         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5499         use GObject swapped_signal:: properties instead.
5500
5501         * gtk/gtkcellrenderertoggle.c: 
5502         * gtk/gtkcellrenderertextpixbuf.c: 
5503         * gtk/gtkcellrenderertext.c: 
5504         * gtk/gtkcellrendererpixbuf.c: 
5505         * gtk/gtkcellrenderer.c:
5506         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5507         missing warnings for invalid property ids, install properties
5508         with g_object_class_install_property() now.
5509         
5510         * gtk/gtksignal.c:
5511         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5512         
5513 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5514         
5515         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5516         to determine if a window is the focus widget within
5517         its toplevel.
5518
5519         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5520         to be boolean.
5521
5522         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5523         of the case where the container CAN_FOCUS to here instead
5524         of having it in each individual move-the-focus place.
5525
5526         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5527         focusing to be geometric in a much more obvious sense. Arrowing
5528         around is still non-intuitive because it isn't perfect and
5529         because entries, etc, grab the arrow keys, but it at least
5530         usually will do what you expect now.
5531         
5532         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5533         file.
5534
5535         * gtk/gtknotebook.c: Change tabs to be a single item in
5536         the focus chain. Make movement of focus on tabs with arrow
5537         keys wrap around.
5538         
5539         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5540         CHECK_FIND_CHILD macro to give informative error messages
5541         instead of silent returns.
5542
5543         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5544         flag since we handle GdkReturn on the tabs.
5545
5546         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5547         windows rather than sending expose events directly.
5548
5549         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5550         definition for GtkNotebookPage into .c file, since it is private.
5551
5552         * gtk/testgtk.c (create_notebook): Add option for 
5553         testing borderless notebook.
5554
5555         * gtk/testgtk.c (page_switch): Removed egregious poking
5556         around in GTK+ internals.
5557
5558         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5559
5560         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5561         properly through gtk_clist_focus. Make the title headers a
5562         single item in the tab-focus chain, and make left-right wrap
5563         around.
5564
5565         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5566         focus method so that wrapping around works properly.
5567
5568         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5569         that is handled for the widget now. 
5570
5571 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5572
5573         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5574         widgets as TOPLEVEL.
5575
5576         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5577         TOPLEVEL widgets are containers.
5578
5579         * gtk/gtkinvisible.h: Remove useless include.
5580
5581 2000-12-11  Havoc Pennington  <hp@redhat.com>
5582
5583         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5584         Handle chopping off \r\n and 0x2029 in addition to \n before
5585         passing to PangoLayout
5586
5587         * gtk/gtkimcontextsimple.c
5588         (gtk_im_context_simple_get_preedit_string): 
5589         return an empty string if no match is pending
5590
5591         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5592         assertion that the returned preedit string was sane
5593
5594         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5595         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5596         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5597
5598 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5599
5600         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5601         Fix up finalizer to chain to its parent.
5602
5603 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5604
5605         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5606         Clearified the difference between the keyboard types. Wrote a note
5607         about the magic sysrq key to get out of raw mode.
5608
5609 2000-12-09  James Henstridge  <james@daa.com.au>
5610
5611         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5612         member to hold masks for detecting the start of a protocol packet.
5613         (mouse_devs): add packet start masks for ps2 and ms device types.
5614         Left the mask for fidmour blank, as I have no idea what it should
5615         be.
5616         (handle_mouse_io): skip bytes until we get to the start of a
5617         packet.  My Logitech mouse seems to be passing an extra NULL pad
5618         byte, and GPM does a similar thing here.
5619         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5620         this is the ms mouse driver.
5621         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5622         completely broken except for button1.  It was checking the wrong
5623         bit in the packet for the status of the right mouse button, and
5624         wrongly assuming right == button2 rather than 3.  I fixed that and
5625         also added support for middle button (button2).
5626
5627 2000-12-08  Havoc Pennington  <hp@redhat.com>
5628
5629         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5630         that cause a segfault on text insertion
5631
5632         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5633         warning
5634
5635         * gtk/gtktextiter.c (test_log_attrs): use
5636         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5637
5638         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5639         Get log attrs for a line, using a cache stored on the buffer
5640         
5641         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5642         reported by Jeff Franks
5643
5644 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5645
5646         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5647         /dev/ttyS0 -> /dev/mouse
5648
5649 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5650
5651         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5652         Added dummy gdk_fontset_load.
5653
5654 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5655
5656         * docs/README.linux-fb:
5657         * docs/Makefile.am:
5658         Initial GtkFB docs.
5659         
5660         * gdk/linux-fb/Makefile.am:
5661         Define GDK_DATA_PREFIX.
5662
5663         * gdk/linux-fb/gdkmain-fb.c:
5664         Fix typo.
5665         Change default display to /dev/fb0.
5666
5667         * gdk/linux-fb/gdkpango-fb.c:
5668         Add $(prefix)/share/fonts/ to font path.
5669         
5670 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5671
5672         * gdk/linux-fb/gdkkeyboard-fb.c:
5673         New file containing the abstracted keyboard driver. Most code
5674         taken from gdkinput-ps2.c
5675
5676         * gdk/linux-fb/gdkinput-ps2.c:
5677         Removed file.
5678         
5679         * gdk/linux-fb/Makefile.am:
5680         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5681
5682         * gdk/linux-fb/gdkcolor-fb.c:
5683         display->fb was renamed to display->fb_fd.
5684
5685         * gdk/linux-fb/gdkcursor-fb.c:
5686         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5687
5688         * gdk/linux-fb/gdkinput.c:
5689         Moved gdk_input_init here from gdkinput-ps2.c
5690
5691         * gdk/linux-fb/gdkmain-fb.c:
5692         display->fb was renamed to display->fb_fd.
5693         Now the tty and the console is opened here instead
5694         of in the keyboard driver. Also check GDK_VT to see what
5695         tty to open.
5696         Move gdk_beep () here from gdkinput-ps2.c
5697         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5698
5699         * gdk/linux-fb/gdkmouse-fb.c:
5700         Add header.
5701         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5702         Return correct keyboard modifiers.
5703         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5704
5705         * gdk/linux-fb/gdkprivate-fb.h:
5706         Add tty and vt info to display.
5707         Add orignal modeinfo storage to display
5708         Update global functions
5709
5710         * gdk/linux-fb/gdkwindow-fb.c:
5711         Added gdk_fb_window_find_focus().
5712         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5713
5714 2000-12-07  Havoc Pennington  <hp@pobox.com>
5715
5716         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5717         function, noticed by Alex
5718
5719 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5720
5721         * configure.in: Detect freetype properly
5722
5723         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5724         above.
5725
5726 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5727
5728         * gdk/linux-fb/Makefile.am:
5729         Add gdkmouse-fb.c
5730         
5731         * gdk/linux-fb/gdkmouse-fb.c:
5732         New file. Abstracted the mouse drivers a bit.
5733
5734         * gdk/linux-fb/gdkcursor-fb.c:
5735         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5736
5737         * gdk/linux-fb/gdkinput-ps2.c:
5738         Removed old mouse handling code. Moved cursor handling code
5739         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5740         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5741         gdk_mouse_get_info.
5742
5743         * gdk/linux-fb/gdkmain-fb.c:
5744         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5745
5746         * gdk/linux-fb/gdkprivate-fb.h:
5747         Removed public gdk_fb_find_common_ancestor, added and renamed
5748         functions for the new mouse handling code.
5749
5750         * gdk/linux-fb/gdkwindow-fb.c:
5751         Moved gdk_fb_window_send_crossing_events here. added global
5752         variable gdk_fb_window_containing_pointer. made
5753         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5754         renamed to gdk_mouse_get_info.
5755
5756 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5757
5758         * gdk/linux-fb/gdkevents-fb.c:
5759         Update to match latest gmain/gsource changes.
5760
5761         * gdk/linux-fb/gdkinput-ps2.c:
5762         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5763         it links. Will be implemented later.
5764
5765 2000-12-03  Havoc Pennington  <hp@pobox.com>
5766
5767         * gdk/Makefile.am: add gdkkeys.[hc]
5768
5769         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5770         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5771
5772         * acconfig.h, configure.in: add checks and command line options
5773         for XKB
5774
5775         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5776         
5777         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5778         and group in the key event
5779
5780         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5781         field with the low-level hardware key code, and a group
5782         field with the keyboard group
5783
5784         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5785         and declare a couple globals used for keymap handling
5786         
5787         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5788         hold down Shift-Control and type a hex number to get a Unicode 
5789         character corresponding to the hex number
5790         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5791         (return bytes not chars)
5792
5793 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5794
5795         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5796         to avoid waste on 64-bit platforms.
5797
5798 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5799
5800         * INSTALL: Fix link to PNG home, remove reference
5801         to fribidi.
5802
5803         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5804         
5805         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5806         tested.)
5807
5808         * gtk/gtkcheckmenuitem.c: Permanently turn on
5809         always_show_toggle.
5810
5811         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5812         be NULL. (Vladimir Klebanov, #26545)
5813
5814         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5815         some signed/unsigned comparison problems. (#6510,
5816         David Kaelbling)
5817
5818         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5819         return type to boolean (Oskar Liljeblad, #18648)
5820
5821 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5822
5823         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5824         Remove bogus colormap setting.
5825
5826 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5827
5828         * gdk/linux-fb/gdkcolor-fb.c:
5829         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5830
5831         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5832         Must set colormap.
5833         
5834 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5835
5836         * docs/tutorial/gtk-tut.sgml: DND updates
5837
5838 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5839
5840         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5841         Remove old debug g_warning().
5842         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5843         or an implementation, just pass the implementation to draw_drawable_2.
5844         
5845         * gdk/linux-fb/gdkprivate-fb.h:
5846         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5847
5848         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5849         clear and invalidate area when window is destroyed.
5850         (send_map_events): Remove old commented out code.
5851
5852 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5853
5854         * gdk/linux-fb/gdkpango-fb.c:
5855         Use italic instead of oblique in font aliases.
5856         
5857         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5858         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5859         other unsupported functions.
5860
5861 2000-12-04  Havoc Pennington  <hp@redhat.com>
5862
5863         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5864
5865         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5866
5867         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5868
5869         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5870         hack to avoid infinite loops (synthetic expose event) - 
5871         Owen has more appropriate fixes in a branch he'll check in later.
5872
5873         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5874         separator, CR, and CRLF as line ends
5875
5876         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5877         into lines using pango_find_paragraph_boundary(); other bits of
5878         the widget are still going to be broken if the boundary isn't '\n'
5879         though
5880
5881 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5882
5883         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5884         multiply.
5885
5886         * gdk/linux-fb/gdkpango-fb.c:
5887         Copied some 26.6 scaling macros from pango to clean up the rounding.
5888         (pango_fb_font_get_glyph_info): Correct sign on x value.
5889
5890         * gdk/linux-fb/gdkprivate-fb.h:
5891         Removed unreferenced external functions.
5892
5893         * modules/linux-fb/Makefile.am: Use ` instead of '.
5894
5895         * modules/linux-fb/basic.c:
5896         Remove dead code. In particular the dummy lang engine which broke all
5897         pango layouts in GtkFB. Don't include tables-big.i anymore.
5898
5899         * modules/linux-fb/tables-big.i:
5900         Upgrade to latest version from pango. Left for reference, basic_ranges
5901         moved to basic.c.
5902         
5903 2000-12-04  Havoc Pennington  <hp@redhat.com>
5904
5905         Fix bugs Alex found:
5906         
5907         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5908         to "draw"
5909
5910         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5911
5912         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5913
5914         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5915         implementation in here, apparently the expose() implementation was
5916         dead code.
5917
5918 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5919
5920         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5921         Return positive descent.
5922
5923 2000-12-02  Havoc Pennington  <hp@pobox.com>
5924
5925         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5926         method and signal
5927         
5928         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5929         calls gdk_window_process_updates() to push the exposes through
5930         (gtk_widget_class_init): No more draw signal, no
5931         gtk_widget_real_draw()  
5932         
5933         * gtk/gtkbin.c (gtk_bin_draw): remove
5934
5935         * gtk/gtkbox.c (gtk_box_draw): remove
5936
5937         * gtk/gtkbutton.c (gtk_button_draw): remove
5938
5939         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5940
5941         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5942
5943         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5944
5945         * gtk/gtkclist.c (gtk_clist_draw): remove
5946
5947         * gtk/gtkentry.c (gtk_entry_draw): remove
5948
5949         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5950
5951         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5952
5953         * gtk/gtkframe.c (gtk_frame_draw): remove
5954
5955         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5956
5957         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5958
5959         * gtk/gtklayout.c (gtk_layout_draw): remove
5960
5961         * gtk/gtklist.c (gtk_list_draw): remove
5962
5963         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5964
5965         * gtk/gtkmenu.c (gtk_menu_draw): remove
5966
5967         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5968
5969         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5970
5971         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5972
5973         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5974
5975         * gtk/gtkpacker.c (gtk_packer_draw): remove
5976
5977         * gtk/gtkrange.c (gtk_range_draw): remove
5978
5979         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5980
5981         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5982
5983         * gtk/gtktable.c (gtk_table_draw): remove
5984
5985         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5986
5987         * gtk/gtktext.c (gtk_text_draw): remove
5988
5989         * gtk/gtktextview.c (gtk_text_view_draw): remove
5990
5991         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5992
5993         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5994
5995         * gtk/gtktree.c (gtk_tree_draw): remove
5996
5997         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5998
5999         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
6000
6001         * gtk/gtkviewport.c (gtk_viewport_draw): remove
6002
6003         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
6004
6005         * gtk/gtkvscale.c (gtk_vscale_draw): remove
6006
6007         * gtk/gtkwindow.c (gtk_window_draw): remove
6008
6009 2000-20-01  Anders Carlsson  <andersca@gnu.org>
6010
6011         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
6012         a GtkToggleButton is both insensitive and active, it was being
6013         drawn by the GtkButton draw handler which doesn't check the
6014         state. Now it's calling gtk_toggle_button_paint instead.
6015         
6016 2000-12-01  Havoc Pennington  <hp@redhat.com>
6017
6018         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
6019         dangling pointers to the appearance attributes from the 
6020         line display
6021
6022         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
6023         width/height to mean "full width/height of drawable"
6024
6025         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
6026         click to select word/line
6027         
6028         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
6029         when getting log attrs. Get a slice, so that pixmaps and stuff
6030         are properly handled.
6031
6032         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
6033         paste into the selection (replaces selection now, previously
6034         crashed or added to selection). Reveals longstanding btree bug -
6035         select multiple lines, middle-click on the selection, boom. This
6036         isn't related to my changes though.
6037
6038         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
6039         PangoLogAttrs changes
6040         (gtk_entry_move_backward_word): ditto
6041
6042         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
6043         functions return bool whether the iter moved onto a
6044         dereferenceable position.
6045  
6046         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
6047         functions for motion in terms of display lines.
6048
6049         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
6050         get the buffer a mark is inside
6051         
6052 2000-12-01  Alexander Larsson  <alexl@redhat.com>
6053
6054         * gdk/linux-fb/Makefile.am:
6055         * modules/linux-fb/Makefile.am:
6056         Freetype 2 final uses freetype-config
6057
6058         * gdk/linux-fb/gdkpango-fb.c:
6059         Upgrade to use Freetype 2 final.
6060         More flexible support for font aliases, this also fixes a bug with
6061         GtkFontSelector, as the aliases must be visible in the font/family list,
6062         or GtkFontSelector reads uninitialized memory.
6063
6064 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
6065
6066         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
6067         XGetIMValues to properly terminate variable argument list, and do
6068         NULL return check for ic_values and xim_styles.
6069
6070         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
6071         Restore preedit state after XmbResetIC().
6072         
6073         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
6074         XvaCreateNestedList() should take XvaNestedList, but not
6075         XvaNestedList*.
6076
6077         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
6078         preedit_draw_callback, preedit_caret_callback): Match
6079         "preedit-changed" signal name to "preedit_changed" to be
6080         consistent to the spec.
6081
6082         * gtk/gtkimcontextsimple.c (check_table):
6083         Match "preedit-changed" to "preedit_changed" to be consistent
6084         to the spec.
6085
6086 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
6087
6088         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
6089         gc->clip_region == NULL>
6090
6091 2000-11-30  Tor Lillqvist  <tml@iki.fi>
6092
6093         Changes by Hans Breuer:
6094         
6095         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
6096         Dont't use negative width and height as max_hints. This fixes
6097         Owen's recent testgtk changes for win32.
6098
6099         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
6100         gdk_win32_hdc_release): These are exported and may be called with
6101         other drawable types than our GdkDrawableImplWin32 (?).
6102
6103         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
6104         so always #define USE_BACKING_STORE.
6105
6106         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
6107         of printf for debugging output.
6108
6109         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
6110         
6111         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
6112
6113         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
6114         declaration.
6115
6116         * gtk/gtktexttypes.h: Ditto.
6117
6118         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
6119         (GDK_VoidSymbol) also if in case of arg check failure.
6120
6121         * gtk/gtkimcontextsimple.c
6122         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
6123         position to the pointer, but to the variable it points to.
6124
6125         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
6126
6127         * gtk/gtk.def: Updates.
6128
6129 2000-11-29  Elliot Lee  <sopwith@redhat.com>
6130
6131         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
6132         GTK_TYPE_TREE_MODEL.
6133
6134 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6135
6136         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
6137         Set the size of the font from the description.
6138         (gdk_text_width): Gross hack that calculates the width
6139         of text by text_length * size/2. This is necessary because
6140         GtkLabel does some ugly gtk_string_width call to calculate
6141         an good size.
6142         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
6143
6144 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
6145
6146         * docs/tutorial/gtk-tut.sgml: DND updates
6147
6148 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6149
6150         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6151         If you pass width or height == 0 to gdk_window_clear_area they
6152         should be calculated from the window size.
6153
6154 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6155
6156         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
6157         a grab, but no grab-cursor, use the cursor from the grabbed
6158         window. (gdk_fb_window_send_crossing_events): Send normal
6159         enter/leave notifications if grab and owner_events == TRUE.
6160
6161 2000-11-29  Alexander Larsson  <alexl@redhat.com>
6162
6163         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6164         Do implicit button grabs, even if the window doesn't
6165         want the event.
6166         (gdk_fb_window_send_crossing_events): If there is a
6167         grab, only the grabbed window gets normal enter/leave
6168         notifications. On ungrab go from grabbed window to current.
6169         Don't send any notification to b when propagating from c -> b.
6170         If setting a grab on window, don't set prev_window.
6171         (handle_mouse_input): Send enter/leave events to the window the
6172         mouse is over, not the grabbed one.
6173         
6174 2000-11-28  Elliot Lee  <sopwith@redhat.com>
6175
6176         * gdk/gdkregion-generic.c: Zap warning.
6177         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
6178         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
6179
6180 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
6181
6182         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
6183         The cursor should be hidden if it is part of either the
6184         source or destination region. Not only if it is in both.
6185         (gdk_window_set_transient_for): Silence warnings.
6186
6187 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6188
6189         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
6190         The default mode in X is Pie Arcs, therefore that is
6191         what Gtk+ uses.
6192
6193 2000-11-28  Alexander Larsson  <alexl@redhat.com>
6194
6195         * gdk/linux-fb/gdkinput-ps2.c:
6196         Implement correct EnterNotify/LeaveNotify:
6197         (gdk_fb_window_send_crossing_events): New function that sends
6198         all GdkCrossingEvents from the last mouse-window to the specified
6199         destination.
6200         (gdk_fb_window_visibility_crossing): Removed function.
6201         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
6202         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
6203         instead of gdk_window_get_pointer() for better readability.
6204
6205         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
6206         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
6207
6208         * gdk/linux-fb/gdkprivate-fb.h:
6209         removed gdk_fb_window_visibility_crossing, added
6210         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
6211
6212         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
6213         New function that finds the least common ancestor of two windows.
6214         (gdk_window_show, gdk_window_hide):
6215         Use gdk_fb_window_send_crossing_events.
6216         (gdk_fb_window_move_resize): Send configure events to toplevel
6217         windows. Use gdk_fb_window_send_crossing_events.
6218
6219 2000-11-27  Havoc Pennington  <hp@redhat.com>
6220
6221         * gtk/gtkprivate.h (enum): Remove a trailing comma
6222
6223 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
6224
6225         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
6226         the "changed" callback of the adjustment.  We need to redraw the
6227         spin button's arrows when the adjustment's range changes.
6228         (adjustment_changed_cb): Draw the arrows.
6229         (gtk_spin_button_value_changed): Draw the arrows.
6230
6231 2000-11-23  Alexander Larsson  <alexl@redhat.com>
6232
6233         * gdk/linux-fb/gdkselection-fb.c:
6234         Initial selection implementation.
6235
6236         * gtk/gtkselection.c:
6237         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
6238         requestor in gtk_selection_request.
6239         
6240         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
6241         Added gdk_selection_property atom.
6242
6243         * gdk/linux-fb/gdkprivate-fb.h:
6244         Export _gdk_selection_window_destroyed.
6245         Removed mask_off_x/y from GdkCursorPrivateFB.
6246         Removed hbearing, added top, left to PangoFBGlyphInfo.
6247
6248         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
6249         Call _gdk_selection_window_destroyed
6250         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
6251         the root window has been created.
6252         (static_dx_hack, static_dy_hack, compare_draw_rects,
6253         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
6254         in region. They are already sorted. Instead just traverse them in
6255         reverse if draw_direction < 0.
6256         
6257         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
6258         Double-clicks must be sent after the normal button_press.
6259         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
6260         
6261         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
6262         Pass _gdk_fb_screen_gc instead of NULL.
6263
6264         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
6265         Initialize gdk_selection_property.
6266         (gdk_event_make): Remove unused code.
6267
6268         * gdk/linux-fb/gdkcursor-fb.c:
6269         Make the pixmap for the cursor the same size as the mask. Also remove
6270         the mask_off_x/y fields in GdkCursorPrivateFB and combine
6271         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
6272         Now the whole cursor is visible.
6273
6274         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
6275         Fix bug where xdest+height instead of ydest+height was used
6276         to calculate if the source and dest overlapped. This fixes the
6277         redraw bug when the main window in testgtk was scrolled when
6278         partially covered by a tall window.
6279         Copy rectangles in region in order depending on draw_direction.
6280         Also moved the draw_direction flipping of start_y and end_y into
6281         the gc functions, as this might not be what all of them want.
6282         (gdk_fb_draw_lines): Support dashed lines.
6283         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
6284         so that the text is positioned correctly (was 1 pixel high).
6285
6286         gdk/linux-fb/gdkgc-fb.c:
6287         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
6288         all lines were drawn a pixel to short. Also checked the default of
6289         the rest of the values, and they're the same as X now.
6290
6291         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
6292         Clean up pixel positioning of the glyphs. Just use bgy->top and
6293         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
6294         to all divisions to get correct rounding behaviour.
6295
6296         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
6297         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
6298         Moved start_y/end_y flip into draw_drawable implementations.
6299         Flip also x rendering when draw_direction < 0.
6300         Remove unneccesary multiply with draw_direction.
6301
6302 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
6303
6304         * docs/tutorial/gtk-tut.sgml:
6305           - get rid of gtk_toggle_button_toggled FUD
6306           - start DND section - needs work - based on:
6307                 http://wolfpack.twu.net/docs/gtkdnd/
6308
6309 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6310
6311         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
6312         Correct calculation of font metrics. Now GtkEntrys have sane
6313         size.
6314
6315 2000-11-22  Alexander Larsson  <alexl@redhat.com>
6316
6317         * gdk/gdktypes.h:
6318         Add new type GdkSpan
6319         
6320         * docs/reference/gdk/gdk-sections.txt,
6321         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
6322         gdk/gdkregion.h:
6323         Implement and document gdk_region_spans_intersect_foreach.
6324
6325         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
6326         Add new file gdkrender-fb.c which contains all core
6327         rendering code.
6328         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
6329         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
6330         (optimized rectangle fillers).
6331
6332         * gdk/linux-fb/gdkdrawable-fb2.c:
6333         Move all rendering code to gdkrender-fb.c.
6334         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
6335         Use the new span intersection functions in gdk_fb_fill_spans.
6336         gdk_fb_draw_rectangle() clips filled rectangles and calls
6337         gc->fill_rectangle with the result.
6338         gdk_fb_fill_spans() gets extra argument "sorted".
6339
6340         * gdk/linux-fb/gdkevents-fb.c:
6341         Remove unused includes and defines.
6342         New function gdk_fb_get_time() to get correct time for events.
6343
6344         * gdk/linux-fb/gdkinput-ps2.c:
6345         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
6346         Make sure to set the time of all events.
6347
6348         * gdk/linux-fb/gdkmain-fb.c:
6349         Use gdk_fb_get_time ().
6350
6351         * gdk/linux-fb/gdkprivate-fb.h:
6352         New virtual GC calls: fill_span & fill_rectangle.
6353         Export gdk_fb_get_time().
6354         gdk_fb_fill_spans() gets extra argument "sorted".
6355
6356         * gdk/linux-fb/mi*.c:
6357         Use GdkSpan instead of GdkRectangle.
6358         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
6359         from XFree 4 source)
6360         
6361 2000-11-22    <jrb@redhat.com>
6362
6363         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
6364         reversing the order in an if statement will do.  Doing so managed
6365         to make the treemodelsort half work.  Other half will follow after
6366         I get the insert function fully fixed.
6367
6368 2000-11-21  Elliot Lee  <sopwith@redhat.com>
6369         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
6370         more than 2 bits. Besides, I need to implement an evil hack. :)
6371
6372 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
6373
6374         * docs/tutorial/gtk-tut.sgml: minor corrections
6375
6376 2000-11-20  Jonathan Blandford <jrb@redhat.com>
6377         * gtk/gtktreemodelsort.h: Add convertion functions to let you
6378           convert to and from relative path's and iters.
6379
6380         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
6381           testing sorting functions a bit better.  Currently broken -- will
6382           fix in morning.
6383
6384 2000-11-20  Havoc Pennington  <hp@redhat.com>
6385
6386         * gtk/gtkwidget.c: Documented a bunch of functions in here
6387         (gtk_widget_realize): Warn if you try to realize
6388         a widget with no parent that isn't a toplevel
6389         (gtk_widget_intersect): return a gboolean
6390
6391 2000-11-20  Havoc Pennington  <hp@redhat.com>
6392
6393         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6394         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6395         scrolling to be implemented in GDK to finish. Also, right now
6396         we just size_allocate all children on every layout change,
6397         which is pretty lame. Test commented out of testtext.c, 
6398         until it works better.
6399
6400 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6401
6402         * gdk/linux-fb/gdkdrawable-fb2.c:
6403         Removed unused arguments from gdk_fb_drawable_get_pixel().
6404
6405         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6406         Renamed fidur specific mouse packet data in MouseDevice to
6407         generic. Used it in ps2 mouse handling code to avoid blocking
6408         reads.
6409
6410 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6411
6412         * demos/gtk-demo/main.c: Changed to have the list become
6413         non-italic when the demo window is destroyed through an external
6414         event (like a close button).  Doing so found three bugs in the
6415         widget.
6416
6417         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6418
6419         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6420         we actually set the cell.
6421
6422         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6423
6424         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6425         free a leaked path.  Thanks memprof.
6426
6427 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6428
6429         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6430         off-by-one error when destroying allocated segments
6431         on failure. (Elliot)
6432
6433 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6434
6435         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6436         memleaks found by Evan Martin.
6437
6438 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6439
6440         * Released 1.3.2
6441         
6442         * NEWS: Updates for 1.3.2
6443
6444 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6445
6446         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6447         but in general for window system specific events.
6448
6449         * gtk/gtk.def
6450         * gtk/makefile.mingw.in
6451         * gtk/makefile.msc.in: Update.
6452         
6453         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6454
6455 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6456
6457         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6458         distribute gtk.immodules.
6459
6460         * gtk/Makefile.am (install-data-local): Don't install the
6461         gtk.immodules file created for the uninstalled modules;
6462         instead run gtk-query-immodules after install
6463
6464 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6465
6466         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6467         -rpath to the right install location.
6468
6469         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6470         -export-dynamic.
6471
6472         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6473         properly.
6474
6475 2000-11-15  Havoc Pennington  <hp@pobox.com>
6476
6477         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6478         patch from Mikael Hermansson to temporarily stop blinking while
6479         the user is using the keyboard to type or navigate. 
6480
6481         Also, when blinking, stay on for longer than we stay off. Also,
6482         return from start_cursor_blink if !cursor_visible, to save
6483         checking that flag all over the place before we call
6484         start_cursor_blink.
6485
6486 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6487
6488         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6489         only contain a "fontset" line, which is now ignored.
6490
6491         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6492         double-click-to-select-word work.
6493         
6494 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6495
6496         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6497         Don't move back one char when we are actually at the end of the 
6498         paragraph.
6499
6500 2000-11-15  Robert Brady  <robert@suse.co.uk>
6501
6502         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6503         'o' < 'p'.
6504         
6505         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6506         bind_textdomain_codeset.
6507
6508         (gtk_init_check): Make the warning about translating default:LTR
6509         sterner.
6510         
6511 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6512
6513         * **/Makefile.am : remove unecessary rules for win32-specific
6514         config-substituted targets. If you want these rules, use
6515         --enable-maintainer-mode (called automatically by autogen.sh).
6516         Stops a lot of unneccessary make-time warnings.
6517
6518         * gtk/gtktext{layout,display}.c: Factor in total width as
6519         well as screen when figuring alignment for word-wrap as well as
6520         no wrap; this is necessary to handle lines that cannot be wrapped
6521         at all.
6522
6523 2000-11-15  Havoc Pennington  <hp@redhat.com>
6524
6525         * gtk/testtext.c: Implement essential color cycling feature
6526
6527 2000-11-15  Havoc Pennington  <hp@redhat.com>
6528
6529         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6530         when we invalidate the main window.
6531
6532         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6533         GtkTextView will now invalidate the side windows for us when text
6534         changes.
6535
6536 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6537
6538         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6539         unconditionally, since we may need to update the horizontal
6540         scrollbars even if the height didn't change.
6541
6542         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6543         the extra attrs, since some of them affect size.
6544
6545         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6546         x_offset correctly.
6547
6548 2000-11-15  Havoc Pennington  <hp@redhat.com>
6549
6550         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6551         don't move the first line out into the margin, instead move the
6552         whole paragraph in order to make space for the first line within 
6553         the margin
6554
6555 2000-11-15  Havoc Pennington  <hp@redhat.com>
6556
6557         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6558         xoffset in addition to yoffset, so horizontal scrolling doesn't
6559         break redraws
6560
6561 2000-11-15  Havoc Pennington  <hp@redhat.com>
6562
6563         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6564         from the cursor
6565         (render_layout_line): fix reversed test that caused weird
6566         underlines to get drawn
6567
6568 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6569
6570         * gdk/linux-fb/gdkprivate-fb.h:
6571         Fix debug macros.
6572         
6573 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6574
6575         * gdk/linux-fb/gdkprivate-fb.h:
6576         Added virtual functions set_pixel, get_color,
6577         fill_span and draw_drawable to the GC.
6578         Added global _gdk_fb_screen_gc to use instead of
6579         NULL when drawing to the screen.
6580         Added _gdk_fb_gc_calc_state() prototype.
6581
6582         * gdk/linux-fb/gdkgc-fb.c:
6583         Call _gdk_fb_gc_calc_state() on any gc state change.
6584
6585         * gdk/linux-fb/gdkglobals-fb.c:
6586         Add _gdk_fb_screen_gc
6587                 
6588         * gdk/linux-fb/gdkdrawable-fb2.c:
6589         _gdk_fb_gc_calc_state() calculates best functions
6590         for the GC state and depth.
6591         Moved bpp specialized code to separate functions.
6592         Added optimized 24 bpp AA draw_drawable.
6593
6594         * gdk/linux-fb/gdkevents-fb.c:
6595         Silence gcc warning.
6596
6597         * gdk/linux-fb/gdkimage-fb.c:
6598         Use _gdk_fb_screen_gc
6599
6600         * gdk/linux-fb/gdkwindow-fb.c:
6601         Init and use _gdk_fb_screen_gc
6602
6603         * gdk/linux-fb/mitypes.h:
6604         Remove unused types.
6605
6606 2000-11-14  Havoc Pennington  <hp@pobox.com>
6607
6608         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6609         to pixels
6610
6611 2000-11-14  Havoc Pennington  <hp@pobox.com>
6612
6613         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6614
6615         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6616         unknown char, no real reason we were using a variable. 
6617         Remove gtk_text_unknown_char variable. Fix all the text widget
6618         files accordingly.
6619
6620         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6621         since the Unicode spec seems to prefer that character for our
6622         purposes.
6623
6624 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6625
6626         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6627         value of g_getenv() isn't freeable, so g_strdup it.
6628
6629         * modules/input/inuktitut.c: Inuktitut input method.
6630
6631         * modules/input/Makefile.am: Build this.
6632         
6633 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6634
6635         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6636         of gtk programs.
6637
6638 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6639
6640         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6641         reversed > that was causing Home to go to end of previous line.
6642
6643         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6644         modified-keypresses (leave for bindings.)
6645
6646         * modules/input/Makefile.am: Remove useless -export-dynamic
6647         from module LDFLAGS.
6648
6649 2000-11-14  Havoc Pennington  <hp@redhat.com>
6650
6651         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6652         higher.
6653
6654         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6655         account. Also, render rise, underline, background, etc. for
6656         pixbufs as well as text. Also, draw underlines one pixel higher.
6657
6658         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6659         PangoAttribute for the rise, so it gets drawn properly. Also,
6660         add the GtkTextAppearance attribute for pixbuf/widget segments
6661         as well; we should go ahead and have rise, underline, background,
6662         stipple work for those
6663
6664         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6665         Pango
6666
6667 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6668
6669         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6670
6671         * gtk/gtk.def: Update.
6672
6673         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6674         included.
6675         (gtk_rc_get_im_module_file): Use run-time installation directory
6676         on Win32.
6677
6678         * gdk/win32/rc/gdk.rc: Remove.
6679         * gdk/win32/rc/gdk.rc.in: New file.
6680         * gdk/win32/rc/Makefile.am: New file
6681         * gdk/win32/Makefile.am: Corresponding changes.
6682
6683         * gtk/gtk.rc: Remove.
6684         * gtk/gtk-win32.rc.in: New file.
6685         * gtk/Makefile.am: Corresponding changes.
6686
6687         * configure.in: Corresponding changes.
6688
6689         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6690         has a built gtkcompat.h. Developers using CVS code on Win32 can
6691         hand-edit it from gtkcompat.h.in.
6692
6693         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6694         gtkcompat.h from gtkcompat.h.win32.
6695
6696 2000-11-14  Havoc Pennington  <hp@redhat.com>
6697
6698         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6699         to default to GDK_ACTION_MOVE if the drag is within a single
6700         widget. Defaults to GDK_ACTION_COPY between widgets.
6701
6702 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6703
6704         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6705
6706         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6707
6708         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6709         srcdir != builddir
6710
6711         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6712
6713         * configure.in (GTK_VERSION): Up to 1.3.2
6714
6715         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6716         gtkimcontextxim.h
6717
6718         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6719         missing doc comment.
6720
6721 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6722
6723         * modules/linux-fb/basic.c:
6724         Use the glib iconv wrappers.
6725
6726 2000-11-13  Havoc Pennington  <hp@pobox.com>
6727
6728         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6729         still more bugs.
6730
6731         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6732         scroll the GdkWindows before realization.
6733
6734 2000-11-13  Havoc Pennington  <hp@redhat.com>
6735
6736         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6737         where GC didn't always get updated properly
6738
6739         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6740         of fonts instead of setting the entire font
6741
6742         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6743         setting entire font
6744
6745         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6746
6747         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6748         a bunch of individually-settable font attributes. You can still 
6749         use the "font" and "font_desc" args, they just set all the font
6750         attributes at once.
6751
6752 2000-11-13 Elliot Lee <sopwith@redhat.com>
6753
6754         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6755
6756 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6757
6758         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6759         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6760
6761         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6762         work better.
6763
6764 2000-11-13  Havoc Pennington  <hp@redhat.com>
6765
6766         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6767         the module file.
6768
6769         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6770         dest->language
6771
6772         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6773         settings
6774
6775         * gtk/gtktextview.c: Implement object args and setters/getters for
6776         all the aspects of the GtkTextAttributes that are not set from
6777         GtkWidget attributes. This is spacing, justification, margins,
6778         etc.
6779
6780         (gtk_text_view_set_arg)
6781         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6782         args
6783         (gtk_text_view_class_init): Add args for justify, left_margin,
6784         right_margin, indent, and tabs
6785         
6786
6787         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6788         attribute properly
6789
6790         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6791         replace with indent attribute
6792
6793         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6794         PANGO_SCALE
6795
6796         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6797         rearranging code to do that
6798         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6799         i.e. don't subtract the top_margin first, just to keep
6800         all margin-futzing in one place.
6801
6802         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6803
6804         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6805         special case of last line, Pango now handles this itself.
6806         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6807         Y coordinate
6808         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6809         (find_display_line_above): wasn't moving the byte index as it
6810         iterated over lines, so always returned byte 0. Also, port to use
6811         PangoLayoutIter.
6812         (find_display_line_below): same problem as
6813         find_display_line_above. Also, port to use PangoLayoutIter.
6814
6815 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6816
6817         * gdk/linux-fb/*.[ch]:
6818         Massive reindent to gtk+ standard. My hands hurt.
6819
6820         * gdk/linux-fb/gdkcolor-fb.c:
6821         Move GdkColorPrivateFB from inherited to windowing_data
6822
6823         * gdk/linux-fb/gdkcursor-fb.c:
6824         _gdk_cursor_new_from_pixmap made static
6825
6826         * gdk/linux-fb/gdkdnd-fb.c:
6827         GdkDragContextPrivate moved to windowing_data
6828
6829         * gdk/linux-fb/gdkdrawable-fb2.c:
6830         Removed endian.h, use glib endianness macros instead
6831         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6832         and GDK_DRAWABLE_IMPL_FBDATA
6833
6834         * gdk/linux-fb/gdkfont-fb.c:
6835         Add empty gdk_font_load(). Needed for linking of Gtk+.
6836
6837         * gdk/linux-fb/gdkimage-fb.c:
6838         Removed endian.h, use glib endianness macros instead
6839         Moved GdkImagePrivateFB to windowing_data
6840         gdk_image_new_bitmap didn't always allocate enough
6841         memory.
6842
6843         * gdk/linux-fb/gdkinput-ps2.c:
6844         Added semi-working support for MS serial mice.
6845
6846         * gdk/linux-fb/gdkprivate-fb.h:
6847         s/GdkWindowPrivate/GdkWindowObject/
6848         Removed GdkWindowPrivate typedef
6849         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6850         Removed GDK_DRAWABLE_P
6851         Move GdkColorPrivateFB from inherited to windowing_data
6852         Moved GdkImagePrivateFB to windowing_data
6853
6854         * gdk/linux-fb/gdkvisual-fb.c:
6855         Removed some unused debug code.
6856
6857         * gdk/linux-fb/gdkwindow-fb.c:
6858         Use stock cursors instead of including X headers.
6859         s/GdkWindowPrivate/GdkWindowObject/
6860
6861         * gdk/linux-fb/mitypes.h:
6862         Removed unused types.
6863
6864         * modules/linux-fb/basic.c:
6865         Use the pango fribidi wrappers.
6866
6867 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6868
6869         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6870         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6871         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6872         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6873         GEqualFunc where applicable.
6874         
6875         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6876         pango_font_description_equal as changed in pango.
6877         
6878         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6879
6880         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6881
6882         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6883
6884         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6885
6886         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6887
6888         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6889
6890         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6891         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6892
6893         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6894         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6895
6896 2000-11-12  Havoc Pennington  <hp@pobox.com>
6897
6898         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6899         dir to datadir/gtk+-2.0/demo
6900
6901         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6902         sorts of text widget and Pango font bugs. Urgh.
6903
6904         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6905
6906         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6907         tree that you should double click to see the demo. Fix 
6908         types of variables to reflect changed return values from 
6909         GtkTreeStore and GtkTreeViewColumn constructors.
6910
6911         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6912         newly-created buffer to prepare for GObject semantics
6913
6914         * gtk/testtext.c: don't leak the buffer with GObject semantics
6915
6916         * gtk/testtextbuffer.c: ditto
6917         
6918 2000-11-12  Havoc Pennington  <hp@pobox.com>
6919
6920         Rename this testgtk to gtk-demo to avoid confusion, and 
6921         install it so people can use it as a supplement to 
6922         the documentation.
6923         
6924         * demos/gtk-demo: Moved from demos/testgtk
6925
6926         * demos/testgtk: Removed
6927
6928         * configure.in: make Makefile in gtk-demo
6929         
6930         * demos/gtk-demo/Makefile.am: Install sample source to 
6931         datadir/gtk-demo (maybe there's a better place?), and 
6932         rename the binary to gtk-demo
6933         
6934         * demos/gtk-demo/main.c (load_file): Load installed sample
6935         source if source isn't found in pwd.
6936
6937 2000-11-09  Havoc Pennington  <hp@pobox.com>
6938
6939         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6940         argument to set the char displayed when visibility == FALSE
6941         (gtk_entry_create_layout): If !entry->visible, replace 
6942         all chars with the "invisible char"
6943
6944         * gtk/testgtk.c: Test the invisible_char deal
6945         
6946 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6947
6948         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6949         can't get a native font in the right encoding.
6950
6951 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6952
6953         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6954         respectively.
6955
6956 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6957
6958         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6959         Fix warning when moving between paragraphs.
6960
6961         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6962         delete => delete_from_cursor, insert => insert_at_cursor
6963
6964 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6965
6966         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6967
6968         * modules/input/imthai-broken.c: A Thai input method for use if
6969         Thai keys are really generating Latin1 keysyms.
6970
6971         * modules/input/Makefile.am: Build these.
6972
6973 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6974
6975         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6976         g_filename_{to,from}_utf8 now takes an extra parameter.
6977
6978         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6979         strftime into UTF-8.
6980
6981         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6982         calendars.
6983
6984         (gtk_calendar_paint_day_names): Draw day names in the right 
6985         place.
6986         
6987 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6988
6989         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6990         problem with using result of g_get_charset() backwards -
6991         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6992
6993         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6994         negative min_width/height and max_width/height to
6995         mean "requisition"; this allows setting a window
6996         to be user-resizable in only one direction easily.
6997
6998         * gtk/testgtk.c (create_main_window): Remove hard-coded
6999         usize - set a default size in the vertical direction.
7000
7001 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
7002
7003         * gtk/gtkrange.c: Add some missing casts. Support 
7004         2 and 3 button clicks on the arrows to mean 
7005         "move by pages" and "jump to end". (Like gtkspinbutton)
7006
7007 2000-11-12 Hans Breuer <Hans@Breuer.Org>
7008
7009         * gdk/win32/makefile.msc : reflect build module changes
7010
7011         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
7012         from GdkPixmap*, cast implementation member instead.
7013
7014         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
7015         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
7016         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
7017         more Gdi functions return value checking. 
7018         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
7019         GdkImagePrivateWin32 *.
7020
7021         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
7022         menus useable again. Add #pragma message to keep reminded on this issue.
7023         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
7024         windows. This allows to enable backing store on Win32!
7025
7026         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
7027         in drawable is of impl type. Correct specific type checks appropriate.
7028  
7029         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
7030         GDK_WINDOW_DESTROYED before allocating new resources.
7031
7032         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
7033
7034         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
7035         (gdk_window_foreign_new) initialize parent handle.
7036         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
7037
7038         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
7039         Let the GDI invalidate the window on MoveWindow call to fix scrolling
7040         problems (e.g. main buttons in testgtk). 
7041
7042 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
7043
7044         * gtk/gtkentry.c (gtk_entry_key_press): Call 
7045         gtk_widget_activate for GDK_Return.
7046
7047         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
7048         of preedit cursor position.
7049
7050 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
7051
7052         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
7053         static.
7054
7055 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
7056
7057         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
7058         out support for multiple locales; that simple doesn't
7059         work reliably with current Xlib
7060
7061         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
7062         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
7063         Add support for positioning the cursor within the preedit string.
7064
7065 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
7066
7067         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
7068         at XIM input method module.
7069
7070         * gtk/gtktextview.c: Check for bindings after passing
7071         events to im context filter.
7072
7073 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
7074
7075         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
7076         empty attribute lists properly.
7077
7078 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
7079
7080         * gtk/queryimmodules.c (main): Return non-zero exit
7081         status if errors were encountered querying any
7082         modules.
7083
7084         * modules/input/Makefile.am (moduledir): remove
7085         leftover bin program target.
7086
7087         * docs/make-todo: Fix typo in error message.
7088
7089 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
7090
7091         * configure.in: Add modules/input/Makefile
7092
7093 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
7094
7095         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
7096         don't include gtkthemes.h.
7097
7098         * gtk/testgtk.c gtk/testtext.c: Set environment variables
7099         to point
7100
7101         * gtk/Makefile.am: Add new .c and .h files, build 
7102         gtk-query-immodules and use it to create a gtk.immodules
7103         file for use of test programs.
7104
7105         * gtk/gtkpreview.c: remove extra blank line.
7106
7107 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
7108
7109         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
7110         Add the ability to add extra tables beyond the default
7111         one, and also the ability to have compose sequences 
7112         that are prefixes of other compose sequences. 
7113
7114         * gtk/gtkimcontextsimple.c: Export a preedit string which
7115         consists of possible candidates for keystrokes that have
7116         been entered but not yet committed.
7117
7118         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
7119         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
7120
7121         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
7122         Add a function to add input-method switching menu items
7123         to a menu.
7124
7125         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
7126         when switching input methods.
7127
7128         * gtk/gtkimcontextsimple.[ch]: Change the format of
7129         the compose table to allow compose tables of different
7130         lengths / sequence.
7131
7132 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
7133
7134         * gtk/gtkimmodule.[ch]: Support routines for loading
7135         GtkIMContext implementations dynamically at runtime.
7136
7137         * modules/input/imcyrillic-translit.c: A sample input
7138         method (based on GtkIMContextSimple with an extra table),
7139         which demonstrates preedit strings and the module
7140         system for input modules
7141
7142         * gtk/queryimmodules.c: Program to query the available
7143         input modules and write the results into a file.
7144          
7145         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
7146         extra config options "im_module_file" (cache file for
7147         input method modules), and "im_module_path" - path
7148         to look for modules when generating cache file.
7149
7150         This doesn't scale.
7151
7152 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
7153
7154         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
7155         generic code from gtkthemes into a new abstraction
7156         GtkModule which has the logic for implementing
7157         a loadable module which implements a number of 
7158         GObject types.
7159
7160 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
7161
7162         * gtk/gtkeditable.[ch]: Convert GtkEditable from
7163         a class into an interface  
7164         
7165         * gtk/gtkoldeditable.[ch]: Move the old editable
7166         implementation into here, so legacy widgets can
7167         still rely on the implemenation. GtkOldEditable
7168         exports GtkEditable. Make selection handling
7169         code use new text conversion functions (and
7170         handle UTF-8 as a side-effect). Use GtkClipboard
7171         for CLIPBOARD.
7172
7173         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
7174         Adopt to match above changes.
7175
7176         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
7177         avoid GtkOldEditable implementation. Restructure
7178         to reduce number of places that modify state directly.
7179         Move to GtkBindingSet. Display the preedit string.
7180         Queue recomputation of PangoLayout and scroll position
7181         to improve effiency of doing complex changes naively.
7182         Add a menu with cut/copy/paste and input method selection.
7183
7184 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
7185
7186         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
7187         to set preedit string and attributes; display preedit string by
7188         inserting string and attributes at cursor when creating the
7189         GtkTextLineDisplay.
7190
7191         * gtk/gtktextlayout.c: Move all conversions between byte
7192         positions in PangoLayout and GtkTextIter into new functions
7193         line_display_iter_to_index/index_to_iter that properly
7194         handle the preedit string.
7195
7196         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
7197         it to return const char * (eventually will end up
7198         as GCONST char *, most likely.)
7199
7200         * gtk/gtktextview.[ch]: Handle the preedit string, call
7201         gtk_im_context_reset() as necessary, add a menu to switch
7202         input methods.
7203         
7204         * gtk/gtktextlayout.[ch]: Remove useless
7205         gtk_text_layout_get_log_attrs() function.
7206
7207 2000-11-11  Tor Lillqvist  <tml@iki.fi>
7208
7209         * gdk/gdk.def
7210         * gtk/gtk.def: Update.
7211
7212         * gdk/win32/*.c: Add last argument to g_type_register_static()
7213         calls.
7214
7215         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
7216
7217         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
7218         generated by older wheel mouse drivers. Get the correct y
7219         coordinate from WM_MOUSEWHEEL messages.
7220
7221         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
7222         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
7223         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
7224         Debugging functions.
7225
7226         * gdk/win32/gdkprivate-win32.h: Declare them.
7227
7228         * gdk/win32/gdkinput-win32.h: Add declaration for
7229         gdk_input_window_destroy().
7230
7231         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
7232
7233 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
7234
7235         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
7236         function to help handle keeping things in sync.
7237
7238 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
7239
7240         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
7241         BOXED marshallers.
7242
7243         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
7244         (gtk_list_store_class_init): use the new BOXED marshallers.
7245
7246         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
7247         new_with_values to new_with_types.
7248         (gtk_tree_store_get_column_type): add this.
7249         (gtk_tree_store_class_init): use the new BOXED marshallers.
7250
7251         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
7252         mirror some POINTER marshallers.
7253
7254 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
7255
7256         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
7257         allow more interesting iterators.  Also, made the lifecycle of
7258         iterators more explicit.
7259
7260         * gtk/gtktreemodelsort.[ch]: New model for sorting.
7261
7262         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
7263         types.
7264
7265 2000-11-09  Alexander Larsson  <alexl@redhat.com>
7266
7267         * demos/testgtk/menus.c:
7268         Changes to make the new testgtk compile after
7269         gtk_menu_append was removed.
7270
7271         * gdk/linux-fb/gdkdrawable-fb2.c
7272         (gdk_fb_get_depth, gdk_fb_get_visual,
7273         gdk_drawable_impl_fb_class_init): Implement
7274         these drawable functions. Now GtkImages work again.
7275
7276         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
7277
7278         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
7279         
7280         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
7281         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
7282         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
7283         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
7284
7285 2000-11-08  Havoc Pennington  <hp@pobox.com>
7286
7287         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
7288         visible_set args, don't know where these had gone, I thought they
7289         used to be there
7290
7291         * gtk/testtext.c: Add a menu item to apply invisibility tag;
7292         now we can test the feature and see that it's totally broken.
7293
7294 2000-11-08  Havoc Pennington  <hp@pobox.com>
7295
7296         Make DND copy pixbufs and tags when source and target share a 
7297         tag table.
7298         
7299         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
7300         in-process GTK_TEXT_BUFFER_CONTENTS target
7301         (gtk_text_view_drag_data_received): Paste from
7302         GTK_TEXT_BUFFER_CONTENTS if we receive it.
7303
7304 2000-11-08  Alexander Larsson  <alexl@redhat.com>
7305
7306         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
7307         API changes.
7308
7309         * gtk/gtkmenu.c: Add support for scrolling menus.
7310         Remove gtk_menu_append/prepend/insert, these have been moved to
7311         gtkcompat.h as #defines.
7312
7313         * gtk/gtkcompat.h.in:
7314         Add compatibility #defines for gtk_menu_append/prepend/insert
7315
7316         * gtk/gtkmenu.h: Add data needed for scrolling menus.
7317         GtkMenuPositionFunc gets an extra argument push_in.
7318         gtk_menu_append/prepend/insert removed.
7319         
7320         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
7321         positioning behaviour to fit to scrolling menus.
7322
7323         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
7324         into menuitem->submeny. That is wrong, and broke torn
7325         off submenus of torn off menus, since they were unrealized
7326         when the first menu was unrealized.
7327
7328         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
7329         gtk_menu_shell_select_item() since these need to be overridden in
7330         GtkMenu.
7331
7332         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
7333         positioning behaviour to fit to scrolling menus.
7334         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
7335         the current item so that it is prelighted when the menu pops up.
7336         This is a workaround to the fact that the menu doesn't get the
7337         initial enter event (due to grabs).
7338
7339         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
7340         s/gtk_menu_append/gtk_menu_shell_append/
7341
7342         * gtk/gtknotebook.c:
7343         s/gtk_menu_insert/gtk_menu_shell_insert/
7344
7345         * gtk/testgtk.c (create_menu, create_menus):
7346         Create the first menu with 50 items so that menu scrolling
7347         can be tested.
7348         
7349         
7350         Patch from Jonathan Blandford  <jrb@redhat.com>
7351
7352         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
7353         system to handle size requests.  First, we ask what the size of
7354         the toggle is.  Then, when allocating the size, we allocate the
7355         toggle_size first.  This way we can have multiple menu-item
7356         classes w/o needing a seperate class for each.
7357
7358         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
7359         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
7360
7361         * gtk/gtkcheckmenuitem.c
7362         (gtk_check_menu_item_toggle_size_request): New function to handle
7363         the toggle size-request.
7364
7365 2000-11-07  Havoc Pennington  <hp@redhat.com>
7366
7367         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
7368         Half-ass somewhat fix this function, so that scrolling to the
7369         insertion point works. Pango hacking is in the future to really
7370         fix it.
7371
7372         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
7373         length of data, no longer used.
7374
7375         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
7376         method contents in here, get rid of destroy method
7377         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
7378         that were backward. Remove debug spew.
7379         (cut_or_copy): Make the clipboard work with insert_range to
7380         preserve tags and pixbufs, not just the primary selection.
7381
7382 2000-11-07  Havoc Pennington  <hp@redhat.com>
7383
7384         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
7385         to gtk_text_mark_get_visible
7386
7387         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
7388         bug that was generating an invalid iterator
7389
7390         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7391         ensure_char_offsets() in front of code placing the iter in an
7392         invalid state.
7393
7394         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7395         make override_location arg const
7396         (paste): Replace the selection if we paste into the 
7397         current selection
7398
7399         * gtk/gtkselection.h: Remove "GtkSelectioData"
7400         (struct _GtkSelectionData): move the definition here.
7401
7402         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7403         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7404
7405         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7406
7407         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7408         (gtk_text_buffer_insert_range_interactive): implement
7409         (gtk_text_buffer_get_tags): Remove, replaced by
7410         gtk_text_iter_get_tags()
7411
7412         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7413         limit parameter, to avoid infinite linear scan.
7414         (gtk_text_iter_backward_search): Add search limit
7415         (gtk_text_iter_forward_find_char): Add search limit
7416         (gtk_text_iter_backward_find_char): Add search limit
7417
7418 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7419
7420         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7421         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7422         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7423         gdk/linux-fb/gdkwindow-fb.c:
7424         use g_object_new() instead of g_type_create_instance() which
7425         is a private function for fundamental type implementations.
7426
7427         * gdk/linux-fb/gdkinput-ps2.c:
7428         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7429         instead just store the current modifier state. Add a (somewhat broken)
7430         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7431         Rename exported function gdk_input_ps2_get_mouseinfo to
7432         gdk_input_get_mouseinfo.
7433
7434         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7435         gdk/linux-fb/gdkwindow-fb.c:
7436         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7437         
7438
7439 2000-11-02  Havoc Pennington  <hp@redhat.com>
7440
7441         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7442         use stock buttons. Should be 100% source compatible, appropriate
7443         filesel fields now point to dialog->vbox and dialog->action_area.
7444         On the bizarre side, dialog->action_area and filesel->action_area
7445         are not the same widget.
7446         (gtk_file_selection_init): Put some padding around the selection
7447         entry, so it isn't touching the GtkDialog separator.    
7448
7449         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7450         use stock buttons, etc. Should also be source compatible.
7451         Set the dialog default title in _init not _new().
7452         
7453         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7454         Use stock buttons; don't put a button box inside the existing
7455         dialog button box. Don't bother with push/pop colormap anymore.
7456
7457         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7458         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7459         for message dialog, and necessary for the font selection and color
7460         selection with help and apply buttons.
7461         
7462         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7463         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7464         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7465         between buttons, put less padding around the action area.
7466         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7467         This will also exit the loop if the widget is hidden.
7468         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7469         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7470         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7471         special-case delete event.
7472
7473         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7474         formatting
7475         
7476 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7477
7478         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7479         button to temporarily disable position recording in the
7480         "saved position" test.
7481
7482 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7483
7484         * gtk/gtkthemes.c: added compat code that temporarily implements
7485         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7486         going to be revamped by owen's upcoming GtkModule patches, but
7487         untill then people want gtk to build, right? ;)
7488
7489 2000-11-04  Havoc Pennington  <hp@pobox.com>
7490
7491         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7492         list
7493
7494         * docs/Changes-2.0.txt: Add note about
7495         gtk_container_get_toplevels()
7496
7497         * gtk/gtktextview.h: formatting
7498         
7499         * gtk/gtktextview.c: don't start descriptions with "Returns",
7500         confuses gtk-doc
7501
7502 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7503
7504         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7505         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7506
7507 2000-11-03  Havoc Pennington  <hp@redhat.com>
7508
7509         * gtk/gtktexttagtable.c: Docs
7510         (gtk_text_tag_table_size): return a signed int
7511
7512         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7513         (gtk_text_tag_event): make the event_object a GObject
7514
7515         * gtk/gtktextview.c: Write API docs for all functions.
7516
7517         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7518         for gtk_text_view_get_window_type() called on one of the private
7519         windows.
7520
7521         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7522         directly, call get_buffer() which demand-creates a default
7523         buffer. So gtk_text_view_new() can be used to create a view with a
7524         default buffer in it, if you just want an empty text box users can
7525         put data in. Useful for GUI builders also.
7526
7527 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7528
7529         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7530         the charset encodign portion MUST be in lowercase.
7531         * gtk/gtkrc.az: added file for Azeri language
7532
7533 2000-11-03  Havoc Pennington  <hp@redhat.com>
7534
7535         Get widgets working on the btree/buffer side. Display of them 
7536         still doesn't work.
7537         
7538         * gtk/gtktextview.c: start implementing child widget stuff
7539
7540         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7541
7542         * gtk/gtktextlayout.c: handle embedded widgets
7543
7544         * gtk/gtktextdisplay.c: handle embedded widgets
7545
7546         * gtk/gtktextchild.c: Implement all the child anchor goo
7547
7548         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7549         function
7550
7551         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7552         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7553         creating a child anchor or a pixbuf segment.
7554         (gtk_text_btree_create_child_anchor): new function
7555         (gtk_text_btree_unregister_child_anchor): new function
7556
7557         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7558         allocate_child signal on GtkTextLayout
7559
7560         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7561         values
7562         (gtk_text_iter_get_child_anchor): new function
7563
7564         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7565         default handler for the changed signal, which calls
7566         gtk_text_buffer_set_modified(), instead of just always emitting
7567         changed then calling set_modified() manually. I guess this is
7568         maybe more flexible. It seems logical.
7569
7570 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7571
7572         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7573         now.
7574
7575         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7576
7577 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7578
7579         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7580         been marked static.
7581
7582 2000-11-02  Havoc Pennington  <hp@redhat.com>
7583
7584         * gtk/testgtk.c (create_labels): had a test backward
7585
7586         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7587         fields, so the dest GC ends up with the correct clip origin, 
7588         etc. Fixes a bug where colored labels didn't redraw 
7589         properly.
7590
7591 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7592
7593         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7594         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7595         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7596         Add last argument to t_type_register_static call.
7597         
7598         * gdk/linux-fb/gdkdrawable-fb2.c:
7599         Add last argument to t_type_register_static call.
7600         export the get_image drawable virtual function.
7601
7602         * gdk/linux-fb/gdkimage-fb.c:
7603         Add last argument to t_type_register_static call.
7604         rename gtk_image_get to _gdk_fb_get_image and
7605         export it for use by gdkdrawable-fb2.
7606
7607         * gdk/linux-fb/gdkprivate-fb.h:
7608         export _gdk_fb_get_image.
7609
7610         * gdk/linux-fb/gdkselection-fb.c:
7611         Add new api call stubs.
7612
7613         * gtk/Makefile.am:
7614         Missing ( in linux-fb part.
7615
7616         * modules/linux-fb/Makefile.am:
7617         Must link with gdk_pixbuf or get unresolved symbol.
7618
7619 2000-11-01  Havoc Pennington  <hp@pobox.com>
7620
7621         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7622         GTK_TYPE_TEXT_ITER and BOXED marshallers
7623
7624         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7625
7626         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7627         
7628         * gtk/gtk-boxed.defs: add GtkTextIter
7629
7630         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7631         properly use OBJECT and BOXED
7632
7633 2000-11-01  Havoc Pennington  <hp@redhat.com>
7634
7635         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7636
7637         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7638         before returning it. 
7639         
7640 2000-11-01  Havoc Pennington  <hp@redhat.com>
7641
7642         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7643         Clip the rectangle to be rendered to the drawable, since
7644         get_from_drawable() requires a region within the drawable
7645
7646 2000-11-01  Havoc Pennington  <hp@redhat.com>
7647
7648         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7649         from coordinates.
7650
7651 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7652
7653         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7654         it isn't NULL.
7655
7656 2000-11-01  Havoc Pennington  <hp@pobox.com>
7657
7658         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7659         on a label
7660         (gtk_label_finalize): unref the attr list if any.
7661
7662         * gtk/testgtk.c (create_get_image): close test on second click
7663         (make_message_dialog): close dialog if it exists
7664
7665         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7666
7667         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7668         gdk-pixbuf
7669
7670         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7671         from Pango markup format
7672         (gtk_label_set_markup_with_accel): ditto but with accelerator
7673         parsing
7674
7675         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7676
7677         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7678         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7679         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7680         call gdk_window_get_origin().
7681
7682         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7683         implement GDK_PIXBUF_ALPHA_FULL
7684         
7685 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7686
7687         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7688         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7689         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7690         multiple handlers respectively, instead of only treating the
7691         first handler found (bug reported by owen).
7692
7693 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7694
7695         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7696
7697         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7698
7699         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7700         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7701         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7702
7703         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7704         widget.  Needs writing someday.
7705
7706         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7707         the docs.
7708
7709 2000-10-30  Havoc Pennington  <hp@redhat.com>
7710
7711         * gtk/gtktextview.h, gtk/gtktextview.c:
7712         Rename delete_at_cursor delete_from_cursor, and 
7713         move to move_cursor.
7714
7715 2000-10-30  Havoc Pennington  <hp@redhat.com>
7716
7717         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7718         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7719         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7720         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7721         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7722         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7723         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7724         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7725         gtktexttypes.h, gtktextview.c, gtktextview.h:
7726
7727         Massive reindentation and reformatting. Arg alignment and comments
7728         still need fixing in various places.
7729
7730 2000-10-30  Havoc Pennington  <hp@redhat.com>
7731
7732         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7733         to be named insert_at_cursor and delete_at_cursor so C++ can
7734         handle them.
7735
7736 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7737
7738         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7739         to get a double directory separator in case the home directory
7740         ends with one. This would cause trouble especially on Windows,
7741         where the path will be confused with the syntax for an an UNC
7742         (network share) path \\server\share\path.
7743         (gtk_rc_add_initial_default_files): Ditto.
7744
7745 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7746
7747         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7748
7749         * gtk/gtktextview.c: Use correct marshallers.
7750
7751 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7752
7753         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7754         use new iter stuff, and added all the appropriate signals et al.
7755
7756         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7757         code is internal to gtk only.
7758
7759 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7760
7761         * gtk/gtk.def
7762         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7763         glib-genmarshal etc.
7764
7765 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7766
7767         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7768         parallel builds.
7769
7770 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7771
7772         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7773
7774 2000-10-27  Robert Brady  <robert@suse.co.uk>
7775
7776         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7777         en_GB (British), ia (Interlingua).
7778
7779 2000-10-26  Havoc Pennington  <hp@redhat.com>
7780
7781         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7782
7783         Fixed output of:
7784         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7785         
7786         * gtk/gtktextsegment.c (char_segment_new): rename
7787         (_char_segment_new_from_two_strings): rename
7788         (_toggle_segment_new): rename
7789         
7790         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7791         (make_clipboard_widget): make it static
7792         (text_get_func): static
7793         (text_clear_func): static
7794
7795         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7796         static
7797         (hex_changed): make it static
7798         (hsv_changed): make it static
7799         (opacity_entry_changed): make it static
7800
7801         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7802         (toggle_segment_check_func): rename with _gtk
7803
7804         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7805         (_widget_segment_new): rename
7806         (_widget_segment_add): rename
7807         (_widget_segment_remove): rename
7808         (_widget_segment_ref): rename
7809         (_widget_segment_unref): rename
7810
7811         * gtk/gtktextmark.c (_mark_segment_new): Rename
7812         _gtk_mark_segment_new   
7813
7814 2000-10-26  Havoc Pennington  <hp@redhat.com>
7815
7816         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7817         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7818         types
7819
7820         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7821         marshaller types
7822
7823         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7824         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7825         license on these files.
7826
7827         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7828         work.
7829
7830         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7831         runtime random number different for each tree, instead of 
7832         a constant I made up.
7833
7834 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7835
7836         * gtk/Makefile.am: buncha cleanups, kludged build sources
7837         dependencies with a Makefile: oldest-source-stamp dependancy
7838         for the moment. automake is really fighting us here, with
7839         intentionally not allowing user-defined rules or dependancies
7840         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7841
7842         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7843         to public headers. tehy have a comment stating that they are
7844         "semi-public" aren't included by gtk.h and if enums popup there,
7845         they can be /*< skip >*/-ed.
7846
7847         * gtk/gtktextlayout.h: 
7848         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7849         added LGPL... <SIGH>
7850
7851 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7852
7853         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7854         GtkTreeIter.  Added iterators everywhere.
7855
7856         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7857
7858         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7859
7860         * gtk/gtktreestore.c: Changed to use the iterators.
7861
7862         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7863         iterators tomorrow.
7864
7865         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7866         iterators tomorrow.
7867
7868         * gtk/treestoretest.c: Changed to use iterators.
7869
7870         * demos/testgtk/main.c: Moved to use the new iterator system.
7871
7872 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7873
7874         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7875         localization misbehaviour.
7876
7877         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7878         a useless type without copy/free.
7879
7880         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7881         of GTK_TYPE_CTREE_NODE.
7882
7883 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7884
7885         * gtk/gtksignal.c:
7886         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7887         applicable.
7888
7889         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7890         gtk_selection_data_copy and gtk_selection_data_free
7891         do GtkSelectionData work as params in signals.
7892
7893 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7894
7895         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7896         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7897         couldn't they at least give it a non-standard name?
7898         
7899         * gtk/gtktextlayout.c: arg! yet another implementation of
7900         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7901
7902         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7903         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7904         home. now i know this _is_ a conspiracy.
7905
7906         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7907         ::state-changed.
7908
7909         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7910         (gtk_accel_group_create_add): marshaller signature fixups.
7911
7912         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7913         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7914
7915         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7916         anymore.
7917
7918 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7919
7920         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7921         due to the signal system changes, it wouldn't build currently. to
7922         be fixed soon.
7923
7924         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7925
7926         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7927         so it needs gtk_marshal_VOID__ENUM() instead of
7928         gtk_marshal_NONE__UINT().
7929
7930         * gdk/gdk*.c: adapted type registration functions.
7931
7932         * gtk/gtkbindings.c:
7933         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7934         gone.
7935
7936         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7937
7938         * gtk/gtkobject.c:
7939         (gtk_object_destroy):
7940         (gtk_object_shutdown): fixed recursion guards. basically we have to
7941         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7942         is called during ::destroy, and avoid recursion there.
7943
7944         * gtk/gtktypeutils.c:
7945         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7946         boxed_copy/boxed_free. this needs a more general solution based on a
7947         publically installed code-generator utility.
7948
7949         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7950         glib's gobject has support for that now.
7951         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7952
7953 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7954
7955         * gtk/gtksignal.[hc]:
7956         * gtk/gtkmarshal.[hc]:
7957         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7958         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7959         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7960         care of that.
7961
7962         * *.c: marshaller name fixups.
7963
7964         * gtk/gtkmarshal.list: added a comment briefing the format.
7965
7966 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7967
7968         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7969         compatibility macros here now. more specifically, most of
7970         the API is preserved (yes, _most_, nonwithstanding the
7971         following exceptions listed, the API is stil lHUGE ;)
7972         things that got removed completely:
7973         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7974         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7975         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7976         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7977         gtk_signal_remove_emission_hook().
7978         non-functional functions variants:
7979         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7980         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7981         not supported anymore.
7982         (gtk_signal_compat_matched): new internal function to aid
7983         implementation of the compatibility macros, it  provides
7984         functionality to block/unblock/disconnect handlers based
7985         on func/data.
7986
7987         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7988
7989         * *.c: adaptions to new type registration API signatures.
7990
7991 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7992
7993         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7994
7995 2000-10-25  Robert Brady  <robert@suse.co.uk>
7996
7997         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7998         gdk_property_delete): If window == NULL, assume the root window.
7999         (restoring the behaviour that was in 1.2).
8000         
8001         * gtk/testtext.c (save_buffer): Allow creation of new files when
8002         saving.
8003
8004         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
8005         calls to read().
8006
8007 2000-10-25  Tor Lillqvist  <tml@iki.fi>
8008
8009         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
8010
8011         * gdk/win32/gdkdrawable-win32.c
8012         * gdk/win32/gdkimage-win32.c
8013         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
8014         X11 backend.
8015
8016         * gdk/win32/gdkcc-win32.c
8017         * gdk/win32/gdkcolor-win32.c
8018         * gdk/win32/gdkfont-win32.c
8019         * gdk/win32/gdkinput-win32.c
8020         * gdk/win32/gdkmain-win32.c
8021         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
8022
8023 2000-10-24  Havoc Pennington  <hp@redhat.com>
8024
8025         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
8026         it a static function
8027
8028         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
8029         redraw text when a tag is applied to it.
8030
8031         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
8032         (gtk_text_tag_affects_nonsize_appearance): private functions to
8033         see if a tag requires various kinds of redraw/layout to be queued
8034         up.
8035
8036         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
8037
8038         * gtk/testtext.c (fill_example_buffer): Put the cursor 
8039         at the start of the buffer, so search works by default
8040
8041         * gtk/gtktextiter.c (lines_match): init match_start always
8042
8043         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
8044         function, get iter at a line + a byte index
8045
8046         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
8047         to set byte position within a line
8048         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
8049
8050 2000-10-23  Havoc Pennington  <hp@redhat.com>
8051
8052         * gtk/testtext.c: Re-enable the "find" dialog
8053
8054         * gtk/testgtk.c: Add test for gdk_drawable_get_image
8055         
8056         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
8057         the arguments to gdk_draw_drawable were in the wrong order
8058         (gdk_window_paint_init_bg): This function was ignoring the
8059         init_region, instead of clipping to it, so the entire backing
8060         pixmap was cleared on every begin_paint()
8061         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
8062         was in here again, the loop kept using the same GtkWindowPaint
8063         over and over.
8064         (gdk_window_begin_paint_region): Fix a bug where we had two
8065         x_offset instead of x_offset and y_offset
8066
8067         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
8068         before we get the image.
8069         (gdk_draw_drawable): get the composite before we draw the drawable.
8070         (gdk_drawable_real_get_composite_drawable): default
8071         get_composite_drawable implementation that returns the drawable 
8072         itself
8073
8074         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
8075         get_composite_drawable virtual function
8076
8077         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
8078         list-walking bug
8079
8080         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
8081         make this work if the source drawable is a GdkDrawableImplX11
8082         instead of a public drawable type. This is really broken; the
8083         problem is that GdkDrawable needs a virtual method get_xid(), but
8084         of course that doesn't work in practice. Enter RTTI.
8085
8086         Also, improve mismatched depth message.
8087
8088         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
8089         GdkPixmap
8090
8091         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
8092         install _gdk_x11_get_image as our implementation of get_image
8093         
8094         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
8095         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
8096
8097         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
8098         gdk_drawable_get_image
8099
8100         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
8101
8102         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
8103         get_image
8104
8105         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
8106         trailing semicolon after for loop
8107
8108 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
8109
8110         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
8111         where font_desc for widget's context lagged widget's font_desc by
8112         one step.
8113
8114 2000-10-22  Tor Lillqvist  <tml@iki.fi>
8115
8116         * gdk/win32/gdkgc-win32.c
8117         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
8118
8119         * gtk/makefile.mingw.in
8120         * gtk/gtk.def: Updates.
8121
8122         * gtk/testgtk.c: sleep() is called _sleep in MS's C
8123         library.
8124
8125         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
8126
8127         * gtk/makefile.msc: Remove
8128
8129         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
8130
8131         * gtk/Makefile.am: Add it.
8132
8133         * configure.in: Generate it.
8134
8135         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
8136         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
8137         something even if not implemented, to satisfy picky MSVC.
8138
8139         Patches by Hans Breuer:
8140         
8141         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
8142         SetBkMode() and SetTextAlign() before calling
8143         pango_win32_render().
8144
8145         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
8146         Set hcliprgn to NULL after destroying it.
8147         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
8148
8149         * gdk/win32/gdkgeometry-win32.c
8150         (_gdk_windowing_window_queue_antiexpose): More effective
8151         implementation.
8152
8153         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
8154         depth as default, not the visual's.
8155
8156         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
8157         against empty title.
8158
8159         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
8160         IMAGE_PRIVATE_DATA.
8161
8162         * gdk/win32/gdkimage-win32.c: Use it.
8163
8164 2000-10-22  Robert Brady  <robert@suse.co.uk>
8165
8166         * configure.in: Check for bind_textdomain_codeset
8167
8168         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
8169         present, make use of it.
8170
8171         Add a translatable string "default:LTR" which, if translated
8172         to "default:RTL", will cause the default direction to be
8173         Right-to-Left.
8174
8175         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
8176         direction if marked as flippable.
8177
8178         * gtk/gtkhscale.c: Mark widget as flippable.
8179         
8180 2000-10-04  Havoc Pennington  <hp@redhat.com>
8181
8182         * gtk/testgtk.c (create_buttons): create some stock buttons
8183         with the default accel group
8184         (create_image): test some new GtkImage features
8185         (make_message_dialog): test GtkMessageDialog
8186         (create_modal_window): fix someone's bizzarro indentation
8187
8188         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
8189         GTK_WIN_POS_CENTER_ON_PARENT. 
8190         Add "destroy with parent" setting, which means the window goes
8191         away with its transient parent.
8192         (gtk_window_get_default_accel_group): get the default accel group
8193         for the window.
8194         (gtk_window_set_destroy_with_parent): set/unset destroy with
8195         parent flag
8196         (gtk_window_read_rcfiles): invalidate icon set caches
8197         after reloading rcfiles 
8198
8199         * gtk/gtkenums.h (GtkWindowPosition): add
8200         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
8201         on its parent window when the dialog is mapped for the first time.
8202
8203         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
8204         a simple message dialog class
8205         
8206         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
8207         handler to emit response signal, and maybe later it would
8208         honor a hide_on_delete flag - though that isn't there yet.
8209         Set border width on the vbox to 2, so we get some padding.      
8210         Use a button box for the action area.
8211         (gtk_dialog_key_press): synthesize a delete event if Esc
8212         is pressed and the GtkWidget key press handler didn't 
8213         handle the escape key.
8214         (gtk_dialog_new_with_buttons): new function creates a dialog
8215         with some default buttons in it.
8216         (gtk_dialog_add_action_widget): add an activatable widget
8217         as a button in the dialog - you can also add a non-activatable
8218         widget by accessing the action area directly.
8219         (gtk_dialog_add_button): add a simple button - stock ID or 
8220         label - to the action area
8221         (gtk_dialog_response): emit response signal
8222         (gtk_dialog_run): block waiting for the dialog, return 
8223         the response. Override normal delete_event behavior, so that 
8224         delete_event does nothing inside gtk_dialog_run().
8225
8226         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
8227         emitted when an action widget is clicked or the dialog gets
8228         delete_event
8229
8230         * gtk/gtk.h: add gtkmessagedialog.h
8231
8232         * gtk/Makefile.am: add gtkmessagedialog.[hc]
8233
8234 2000-10-18  Havoc Pennington  <hp@redhat.com>
8235
8236         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
8237         where any number of empty lines would get skipped
8238
8239         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
8240         edge.
8241
8242         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
8243         warning about invalid iterators (explain more thoroughly)
8244         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
8245
8246         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
8247         big
8248
8249         * demos/*.c: Add error handling
8250
8251         * gtk/gtktextbuffer.c: don't modify const iterators
8252
8253         * gtk/gdk-pixbuf-loader.c: Add full error handling here
8254
8255         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
8256         on file load
8257
8258         * gtk/gtkiconfactory.c: Update to reflect addition of error
8259         handling to gdk-pixbuf loaders
8260
8261 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
8262
8263         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
8264         move to new modularized testgtk.
8265
8266 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
8267
8268         * gtk/gtktreeview.c: Draw the arrows correctly.
8269
8270         * gtk/gtktreemodel.c: Added user docs.
8271
8272         * gtk/gtk.h: remove gtktreedatalist.h.
8273
8274         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
8275         parent when generating my type.
8276
8277         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
8278         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
8279
8280 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8281
8282         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
8283         GtkTreeModel from object to interface.
8284
8285 2000-10-16  Havoc Pennington  <hp@redhat.com>
8286
8287         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
8288         compilation
8289
8290 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
8291
8292         * gtk/gtktreeselection.c: Add API documentation to all public
8293         functions.
8294
8295         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
8296         functions.
8297
8298 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
8299
8300         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
8301         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
8302         docs to all public functions.
8303
8304         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
8305         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
8306         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
8307         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
8308         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
8309         issue.
8310
8311 2000-10-14  Robert Brady  <robert@suse.co.uk>
8312
8313         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
8314
8315 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
8316
8317         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
8318         values other then G_TYPE_STRING.
8319         * gtk/gtktreeselection.c: Minor commenting updates.
8320         * gtk/gtktreeview.c: Format updates.
8321
8322 2000-10-09  Tor Lillqvist  <tml@iki.fi>
8323
8324         * README.win32: Update.
8325
8326         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
8327         lines that had been deleted by mistake (?).
8328
8329         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
8330         also the case fg==white and bg==black (but still not randomly
8331         coloured cursors). Thanks to Wolfgang Sourdeau.
8332
8333         * gdk/win32/*.c: Silence gcc -Wall.
8334
8335         * gtk/gtk.def: Add missing entry points.
8336
8337         Fixes by Hans Breuer:
8338
8339         * gdk/makefile.msc
8340         * gdk/win32/makefile.msc: Update.
8341
8342         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
8343         some MSVC thing, presumably), cause breakpoint on failures. Add
8344         GDK_NOR case. Call g_log_set_always_fatal.
8345
8346         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
8347         should be pased by reference.
8348         
8349         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
8350         
8351         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
8352
8353         * gdk/win32/gdkevents-win32.c
8354         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
8355
8356         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
8357         implementation object.
8358
8359         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
8360         not just windows.
8361         
8362         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
8363         Use the wrapper object.
8364         
8365 2000-10-06  Havoc Pennington  <hp@redhat.com>
8366
8367         * Makefile.am (SRC_SUBDIRS): contrib subdir
8368
8369         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
8370         so it can be used in Xlib version
8371
8372         * demos/testpixbuf.c (update_timeout): error checking from 1.0
8373         tree
8374
8375         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
8376         change from 1.0 tree that returns first frame of animation
8377         if the loaded file is an animation.
8378
8379         * contrib: add new directory to hold stuff that comes with GTK+
8380         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
8381         
8382         * configure.in: add contrib/*
8383
8384 2000-10-05  Havoc Pennington  <hp@redhat.com>
8385
8386         * demos/testpixbuf-save.c: add pixbuf save test
8387
8388         * demos/Makefile.am: add testpixbuf-save.c
8389
8390 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8391
8392         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8393         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8394         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8395         * gtk/gtktreeselection.[ch]: Replaced
8396         "node_selected"/"node_unselected" signal with "selection_changed"
8397         signal.
8398
8399 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8400
8401         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8402         tree widget.
8403
8404 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8405
8406         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8407         drawing.
8408
8409 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8410
8411         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8412         Move list pointer forwards before removing item from
8413         list. (Crash reported by Salmaso Raffaele)
8414
8415         * gdk/gdkwindow.h: Remove spurious trailing ,
8416
8417         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8418         dependencies on uninstalled libraries, sorry folks.
8419
8420 2000-10-04  Havoc Pennington  <hp@redhat.com>
8421
8422         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8423         gtk/gtkiconfactory.c: Fix copyrights    
8424
8425         * demos/testpixbuf.c: add inline pixbuf test
8426         
8427 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8428
8429         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8430         Add gdk_window_iconify.
8431
8432         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8433         (gdk_window_set_geometry_hints): Add win_gravity
8434         to geometry structure.
8435
8436         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8437         Implement _NET_WM_PING.
8438
8439         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8440         Set _NET_WM_PID on the client leader.
8441
8442         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8443         Handle UTF-8 better.
8444
8445         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8446         UTF-8 better, set _NET_WM_NAME as well. Only set
8447         icon name if it hasn't previously been explicitely 
8448         set.
8449
8450 2000-10-03  Havoc Pennington  <hp@redhat.com>
8451
8452         * gtk/testtextbuffer.c: clean up trailing whitespace,
8453         add extensive tests for tag toggle iteration.
8454         
8455         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8456         distance
8457
8458         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8459         optimize case where the tag root is on level 1
8460         (gtk_text_line_previous_could_contain_tag): attempt to implement
8461         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8462         functionality
8463
8464         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8465         Implement this, though not very efficiently.
8466
8467         * gtk/gtktextiterprivate.h: reformat
8468
8469         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8470         iterator
8471
8472         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8473         this to properly revalidate the iterators.
8474
8475         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8476         properly at the end of the line (and therefore on empty lines)
8477
8478         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8479         maybe we should return a value...
8480
8481 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8482
8483         * config.h.win32: Guard definition of alloca(). glib.h now handles
8484         that.
8485
8486         * gdk/gdk.def
8487         * gtk/gtk.def: Add new entry points.
8488
8489         Changes just to make GTK+ build without errors on Win32. No hope
8490         of it working in its current state, though...:
8491         
8492         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8493         some functions from the X11 backend, just to make GTK+ build.
8494
8495         * gdk/makefile.mingw.in
8496         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8497         number. Add new object files.
8498
8499         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8500         GetMessageTime to get timestamp (where on X11 uses
8501         gdk_x11_get_server_time()).
8502
8503 2000-10-02  Havoc Pennington  <hp@pobox.com>
8504
8505         * gtk/gtktextview.c: text_window_* weren't static and should have
8506         been.
8507         Start work on child widgets; not yet complete, syncing to 
8508         office computer.
8509
8510         * gtk/gtktextchild.h: change this to contain a public interface,
8511         starting work on child interfaces.
8512         * gtk/gtktextchildprivate.h: move private interfaces here
8513
8514         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8515
8516         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8517         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8518         gtk/gtktextmark.c: copyright notices
8519
8520         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8521         internal functions      
8522
8523         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8524         internal function
8525
8526         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8527         Reformatting    
8528
8529 2000-09-30  Havoc Pennington  <hp@pobox.com>
8530
8531         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8532         NULL start/end pointers
8533
8534         * gtk/gtktextbuffer.c: Write some docs
8535         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8536         NULL, so you can just check whether there's a selection.        
8537
8538         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8539         cleanup_line or segments_changed ourselves, it gets done 
8540         in unlink_segment
8541
8542         * gtk/gtktextmark.h:
8543         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8544         
8545         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8546
8547         * gtk/gtktextmark.c: delete some more old Tk cruft
8548
8549         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8550         mark before removing it, so we can emit MARK_DELETED with a valid
8551         pointer.
8552         (gtk_text_buffer_mark_set): hold ref across signal emission
8553
8554         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8555         whining about attempts to delete special marks
8556
8557         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8558         underscore, since it's internal.
8559
8560         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8561         now implemented in terms of iterators in gtktextiter.h
8562
8563         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8564         New function, destructively sets contents of buffer. Also 
8565         a convenient way to clear the buffer by setting text to ""
8566
8567         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8568         multiline string literal
8569
8570         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8571         text changes.
8572
8573         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8574         is not dereferenceable
8575         (gtk_text_iter_forward_lines): fix return value
8576
8577 2000-09-29  Havoc Pennington  <hp@redhat.com>
8578
8579         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8580
8581         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8582         that set border window size to have nicer name
8583         (gtk_text_view_mark_set_handler):  Fix this to have the 
8584         right signature.
8585
8586         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8587
8588         * gtk/testtext.c: Update with API changes, put line numbers on 
8589         both sides.
8590         
8591         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8592         with this
8593
8594         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8595         pixbuf; delete a big block of #if 0 Tk code
8596
8597         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8598         insert_pixmap with insert_pixbuf
8599
8600 2000-09-29  Martin Baulig  <baulig@suse.de>
8601
8602         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8603         confusion with the GdkPixbuf of the GNOME 1.x platform.
8604
8605 2000-09-29  Havoc Pennington  <hp@pobox.com>
8606
8607         * gtk/gtktextview.c: Implement the side windows.
8608
8609         * gtk/testtext.c: Implement simple line numbering in the 
8610         left side window; seems to make scrolling sloooow. Oops.
8611         Also, cursor blink is for some reason causing redraws
8612         of the line numbers. Should investigate...
8613
8614 2000-09-28  Havoc Pennington  <hp@redhat.com>
8615
8616         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8617         scrolling child windows, and draw focus rectangle properly.
8618         
8619         (gtk_text_view_buffer_to_window_coords):
8620         Coordinate transformation to deal with all these freaking windows
8621         and offsets
8622         (gtk_text_view_window_to_buffer_coords): transform the other way
8623
8624         * gtk/testtext.c (create_buffer): Update to match Pango API change
8625
8626         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8627         anonymous tags
8628         (foreach_unref): don't emit remove signal from finalize, just
8629         set tag's parent to NULL
8630
8631 2000-09-26  Havoc Pennington  <hp@redhat.com>
8632
8633         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8634         Fix some warnings       
8635
8636 2000-09-26  Havoc Pennington  <hp@redhat.com>
8637
8638         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8639         headers into the private header list
8640
8641         * Makefile.am (pkgconfig_DATA): install pkg-config files
8642
8643         * configure.in: add pkg-config files
8644
8645         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8646
8647         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8648         outstanding icon caches on theme change.
8649
8650         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8651         important types:
8652
8653         (GtkIconSource): Specification for creating a pixbuf 
8654         appropriate for a direction/state/size triplet from 
8655         a source pixbuf or filename
8656
8657         (GtkIconSet): List of GtkIconSource objects that are used to
8658         create the "same" icon (e.g. an OK button icon), and cache for
8659         rendered icons
8660
8661         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8662         up the icon set for a given stock ID.  GTK maintains a stack of
8663         GtkIconFactory to search, and applications or libraries can add
8664         additional icon factories on top of the stack
8665         
8666         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8667         the set of GtkIconSource specified for a given stock ID into 
8668         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8669         RcStyle, under the specified stock ID.
8670
8671         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8672         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8673         This allows people to theme how prelight, insensitive, etc. are
8674         done.
8675
8676         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8677         icon factories for a style, and return the resulting 
8678         icon set if any.
8679
8680         (gtk_style_render_icon): Render an icon using the render_icon 
8681         method in the GtkStyleClass.
8682
8683         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8684         Use the style for a given widget to look up a stock ID, get the
8685         icon set, and render an icon using the render_icon method 
8686         of the style
8687
8688         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8689         (contains information about a stock item), the built-in stock item
8690         IDs, and functions to add/lookup stock items.
8691
8692         * gtk/stock-icons/*: Stock icons that come with GTK
8693
8694         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8695         a button based on a GtkStockItem
8696         (gtk_button_new_accel): Takes a uline string and accel group, and
8697         installs the accelerator.
8698
8699         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8700         image-display widget.
8701
8702 2000-09-25  Havoc Pennington  <hp@redhat.com>
8703
8704         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8705
8706         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8707         Fix a bug when removing node data, we didn't properly 
8708         re-splice the linked list after removing the data.
8709
8710         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8711         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8712
8713         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8714
8715         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8716         for the layout from the GtkTextTag.
8717
8718         * gtk/gtktexttypes.h: delete tab and search cruft, 
8719         remove g_convert() in favor of GLib version
8720
8721         * gtk/gtktexttypes.c: remove tab implementation from here,
8722         move to Pango
8723
8724         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8725         tab stuff using new PangoTabArray from Pango
8726
8727         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8728         unused border_width stuff
8729
8730 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8731
8732         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8733         glib) and now useless utf_to_latin1() latin1_to_utf()
8734
8735         * gtk/gtktextview.[ch]: Change ::move_insert and
8736         ::delete_text action signals to ::move and ::delete;
8737         create the signals with the right enumeration type,
8738         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8739         C-v bindings, change Home, End to move to beginning/end
8740         of line, Add C-Home C-End to move to beginning/end
8741         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8742         combine ::scroll_text into ::move; use new GtkSelectionData
8743         functions to simplify DND text handling.
8744         
8745         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8746         deletion enumerations here, rename enumeration values to 
8747         be consistently plural.
8748
8749         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8750         for cut/copy/paste and primary selection.
8751
8752         * gtk/gtktextbuffer.[ch]: Remove excess time and
8753         'interactive' arguments from cut/copy/paste;
8754         rename cut to cut_clipboard, etc; remove
8755         gtk_text_buffer_get_clipboard_contents().
8756
8757         * gtk/gtktextlayout.[ch]: Add 
8758         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8759         line ends.
8760
8761         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8762         Functions to set or get a UTF-8 string on the selection
8763         data.
8764
8765         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8766         interfaces.
8767
8768         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8769         created widgets - one of these is useless if we don't.
8770
8771         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8772         a public function clear all targets registered for the
8773         widget.
8774
8775         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8776         Never call gtk_widget_realize() - that was just asking
8777         for bizarre side-effects.
8778
8779         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8780         gdk_selection_owner_set even if the widget is the
8781         same so that we reliably update the timestamp on
8782         the server.
8783
8784         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8785         gdk_x11_get_server_time() function.
8786         
8787         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8788         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8789         Add some tricky filtering on serial numbers for
8790         selection clear events to fix up long-standard
8791         race condition FIXME's in gtkselection.c.
8792
8793         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8794         routines to convert from utf8 to compound text or
8795         STRING and from a text property to UTF-8.
8796
8797         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8798         a convenience function gdk_get_current_event_time().
8799
8800         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8801         and free selection_data->data properly
8802
8803 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8804
8805         * gtk/gtkthemes.c: Remove some unecessary includes.
8806
8807 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8808
8809         * gtk/gtktextdisplay.c
8810         * gtk/gtktextlayout.c
8811         * gtk/gtktexttag.c
8812         * gtk/gtktexttag.h
8813         * gtk/testtext.c: Change the overstrike property to strikethrough,
8814         to closer match pango.
8815
8816 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8817
8818         * gtk/gtktextview.c: Fix up visibility so that focus,
8819         cursor_visible and blink interact properly.  Reenable cursor blink
8820         which had been roughly disabled. Make blink and focus
8821         properly per-view.
8822
8823         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8824         Add a flag for whether to display insertion cursor and
8825         a function to set the flag.
8826
8827         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8828         get_line_y() to get_line_yrange(), to be a bit more generally
8829         useful.
8830
8831 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8832
8833         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8834           do stop_navigating_submenu, to clear last timeout properly.
8835           Also in gtk_menu_motion_notify move ignore_enter above
8836           the conditional to make it always happen as suggested by Owen
8837
8838 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8839
8840         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8841
8842         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8843         w32api headers.
8844
8845         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8846         declarations.
8847
8848         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8849         (gdk_win32_get_colormap): A line had been deleted by mistake.
8850
8851         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8852         (gdk_event_translate): Handle more virtual keycodes to be able to
8853         generate GDK events for Control-comma, Control-period, etc.
8854
8855         * gtk/gtk.def: Add some missing entry points.
8856
8857 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8858
8859         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8860         Doc comment fixing. (Mostly non-matching parameter names.)
8861
8862         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8863         comments a little to avoid looking like a doc comment.
8864
8865         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8866         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8867         conversions be changed to GError?)
8868
8869         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8870         Move private #defines into .c file.
8871
8872         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8873         order of argument addition, remove duplicates.
8874
8875         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8876         parent class is FrameClass, not BinClass.
8877
8878         * gtk/gtk.h: Add gtkinvisible, which was missing.
8879         (It's occasionalyl useful for client apps, if seldom.)
8880
8881         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8882         #define.
8883
8884 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8885
8886         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8887         coordinates when creating window, instead of GDK-space
8888         coordinates. (Avoid BadValue on too large windows.)
8889
8890 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8891
8892         * configure.in (use_mmx_asm): Remove conftest* after use along the
8893         lines of AC_TRY_COMPILE.        
8894         
8895         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8896         of g_dirname, which is deprecated.
8897         (gtk_rc_parse_any): Removed calls to
8898         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8899
8900         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8901         Removed calls to g_hash_table_{freeze,thaw}, as they are
8902         deprecated now.
8903
8904         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8905         instead of g_basename.
8906         
8907 2000-09-04 Elliot Lee <sopwith@redhat.com>
8908         
8909         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8910         ANSI warning.
8911
8912 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8913
8914         * gtk/gtkwidget.h:  Add some documenting comments about 
8915           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8916           just as owen said on irc.
8917
8918         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8919           set HAS_DEFAULT.  Only set it if there isn't another window
8920           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8921           it if the widget is not the focused window with RECEIVES_DEFAULT.
8922           This fixes weird double default bugs in dialogs which has things
8923           call gtk_window_set_default at times.
8924
8925 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8926
8927         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8928         Nils Barth and David Santiago to improve submenu
8929         navigation. The patch does this by creating a triangular
8930         region from the point where the pointer leaves the
8931         menu to the submenu.  While the pointer is in
8932         that region and a timeout has not expired, events 
8933         that would cause the active submenu to change are
8934         ignored.
8935
8936 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8937
8938         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8939         moving a toplevel window immediately after sizing it would
8940         result in it being sized back to the old size since 
8941         impl->width, impl->height aren't updated until we hear
8942         back from the server. There is still a (longstanding) bug
8943         here that gdk_window_get_size() will give the wrong size
8944         until we do hear back.
8945
8946 2000-08-31  Havoc Pennington  <hp@redhat.com>
8947
8948         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8949         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8950         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8951         Rename GtkTextStyleValues to GtkTextAttributes
8952
8953 2000-08-31  Havoc Pennington  <hp@pobox.com>
8954
8955         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8956         for rapid testing whether an iterator is the end iterator
8957         (gtk_text_btree_new): init end line cache
8958         (gtk_text_line_is_last): use fast cached line to 
8959         see if we're the last line.
8960         (get_last_line): use cached line here too, should 
8961         speed up some random unrelated code.
8962         
8963 2000-08-30  Havoc Pennington  <hp@pobox.com>
8964
8965         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8966         signals.
8967
8968         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8969         delete_text signals. This allows the signals to be used for
8970         implementing undo.
8971
8972         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8973         provide "interactive" argument when emitting insert_text or
8974         delete_text signal.
8975         
8976 2000-08-30  Havoc Pennington  <hp@pobox.com>
8977
8978         * gtk/gtktextbuffer.c: Docs
8979
8980 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8981
8982         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8983         from switch statements, since Tor removed the enumeration
8984         value.
8985         
8986         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8987         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8988
8989 2000-08-29 Elliot Lee <sopwith@redhat.com>
8990         * */*.h: Use G_GNUC_CONST.
8991
8992 2000-08-27  Havoc Pennington  <hp@pobox.com>
8993
8994         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8995         minor indentation fixes, inserted some FIXME about stuff I
8996         realized was broken while documenting it.
8997         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8998         GTK convention  
8999
9000 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
9001
9002         * gtk/testgtk.c (create_styles): Fix double free of
9003         font desc.
9004
9005 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
9006
9007         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
9008         
9009         * gtk/testgtk.c (create_styles): Add a test for modifying
9010         the style through gtk_widget_modify_*.
9011
9012         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
9013         a function to get the current modifier style.
9014
9015         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
9016         of the passed in GtkRcStyle instead of ref'ing it.
9017
9018         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
9019
9020 2000-08-20  Tor Lillqvist  <tml@iki.fi>
9021
9022         * gdk/gdkimage.h
9023         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
9024         shared memory image+pixmap GdkImage type, or
9025         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
9026         I am dropping that.
9027
9028         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
9029         actually call gtk_init_abi_check(), passing also
9030         sizeof(GtkWindow). Ditto for gtk_init_check(). 
9031
9032         * gtk/gtk.def
9033         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
9034         New functions, used to check that the GTK+-using code has been
9035         compiled using the correct compiler and switches. In particular,
9036         with gcc one has to use the -fnative-struct switch as GTK+ is
9037         compiled with that.
9038
9039 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
9040
9041         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
9042         ->prev fields when merging lists. (Found simultaneously
9043         by Pawel Salek and Jakub Jelinek)
9044
9045 2000-08-12  Tor Lillqvist  <tml@iki.fi>
9046
9047         * gdk/gdk.def
9048         * gtk/gtk.def: Add missing entries.
9049
9050         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
9051         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
9052
9053         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
9054         function. Dummy implementation at this point.
9055
9056         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
9057         rules. Undefine GTK_COMPILATION when compiling the test programs.
9058         
9059         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
9060
9061 2000-08-11  Tor Lillqvist  <tml@iki.fi>
9062
9063         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
9064         to convert back and forth from UTF-8 and the "system" (or "current
9065         locale") charset when necessary. Indentation/spacing cleanup.
9066
9067 2000-08-10  Havoc Pennington  <hp@redhat.com>
9068
9069         * Makefile.am (snapshot): Change the format of the snapshot
9070         version to match glib
9071
9072         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
9073         from EXTRA_DIST since it doesn't seem to exist
9074
9075 2000-08-10  Tor Lillqvist  <tml@iki.fi>
9076
9077         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
9078         version of the directory name (not the UTF-8 one) when building
9079         the path name to stat().
9080
9081 2000-08-03  Elliot Lee  <sopwith@redhat.com>
9082
9083         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
9084         PANGO_ATTR_SHAPE set.
9085
9086 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
9087
9088         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
9089         Peter Osterlund to simplify the code while keeping the
9090         functionality the same.
9091
9092 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
9093
9094         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
9095         is_viewable() test further inside the function, since removing the 
9096         window from the redraw list without clearing ->update_area
9097         was also very broken.
9098
9099 2000-08-02  Tor Lillqvist  <tml@iki.fi>
9100
9101         * configure.in: Check for <unistd.h>.
9102
9103 2000-08-01  Martin Baulig  <baulig@suse.de>
9104
9105         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
9106         to display the message that this is a development version of GTK+.
9107
9108 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
9109
9110         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
9111         was depending on widget->allocation instead of the width of text_area,
9112         which was incorrect for subclasses like GtkSpinButton.
9113
9114         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
9115         with width == 1 tests that should be width == -1.
9116
9117 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
9118
9119         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
9120         (broken, Elliot, every single window blank on X) custom code with call
9121         to gdk_window_is_viewable() which a) prevents code duplicate and
9122         b) works. 
9123
9124 2000-07-31  Elliot Lee  <sopwith@redhat.com>
9125
9126         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
9127         to get the GDK_PARENT_ROOT() macro to work.
9128         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
9129         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
9130         of, windows that aren't shown.
9131         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
9132         pointer grab stuff.
9133
9134 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
9135
9136         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
9137           s/gtk_main_iteration/g_main_iteration/
9138
9139           Did this already in change:
9140                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
9141           don't know how it got reverted.
9142
9143 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
9144
9145         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
9146         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
9147
9148         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
9149         not gdk_pixbuf.
9150
9151 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
9152
9153         * configure.in,po/{sp,sr}.po: Added Serbian files
9154
9155 2000-07-30  Tor Lillqvist  <tml@iki.fi>
9156
9157         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
9158
9159         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
9160         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
9161         GIOChannel implementation.
9162
9163         * gdk/win32/gdkinput.c
9164         * gdk/win32/gdkpango-win32.c: Update license name here, too.
9165
9166         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
9167         definition to match prototype.
9168
9169         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
9170
9171 2000-07-27  Elliot Lee  <sopwith@redhat.com>
9172
9173         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
9174         function, to allow handling image formats that cannot be detected
9175         by looking at content alone.
9176
9177 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
9178
9179         * docs/tutorial/*.gif *.jpg *.eps
9180           Update these to the same look-n-feel.
9181           Why does including images in DocBook suck so badly?
9182
9183 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
9184
9185         * gtk/gtktable.c: applied patch from Phil Thompson
9186         <phil@river-bank.demon.co.uk> that enables space settings for
9187         the last row/columns as well.
9188
9189 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
9190
9191         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
9192         updates the license headers to the GNU Lesser General Public License,
9193         as well as updating the copyright year to 2000.
9194
9195 2000-07-26  Robert Brady  <rwb197@zepler.org>
9196
9197         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
9198           and po/Makefile, was installing and looking for them under gtk20
9199           and gtk2 respectively.
9200
9201 2000-07-25  Havoc Pennington  <hp@redhat.com>
9202
9203         * gtk/testtext.c: Comment out some stuff that depends on the rest
9204         of my patches.
9205
9206 2000-07-25  Havoc Pennington  <hp@redhat.com>
9207
9208         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
9209         buffer
9210
9211 2000-07-25  Havoc Pennington  <hp@redhat.com>
9212
9213         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
9214         widget changes.
9215
9216         * gtk/gtktextview.h: To be consistent with usage of "line"
9217         throughout the API to mean "newline-terminated thingy", change
9218         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
9219         to MOVEMENT_LINE.
9220
9221         (GtkTextView): Add flags for default editability, and whether to
9222         show the cursor. Add functions to get/set that. Add 
9223
9224         (gtk_text_view_get_iter_location): new function
9225
9226         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
9227         gtktextlayout.h
9228         (g_convert): Add g_convert temporarily, will go in glib in a bit
9229         
9230         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
9231         GtkTextTagTableForeach instead of brokenly using GHFunc.
9232         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
9233
9234         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
9235         moved to public header.
9236
9237         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
9238         "invisible", since "elide" was a bad name.
9239         (gtk_text_tag_get_priority): Added
9240
9241         (GtkTextStyleValues): put this in public header, along with
9242         functions to use it.
9243
9244         * gtk/gtktextmarkprivate.h: Include more headers, since we no
9245         longer include gtktextbtree.h.
9246
9247         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
9248         gtk_text_mark_deleted
9249
9250         * gtk/gtktextlayout.h: Don't include the "really private" headers,
9251         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
9252         to make this possible. Now we only need to install
9253         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
9254         (However the Makefile.am isn't changed yet because of the
9255         logistics of merging gtk-hp-patches piecemeal)
9256
9257         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
9258         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
9259         gtk_text_iter_get_line is now used in the public API for a
9260         different purpose.
9261
9262         * gtk/gtktextiter.h: Clean up function names to be more
9263         consistent. Always call char offset "offset" and byte index
9264         "index". A "line" is always a line number. 
9265
9266         (gtk_text_iter_is_last): new function, more efficient than 
9267         the existing way to check
9268         (gtk_text_iter_is_first): new function, also more efficient
9269
9270         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
9271
9272         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
9273         gtk_text_iter_forward_char, etc.
9274
9275         (gtk_text_iter_forward_to_tag_toggle): Renamed from
9276         forward_find_tag_toggle, since this isn't a linear search
9277
9278         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
9279
9280         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
9281         New functions, search for a buffer substring.
9282
9283         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
9284         interactive and default editable (since we need to store that info
9285         until we receive the selection data).
9286
9287         Remove all the _at_char and at_line etc. versions of functions;
9288         only have iterator versions.
9289
9290         Add _interactive() versions of functions, that consider the
9291         editability of text. (FIXME add interactive flag to the 
9292         insert/delete signals per Darin's suggestion)
9293
9294         (gtk_text_buffer_get_tag_table): new function, demand-creates the
9295         tag table if necessary
9296
9297         Remove declaration of gtk_text_buffer_get_iter_from_string
9298
9299         (_gtk_text_buffer_get_btree): private/internal function, added.
9300         
9301
9302         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
9303         (gtk_text_line_is_last): new function
9304
9305 2000-07-25  Havoc Pennington  <hp@redhat.com>
9306
9307         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
9308         using GtkProgressBar. See Changes-2.0.txt for details.
9309
9310         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
9311         "pulse_step" which are the equivalent of
9312         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
9313         Implement new API.
9314         
9315         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
9316         (use_text_format) to mark whether text set on the progress bar is
9317         a format string. Deprecate entire GtkProgress interface.
9318
9319         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
9320         (gtk_progress_build_string): make this a no-op if use_text_format
9321         is FALSE
9322
9323         * docs/Changes-2.0.txt: Describe progress bar changes.
9324
9325 2000-07-25  Tor Lillqvist  <tml@iki.fi>
9326
9327         * Makefile.am: Include the build directory.
9328
9329         * configure.in: Generate build/Makefile, build/win32/Makefile,
9330         gdk/, gdk/win32/, and gtk/makefile.mingw.
9331
9332         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
9333         Add GETTEXT_PACKAGE.
9334         
9335         * gdk/gdk.def
9336         * gtk/gtk.def: Updates.
9337
9338         * gdk/gdkfont.h
9339         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
9340         need them any longer.
9341
9342         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
9343
9344         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
9345         PANGOWIN32_LIBS and gdk_pixbuf.
9346
9347         * gdk/win32: Compiles, but no doubt doesn't work at all.
9348
9349         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
9350
9351         * gdk/win32/gdkinput.c: New file, temporarily.
9352         
9353         * gdk/win32/gdkinput-win32.h: New file
9354
9355         * gdk/win32/gdkinputprivate.h: Remove.
9356
9357         * gdk/win32/gdkpango-win32.c: New file.
9358
9359         * gtk/makefile.mingw.in: New file
9360
9361         * gtk/makefile.cygwin: Removed
9362         
9363         * gtk/Makefile.am: Update accordingly.
9364
9365         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
9366         made externally visible.
9367
9368         * gtk/gtkmain.c: Use it.
9369         
9370         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
9371         is enough.
9372
9373         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
9374
9375 2000-07-24 Elliot Lee <sopwith@redhat.com>
9376         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
9377         individual backends already.
9378         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
9379         again. Yes, there really is a good reason for this, if you are using the gdkregion
9380         internals, and if you're not, why do you care?
9381         * gdk/gdkwindow.c: Fix inverted condition
9382         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
9383         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
9384         * gtk/gtkrange.c: Redraw trough when moving.
9385         * gtk/gtktypeutils.c: Fix warning by adding const cast.
9386         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
9387
9388 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9389
9390         * configure.in: Check for mkstemp and sigsetjmp. Output
9391         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9392
9393         More work on GDK for Win32. Still in an intermediate state.
9394
9395         * gdk/makefile.cygwin
9396         * gdk/win32/makefile.cygwin: Removed.
9397         
9398         * gdk/makefile.mingw.in
9399         * gdk/win32/makefile.mingw.in: New files.
9400
9401         * gdk/Makefile.am
9402         * gdk/win32/Makefile.am: Generate and distribute them.
9403
9404         * gdk/win32/gdkwindow-win32.h
9405         * gdk/win32/gdkdrawable-win32.h
9406         * gdk/win32/gdkpixmap-win32.h: New files.
9407
9408         * gdk/win32/gdkcolor-win32.c
9409         * gdk/win32/gdkcursor-win32.c
9410         * gdk/win32/gdkdrawable-win32.c
9411         * gdk/win32/gdkgc-win32.c
9412         * gdk/win32/gdkimage-win32.c
9413         * gdk/win32/gdkprivate-win32.h
9414         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9415         Rename fields and variables called xcursor, xid, etc (these names
9416         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9417
9418 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9419
9420         * gtk/gtkentry.[ch]: Fix some problems with vertical
9421         alignment.
9422
9423         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9424         char/byte confusion.
9425
9426 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9427
9428         * gtk/gtktextview.c (changed_handler): Fix bug where
9429         redraw wasn't being done properly when height of
9430         dirty region changed.
9431
9432         * demos/Makefile.am: Remove various references to
9433         -lgmodule
9434
9435 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9436
9437         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9438         PangoAttrShape to reserve space for pixmaps, add 
9439         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9440         in the display functions.
9441         
9442         * gtk/testgtk.c (create_layout): Set some more exotic
9443         scrolled window options
9444
9445         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9446         Add function to set the shadow type of a window, to allow
9447         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9448         which don't draw their own frame.
9449
9450 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9451
9452         * docs/tutorial/package-db-tutorial.sh: New file for
9453           packaging DocBook format tutorial
9454
9455 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9456
9457         * docs/tutorial/gtk-tut.sgml: Minor updates
9458
9459         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9460
9461 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9462
9463         * gtk/gtksignal.c: Fix C++ comment.
9464
9465         * gtk/gtkimmulticontext.c
9466         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9467         don't return value from void functions.
9468
9469         * gtk/gtk.def: Add gtk_rc_style_unref.
9470
9471 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9472
9473         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9474         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9475         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9476         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9477         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9478         gtk/gtktypeutils.h: Include files outside of the extern "C"
9479         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9480         <vakatov@peony.nlm.nih.gov>.
9481
9482 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9483
9484         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9485           Completes first pass. Hurrah!
9486
9487 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9488
9489         * docs/tutorial/gtk-tut.sgml: More clean ups.
9490
9491 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9492
9493         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9494         paint the background of the text area which was accidentally
9495         removed at some point.
9496
9497         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9498           
9499          - Move most of the functionality from the theme vtable
9500            into GtkRcStyleClass and GtkStyleClass. The moved
9501            vtable functions were changed a bit in the move to
9502            work better in their new home.
9503
9504          - Get rid of the engine and engine_data fields from
9505            GtkRcStyle and GtkStyle; instead the theme
9506            engine derives theme-specific subclasses of GtkRcStyle
9507            and GtkStyle
9508
9509          - Add extra dlsym() found entry point to themes,
9510            theme_create_rc_style().
9511
9512         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9513         in gtk_style_real_copy.
9514
9515         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9516         to register a type associated with an engine. (The engine
9517         won't be unloaded as there is an instance of the type.)
9518
9519
9520 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9521
9522         * docs/tutorial/gtk-tut.sgml: Clean ups.
9523
9524 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9525
9526         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9527           of cleaning up to do.
9528
9529 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9530
9531         * gdk/testgdk.c: New file, quick hack to test backends for
9532         pixel-by-pixel correctness of the most simple graphic operations.
9533
9534 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9535
9536         * Really release 1.3.1
9537         
9538         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9539         include structure.
9540
9541 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9542
9543         * Released 1.3.1
9544
9545 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9546
9547         * gtk/gtktextlayout.c: use FALSE for size_only most
9548         of the time when calling gtk_text_layout_get_line_display()
9549         to avoid causing double reshapes when a redraw follows
9550         immediately after.
9551
9552 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9553
9554         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9555         appropriate region and gdk_window_process_updates() so trough
9556         updating doesn't lag behind the window being scrolled.
9557
9558         * gdk/gdkgc.c: Make parent_class pointer static.
9559          
9560 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9561
9562         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9563         include <string.h>.
9564          
9565         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9566         cut-and-paste error in computing memory offset for 4 channels.
9567
9568 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9569
9570         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9571         gtk_rc_append_default_pixmap_path(), since it wasn't
9572         adding an interesting path and we don't have a meaningful
9573         default for this value.
9574
9575 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9576
9577         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9578         gtk-config to gtk-config-2.0 move gtk_.m4 to
9579         gtk-2.0.m4
9580
9581         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9582         gdk/Makefile.am demos/Makefile.am: Change 
9583         library names to libgtk-1.3.la, etc, so that we
9584         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9585
9586         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9587         gdk/Makefile.am gdk/x11/Makfile.am
9588         Move include files into /usr/include/gtk-2.0, 
9589         /usr/lib/gtk-2.0/include/
9590          
9591         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9592         gtk/gtkintl.h: Change package for gettext from 
9593         gtk+ to gtk20. Put hack in autogen.sh to modify
9594         po/Makefile.in.in after gettextize to make this
9595         possible.
9596
9597         * gtk+.spec: Some updates, not tested.
9598
9599         * gdk-pixbuf/Makefile.am: Move loaders into
9600         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9601
9602         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9603         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9604         to THEMENAME/gtk-2.0/. Move engine directory  to
9605         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9606         
9607 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9608
9609         Win32 changes, still doesn't build though.
9610
9611         * gdk/makefile.cygwin
9612         * gdk/win32/makefile.cygwin
9613         * gtk/makefile.cygwin: Updates.
9614
9615         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9616         default values for fg and bg pixel as X11 does (0 and 1), not
9617         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9618         Use 0 for pen width by default (treated as 1 anyway later, but for
9619         apps that might check the value in the GdkGC).
9620         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9621         interface to gdk_gc_predraw and _postdraw.
9622
9623         * gdk/win32/gdkwin32.h
9624         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9625
9626         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9627         extraneous semicolon.
9628
9629         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9630
9631         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9632         not the Win32 bitspixel value.
9633
9634         * gdk/win32/gdkcc-win32.c:
9635         * gdk/win32/gdkcolor-win32.c 
9636         * gdk/win32/gdkprivate-win32.h
9637         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9638         GDK object structure.
9639
9640 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9641
9642         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9643         * docs/tutorial/gtk_tut_it.sgml (name): 
9644         * docs/tutorial/gtk_tut_fr.sgml (name): 
9645         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9646         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9647
9648 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9649
9650         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9651           small changes.
9652
9653 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9654
9655         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9656         a bug here, never been here and never fixed anything ;(
9657         (don't segfault if tree->root_tree is NULL, which happens prior
9658         to widget realization, but puke instead).
9659
9660 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9661
9662         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9663         add the necessary tokens.
9664
9665         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9666         (gtk_rc_style_to_style): copy thicknesses.
9667         (gtk_rc_init_style): apply thicknesses.
9668         (gtk_rc_parse_style): parse xthickness and ythickness.
9669
9670         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9671
9672         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9673         (gdk_window_new): 
9674         (_gdk_windowing_window_init): 
9675         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9676         (gdk_pixmap_create_from_data): 
9677         (gdk_bitmap_create_from_data): 
9678         (gdk_pixmap_new): 
9679         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9680         (gdk_image_new): 
9681         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9682         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9683         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9684         (gdk_colormap_get_system): 
9685         (gdk_colormap_new): 
9686         * gdk/gdkwindow.c (gdk_window_init): 
9687         * gtk/gtkstyle.c (gtk_style_new):
9688         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9689         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9690         * gtk/gtkrc.c (gtk_rc_style_new):
9691         use g_object_new() instead of g_type_create_instance() which
9692         is a private function for fundamental type implementations.
9693
9694 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9695
9696         * configure.in: Add check for db2html
9697
9698 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9699
9700         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9701         hack to set glib_debug_objects based on gtk_debug_flags.
9702
9703 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9704
9705         * INSTALL.in: Update the Prerequisites section.
9706
9707         * Makefile.am demos/Makefile.am docs/Makefile.am
9708         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9709         gdk/linux-fb/Makefile.am: Dist fixes
9710
9711 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9712
9713         * NEWS: 10,000 foot view of 1.3.1 changes.
9714
9715 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9718         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9719         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9720         gdk/x11/gdkmain-x11.c: 
9721
9722         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9723         as a return value of gdk_*_grab(). Previously, we just
9724         returned the X11 values directly.
9725
9726 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9727
9728         * gdk/x11/Makefile.am: Patch from George Lebl to 
9729         install all the headers in the right place.
9730
9731 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9732
9733         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9734           initial conversion to DocBook.
9735
9736 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9737
9738         * README.win32: Improve a bit.
9739
9740         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9741         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9742         Alt+0nnn on the numpad (used to enter characters by numeric code
9743         from current DOS or ANSI codepage) working correctly, as in other
9744         Windows apps.
9745
9746         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9747         same argument validity tests as in X11 version.
9748         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9749
9750         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9751         definitions in case missing from headers.
9752
9753         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9754         destroy the window-specific cursor.
9755         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9756         calling GetModuleHandle(NULL).
9757         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9758         with CopyCursor before setting it as the window-specific
9759         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9760         also its Windows cursor) after calling this function. Destroy any
9761         previous window-specific cursor.
9762
9763 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9764
9765         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9766         font charset is iso8859-1, not iso-8859-1.
9767
9768 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9769
9770         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9771         Use g_get_charset() instead of g_get_codeset().
9772
9773         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9774         Comment out some strdup'ing functions to keep timj
9775         happy until we finish fighting this out.
9776
9777 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9778
9779         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9780         <= width or height.
9781
9782         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9783         from 1.2 for parent/child states.
9784
9785         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9786         of typos.
9787
9788         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9789         event structures, replace with a generic axes field. Replace 
9790         deviceid/sourec with GdkDevice *device.
9791
9792         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9793         to extract particular axis use value from event. (Also
9794         can be used for normal X/Y.)
9795
9796         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9797         allow for arbitrary number of axes, namespace everything
9798         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9799         everywhere.
9800
9801         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9802         Get rid of the gdk_input_vtable setup if favor of simply
9803         defining the functions in gdkinput-none/gxi/xfree.c in
9804         a similar fashion to the way that the port structure is 
9805         done.
9806
9807         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9808         for new event structures. 
9809
9810         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9811         new device interfaces.
9812
9813 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9814
9815         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9816         set the initial text.
9817
9818         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9819         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9820         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9821         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9822
9823         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9824         pango_layout_set_font_description to simplify.
9825
9826 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9827
9828         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9829         pango_layout_set_font_description to simplify.
9830
9831 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9832
9833         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9834         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9835         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9836
9837         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9838         PANGO_PIXELS() macro.
9839
9840 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9841
9842         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9843         that returns a PangoContext owned by the widget and updated to
9844         match future changes in the widget. Also, make 
9845         gtk_widget_create_pango_layout() use this context. If we ever
9846         add a ::changed signal to PangoContext, this will make things
9847         much more convenient. 
9848
9849         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9850         in the appropriate places instead of destroying the layouts and
9851         creating new ones.
9852
9853         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9854         in a few strategic places.
9855
9856 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9857
9858         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9859         gtk_widget_size_request() on reparented child, if one. Otherwise,
9860         queue_resize() on the child never results in it getting size-requested
9861         at all.
9862
9863         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9864         in option menus, so that (with luck) people won't copy it into
9865         their apps in the future.
9866
9867         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9868         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9869         a lot of problems with changing the size of the menu's menu
9870         items after adding it to the option menu.
9871
9872         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9873
9874         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9875         the text direction for a widget changes.
9876
9877         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9878         ::direction_changed to get rid of various hacks.
9879
9880 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9881
9882         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9883         name.
9884
9885 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9886
9887         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9888         flag to the structure. Do not call XFreePixmap on pixmaps created
9889         by gdk_pixmap_foreign_new().
9890
9891 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9892
9893         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9894         value using GdkRGB functionality given GdkColormap and GdkColor.
9895         (name not final, waiting for inspiration.)
9896         
9897         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9898         set the foreground/background of a GC using the GC's colormap
9899         and GdkRGB. (name not final, waiting for inspiration.)
9900
9901         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9902         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9903
9904         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9905         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9906         purely a function of the corresponding colormap. Make
9907         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9908
9909         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9910         gdk_pixbuf_*create_from_xpm_* in terms of
9911         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9912         code.
9913
9914         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9915         advantage of the new draw_rgb_32_image_dithalign.
9916
9917         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9918
9919         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9920         on each created GC.
9921
9922         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9923
9924         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9925         which we initialize from the drawable when the GC is created,
9926         if the drawable has a colormap.
9927
9928         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9929
9930         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9931
9932         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9933
9934 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9935
9936         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9937         actually returning expose events, make sure to set
9938         the count field properly.
9939
9940         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9941         accidentally reintroced bug which always cleared
9942         the graphics_exposures value. 
9943
9944 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9945
9946         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9947
9948 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9949
9950         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9951
9952 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9953
9954         * docs/faq/gtk-faq.sgml: Start of Section 6.
9955
9956 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9957
9958         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9959         
9960         (Fixes problem with drawing childless frames. Pointed out
9961         by and a first patch from Anders)
9962         
9963         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9964         compute a child_allocation, even if we don't have a child.
9965
9966         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9967         Always chain to the parent's impl, even if we don't have a child.
9968
9969 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9970
9971         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9972         use multiple parts of it instead of creating a bunch of separate
9973         segments, since the maximum number of segments per system is not
9974         large. (This might be worth backporting to GTK+-1.2.x if we make a
9975         new release )
9976
9977         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9978         structure in preparation for per-colormap GdkRGB.
9979
9980         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9981         to False when we get EINVAL from shmget so that the caller of
9982         gdk_image_new can retry with a smaller segment size.
9983
9984 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9985
9986         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9987
9988 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9989
9990         * configure.in: make the current version number 1.3.1 (binary age 0,
9991         interface age 0).
9992         
9993         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9994         gtkcompat.h is all we want.
9995
9996         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9997         GLib primitive types. fixed g_type_register_fundamental() argument
9998         ordering.
9999
10000         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
10001         compiles.
10002
10003         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
10004         object code cleanup, comment trigraph fixes, etc...
10005
10006 2000-06-23  Havoc Pennington  <hp@redhat.com>
10007
10008         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
10009         instead of making up a bogus name for first_para_mark
10010
10011         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
10012         0 as a context ID
10013
10014 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
10015
10016         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
10017
10018 2000-06-21  Havoc Pennington  <hp@pobox.com>
10019
10020         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
10021         we didn't check window->bg_pixmap != GDK_NO_BG.
10022
10023         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
10024         gdk-pixbuf
10025
10026 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
10027
10028         * docs/faq/gtk-faq.sgm: Move file to here.
10029           TODO: Update Makfile.am 
10030
10031 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
10032
10033         * docs/gtk-faq.sgm: Add Section 2
10034
10035 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
10036
10037         * docs/gtk-faq.sgm: New file. Start of DocBook
10038           version of the FAQ.
10039
10040 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
10041
10042         * configure.in (GDK_PIXBUF_MAJOR): Define version
10043         numbers for GDK_PIXBUF_*, as they get substituted
10044         into a header file. Need to consider versioning
10045         for gdk-pixbuf more carefully later.
10046
10047 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
10048
10049         Work with srcdir != builddir.   
10050         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
10051         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
10052         * demos/testpixbuf.c: Likewise.
10053         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
10054         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
10055         <gdk/x11/gdkx.h>.
10056         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
10057         "gdk-pixbuf.h".
10058         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
10059
10060 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
10061
10062         * TODO.xml: Change 1.4 version numbers to 2.0.
10063
10064 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
10065
10066         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
10067         fixups to GTK+ standard.
10068
10069 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
10070
10071         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
10072         gdk-pixbuf.
10073
10074         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
10075         fixups for GObject.
10076
10077         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
10078         gdk-pixbuf with GDK dependencies moved into GDK.
10079         
10080         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
10081         move gdk-pixbuf-loader here until GObject has signals.
10082
10083         * demos/: New directory of demos. Move demos from
10084         gdk-pixbuf here.
10085
10086         * demos/pixbuf-init.c: Small bit of code to check for
10087         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
10088         set GDK_PIXBUF_MODULEDIR appropriately.
10089
10090         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
10091         define which no longer makes sense.
10092
10093 2000-06-21  Havoc Pennington  <hp@redhat.com>
10094
10095         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
10096         gtk_get_default_language
10097
10098         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
10099         new function to get the default language
10100
10101         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
10102         s/gtk_text_view_style_values/gtk_text_style_values/
10103
10104         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
10105         Add a "language" field to tags.
10106
10107         (gtk_text_tag_set_arg): Fix bug in setting
10108         "bg_full_height_set" tag.
10109
10110 2000-06-21  Havoc Pennington  <hp@redhat.com>
10111
10112         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
10113         in the interfaces
10114
10115         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
10116         stuff instead when possible.
10117
10118         * gtk/gtktexttypes.h: Delete some unused constants
10119
10120         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
10121         testtextbuffer.c: use glib instead of custom unicode routines
10122
10123 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
10124
10125         * docs/es/: Removed mistakenly added generated sgml
10126
10127         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
10128         Remove outdated info files.
10129
10130         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
10131         Moved tutorial files into subdir
10132
10133         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
10134         subdir.
10135
10136         * docs/man/gtk_button.pod: Remove. (contents will be
10137         integrated into gtk-reference button page.)
10138
10139         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
10140         docs/faq/Makefile.am: Adjust for new organization
10141
10142 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
10143
10144         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
10145         not $(MKINSTALLDIRS)
10146
10147 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
10148
10149         * gtk/testgtk.c (create_text): Finish the job Elliot started
10150         of removing font setting test for text widget. (Since text widget
10151         and GdkFont are not deprecated, and cause portability problems.)
10152
10153 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
10154
10155         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
10156         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
10157         Remove use of libunicode in favor of new GLib functions.
10158
10159         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
10160         nano-x, framebuffer. The X11 include is just a hack until we get
10161         the necessary functions in gdkcolor.h, so there is no reason to
10162         add other includes of platforms.
10163
10164         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
10165         window bigger than the screen change.
10166
10167         * gtk/testgtk.c: Revert some random changes from Elliot
10168         that had no particular point and were causing testgtkrc
10169         not to function correctly.
10170         
10171         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
10172         because GdkSegment and GdkRegionBox have the same fields,
10173         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
10174         results in clearer code.
10175
10176         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
10177         gdk_input_translate_coordinates): Fix missed GdkObjectification
10178
10179 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10180
10181         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
10182         * gtk/gtk{plug,socket}.h: Missed commits from previous.
10183
10184 2000-06-20  Havoc Pennington  <hp@redhat.com>
10185
10186         * modules/linux-fb/Makefile.am: Make this compile
10187         without framebuffer enabled
10188
10189         * gdk/linux-fb/Makefile.am: Add conditional to not build
10190         framebuffer unless specified in configure
10191
10192         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
10193         the size of the target instead of source if -1 was passed for
10194         width/height
10195
10196         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
10197         width/height confusion.
10198
10199 2000-06-19  Havoc Pennington  <hp@redhat.com>
10200
10201         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
10202         GDK_DRAWABLE_XID. In the future, we probably want to make it
10203         faster with G_DISABLE_CHECKS turned on.
10204
10205 2000-06-14  Havoc Pennington  <hp@redhat.com>
10206
10207         * gdk/Makefile.am: add gdkpixmap.c
10208
10209         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
10210         s/gdk_image_init/_gdk_windowing_image_init
10211
10212         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
10213         ref/unref
10214
10215         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
10216
10217         * gdk/gdkcompat.h: remove GdkWindowType compat, since
10218         GdkWindowType is now non-deprecated; 
10219         change gdk_window_get_type() compat to be
10220         gdk_window_get_window_type().
10221
10222         * gdk/gdkdnd.h: make GdkDragContext a GObject.
10223
10224         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
10225         virtual GObject. Make all functions call into the vtable.
10226         Move gdk_image_put() guts in here. Remove GdkDrawableType
10227         and gdk_drawable_get_type(), these are now GdkWindow-specific.
10228         draw_image, get_depth, get_size, set_colormap, get_colormap,
10229         get_visual added to the vtable.
10230         
10231         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
10232         GObject. Virtualize everything. 
10233         (gdk_gc_new_with_values): remove check for destroyed window,
10234         because now GdkWindow::create_gc will check this.
10235         (gdk_gc_set_values): New function to set GC values, this 
10236         was already implemented but wasn't in the header
10237
10238         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
10239
10240         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
10241         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
10242         remove _gdk_window_class; add _gdk_window_impl_get_type() and
10243         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
10244         _gdk_windowing_window_init, rename gdk_image_init to
10245         _gdk_windowing_image_init.
10246         
10247         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
10248         (gdk_draw_layout): Remove check for destroyed window, 
10249         because all the drawable methods already check it.
10250         
10251         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
10252         Add gdkpixmap.c which contains implementation of GdkDrawable
10253         virtual table (by chaining to a platform-specific implementation
10254         object).
10255         
10256         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
10257         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
10258         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
10259         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
10260         GdkColormapPrivate. 
10261
10262         * gdk/gdktypes.h: #include <glib-object.h>
10263
10264         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
10265         Move most functionality to platform-specific implementation
10266         object. GdkWindow itself now handles the backing store, then
10267         chains to the platform-specific implementation.
10268         (gdk_window_get_window_type): return GdkWindowType of the window.
10269         (gdk_window_peek_children): New routine, returns the children of 
10270         a GdkWindow
10271         (gdk_window_get_children): Was in X11-specific code and did 
10272         XQueryTree. Changed to simply return a copy of window->children; 
10273         so it can go in cross-platform code.
10274         
10275         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
10276
10277         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
10278         GdkColormap; just changed to use the new private data instead
10279         of casting to GdkColormapPrivate.
10280
10281         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
10282         gdk_cursor_new().
10283
10284         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
10285         (private data member in the GObject). 
10286         (xdnd_manager_source_filter): Function had broken 
10287         error handling, fix it (use gdk_error_trap_push).
10288
10289         * gdk/x11/gdkdrawable-x11.c: This file now implements
10290         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
10291         base class is purely for the convenience of the X port,
10292         and not part of the interface to cross-platform GDK.
10293
10294         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
10295         
10296         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
10297         specific to X, and returned by the create_gc virtual method
10298         of GdkDrawableImplX11. 
10299         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
10300         rather than gchar, this was also changed in the GdkGC vtable.
10301         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
10302         mask is 0, return immediately, instead of checking every flag.
10303         This is faster, and keeps us from segfaulting if values is NULL
10304         and the mask contains some nonzero flags.
10305
10306         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
10307         GdkWindow.
10308
10309         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
10310         GdkWindowPrivate is gone.
10311
10312         * gdk/x11/gdkim-x11.c: rename things that got renamed.
10313
10314         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
10315         remove the image_put stuff that got transferred to GdkDrawable.
10316         
10317         * gdk/x11/gdkinput.c: renamings
10318
10319         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
10320
10321         * gdk/x11/gdkpixmap-x11.c: GObject conversion
10322
10323         * gdk/x11/gdkprivate-x11.h: indentation fixes
10324
10325         * gdk/x11/gdkproperty-x11.c: renamings
10326
10327         * gdk/x11/gdkselection-x11.c: renamings
10328
10329         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
10330         implements the platform-specific "impl" object.
10331         Moved gdk_window_get_children to gdk/gdkwindow.c
10332
10333         * gdk/x11/gdkx.h: Remove all the private structs and private datas
10334         that no longer exist. Add declaration of GdkGCX11 object here.
10335         Fix all the macros to still work. 
10336
10337         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
10338         GdkDragContext from the boxed types since they are now GObjects.
10339
10340         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
10341         moved xthickness/ythickness into the instance. GtkStyleClass
10342         functions are now in the standard vtable for GtkStyle, so you have
10343         to create a GObject subclass to write a theme engine.
10344         (gtk_style_copy): fixed a leaked PangoFontDescription
10345         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
10346         can be the standard GObject function.
10347         
10348         * Throughout GTK:
10349         s/style->klass->[xy]thickness/style->[xy]thickness
10350         s/pango_layout_unref/g_object_unref/
10351
10352         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
10353         
10354         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
10355         accessing GDK internals.
10356
10357         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
10358         accessing GDK internals.
10359
10360 2000-06-18  Elliot Lee  <sopwith@redhat.com>
10361
10362         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
10363
10364         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
10365         problem by calculating event position relative to the trough
10366         rather than the slider.
10367         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
10368
10369         * gdk/gdkgc.h: Add GDK_NOR.
10370
10371         * configure.in, Makefile.am: Add modules top level dir
10372         * configure.in: Only use pangox library if building x11 target.
10373         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
10374
10375 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10376
10377         * gtk/gtkcolorsel.c: Change private class member to be named
10378         private_data throughout the file.
10379
10380         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
10381         private_data to avoid clashing with keyword.
10382
10383 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
10384
10385         * gdk/gdkdnd.h: Add comment to remove warning.
10386
10387 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
10388
10389         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10390         Byelorussian language; changed the Makefile and file names 
10391         to reflect that.
10392
10393 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10394
10395         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10396         rather than gdk_window_hide; this makes things work
10397         correctly if the window is programmatically hidden while
10398         iconified.
10399
10400 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10401
10402         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10403         cut and paste typo where wrong pixmap was being
10404         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10405
10406 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10407
10408         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10409         Add helper function to compute format / bytes 
10410         relationship. Use in a couple places to fix up
10411         errors which assume 8 * format.
10412
10413         * gtk/gtkselection.c (gtk_selection_request): Use 32
10414         rather than 8 * sizeof (GdkAtom), to work correctly
10415         on Alpha.
10416
10417 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10418
10419         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10420         libgtk.la
10421         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10422         versions
10423
10424         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10425         checking macros return NULL since the function has a return value.
10426
10427 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10428
10429         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10430         GTK+ from building at all.
10431
10432         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10433
10434 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10435
10436         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10437         gtk/Makefile.am: make it possible to configure gtk for different
10438         targets on the same platform. The library name is now 
10439         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10440         flag. Only the x11 target compiles right now.
10441         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10442         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10443         * gdk/nanox/gdk*generic*: delete generic region code.
10444         * gdk/linux-fb/gdk*generic*: delete generic region code.
10445         * README.nanox: update information.
10446         
10447 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10448
10449         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10450         prepend not append. (Pointed out by Brett Hall.)
10451
10452 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10453
10454         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10455
10456 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10457
10458         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10459         need this later, and this makes sure that the atexit for
10460         glib gets called after that for GDK, so atexits are
10461         properly ordered for object leak checking.
10462
10463         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10464
10465         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10466         pango_x_shutdown_display()
10467
10468         * gtk/simple.c (main): Close window on destroy.
10469
10470 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10471
10472         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10473         to treat initial creation different from setting with 
10474         regards to the graphics-exposures parameter, so add a parameter
10475         indicating whether this is initial or not.
10476
10477 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10478
10479         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10480         to sort of work by adding an extra return_exposes arg
10481         to gdk_event_translate() - it might be better to simply
10482         deprecate the function altogether and force people to rewrite
10483         without it. gdk_window_scroll() handles most of it, and where
10484         gdk_window_scroll() doesn't work, simply redrawing more does.
10485
10486         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10487         assertion.
10488
10489         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10490
10491         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10492         bunch of pretty much useless /* Print debugging info */ comments 
10493         which had drifted away from the code they were commenting.
10494
10495 2000-06-02  Havoc Pennington  <hp@pobox.com>
10496
10497         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10498         is in working order.
10499         
10500         * gtk/testtext.c: Change to reflect anonymous mark API
10501
10502         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10503
10504         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10505         field, which was unused.
10506
10507         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10508         saves some typing.
10509
10510         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10511
10512         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10513         flag on the insertion point and selection bound
10514
10515         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10516         make mark-manipulation functions take a GtkTextMark* instead of a
10517         mark name.
10518         
10519         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10520         GtkTextMarkBody; will be used to detect attempts to delete
10521         the permanent marks (insert and selection bound)
10522
10523         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10524
10525 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10526
10527         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10528         flag to on.
10529
10530         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10531         Honor DOUBLE_BUFFRED_FLAG
10532
10533         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10534         function to set the DOUBLE_BUFFERED flag.
10535
10536         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10537         or not exposes done on the widget should be double-buffered.
10538
10539         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10540         to be what would be expected. (Fixes problem with a
10541         g_return_if_fail() validating a TextDirection enumeration)
10542
10543 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10544
10545         * gtk/gtkwidget.c: Remove all references to 
10546         offscreen flag which was no longer used.
10547
10548         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10549
10550         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10551         for non-null label_widget->parent.
10552
10553         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10554         which no longer was used.
10555
10556         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10557
10558         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10559         for null arguments.
10560
10561         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10562         check for destroyed windows.
10563
10564 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10565
10566         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10567         the slave context there.
10568
10569         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10570         identical to GtkWindow.
10571
10572 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10573
10574         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10575         pangox to here, so we can write them independent of rendering
10576         system, using GDK primitives.
10577
10578         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10579         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10580         since we have a rendering-system independent implementation in
10581         terms of draw_glyphs().
10582         
10583         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10584         function to render a single line.
10585
10586         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10587         into ../gdkpango.c, which simplifies things, since we
10588         don't have to deal with raw X gc's.
10589
10590 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10591
10592         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10593         get the logical attributes for a given GtkTextLine.
10594
10595 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10596
10597         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10598         g_locale_get_codeset() to g_get_codeset() change.
10599
10600 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10601
10602         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10603         descriptions.
10604
10605         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10606         the entry.
10607
10608         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10609         redoing (vastly simplifying) for Pango. Still needs quite
10610         a bit of work. (Size selection is currently poor. List of 
10611         predefined sizes is not a good idea, since all of these
10612         sizes won't necessarily be distinct.)
10613
10614 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10615
10616         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10617         CODESET results for LANG=C.
10618
10619 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10620
10621         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10622         which takes a stringized pango font description;
10623         ignore the older 'font' and 'fontset' declarations.
10624
10625         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10626         field with a GdkFont derived via gdk_font_from_description(),
10627         for compatibility. (Should we just remove it entirely?
10628         Probably too much compatibility breakage, but people
10629         should be migrating to the new Pango stuff as quickly
10630         as possible.)
10631
10632 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10633
10634         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10635
10636 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10637
10638         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10639         redoing; there are some bugs in size allocation right
10640         now, the semi-existant distinction between header / day
10641         fonts was removed, but, with Pango, could actually
10642         be made functional in a nice way.
10643         
10644         * gtk/testcalender: Move calender from examples into this
10645         directory as a test program. (We really need to restrcture
10646         testgtk into a whole directory full of tests for every
10647         widget or functionality group, separated into multiple .c
10648         files.)
10649
10650 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10651
10652         * gtk/testgtk.c (file_exists): Fix stupid typo that
10653         was keeping RC file from being loaded.
10654
10655         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10656         RC file font code.
10657
10658 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10659
10660         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10661         Add function to load a GdkFont from a PangoFontDescription.
10662
10663 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10664
10665         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10666         variable should be of type GdkEventPrivate.
10667
10668 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10669
10670         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10671         to have any widget for the label, use a GtkLabel widget
10672         to display the text. (Based partially on a patch from
10673         Anders Carlson.)
10674
10675         (Quite a bit of code reorganization - strip 90% of the
10676         guts out of gtkaspectframe and add a single virtual
10677         func to GtkFrameClass - compute_child_allocation.)
10678
10679 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10680
10681         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10682         (Removed clist->row_center_offset field because caching
10683         it wasn't saving time or code, added private function
10684         _gtk_clist_create_cell_layout()).
10685
10686 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10687
10688         * gtk/gtkaccellabel.c: Pangoized.
10689
10690         * gtk/[hv]ruler.c: Pangoized
10691
10692 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10693
10694         * gtk/gtkfilesel.c (gtk_file_selection_init):
10695         Use gtk_clist_set_column_auto_resize() to remove need
10696         need for manual column width computations.
10697
10698 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10699
10700         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10701         ensuring Pango correctness, and considerably simplifying the
10702         code.
10703         
10704         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10705
10706         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10707         getting of numbers of lines.
10708
10709         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10710         to the actual requested width of the lable, not to the wrap
10711         width we set.
10712
10713         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10714
10715         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10716           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10717
10718         * gtk/gtktextview.c: Fix structure inheritance.
10719
10720         * gtk/gtkprogressbar.c: Pangoize.
10721
10722 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10723
10724         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10725         in a function.
10726
10727         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10728         bug with computing line tops.
10729
10730         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10731
10732 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10733
10734         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10735         and y_offset coordinates to do what we need now. (The offset between
10736         buffer and layout coordinates has been reintroduced, but is a 
10737         bit different than before.)
10738
10739         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10740         handle the adjustments ourselves, and scroll as necessary using
10741         the new gdk_window_scroll().
10742         
10743         The advantage of this is that when we are incrementally revalidating,
10744         we are essentially rearranging things around the visible portion
10745         of the screen. With the old setup, the visible portion of the
10746         screen was moved around in the layout, so scrolling and redrawing
10747         to track that caused jumping of the display. Since we now
10748         control the scrolling ourselves, we can suppress this and
10749         only redraw when things actually change.
10750
10751 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10752
10753         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10754         the region not just redisplay it after-all, since we store the
10755         cursors in the LineDisplay. (Ugly interactions here between
10756         GtkLayout and GtkTextBTree here.)
10757         
10758         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10759
10760 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10761
10762         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10763         Added function to scroll contents of a window while keeping the
10764         window constant. Works by XCopyArea or guffaw-scrolling depending
10765         on the details of how the window is set up. (guffaw-scrolling
10766         still needs to be filled in.)
10767
10768 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10769
10770         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10771         move the debugging that was tied to a global variable
10772         to that.
10773
10774         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10775
10776         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10777         validated flag, in line data instead of setting height/width to
10778         -1. This allows us to perform operations with partially invalid
10779         buffer (using the old size for invalid lines) and thus to do
10780         incremental vaidation. Keep height/width aggregates up to date
10781         when deleting text and rebalancing the tree.
10782
10783         * gtk/gtktextbtree.[ch]: Add functions validate a line
10784         (gtk_text_btree_validate_line), and to validate up
10785         to a number of pixels (gtk_text_btree_validate).
10786
10787         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10788         that indicates that something is changed and a revalidation
10789         pass is needed. Change ::need_repaint to ::changed, and
10790         make it take old and new yranges instead of a rectangle.
10791
10792         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10793         the line_data_destroy() function from 
10794         gtk_text_btree_add_view() to a virtual function in 
10795         GtkTextLayout
10796
10797         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10798         since we are handling partial repaints in a different fashion
10799         now.
10800
10801         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10802         of the selection instead of queueing a repaint on the
10803         entire widget.
10804
10805         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10806         get_selection_bounds() down to btree, make the function
10807         in buffer a wrapper around the btree function.
10808
10809         * gtk/gtktextlayout.[ch]: Add functions to check if the
10810         layout is valid and to recompute either a range of pixels
10811         aroudn a line or a certain total number of pixels.
10812
10813         * gtk/gtktextlayout.[ch]: Cache a single line display;
10814         now that we only redraw the needed portions, the hit rate
10815         for this cache is quite high.
10816         
10817         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10818         on the screen so that when re-laying-out the buffer, we can
10819         keep the same place. This requires connecting to ::value_changed
10820         on the adjustments
10821
10822         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10823         the buffer after we receive an ::invalidated signal.
10824         
10825 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10826
10827         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10828         to max of allocation and layout size, not just to the
10829         layout size.
10830
10831         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10832         Invalidate window so it gets redrawn properly.
10833
10834         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10835         to mean the entire window.
10836
10837         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10838         into public header.
10839
10840 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10841
10842         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10843         to get the name of a mark.
10844
10845         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10846         to find the paragraph from a y position.
10847
10848 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10849
10850         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10851         nodes have width/height >= 0, not > 0.
10852
10853 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10854
10855         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10856         Add a size_only flag, so when we only need the size, we don't create
10857         useless appearance attributes.
10858
10859         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10860         duplicate setting of font description.
10861
10862         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10863
10864 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10865
10866         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10867         EXTRA_DIST. It does not work well when the file that
10868         everything depends on is not in the tarball.
10869
10870 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10871
10872         * gtk/testgtk.c: Some hacks and fixes so that it basically
10873         works when not sitting in the GTK+ build tree.
10874
10875 2000-05-03  Havoc Pennington  <hp@redhat.com>
10876
10877         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10878         Properly determine the ordering of the tag root and the current
10879         line within the tree. Previous algorithm only worked if the tag
10880         root's immediate parent was the common root of both the current
10881         line and the tag root.
10882
10883 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10884
10885         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10886         alignment.
10887
10888         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10889         the widget text directional dynamically.
10890
10891         * gtk/gtktextview.[ch]: Added functions to get and set default
10892         wrap mode.
10893
10894 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10895
10896         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10897         in cursor location computation.
10898
10899 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10900
10901         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10902         vadjusment values properly when layout gets smaller.
10903
10904         * gtk/gtktextview.c (need_repaint_handler): Areas being
10905         passed in are far completely inaccurate, and sometimes
10906         too small, so, for now, just queue a redraw on the
10907         whole visible region.
10908
10909 2000-04-25  Havoc Pennington  <hp@redhat.com>
10910
10911         * gtk/gtktextbtree.c (summary_destroy): new function to 
10912         destroy tag summary nodes
10913         (gtk_text_line_next_could_contain_tag): this function was 
10914         totally broken if the line passed in wasn't below the tag
10915         root. Fix it.
10916         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10917         "wildcard" case, we have to do a linear scan. Blah.
10918         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10919         we have to do the linear scan
10920         (tag_removed_cb): When a tag is removed from the tag table, 
10921         remove the GtkTextTagInfo node from the btree.
10922         (gtk_text_btree_spew): Implement the spew function, for 
10923         our debugging pleasure.
10924
10925 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10926
10927         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10928         a problem with referring to the wrong buffer.
10929
10930         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10931
10932         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10933         font description to gtk_style_new() - otherwise things
10934         don't work without a .gtkrc file.
10935
10936         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10937         tags table if we create it ourself, too.
10938
10939         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10940         it was conflicting with XKB modifiers.
10941
10942         * gtk/gtktextview.[ch]: Add simple support for 
10943         GtkIMContext.
10944
10945 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10946
10947         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10948         with deletion from last commit.
10949
10950 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10951
10952         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10953         in the context from the current locale.
10954         
10955         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10956         context, not hardcoded value.
10957
10958         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10959         not logical.
10960
10961 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10962
10963         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10964         attributes - that doesn't handle partial-glyph selection
10965         properly. Instead use new pango_layout_line_get_x_ranges()
10966         functionality to draw the selection.
10967
10968         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10969         now properly handles out-of-range coordinates.
10970
10971         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10972
10973         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10974         public.
10975
10976         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10977         for paragraphs opposite to the base direction of the widget.
10978
10979         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10980
10981         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10982         causes Arabic words to reshape as you cursor through.
10983
10984         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10985         cursor position when moving vertically with the arrow keys and
10986         scrolling with page-up/page-down. (Arrow keys save only the X,
10987         scrolling saves both X and Y.)
10988
10989         This means you can line-up / line-down or page-up / page-down
10990         without losing your place, and also that moving vertically
10991         with the cursor keys keeps the same X position, not the same
10992         character count:
10993
10994         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10995         arrow keys move by display lines, not paragraphs.
10996
10997 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10998
10999         * gtk/gtklayout.c: Make sure that the bin window is at least
11000         as big as the allocation. (Should we also make sure that the
11001         bin window is big enough to completely cover widget->window?)
11002
11003         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
11004         function to get the onscreen rectangle.
11005
11006         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
11007         for offsets in window coordinates.
11008
11009 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
11010
11011         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
11012         confusion.
11013
11014         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
11015         from the widget direction.
11016
11017         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
11018         Add a "direction" attribute.
11019
11020         * gtk/gtktextview.c: global s/tkxt/text_view/.
11021
11022         * gtk/testtext.c: Added long block of text in Arabic, to test out
11023         the direction attributes. (Some problems with the shaping system
11024         for arabic become obvious - like the fact the cursor splits words
11025         into unjoined pieces.)
11026
11027 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
11028
11029         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
11030
11031         * gtk/gtktextlayout.c: Fix up alignment.
11032
11033         * gtk/testtext.c: Add some tests for centering, wrapping.
11034
11035 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
11036
11037         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11038         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
11039         If we wrote GTK+-specific layout-render function this could just replace
11040         the draw_layout() operation in the vtable.
11041
11042         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
11043         pango_layout_get_cursor_pos() and use that function.
11044
11045         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
11046         is a non-static symbol.
11047
11048         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
11049         with gtk_text_btree_find_line_by_y()
11050
11051         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
11052         renderer that handles GtkTextAppearance attributes.
11053
11054         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
11055
11056           - Move the values in the style that don't affect geometry into a
11057             GtkTextAppearance structure.
11058           - Change underline to take a PangoUnderline and "font" a string
11059             representation of a font description
11060           - Add a "font_desc" attribute which takes a FontDescription structure.
11061
11062         * gtk/gtktextlayout.[ch]:
11063
11064           - Get rid of the display-line list per each line. Instead, we
11065             generate, on demand, a GtkTextLineDisplay structure which]
11066             contains a PangoLayout * and other necesary information
11067             (offsets, cursor locations) for displaying a paragraph.
11068           - Get rid of the code to wrap lines, create display chunks,
11069             etc. Instead, we just go through a paragraph and convert
11070             it into the necessary inputs to a PangoLayout.
11071           - Implement a new attribute type, GtkTextAttrAppearance. This
11072             holds a GtkTextAppearance, and is used to pass colors, 
11073             stipple, etc, through from the layout to the display without
11074             having to use lots and lots of individual attributes.
11075           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
11076             in terms of PangoLayout functions.
11077         
11078         * gtk/gtktextview.c: 
11079          
11080           - Handle passing the necessary PangoContext to the layout
11081           - Some fixups in painting to deal with the automatic backing store
11082             and offsetting of GTK+-1.4
11083           - Add a style_set handler so that the default style reacts
11084             properly to theme changes.
11085         
11086         * gtk/gtktext?*.[ch]: Random code-style fixes.
11087
11088         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
11089
11090 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
11091
11092         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
11093         in original form preparatory to Pango-ization and gdkimcontext-ization.
11094
11095 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
11096
11097         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
11098         so that we can derive from gtkimcontext in language bindings properly.
11099
11100 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
11101
11102         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
11103         Add a compose table including (almost) all the compose combinations
11104         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
11105         data in the XIM implementation.
11106
11107         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
11108         Moved functions to convert keyvalues from and to unicode here from
11109         the win32 port and made them public.
11110
11111 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11112
11113         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
11114
11115 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
11116
11117         * gtk/gtkimcontext.[ch]: Base class for new input context system
11118
11119         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
11120         the real input context implementation to be loaded from modules
11121         and switched on the fly.
11122
11123         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
11124         context that just does direct keysymbol => unicode translation.
11125
11126         * gtk/gtkentry.[ch]: Start switching editing over to using
11127         GtkInputContext. (No handling of preedit yet.)
11128
11129 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
11130
11131         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
11132         many substitutions. (klass should not be subsituted.)
11133
11134 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
11135
11136         * configure.in: Add checks for Pango
11137
11138         * configure.in docs/Makefile.am: Add test for sgml2html
11139         and allow 'make dist' without building html, but print out
11140         warnings in that case. (For making snapshots)
11141
11142         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
11143         Add Pango libraries and C flags
11144
11145         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
11146         Add function (gdk_draw_layout) to draw a pango layout.
11147
11148         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
11149         for getting Pango contexts for GDK.
11150
11151         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
11152
11153         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
11154         editing.
11155
11156         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
11157         keysym => unicode translations. More languages can be added
11158         here, but real input-method support is needed.
11159
11160         * docs/Changes-1.4.txt: Added note about entry behavior.
11161         
11162         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
11163         to set the reading direction for a widget and the global direction.
11164         Add test which allows toggling the global direction. Two private
11165         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
11166
11167         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
11168           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
11169
11170         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
11171
11172         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
11173         underlining now handled by Pango.
11174
11175         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
11176         to RCStyle and Style. (Having both this and the old font name and GdkFont 
11177         is temporary.)
11178
11179         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
11180         convenience functions for creating contexts and layouts for widgets.
11181
11182         * gtk/testgtk.c: Enhance label tests with multilingual labels.
11183
11184 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
11185
11186         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
11187         titles to be active, even if they aren't visible.
11188         (gtk_clist_column_titles_passive):  Ditto.
11189
11190 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
11191
11192         * gtkmenu.c:
11193         * gtkmenu.h:
11194         * gtktypeutils.h: Spelling/grammar fixes in comments.
11195
11196 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
11197
11198         * gdk/nanox/*.h: add missing header files.
11199
11200 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
11201
11202         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
11203         send_event to TRUE.
11204         (gtk_drawing_area_size): queue a resize.
11205
11206 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
11207
11208         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
11209         the handlers, also invalidate them. bug nailed down by Karl Nelson
11210         <kenelson@ece.ucdavis.edu>.
11211
11212 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
11213
11214         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
11215         "(nil)" foundries, patch from Grigorios Magklis.
11216
11217         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
11218         on non-available fonts, based on a patch by Grigorios Magklis
11219         <maglis@cs.rochester.edu>.
11220
11221 2000-05-18  Elliot Lee  <sopwith@redhat.com>
11222
11223         * gdk/x11/gdkregion-generic.c: If a region does not have any
11224         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
11225         instead of GDK_OVERLAP_RECTANGLE_IN.
11226
11227 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
11228
11229         * gtk/gtklayout.c (gtk_layout_map): Remove references to
11230         OFFSCREEN, as it is no longer necessary.
11231
11232 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
11233
11234         * gtk/gtkcolorsel.c: Patch from David Santiago
11235         <mrcooger@cyberverse.com> to change things so that the 
11236         indicator of the active palette entry is done independently,
11237         not via the focus, since it should always be visible.
11238
11239 2000-05-17  Tor Lillqvist  <tml@iki.fi>
11240
11241         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
11242         refcount leaks as in the X11 backend.
11243
11244         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
11245         cosmetics.
11246
11247         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
11248         backend. Add _gdk_windowing_window_destroy().
11249
11250         * gtk/gtkcolorsel.c: Include correct backend-specific header.
11251         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
11252         either, but these probably do exist on nanox?)
11253         
11254         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
11255         which isn't necessarily defined by <math.h>.
11256
11257         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
11258         ancestry past GtkObject.
11259
11260         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
11261         from DLL on Win32.
11262
11263         * gtk/gtk.def: Update corresponding to recent changes.
11264
11265         * gtk/makefile.{cygwin,msc}: Updates.
11266
11267 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
11268
11269         * docs/Changes-1.4.txt: A bit of editing.
11270
11271         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
11272         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
11273         to clear the update area for the window, and clear it
11274         when hiding a window.
11275
11276         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
11277         if window destroyed.
11278
11279         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
11280
11281         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
11282         gdk_window_destroy() to the generic code, since there was a lot of 
11283         window-system-independent logic it in. Add a function:
11284         
11285          _gdk_window_destroy() 
11286
11287         to the internal API to destroy a window without unreferencing it.
11288         Add a function:
11289
11290          _gdk_windowing_window_destroy()
11291
11292         That does the windowing-system-dependent part of destroying 
11293         the window.
11294
11295 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
11296
11297         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
11298
11299 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
11300
11301         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
11302         Make gtk_widget_shape_combine_mask() keep a reference count on
11303         the pixmap since it keeps it around.
11304
11305 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
11306
11307         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
11308         leak.
11309
11310         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
11311         leak with event filters.
11312
11313 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
11314
11315         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
11316         signal handlers with the right data arguments. (Fixes
11317         some warnings when a widget was repeatedly set as a drag
11318         destination.)
11319
11320         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
11321         window so we can avoid avoid setting the DND properties on the
11322         toplevel window repeatedly.
11323
11324 2000-05-13  Tor Lillqvist  <tml@iki.fi>
11325
11326         * gdk/win32/gdkwin32.h: Define more message types missing from
11327         mingw headers.
11328
11329         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
11330         call gdk_window_destroy_notify(). It was never called. This
11331         probably meant that the GdkWindow was never freed. Thanks Owen for
11332         noticing (!).
11333
11334         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
11335         window as destroyed before calling DestroyWindow(). DestroyWindow()
11336         causes a call to the window procedure (gdk_WindowProc), which
11337         calls gdk_event_translate(), which calls
11338         gdk_window_destroy_notify(), which gets confused unless the window
11339         is set as destroyed.
11340
11341         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
11342         this function to indicate it's win32 only. Put inside #ifdef
11343         G_ENABLE_DEBUG.
11344
11345         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
11346         debugging function. (gdk_event_translate:) Add a default branch
11347         that uses the above function to print debug messages with all
11348         Windows messages symbolically.
11349
11350         * gdk/win32/gdkprivate-win32.h: Declare it, and
11351         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
11352
11353 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
11354
11355         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
11356         public header file.
11357
11358 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
11359
11360         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
11361
11362         * gtk/gtktext.c: made the adjustments no-construct args, simply
11363         provide default adjustments.
11364         (gtk_text_destroy): release adjustments.
11365
11366         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
11367         adjustment argument non-construct.
11368
11369         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
11370         instead of in finalize.
11371         (gtk_progress_get_text_from_value): 
11372         (gtk_progress_get_current_text): 
11373         (gtk_progress_set_value): 
11374         (gtk_progress_get_percentage_from_value): 
11375         (gtk_progress_get_current_percentage): 
11376         (gtk_progress_set_percentage): 
11377         (gtk_progress_configure): ensure an adjustment is present.
11378
11379 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
11380
11381         * gtk/gtkcolorsel.[hc]:
11382         * gtk/gtkcolorseldialog.[hc]:
11383         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
11384         their parent implementation, use bit fields for boolean values, don't
11385         create unused widgets, usage of glib types, braces go on their own
11386         lines, function argument alignment, #include directives etc. etc. etc..
11387
11388         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11389
11390 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11391
11392         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11393
11394         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11395         of NULL.
11396
11397         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11398         to freed data.
11399         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11400
11401         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11402         to NULL when the toplevel is getting destroyed.
11403         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11404         (gtk_menu_destroy): 
11405         (gtk_menu_init): store the information of whether we have to
11406         readd the initial child ref_count during destruction in a new
11407         GtkMenu field needs_destruction_ref_count.
11408
11409         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11410         here, those reading: learn from my mistake! ;)
11411         in order for set_?adjustment to support a default adjustemnt if
11412         invoked with an adjustment pointer of NULL, the code read (pseudo):
11413         if (v->adjustment) unref (v->adjustment);
11414         if (!adjustment) adjustment = adjustment_new ();
11415         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11416         now imagine the first unref to actually free the old adjustment and
11417         adjustment_new() creating a new adjustment from the very same memory
11418         portion. here, the latter comparision will unintendedly fail, and
11419         all hell breaks loose.
11420         (gtk_viewport_set_hadjustment):
11421         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11422         after unreferencing it.
11423
11424         * gtk/gtkcontainer.[hc]: removed toplevel registration
11425         functions: gtk_container_register_toplevel(),
11426         gtk_container_unregister_toplevel() and
11427         gtk_container_get_toplevels() which had wrong semantics
11428         anyways: it didn't reference and copy the list.
11429
11430         * gtk/gtkwindow.c: we take over the container toplevel registration
11431         bussiness now. windows are registered across multiple destructions,
11432         untill they are finalized. the initial implicit reference count
11433         users are holding on windows is removed with the first destruction
11434         though.
11435         (gtk_window_init): ref & sink and set has_user_ref_count, got
11436         rid of gtk_container_register_toplevel() call. add window to
11437         toplevel_list.
11438         (gtk_window_destroy): unref the window if has_user_ref_count
11439         is still set, got rid of call to
11440         gtk_container_unregister_toplevel().
11441         (gtk_window_finalize): remove window from toplevel list.
11442         (gtk_window_list_toplevels): new function to return a newly
11443         created list with referenced toplevels.
11444         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11445
11446         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11447         adjustment a non-construct arg.
11448         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11449         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11450         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11451
11452         * gtk/gtkrange.c: added some realized checks.
11453         (gtk_range_destroy): get rid of the h/v adjustments in the
11454         destroy handler instead of finalize. remove timer.
11455         (gtk_range_get_adjustment): demand create adjustment.
11456
11457         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11458         we simply create them on demand now and get rid of them in
11459         the destroy handler.
11460         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11461         destroy handler instead of finalize.
11462         (gtk_viewport_get_hadjustment): 
11463         (gtk_viewport_get_vadjustment): 
11464         (gtk_viewport_size_allocate): demand create h/v adjustment
11465         if required.
11466
11467         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11468         gtk_widget_real_destroy () functionality.
11469         (gtk_widget_real_destroy): reinitialize with a new style, instead
11470         of setting widget->style to NULL.
11471
11472 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11473
11474         * gtk/gtkcalendar.c:
11475         * gtk/gtkbutton.c: ported _get_type() implementation over to
11476         GType, either to preserve memchunks allocation facilities,
11477         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11478
11479         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11480         over. prepare for ::destroy to be emitted multiple times.
11481         removed reference tracer magic. chain into GObjectClass.shutdown()
11482         to emit ::destroy signal.
11483
11484         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11485         fundamental.
11486
11487         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11488         cludge.
11489
11490         * gtk/gtksocket.c:
11491         * gtk/gtkplug.c:
11492         * gtk/gtklayout.c:
11493         * gtk/gtklabel.c:
11494         * gtk/gtkargcollector.c:
11495         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11496         not being a fundamental anymore, and to work with the new
11497         type system (nuked fundamental type varargs clutter).
11498
11499         * gtk/*.c: install finalize handlers in the GObjectClass
11500         part of the class structure.
11501         changed direct GTK_OBJECT()->klass accesses to
11502         GTK_*_GET_CLASS().
11503         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11504
11505         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11506         GType. made most of the GTK_*() type macros and Gtk* typedefs
11507         simple wrappers around macros and types provided by GType.
11508         most notably, a significant portion of the old API vanished:
11509         GTK_TYPE_MAKE(),
11510         GTK_TYPE_SEQNO(),
11511         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11512         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11513         GTK_TYPE_ARGS,
11514         GTK_TYPE_CALLBACK,
11515         GTK_TYPE_C_CALLBACK,
11516         GTK_TYPE_FOREIGN,
11517         GtkTypeQuery,
11518         gtk_type_query(),
11519         gtk_type_set_varargs_type(),
11520         gtk_type_get_varargs_type(),
11521         gtk_type_check_object_cast(),
11522         gtk_type_check_class_cast(),
11523         gtk_type_describe_tree(),
11524         gtk_type_describe_heritage(),
11525         gtk_type_free(),
11526         gtk_type_children_types(),
11527         gtk_type_set_chunk_alloc(),
11528         gtk_type_register_enum(),
11529         gtk_type_register_flags(),
11530         gtk_type_parent_class().
11531         replacements, where available are described in ../docs/Changes-1.4.txt.
11532         implemented compatibility functions for the remaining API.
11533
11534         * configure.in: depend on glib 1.3.1, use gobject module.
11535
11536 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11537
11538         * TODO.xml: Various updates to current status.
11539
11540 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11541
11542         * gtk.m4: Print out version when test succeeds.
11543
11544 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11545
11546         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11547         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11548         
11549         (Original triangle color selector from Simon Budig
11550         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11551         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11552         Santiago <mrcooger@cyberverse.com>)
11553
11554         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11555         out into a separate widget.
11556
11557         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11558         and opacity controls.
11559
11560 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11561
11562         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11563         snuck in prematurely.
11564
11565 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11566
11567         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11568         had deleted a ! operator by mistake, which caused
11569         GDK_SELECTION_CLEAR events never to be generated, which caused
11570         only the first copy to the clipboard from an gtkeditable to
11571         actually cause a copy to the Windows clipboard.
11572
11573 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11574
11575         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11576         compilation, too. Current mingw gcc distributions include the
11577         necessary headers. Also the necessary IIDs are now in mingw
11578         headers/libraries, and own definitions unnecessary.
11579
11580         More hacking on OLE2 DND, still doesn't work though, and thus
11581         ifdeffed out.
11582
11583         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11584         here, too.
11585
11586 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11587
11588         * gdk/nanox/*: nano-X port work in progress.
11589         * gdk/simple.c: simple test for Gdk.
11590         * README.nanox: notes about the port: read this first!
11591         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11592         with nano-X.
11593
11594 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11595
11596         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11597         gdk_window_clear() into common code, implement in terms of
11598         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11599         not redirected to the backing rectangle.
11600
11601 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11602
11603         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11604         EXTRA_DIST. It does not work well when the file that
11605         everything depends on is not in the tarball.
11606
11607 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11608
11609         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11610         with recursion where process_updates() is called from
11611         an expose handler. (GtkTextView is highly broken in
11612         doing this, but it should work, so it is a nice test
11613         case.)
11614
11615 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11616
11617         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11618         handle the case where updates are queued during processing of
11619         updates.
11620
11621 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11622
11623         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11624         window is on gdk_display - use that instead of segfaulting.
11625
11626 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11627
11628         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11629         broken and require an empty arg, give it to them.
11630
11631 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11632
11633         * gtk/gtklabel.h: indentation fixes.
11634
11635 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11636
11637         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11638         draw too narrow or too low arcs, they seem to fail, at least with
11639         some display drivers.
11640
11641         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11642
11643         Large changes to the Win32 backend, partially made necessary by
11644         the changes to the backend-independent internal
11645         structures. Attempts to implement similar backing store stuff as
11646         on X11. The current (CVS) version of the Win32 backend is *not* as
11647         stable as it was before the no-flicker branch was merged. A
11648         zipfile with that version is available from
11649         http://www.gimp.org/win32/. That should be use by "production"
11650         code until this CVS version is usable. (But note, the Win32
11651         backend has never been claimed to be "production quality".)
11652
11653         * README.win32: Add the above comment about versions.
11654
11655         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11656
11657         * gdk/gdk.def: Update.
11658
11659         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11660         presumably be replaced by some more better mechanism as 1.4 gets
11661         closer to release shape.
11662
11663         * gdk/makefile.{cygwin,msc}: Update.
11664
11665         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11666         internal headers. Change code according to changes in these. Use
11667         gdk_drawable_*, not gdk_window_* where necessary.
11668
11669         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11670         our old DND.
11671
11672         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11673         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11674         Use correct function name in warning messages.
11675
11676         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11677         GSourceFuncs gdk_event_prepare and gdk_event_check.
11678         (gdk_event_get_graphics_expose): Do implement, use
11679         PeekMessage. Thanks to Hans Breuer.
11680         (event_mask_string): Debugging function to print an GdkEventMask.
11681         (gdk_pointer_grab): Use it.
11682
11683         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11684         (old) book I used claimed was Hangul actually is CJK Unified
11685         Ideographs Extension A. Also, Hangul Syllables were missing.
11686         Improve logging.
11687
11688         * gdk/win32/gdkgc-win32.c: Largish changes.
11689
11690         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11691         g_win32_getlocale() from GLib, and not setlocale() to get current
11692         locale name.
11693
11694         * gdk/win32/gdkprivate-win32.h
11695         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11696         gdkwin32.h, similarily as in the X11 backend.
11697
11698         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11699         assignment was used instead of equals in if test. Thanks to Hans
11700         Breuer.
11701
11702         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11703         the X11 version.
11704
11705         * gdk/win32/makefile.{cygwin,msc}
11706         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11707         path to the Win32 headers that works also with the mingw compiler.
11708
11709         * gtk/gtkstyle.c: Include <string.h>.
11710
11711 2000-04-26  Havoc Pennington  <hp@redhat.com>
11712
11713         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11714         replacing the broken gtk_label_get ()
11715
11716 2000-04-15  Havoc Pennington  <hp@pobox.com>
11717
11718         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11719         this keeps scanner scripts from getting confused.
11720
11721         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11722         data, rather than void
11723
11724 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11725
11726         * gtk/gtkclist.c (gtk_clist_motion)
11727         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11728         with is_hint FALSE, get x and y from the event. They used to be
11729         used uninitialised. The Win32 backend never sends motion events
11730         marked as hints. This for instance fixes the annoying file and
11731         font selector behaviour in the Win32 version.
11732
11733 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11734
11735         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11736         gtk_private_n_signals variables, they are used by some software,
11737         sigh.
11738
11739         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11740         installation directory from the Registry, where the installer
11741         should have put it.
11742
11743 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11744
11745         * gdk/x11/Makefile.am: Fix problem with installation directory for
11746         gdkx.h
11747
11748         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11749         <mrcooger@cyberverse.com> so that when selecting menus with the
11750         mouse, the first item will not be selected, but when selecting
11751         with an accelerator, or navigating left-right on a menubar with
11752         the menus popped up, the first item will be selected.
11753
11754 2000-04-05  Dan Damian  <dand@dnttm.ro>
11755
11756         * configure.in: Added "ro" to ALL_LINGUAS.
11757
11758 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11759
11760         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11761         indentation.
11762
11763         * Makefile.am (EXTRA_DIST): Fix typo.
11764
11765         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11766         to catch gdkconfig.h
11767
11768         * gtk/gtkitemfactory.c: Added FIXME.
11769
11770 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11771
11772         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11773         s/return_if_fail/return_val_if_fail/g and add a return value.
11774
11775 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11776
11777         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11778         merge slipup.
11779
11780         * gdk/gdkinput.h: Fix missing line from merge.
11781
11782 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11783
11784         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11785         instead of gdkprivate.h.
11786
11787 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11788
11789         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11790         parent class to correctly be GtkDialogClass.
11791
11792 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11793
11794         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11795         toplevel windows and their immediate children by their parents,
11796         since the size of toplevel windows is out of our immediate
11797         control and we don't get any real benefit from trying to track
11798         this size for clipping.
11799
11800         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11801         for input_only windows.
11802
11803         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11804         to fix some hacks and make sure that we don't try to set the
11805         background of input only windows.
11806
11807 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11808
11809         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11810         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11811         stuff that we've traditionally exposed.
11812
11813         * gdk/**.c: Use gdkinternals.h where appropriate.
11814
11815         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11816         not include gdkprivate-x11.h, move all stuff of conceivable public
11817         interest into gdkx.h; keep all really private stuff in
11818         uninstalled header gdkprivate-x11.h.
11819
11820         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11821         image->image_put on windows through a new function _gdk_window_draw_image()
11822         to allow us to do backing store for images. (Sort of ugly)
11823
11824         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11825         contexts locally so that we can offset them properly when drawing 
11826         onto backing pixmaps.
11827
11828         * gdk/gdkinput.h: Reindented
11829
11830         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11831         pixmap or color for the window, so we can properly initialize
11832         our double-buffer pixmaps, and also so that we temporarily set
11833         a background of None while scrolling.
11834
11835         * gdk/gdkregion.h: Revise region boolean operators to have an
11836         interface that is actually convenient - switch from creating new
11837         regions on every op, to "methods" that modify existing regions
11838         (A = A OP B). 3 argument forms which allow dest == src, would also
11839         be possible, but the current interfaces seem to map nicely
11840         onto what needs to be done. (There is quite a lot of region
11841         code in GDK now.)
11842
11843         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11844         operator.
11845
11846         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11847         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11848         to 32 bit coordinates, modify it to be mostly GTK+ style
11849         and to have interfaces that match gdkregion.h.
11850
11851         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11852         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11853         create a backing pixmap and redirect all drawing to
11854         that backing pixmap until a matching gdk_window_end_paint().
11855
11856         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11857         Create a special drawable class for GtkWindow's that 
11858         redirects the drawing to the backing pixmap as necessary
11859         and then calls the real operations in _gdk_windowing_window_class.
11860
11861         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11862         Store invalid region for each window. Generate expose events for invalid
11863         region in an idle. This replaces both the expose compression
11864         and the redrawing queuing in GTK+. It is both more efficient and
11865         simpler than either one individually and far more so then the
11866         combination.
11867
11868         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11869         Emulate 32 bit coordinates for windows with 16 bit coordinates
11870         by offsetting drawing, guffaw scrolling techniques and
11871         mapping/unmapping child windows as necessary.
11872
11873         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11874         where, when invalid regions are processed, the region is stored,
11875         and if expose events come in that are detectably duplicate
11876         the processed exposes (by comparison of event serial numbers),
11877         the stored region is subtracted out of those exposes.
11878
11879         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11880         regions newly exposed when scrolling or resizing windows.
11881         This, combined with forcing processesing of queued invalidated
11882         regions, gives nice flicker-free scrolling.
11883
11884         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11885         invalidated regions after every scroll.
11886
11887         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11888         emulation in GDK. Its, for all practical purposes just a
11889         GtkViewport/GtkFixed hybrid now.
11890
11891         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11892         (16-bit) structures as necessary instead of just casting.
11893
11894         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11895         in terms of the structures from gdkregion-generic.c, using appropriate
11896         offsets from GDK to X11 coordinates. Cache clip mask and
11897         origin and ts origin locally and only flush to the server
11898         when drawing, to avoid constantly setting and resetting these
11899         values when offsetting GC's for scrolling and backing pixmaps.
11900
11901         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11902
11903         * gtk/gtkcontainer.c: Call process_all_updates at end
11904         of resizing to reduce flicker. (Avoids having redraw
11905         lag arbitrarily behind resize under some circumstances)
11906
11907         * gtk/gtkentry.c: Remove old backing store code, and simply take
11908         advantage of the new backing store capabilities of GDK.
11909
11910         * gtk/gtkmain.c: Simple implementation of widget backing
11911         store - simply push a paint while handling each expose.
11912         (Should really be configurable widget for widget.)
11913         
11914         * gtk/gtkwidget.c: Remove all the old complicated redraw
11915         code, and simply invalidate the GDK windows from
11916         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11917         debugged complexity ... gone to the winds.)
11918
11919         Remove all the code for suppressing expose events while
11920         resizes are pending; this isn't needed since the invalid
11921         areas won't be processed until after the resizes are
11922         processed, since they are in a lower priority idle.
11923
11924 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11925
11926         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11927         and height of dest rectangle for non-intersecting rectangles.
11928
11929 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11930
11931         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11932         for GdkRectangle.
11933
11934 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11935
11936         * gdk/gdk{events,image,private,types,window}.h
11937          gdk/x11/gdkinputprivate.h: Change all coordinates
11938          from int16 to int. Also, Change width and height from
11939          unsigned to signed to avoid all the stupid C 
11940          signedness bugs.
11941
11942 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11943
11944         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11945         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11946         Add some more detailed checking.
11947
11948         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11949         New function to retrieve the depth of a drawable.
11950
11951         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11952         field, reorder fields to save memory. 
11953
11954 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11955
11956         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11957         of the background image instead of scaling the background down to
11958         a line.
11959
11960         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11961         which temporarily set slider to wrong size.
11962
11963         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11964         queue_clear().
11965
11966 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11967
11968 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11969
11970         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11971
11972 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11973
11974         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11975         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11976
11977         * gdk/win32/gdkfont-win32.c
11978         * gdk/win32/gdkproperty-win32.c
11979         * gdk/win32/gdkselection-win32.c
11980         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11981         now declared such.
11982
11983 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11984
11985         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11986
11987 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11988
11989         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11990         is called without trapping X errors.
11991
11992 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11993
11994         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11995         way into the fontset lists.
11996
11997 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11998
11999         * gtk/gtkthemes.h: add extern "C" scope.
12000
12001 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
12002
12003         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
12004         to make appends to the list constant. (gtk-guy-990901-0.patch)
12005
12006 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
12007
12008         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
12009         for the typename hash table.
12010
12011 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
12012
12013         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
12014         to make sure we never divide by zero. 
12015         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
12016
12017 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
12018
12019         * gtk/gtkfontsel.c: Apply patch from
12020         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
12021         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
12022
12023         Also, some cleanups in atom handling.
12024
12025 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
12026
12027         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12028         not GtkWidget.
12029
12030 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
12031
12032         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
12033         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
12034         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
12035         more guint wrap-around bugs before going to bed.
12036
12037 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
12038
12039         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
12040         guint wrap arounds in allocation.width.
12041
12042         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
12043         process untill we fit the allocation given.
12044
12045 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
12046
12047         * gtk/gtkwidget.c:
12048         (gtk_widget_unrealize): guard widget access with ref/unref
12049         around signal emission.
12050         (gtk_widget_hide): same here, but also check its destroyed
12051         state before queueing a resize.
12052
12053 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
12054
12055         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
12056         of gtk_default_insensitive_bg as insensitive base color.
12057
12058         * gtk/gtktext.c (gtk_text_style_set): set the background color according
12059         to the widget's state.
12060         (gtk_text_realize): same here.
12061         (gtk_text_state_changed): same here.
12062         (draw_bg_rect): compare background color against base[] from
12063         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
12064
12065 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
12066
12067         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
12068         grabs are active, unless a delete event is send to the toplevel
12069         of the currently grab holding widget.
12070
12071 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
12072
12073         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
12074         debugging g_print's.
12075
12076 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
12077
12078         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
12079         ever make the scrolled-window requisition ever depend on the 
12080         visibility state of the scrollbars for the AUTOMATIC policy. 
12081         This breaks the GTK+ requisition model, and causes loops.
12082
12083 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
12084
12085         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
12086         the default font to avoid problems with XFree86-4.0 where the
12087         default charset is iso10646-1, not iso8859-1.
12088
12089 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
12090
12091         * acinclude.m4
12092         * config.guess
12093         * config.sub
12094         * ltconfig
12095         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
12096
12097         * gtk/Makefile.am: minor cosmetic consistency tweak
12098
12099 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
12100
12101         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
12102         the activate_time to 0, so that we handle a quick
12103         press/release press/release properly and don't suppress
12104         the second release. (Red Hat bug #7545)
12105
12106 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
12107
12108         * gtk/gtkctree.c (row_delete):
12109         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
12110         bugs with destruction notifier, *always* update internal
12111         structures *before* calling user code.
12112
12113 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
12114
12115         A few more fixes for bug #5487, #2051, #2677.
12116         * gtk/gtkclist.c : 
12117         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
12118         not GDK_BUTTON_PRESS.
12119         (resync_selection): resync only if selection_mode is
12120         GTK_SELECTION_EXTENDED
12121         * gtk/gtkctree.c (resync_selection): same here
12122
12123 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
12124
12125         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
12126         gdk_drag_get_selection() and gtk_menu_detach().
12127
12128         [ From Jeroen Ruigrok/Asmodai ]
12129
12130 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
12131
12132         * gtk/gtknotebook.c (gtk_notebook_size_request): 
12133         page->tab_label can be NULL.
12134
12135 2000-01-25  Havoc Pennington  <hp@pobox.com>
12136         
12137         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
12138         arg is boolean
12139
12140         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
12141
12142         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
12143
12144         * gdk/gdkproperty.c (gdk_property_get): return boolean
12145
12146         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
12147
12148         * gdk/gdkim.c (gdk_im_ready): return boolean
12149
12150         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
12151
12152         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
12153         glib clash, should fix glib)
12154
12155         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
12156         (gdk_get_show_events): return gboolean, and canonicalize 
12157         to TRUE/FALSE
12158
12159         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
12160         colormap is private
12161         (gdk_colors_alloc): gboolean whether to be contiguous
12162         (gdk_color_equal): return gboolean since we are a predicate
12163         and not a qsort() (this looks semi-wrong due to glib breakage,
12164         IMO glib should be fixed)
12165         
12166         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
12167         (gdk_get_use_xshm): return gboolean
12168         (gdk_pointer_is_grabbed): return gboolean
12169
12170         * gdk/gdk.h: Change prototypes to match all the above changes,
12171         and re-run egtk-format-protos as required.
12172
12173 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
12174
12175         * gtk/gtkctree.c (resync_selection): 
12176         * gtk/gtkclist.c (resync_selection):
12177
12178         Return immediately if clist->drag_pos < 0. This is a workaround
12179         for the corrupt state that the clist gets into when a
12180         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
12181
12182         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
12183         
12184         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
12185         variable from recent commit.
12186
12187 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
12188
12189         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
12190
12191 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
12192
12193         * gtk/Makefile.am: prefix all autogenerated source that get build in
12194         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
12195         in builddir. since we subsequently cd into srcdir for autogeneration,
12196         the paths have to be stripped from the target file names, thusly we
12197         use $(@F) as target names now.
12198         put a comment about configure.in's --disable-rebuilds option,
12199         which can be used for non-writable source directories, for development
12200         setups though, srcdir has to be *writable*.
12201
12202 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
12203
12204         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
12205           Finish the job of allowing event to be NULL.
12206           (Fixes bug #4283, reported by Chris Blizzard)
12207
12208         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
12209           things so that the cursor appears on screen, properly
12210           take into account INNER_BORDER.
12211           (Fixes bug #4754, reported by Antonio Campos)
12212
12213 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
12214
12215         * gtk/gtknotebook.c (gtk_notebook_map): Don't
12216           show the tab_label unless it itself is visible.
12217
12218           gtk/gtknotebook.c (gtk_notebook_size_request):
12219           Do a better job of making sure that the visibility
12220           of the tab label corresponds to whether it should
12221           be mapped or not.
12222
12223 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
12224
12225         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
12226           Use the requisition, not the allocation, since the
12227           allocation has not necessarily been computed yet.
12228           (Pointed out by Eugene Osintsev)
12229
12230 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
12231
12232         * gtk/gtkstyle.c (gtk_style_new): Dont' set
12233           style/base[GTK_STATE_INSENSITIVE] both to
12234           gtk_default_insensitive_bg!
12235           (Bug #2187, reported by Jonathan Blandford)
12236
12237         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
12238           Add Alt_L, Alt_R to list of invalid accelerators.
12239           (Bug #3736, reported by Vlad Harchev)
12240
12241 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
12242
12243         * gtk/gtkfilesel.c (open_ref_dir): Fix several
12244         bugs which occured after an attempt to open 
12245         invalid home directory left cmpl_state->reference_dir == NULL.
12246
12247          - completion on files in home directory didn't work
12248          - completion on an empty string caused  segfault
12249
12250          (Bug #3678, reported by Steve Ratcliffe)
12251
12252         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
12253         cut and paste error that was causing scales to
12254         be incorrectly positioned.
12255         (Bug #2956,
12256          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
12257
12258 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
12259
12260         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
12261         when checking for dcgettext, if we've found we needed
12262         it for dgettext.
12263 +
12264 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
12265
12266         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12267         queue_clear on NO_WINDOW widgets during a reparent,
12268         since at that point the window and widget heirarchies
12269         are out of sync. This stops crashing in some cases
12270         (the scrolled window reparent test, for instance), and
12271         _probably_ won't cause drawing errors.
12272
12273         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
12274         test do what it was supposed to do and be robust against
12275         window closings, etc. (Bug #2443)
12276
12277 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
12278
12279         * gtk/gtkentry.c: Fix return values on mouse events.
12280         (Bug #2686, Sky <seb_sky@yahoo.com>)
12281
12282         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
12283         (pointed out by George Lebl)
12284
12285         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
12286         (From Ettore Perazzoli  <ettore@helixcode.com>)
12287  
12288 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
12289
12290         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
12291         clicks between rows or outside calender area correctly.
12292         (Patch from Damon Chaplin)
12293
12294         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
12295         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
12296           Call destroy function when overwriting existing data. 
12297           (Pointed out by Damon Chaplin)
12298
12299 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
12300
12301         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
12302           which was causing problems on various systems with Xmu.
12303           This hasn't been needed for a very long time.
12304           (Fixes #1185 3167)
12305
12306 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
12307
12308         * gdk/gdki18n.h: Include <ctype.h> when defining
12309           gdk_isw* in terms of is* as a fallback.
12310           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
12311
12312 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
12313
12314         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
12315           realize the widget when it is size allocated!
12316           (old, old bug)
12317
12318         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
12319           Removed unused call to gdk_window_get_size() that
12320           showed up when the above was fixed.
12321
12322 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
12323
12324         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
12325           fix up widget->window when the widget is a
12326           NO_WINDOW container widget.
12327
12328 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
12329
12330         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
12331           to account for the fact that feof() does _not_ 
12332           return TRUE on errors, and thus avoid infinite loops
12333           when trying to use gdk_pixmap_create_from_xpm()
12334           on unreadable values.
12335
12336 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
12337
12338         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
12339
12340 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
12341
12342         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
12343           gdk_gc_set_dashes to take gint8 instead of gchar to
12344           make it clearer that it is _not_ a NULL terminated string.
12345
12346         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
12347           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
12348           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
12349           arguments.
12350
12351 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
12352
12353         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
12354         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
12355         background size relative to our allocation, guard against small
12356         allocations, we may have not yet been size allocated.
12357
12358 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
12359
12360         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
12361         not just version == 3. We implement all 3 + most of 4 - 
12362         (we don't support matching text/plain;charset=iso-8859-1
12363         to a dest that expects text/plain). We'll still advertise
12364         3 to be safe, but any client implementing version >= 3
12365         must interoperate with 3.
12366         
12367 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12368
12369         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
12370         background and gc members, add a warning in gtk_tooltips_set_color()
12371         indicating that this function is deprecated.
12372
12373 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
12374
12375         * docs/gtkfaq.sgml: FAQ Update:
12376           - Minor cleanups (Emmanuel, me)
12377           - New questions:
12378                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
12379                 How can I retrieve the text from a GtkMenuItem? (timj)
12380                 How do I validate/limit/filter the input to a GtkEntry? (me)
12381                 Memory does not seem to be released when I free the list
12382                         nodes I've allocated (timj)
12383
12384 2000-03-07  Tor Lillqvist  <tml@iki.fi>
12385
12386         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
12387         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
12388         for which it is no use to call GetLastError onWin9x.
12389         (gdk_other_api_failed) New function, for general error
12390         reporting without calling GetLastError.
12391         (gdk_win32_api_failed) OTOH, this function always calls
12392         GetLastError. (gdk_win32_last_error_string) Remove this function,
12393         GLib has the equivalent now.
12394
12395         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12396         call them with function name, file name and line number in the
12397         arguments.
12398
12399         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12400         functions.
12401         
12402         * gtk/gtk.def: Add some missing entry points.
12403
12404         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12405         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12406         
12407         Fixes by Hans Breuer:
12408
12409         * gdk/makefile.msc: Update for debugging.
12410
12411         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12412         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12413         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12414         in the dash_list.
12415
12416         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12417         the x11 backend.
12418
12419         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12420
12421         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12422
12423 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12424
12425         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12426         just pixel value of background colour.
12427
12428         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12429         containing code snippet previously duplicated in a couple of
12430         places.
12431         
12432         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12433         gdk_colormap_color.
12434
12435         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12436         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12437         events for autorepeated Shift, Control and Alt keys. Use
12438         gdk_colormap_color.
12439
12440         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12441         pointer is inside the window the cursor of which we are setting,
12442         call SetCursor immediately.
12443
12444         * gdk/win32/makefile.cygwin
12445         * gtk/makefile.cygwin: If we don't have the build number stamp
12446         file, use zero.
12447
12448         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12449         gtk_paned_set_gutter_size as empty.
12450
12451         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12452         
12453 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12454
12455         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12456           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12457           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12458           docs/gtk_tut.sgml docs/gtk.texi TODO:
12459
12460           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12461
12462 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12463
12464         * gtk/gtkcalendar.c: Implement num_marked_dates,
12465           and don't emit mutiple day_selected signals on
12466           month_prev.
12467
12468 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12469
12470         * docs/make-todo (lineno): let title and logo be configurable so
12471         that GNOME can use this script too.
12472
12473         * TODO.xml: added logourl and a title
12474
12475 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12476
12477         * TODO.xml: Added some UI items, and an explanatory
12478         comment at the top of the file.
12479
12480 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12481
12482         * TODO.xml: some updates, added abunch of new entries.
12483         a note for those fiddeling with this file, when done
12484         with it, invoke:
12485         $ ./docs/make-todo TODO.xml >/dev/null
12486         and correct output errors before comitting changes.
12487
12488 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12489
12490         * TODO.xml: Added XML-structured TODO file.
12491         * docs/make-todo: python script to turn TODO.xml into
12492           pretty XML output. 
12493
12494 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12495
12496         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12497         the function to let it draw the seven dots, instead of the old,
12498         much maligned, method.
12499         (draw_dot): New function to draw a dot.
12500
12501         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12502         to draw the handle inside the border width as opposed to outside.
12503         Use paint function instead of gdk_draw_point.
12504
12505         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12506         to draw the handle inside the border width as opposed to outside.
12507         Use paint function instead of gdk_draw_point.
12508
12509         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12510         Change indenting to be more GTK like.
12511
12512 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12513
12514         * docs/gtk_tut.sgml: New section on GtkCalendar
12515         * examples/calendar: Update example code
12516
12517 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12518
12519         * docs/gtkfaq.sgml: FAQ Update
12520
12521 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12522
12523         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12524         to prevent the scroll event to be propagated upwards.
12525
12526 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12527
12528         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12529         OwnerGrabButtonMask from button entries for
12530         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12531
12532         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12533         to the event mask (which will result in button/press release
12534         being added to the event mask on Unix) so scrolling works
12535         for layouts in scroll windows.
12536
12537         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12538
12539         Patch from Anders Carlsson  <andersca@gnu.org> to add
12540         a scroll event.
12541
12542         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12543         scrolling to the "Test Scrolling" part of testgtk.
12544  
12545         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12546  
12547         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12548         it against GDK_SCROLL.
12549  
12550         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12551         way of mouse wheel scrolling.
12552  
12553         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12554  
12555         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12556  
12557         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12558  
12559         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12560         gdk_event_mask_table.
12561  
12562         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12563         GdkEventScroll handler.
12564  
12565         * gdk/gdkevents.h: Added GdkEventScroll structure.
12566  
12567 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12568
12569         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12570         and Anders Carlsson to change the Paned widgets so that they
12571         can be dragged from anywhere along the length. Also change
12572         the way that this is drawn to make this apparent.
12573
12574         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12575         from George Lebl to check that option_menu->menu is present
12576         before getting history.
12577
12578 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12579
12580         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12581         before the assertion for non-NULL segment list.
12582
12583         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12584         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12585         machine, but it might be display driver dependent. Sigh, so make
12586         sure the stipple is that size. Does Windows suck or what?
12587
12588         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12589         places.
12590
12591 2000-02-13  Havoc Pennington  <hp@pobox.com>
12592
12593         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12594         refcount to 1
12595         (gdk_cursor_new): init refcount to 1
12596
12597         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12598
12599 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12600
12601         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12602         so that we don't have to do unnecessary settings to the HDC.
12603
12604         * gdk/win32/gdkdrawable-win32.c
12605         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12606         gdk_gc_predraw.
12607
12608         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12609         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12610         GDI paths, call WidenPath to get the outline of the stroken path,
12611         and then fill the outline (with the brush that was built from the
12612         stipple).
12613
12614         * gdk/win32/gdkgc-win32.c: Factor out common code from
12615         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12616         gdk_win32_gc_values_to_win32values. Use correct colour for
12617         SetBkColor() (Until now the code actually used a random colour in
12618         the call to SetBkColor()... but that didn't show up as not many
12619         GDI APIs use the background colour. Pattern (opaque stippled)
12620         brushes do.)
12621
12622         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12623         gdk_win32_api_failed): New functions for error logging.
12624
12625         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12626         WIN32_API_FAILED to call them, passing function or file name and
12627         line number.
12628
12629         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12630
12631         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12632         GdkColor for foreground and background in GdkGCWin32Data.
12633
12634         * gdk/makefile.cygwin: Link in the resource object separately.
12635
12636         * gdk/win32/rc/gdk.rc
12637         * gtk/gtk.rc (New file)
12638         * gdk/win32/makefile.cygwin
12639         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12640         as in GLib.
12641
12642 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12643
12644         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12645         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12646         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12647         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12648         parameters given and cursor->ref_count. coding style fixups.
12649
12650         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12651         not GtkWidget.
12652         
12653         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12654         fix up widget macros and add _GET_CLASS() variant.
12655         
12656         * gtk/*.c: some GtkType fixups.
12657
12658 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12659
12660         * gdk/win32/gdkproperty-win32.c
12661         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12662         were reversed.
12663
12664 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12665
12666         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12667         g_filename_to_utf8 to convert the font names Windows gives us from
12668         whatever is the default codepage to UTF-8.
12669         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12670         in the other direction.
12671
12672         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12673         error in debugging output.
12674
12675 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12676
12677         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12678         and height parameters to gdk_window_clear_area(). Not minus one.
12679
12680 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12681
12682         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12683         checks if the widget passed to gtk_drag_get_data() was not the
12684         dest widget.
12685
12686 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12687
12688         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12689         g_filename_from_utf8 functions (which were added a moment ago to
12690         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12691         size buffers.
12692
12693         gtk_file_selection_get_filename returns the filename in the C
12694         runtime encoding. It calls g_filename_from_utf8, but copies the
12695         returned string to a static buffer, which is returned. I think
12696         this is better than returning the result from g_filename_from_utf8
12697         directly, which would mean all apps that use it would have to free
12698         the return value. Or should this function care about this issue at
12699         all? Maybe a new function with clearly defined semantics.
12700
12701         * gtk/gtkfilesel.h: Add comment about
12702         gtk_file_selection_get_filename returning the filename in the C
12703         runtime's encoding.
12704
12705         * README.win32
12706         * gdk/gdk.def
12707         * gdk/makefile.{cygwin,msc}
12708         * gtk/gtk.def: Updates.
12709
12710         * gdk/gdkcursor-win32.c: Initialise refcount.
12711
12712 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12713
12714         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12715
12716 2000-01-30  Havoc Pennington  <hp@pobox.com>
12717
12718         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12719         destroy
12720
12721         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12722
12723         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12724         implemented in platform-specific code
12725
12726         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12727
12728         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12729         underscore in front
12730
12731         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12732         put an underscore in front
12733
12734         * gdk/gdkcursor.c: new file, implements
12735         gdk_cursor_ref/gdk_cursor_unref
12736
12737         * gdk/gdkcursor.h: Refcount GdkCursor
12738
12739         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12740
12741 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12742
12743         * gdk/gdkwindow.h
12744         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12745
12746 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12747
12748         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12749         structures to properly inherit from GtkWidget not GtkBin.
12750
12751 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12752
12753         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12754         (bug #5178 - Peter Wainright)
12755         
12756         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12757         so that it will be installed.
12758         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12759
12760 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12761
12762         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12763         for the GtkStyleClass vtable const.
12764
12765         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12766         take a const string argument like GtkTranslateFunc. This will
12767         require changes in use code.
12768
12769 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12770
12771         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12772         semantics (to mimic the X11 backend, which just calls XClearArea)
12773         is to check for zero width (and height), and in that case use the
12774         window's width minus x (height minus y). This fixes for instance
12775         some redraw problems with gtkclist, which were easily noticeable
12776         in the gtk file selection widget.
12777
12778         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12779         windows.
12780
12781 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12782
12783         * configure.in
12784         * gdk/Makefile.am
12785         * gdk/x11/Makefile.am
12786         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12787         (bug #5177).
12788         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12789         out later.
12790
12791 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12792
12793         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12794         WM_MOVE for iconified or invisible windows. This fixes various
12795         problems when minimising windows. Thanks to Bernd Herd.
12796
12797 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12798
12799         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12800         backend's draw_lines method, not draw_points.
12801
12802 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12803
12804         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12805         before Owen's reorganisation: Don't have queued_events and
12806         queued_tail statics in this file, but use gdk_queued_events and
12807         gdk_queued_tail. This makes exposure event compression work again.
12808
12809         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12810         seem to be needed?
12811
12812 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12813
12814         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12815         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12816         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12817         doesn't do anything.
12818
12819         * gdk/gdk.def: Add gdk_xid_table_insert.
12820
12821         * gdk/win32/gdkprivate-win32.h
12822         * gdk/win32/gdkevents-win32.c
12823         * gdk/win32/gdkinput-win32.c
12824         
12825         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12826         extension_events field in the GdkWindowWin32Data struct. Use only
12827         the extension_events field in GdkWindowPrivate. Previously one was
12828         set, and the other one tested, which broke tablet
12829         functionality. Thanks to Keishi Suenaga for pointing this out.
12830
12831 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12832
12833         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12834         When handling a single character (text length == 1), don't handle
12835         it as if it was UTF-8.
12836
12837 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12838
12839         * Makefile.am: Distribute README.win32.
12840         
12841         * gdk/Makefile.am
12842         * gdk/win32/Makefile.am: Distribute Win32 files.
12843
12844         * gdk/makefile.msc: New file.
12845
12846         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12847         after label).
12848
12849         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12850         gdk_error_code as GDKVAR, as they are referred outside GDK.
12851
12852         * gdk/win32/makefile.msc: Update.
12853
12854         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12855         tweaks. Check only if at least one of those Unicode subrange bits
12856         we care for is set. If no code page bits are set, guess (wildly)
12857         based on the charset.
12858
12859         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12860
12861         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12862         non-NULL.
12863
12864         * gtk/gtkdnd.c
12865         * gtk/gtklayout.c
12866         * gtk/gtkplug.c
12867         * gtk/gtkselection.c
12868         * gtk/gtksocket.c
12869         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12870         appropriate. There must be a cleaner way to handle this?
12871
12872         * gtk/gtkrc.c: Must include windows.h on Win32.
12873
12874         * gtk/testgtk.c: No need to include gdkx.h.
12875
12876         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12877
12878 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12879
12880         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12881         the rbearing is set to the same as the width, but this should be
12882         fixed.
12883
12884 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12885
12886         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12887         function. If Windows doesn't tell us what Unicode subranges a font
12888         covers, guesstimate based on the codepages it covers. This will
12889         hopefully help those Windows versions or fonts that don't give us
12890         any useful Unicode subrange information with GetTextCharsetInfo.
12891         Call this function in gdk_font_load_internal.
12892
12893         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12894         minor changes.
12895
12896 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12897
12898         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12899         New function, long needed.
12900
12901 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12902
12903         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12904         only_if_exists argument of gdk_atom_intern to
12905         bool.
12906
12907 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12908
12909         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12910         Fix two copy&paste errors.
12911
12912         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12913         win32 has changed.
12914
12915         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12916         GdkWin32SingleFont struct.
12917
12918         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12919         subranges of loaded fonts. Clear font signature first, in case
12920         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12921         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12922
12923         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12924         Unoffset clip region.
12925
12926 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12927
12928         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12929         event->any.window before calling filter functions.
12930
12931 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12932
12933         * gtk/gtkgamma.h: Adapt cast macros to standard.
12934
12935 [ Merges from 1.2 ]
12936
12937 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12938
12939         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12940         If translation does not include a '/', use entire
12941         translation instead of crashing.
12942
12943 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12944
12945         * docs/gtk_tut.sgml:
12946         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12947
12948 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12949
12950         * gtk/gtkselection.c (gtk_target_list_remove): Use
12951         g_list_remove_link, not g_list_remove.
12952
12953         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12954         
12955 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12956
12957         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12958         statement upon unselection (how the heck did that slip in?).
12959
12960 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12961
12962         * gtk/gtktext.c (gtk_text_freeze): 
12963         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12964         in frozen state (and aparently crashes). patch provided by Anders
12965         Melchiorsen <and@kampsax.dtu.dk>.
12966
12967 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12968
12969         * fix insensitive default/focus widget activation,
12970         reported by Matt Goodall <mgg@isotek.co.uk>.
12971
12972         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12973         (gtk_window_activate_default):
12974         (gtk_window_activate_focus):
12975         return handled=FALSE for actiavtion of insensitive default
12976         widgets. return handled=TRUE for activation of insensitive
12977         focus widgets. don't activate in either case.
12978
12979 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12980
12981         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12982         and $glib_cflags to match library order and in the
12983         theory that an old version of GLib is more likely to
12984         be in the include directory for X then vice-versa.
12985         (Bug #2776)
12986
12987 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12988
12989         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12990         to determine the locale for fontsets, not LC_MESSAGES;
12991         the user may want English messages with a handling
12992         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12993         will still be broken) (Bug #2891)
12994
12995 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12996
12997         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12998
12999 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
13000
13001         * gtk/gtkrc.ko: Changed the Korean default fontset.
13002
13003 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
13004
13005         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
13006         where when scrolling to the left or top double exposes
13007         were done, causing major slowdowns.
13008
13009 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
13010
13011         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
13012         names to lowercase and alphanumeric, before looking
13013         them up.
13014
13015         * gtk/Makefile.am: Install codeset variant gtkrc files
13016         with normalized names.
13017
13018 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
13019
13020         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
13021         popup menus when the menu is already visible, but its parent
13022         is still hidden, (happens after tornoff window got hidden).
13023
13024 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
13025
13026         * gtk/Makefile.am (install-data-local): Fix
13027         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
13028         deleted, causing error messages on install.
13029
13030 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
13031
13032         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
13033         the handle as well, since we now sometimes ignore
13034         exposes on the handle while resizing.
13035
13036 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
13037
13038         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
13039         extra g_free introduced in one of the last one or two 
13040         commits.
13041
13042 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
13043
13044         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
13045         consistent, put each style that a gtkrc.* file creates
13046         in a unique namespace, remove old files before installing.
13047
13048 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
13049
13050         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
13051         gtk_rc_init is called multiple times. (Yes, people who
13052         do that have bugs in their code.)
13053
13054 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
13055
13056         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
13057         Remove it since it's generated by the Makefile anyway
13058
13059 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
13060
13061         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
13062         device->info.axes for core pointer.
13063
13064 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
13065
13066         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
13067         idle_id, to deal with obsolete, broken C libraries.
13068
13069 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
13070
13071         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
13072         allocation->x/y twice!
13073
13074         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
13075         consistent with gtk_vscale_pos_trough().
13076
13077 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
13078
13079         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
13080         be queueing a resize on a toplevel container between
13081         the time we show it and when we map it. So, we need
13082         to test GTK_WIDGET_VISIBLE() for toplevels, and only
13083         use GTK_WIDGET_DRAWABLE() for child windows.
13084
13085 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
13086
13087         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
13088         (fixes bug #2144)
13089
13090 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
13091
13092         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
13093         container DRAWABLE (instead of VISIBLE), so we don't queue
13094         resizes on non-toplevel containers.
13095
13096 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
13097
13098         * gtk/gtkselection.[ch]: Make the data argument
13099         const guchar *.
13100
13101 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
13102
13103         * gtk/gtkwindow.c: Try to behave sensibly if 
13104         the focus widget is the window itself. (Should
13105         we allow this at all?)
13106
13107 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13108
13109         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
13110         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
13111         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
13112         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
13113         in prototypes and implementations consistent (Tomas Ogren).
13114
13115         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
13116         before the widget is unparented (reported by damon).
13117
13118         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
13119         since we provide unsigned data anyways.
13120
13121 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
13122
13123         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
13124         the call to gtk_tooltips_layout_text() until later.
13125
13126         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
13127         Call gtk_widget_ensure_style() before using the style.
13128
13129 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
13130
13131         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
13132         for old widgets that don't propagate draws to all
13133         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
13134
13135 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
13136
13137         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
13138         for a redraw but just the widget that requested the resize.
13139
13140 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
13141
13142         * gtk/gtkcontainer.c: added new widget level method
13143         gtk_container_set_reallocate_redraws() and a GtkContainer flag
13144         reallocate_redraws : 1 to reflect the setting, exported this through
13145         the argument system as a boolean ::reallocate_redraws.
13146
13147         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
13148         on the widget because the allocation changes, do so as well for
13149         widget->parent if the parent has reallocate_redraws set to TRUE.
13150         with that containers requesting reallocation redraws get automatically
13151         redrawn if their children changed allocation (this unfortunately
13152         affects also other children that didn't change allocation, but we
13153         cannot work around that before 1.3).
13154
13155 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13156
13157         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
13158         _and_ height are >0 (not _or_).
13159
13160         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
13161         instead of gtk_container_queue_resize(), which is a core gtk internal
13162         function (must have been on crack when i queued that).
13163
13164         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
13165         we can check more reliably if we want to discard expose events.
13166         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
13167         flag.
13168         
13169         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
13170         we simply trust these events. for deciding whether to discard exposes,
13171         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
13172         
13173 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
13174
13175         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
13176         queues of areas that are completely off screen.
13177
13178         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
13179         logic for handleboxes.
13180
13181         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
13182         check on width/height.
13183
13184 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
13185
13186         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
13187         we are fine with using $@ the way we do (if we actually encounter
13188         brokeness with $@ in VPATH builds because of additional path prefixes,
13189         we need to use $(@F) actually).
13190
13191 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
13192
13193         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
13194         short lived bugs, that would allow language bindings to do surgeries
13195         to our guts.
13196
13197 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
13198
13199         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
13200         where comparison was being done against an uninitialized
13201         value causing intermittant results depending on
13202         compiler flags. Also make it clearer that we aren't
13203         ever initializing the child as 0x0 (though this will
13204         be caught in gtk_widget_size_allocate())
13205
13206 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
13207
13208         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
13209         gtk_window_unset_transient_for() call after we do checks
13210         involving the old transient parent.
13211         [ From Lance Capser <lmc@cyberhighway.net> ]
13212
13213 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
13214
13215         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
13216         an empty file.
13217
13218 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
13219
13220         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
13221         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
13222
13223 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
13224
13225         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
13226         `$@' is valid only in the build dir, not after we've done 
13227         `cd $srcdir'.  Also use `test -f' instead of less portable
13228         `test -e'.
13229
13230 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
13231
13232         * gtk/gtktext.c (correct_cache_insert): Rewrite
13233          for simplicity, and hopefully correctness.
13234          (Fixes bug #1322, which was a segfault when
13235           on some insertions with the properties around
13236           the insertion set up just wrong.)
13237
13238         * gtk/gtktext.c (gtk_text_adjustment): When we receive
13239          a "changed" signal, clamp the new value to the adjustment
13240          bounds to avoid segfaulting if someone tries to change
13241          the adjustment to a bogus value. (Bug #1795)
13242
13243 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13244
13245         * gtk/gtkmain.c: Ignore unexpected destroy notifies
13246         for children, for toplevel windows handle them
13247         like delete_event.
13248
13249         * gtk/gtkplug.c: Add an unrealize handler so that
13250         we unref plug->socket_window when we are done
13251         with it.
13252
13253 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
13254
13255         * gtk/gtktext.c (clear_area): Fix stupid signedness
13256          problem that was causing background to sometimes
13257          be misaligned.
13258
13259 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
13260
13261         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
13262         
13263         * gtk/gtkmenu.c (gtk_menu_position): Make
13264          sure we never position menus with negative x, y,
13265          since gtk_widget_set_uposition() can't handle that.
13266
13267         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
13268          Modify the positioning code a bit so that we always
13269          put the top-left corner onscreen. (This is for
13270          UI reasons, gtk_menu_position() now takes care of
13271          gtk_widet_set_uposition() brokeness.)
13272
13273 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
13274
13275         * gtk/Makefile.am: fixed up things for -jx, x > 1.
13276
13277 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
13278
13279         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
13280           RC style that is passed in. The lack of the ref
13281           before was a bug. If people worked around this
13282           bug, this will introduce a slight memory leak
13283           in their code. The code should typically look like:
13284
13285             rc_style = gtk_rc_style_new ();
13286             [...]
13287             gtk_widget_modify_style (widget, rc_style);
13288             gtk_rc_style_unref (rc_style);
13289
13290         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
13291           the style if it was already set.
13292
13293         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
13294           style if it was set before.
13295
13296 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13297
13298         * gtk/testgtk.c (main): Add a check to see if we
13299           are being run from the correct directory and
13300           to quit nicely if we are not.
13301
13302         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
13303           static.
13304
13305 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
13306
13307         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
13308
13309         * gtk/gtkwindow.c:
13310         queue resizes unconditionally (gtk_widget_queue_resize will figure
13311         what to do if the window is not realized).
13312         (gtk_window_move_resize): only recenter the window
13313         for GTK_WIN_POS_CENTER_ALWAYS.
13314         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
13315         the same way as GTK_WIN_POS_CENTER.
13316
13317 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
13318
13319         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
13320         with (!(info->last_flags & GDK_HINT_POS)) instead of
13321         (!info->last_flags & GDK_HINT_POS).
13322
13323         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
13324         new_height unconditionally, because we use these values even if
13325         !default_size_changed && !hints_changed.
13326         comented the (default_size_changed || hints_changed) case with
13327         respect to resize rejects from the window manager.
13328
13329         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
13330         in the zvt condition hack, since this includes the window hints, set
13331         the hints after the handling_resize case.
13332
13333         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
13334         window is initially shown with to the geometry.
13335
13336 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
13337
13338         * gtk/gtkwindow.c (gtk_window_move_resize):
13339         s/size_changed/default_size_changed/g so i know what's
13340         really going on (frying brain on smaller flame now).
13341
13342 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
13343
13344         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
13345         we have size_changed upon handling_resize. this is a gross
13346         workaround for the broken zvt widget and should be removed in
13347         1.3 again (search for FIXME).
13348         Owen provided an accurate comment for this:
13349
13350         /* We could be here for two reasons
13351          *  1) We coincidentally got a resize while handling
13352          *     another resize.
13353          *  2) Our computation of size_changed was completely
13354          *     screwed up, probably because one of our children
13355          *     is broken. It's probably a zvt widget.
13356          *
13357          * For 1), we could just go ahead and ask for the
13358          * new size right now, but doing that for 2)
13359          * might well be fighting the user (and can even
13360          * trigger a loop). Since we really don't want to
13361          * do that, we requeue a resize in hopes that
13362          * by the time it gets handled, the child has seen
13363          * the light and is willing to go along with the
13364          * new size. (this happens for the zvt widget, since
13365          * the size_allocate() above will have stored the
13366          * requisition corresponding to the new size in the
13367          * zvt widget)
13368          *
13369          * This doesn't buy us anything for 1), but it shouldn't
13370          * hurt us too badly, since it is what would have
13371          * happened if we had gotten the configure event before
13372          * the new size had been set.
13373          */
13374
13375 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
13376
13377         * gtk/gtkrc.c: deal properly with the fact that RC
13378           style lists may include rc styles more than once.
13379
13380         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
13381           unused static function.
13382
13383         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
13384           stack of directories of RC files currently being
13385           parsed and implicitely add them to pixmap path.
13386           
13387           This fixes a bug where the directory would get
13388           appended then overwritten by pixmap_path declarations.
13389
13390           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13391
13392         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13393           theme's exit function. (Patch from Peter Wainwright,
13394           bug #1454)
13395
13396         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13397           Add a destroy() handler to take care of removing
13398           group for menu item. (Fixes bug #1197)
13399
13400         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13401           in warning message.
13402
13403 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13404
13405         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13406         roundtrip to figure window's width and height, since we know that
13407         anyways from widget->allocation.
13408
13409 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13410
13411         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13412           the hints after we request the new size.
13413
13414 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13415
13416         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13417           GTK_WIDGET_REALIZED() assertion - we can compute the
13418           hints before we are realized.
13419
13420         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13421           hint changing so that we have a value of hints_changed
13422           when we decide whether to constrain the window size.
13423
13424         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13425
13426         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13427         change back to G_MAXINT.
13428
13429 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13430
13431         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13432         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13433         contain uncluttered values.
13434         (gtk_window_compute_hints): simply assert that window is realized
13435         and that geometry_info is valid, since we rely on this anyways.
13436         (gtk_window_constrain_size): major cleanups to the code.
13437         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13438         for the base size, instead of the minimums. use 32767 as max width
13439         and height (like in gtkwindow.c) instead of G_MAXINT.
13440
13441 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13442
13443         * cleaned up the GtkContainer.need_resize flag handling mess, we
13444         only need to force resize requests when we were prematurely
13445         realized, or our widget tree was modified when we were temporarily
13446         hidden. handling these cases directly upon showing the window (i.e.
13447         while the GdkWindow is still unmapped) avoids the need to wait for
13448         a configure event response and therefore makes the GUI more snappier
13449         and avoids blank windows during the roundtrip.
13450
13451         * gtk/gtkwidget.c:
13452         (gtk_widget_hide): 
13453         (gtk_widget_show): don't queue resizes on toplevels, they know how
13454         to deal with matters.
13455
13456         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13457         flag directly for not visible resize containers and spare us unecessary
13458         signal emissions.
13459
13460         * gtk/gtkwindow.c:
13461         (gtk_window_realize): if we need to enforce premature size allocation,
13462         queue a container resize so we are correctly resized later on.
13463         (gtk_window_init):
13464         (gtk_window_size_request):
13465         don't freak around with the ->need_resize flag,
13466         gtk_container_queue_resize() will care about that.
13467         (gtk_window_show):
13468         handle initial resizing issues here, we can handle matters better in
13469         this place, especially since we know that our GdkWindow is still
13470         unmapped.
13471         (gtk_window_move_resize):
13472         don't care about ->need_resize at all.
13473         handle size changes properly that occoured while we waited for a
13474         configure event.
13475
13476 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13477
13478         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13479         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13480         Move the hint setting code from gtk_widget_set_uposition
13481         to here; set the hints so that we respect any previously
13482         set geometry hints.
13483
13484         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13485         change the window hints here or move the window here,
13486         let that happen in gtk_window_move_resize().
13487
13488 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13489
13490         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13491         to already queued resizes (and therefore redraws) on a widget, check
13492         its anchestry as well.
13493
13494         * gtk/gtkcontainer.c:
13495         (gtk_container_queue_resize): clear resize widgets for resize
13496         containers before aborting prematurely. this is especially important
13497         for toplevels which may need imemdiate processing or their resize
13498         handler to be queued.
13499         (gtk_container_dequeue_resize_handler): added new internal function for
13500         gtkwindow.c.
13501
13502         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13503         configure event, take possible changes in window position into account
13504         as well.
13505         if we request a new window size, queue up a resize handler that will
13506         last until the configure event response arrives.
13507         combined the ->need_resize case (initial show) with the general size
13508         (hints) changed case and added even more comments.
13509         if !auto_shrink, only revert to the old allocation if the new size
13510         is smaller than the current allocation.
13511
13512 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13513
13514         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13515                            gtk_window_set_geometry_hints
13516                            gtk_window_set_default_size):
13517         When hints are set, queue a resize so that the hints will
13518         be eventually reset on the toplevel.
13519
13520         * gtk/gtkwindow.c (gtk_window_show): Use
13521         gtk_window_compute_default_size(). Clear the need_resize flag
13522         on the initail map so that we don't unnecessarily trigger the
13523         resize code.
13524
13525         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13526         into separate functions. Compare the hints we are setting
13527         with what we set last time so that we can accurately
13528         tell when we need to reset the hints.
13529
13530         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13531         function to figure out the size from requisition
13532         and default_size.
13533
13534         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13535         from fvwm to constrain a size to the geometry hints.
13536
13537         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13538         to compare two sets of geometry hints.
13539
13540         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13541         from gtk_window_set_hints(), just compute the hints,
13542         don't set them.
13543
13544         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13545         code from gtk_window_move_resize() to separate function,
13546         rationalize a bit.
13547
13548 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13549
13550         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13551         structure into a new private structure.
13552
13553         * gtkrc.c: Split GtkRcStyle into public/private.
13554         In the private part, add a list of pointers to the
13555         RcStyle lists this RcStyle participates in.
13556
13557         * gtkrc.c: When a RcStyle is free, remove all
13558         lists referencing it from the 
13559         realized_style_ht hash, and free those lists.
13560         
13561         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13562         gtk_rc_init(), since that adds the default styles
13563         to the list of parsed RC files again.
13564
13565         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13566         
13567 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13568
13569         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13570         checks that ensure that a widget's allocation is at least 1 in width
13571         and height. (GNOME note: this doesn't affect old panel code anymore,
13572         because GtkSocket will request width and height of at least 1 since
13573         Fri Jul 23).
13574
13575         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13576         allocated yet (happens if the user realizes the window prematurely),
13577         size request and allocate it.
13578         (gtk_window_size_allocate): guard against guint underflows.
13579
13580 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13581
13582         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13583         in gtk_built_sources, so gtk.defs gets built prior to all other
13584         sources.
13585
13586 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13587
13588         * gtk/Makefile.am:
13589         invoke indent on gtkmarshal.*. 
13590         rewrote source generation rules, use COPYING as oldest source tag for
13591         a piggyback rule to generate all sources from (don't touch it ;).
13592         major cleanups, strip spaces on build rules for GNU Make.
13593
13594         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13595         source and target files from commandline arguments. don't invoke indent.
13596
13597 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13598
13599         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13600         notebook after switch to avoid drawing problems.
13601         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13602         
13603         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13604         show them instead. 
13605         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13606
13607 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13608
13609         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13610         notebook after switch to avoid drawing problems.
13611         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13612         
13613         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13614         show them instead. 
13615         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13616
13617 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13618
13619         * gtk/gtkwindow.c:
13620         we use window->need_resize from configure_event now, to indicate that
13621         the gtkwindow should keep its allocation (e.g. because the user resized
13622         the window through window manager handles). resize_count is now reliably
13623         used to figure whether we got the allocation we requested from the
13624         window manager.
13625         configure events get queued as resizes now, the real stuff (size
13626         computation and allocation) now only goes on in gtk_window_move_resize().
13627         GtkWindow's requisition now contains its *real* requisition (like all
13628         other widgets), *not* taking usize into account.
13629         geometry_info->last_{width|height} is now updated from set_hints() only
13630         so it always contains the last hints we set for the window manager.
13631         made some event handlers return TRUE instead of FALSE.
13632         the overall code should be much more straight forward now, and the
13633         significant code portions are accompanied by comments now.
13634         (gtk_window_set_hints):
13635         removed requisition argument and made it
13636         fetch the requisition through gtk_widget_get_child_requisition.
13637         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13638         does that now.
13639         (gtk_window_show):
13640         ensure that the widget is realized before calling 
13641         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13642         ensure that we got properly size requested and allocated before
13643         realization.
13644         (gtk_window_configure_event):
13645         ignore plain window moves, or reallocate the widget tree through the
13646         resize queue otherwise.
13647         (gtk_window_move_resize):
13648         mostly rewrote this function to figure window manager hints more
13649         reliably, coalesce window moves and resizes to reduce configure events
13650         and do actuall size allocations.
13651
13652 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13653
13654         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13655         that have a resize pending, because a redraw is already queued for them.
13656
13657         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13658         hack to clear resize_widgets.
13659
13660         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13661         for resize containers prior to size allocation. (this is also a bit
13662         ugly, but avoids side effects for stopped emissions and is thus more
13663         reliable).
13664         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13665
13666         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13667         function from gtk_tooltips_expose, as we connect to ::expose_event
13668         *and* ::draw now.
13669
13670 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13671
13672         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13673         checks.
13674         (gtk_target_list_unref): Likewise.
13675
13676         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13677
13678 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13679
13680         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13681         guard against division by zero. (Fixes bug #1339)
13682
13683 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13684
13685         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13686         Prevent the trivial leak of information of allowing
13687         word motion when the entry is not visible.
13688
13689 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13690
13691         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13692         modality to error dialog as well as confirmation dialogs.
13693         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13694
13695 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13696
13697         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13698         tree->view_lines.
13699         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13700
13701         * gtk/Makefile.am (install-data-local): Solaris apparently
13702         has various troubles with ln -f; use rm first instead.
13703         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13704
13705 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13706
13707         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13708         use `cp' followed by `rm' (the `rm' was already there).
13709
13710 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13711         
13712         * configure.in: Fix autoconf warnings about cross compilation by
13713         trying to provide sane defaults for AC_TRY_RUN.
13714         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13715         put them into $(srcdir) when generated. Also add a dependency of
13716         gtksignal.h on gtkmarshal.h for -j builds. 
13717         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13718
13719 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13720
13721         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13722         GDK_THREADS_{LEAVE,ENTER} pair.
13723         (From Paul Fisher <pnfisher@redhat.com>)
13724
13725 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13726
13727         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13728         width and height are always >0 (owen).
13729
13730 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13731
13732         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13733         change that assured that a widget's allocated with and height are
13734         always >1, since this breaks *buggy* panel code. unfortunately this
13735         back-breaks the gimp's color selector.
13736
13737         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13738         allocation is always >0 in width and height, before sending the
13739         configure event; this is a *gross* hack to get the gimp back to work.
13740         
13741         * marked both cases with TODO-1.3
13742
13743 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13744
13745         * gtk/gtktext.c: Don't display wrap indicators when
13746         text is not editable and word wrap is on.
13747
13748 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13749
13750         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13751         option menus here as they are not derived from menu shell, assure that
13752         the option menu has a menu we can add items to.
13753
13754 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13755
13756         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13757         width/height to (gint) before calculations and check against < 0 to
13758         avoid guint wraparounds.
13759
13760 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13761
13762         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13763         width and height is never zero. sanity check both dimensions against
13764         32767 and issue a warning if the allocation is greater than that.
13765
13766 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13767
13768         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13769         to g_main_pending() as well.
13770
13771 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13772
13773         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13774         call to g_main_iteration() - since that will regrab
13775         GTK+ lock to process events.
13776
13777 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13778
13779         * gtk/gtkwindow.c
13780         - Regularize with the rest of GTK+ by making widget->requisition
13781           not reflect the set_usize()
13782         - Always recompute geometry hints, then check if they
13783           changed before sending them to the X server. The
13784           previous checks for changes would fail in a number
13785           of circumstances. 
13786
13787 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13788
13789         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13790
13791 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13792
13793         * gtk/gtkdnd.c:
13794         - Code cleanups
13795         - Instantaneously update on modifier key presses
13796         - Allow cancellation of the drag with Escape.
13797
13798 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13799
13800         * gtk/testgtk.c (create_handle_box): Set the policy
13801         to auto_shrink - otherwise the appearance is rather
13802         strange when flipping between horizontal and vertical.
13803
13804 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13805
13806         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13807         (gtk_window_set_default_size): don't change a value if it's < 0.
13808         queue a resize.
13809
13810 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13811
13812         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13813
13814 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13815
13816         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13817         add an extra "/" when concating "/" + filename.
13818         (From Matt Grossman <mattg@oz.net>)
13819
13820 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13821
13822         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13823         for fg_gc if we set it for drawing pixmap.
13824
13825 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13826
13827         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13828         
13829         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13830         already set, call old engine's destroy function and
13831         unref the old engine.
13832
13833 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13834
13835         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13836
13837 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13838
13839         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13840
13841 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13842
13843         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13844         expand behaviour changed.
13845
13846         * gtk/gtklabel.c (gtk_label_set_pattern):
13847         (gtk_label_set_justify):
13848         (gtk_label_set_line_wrap):
13849         don't bother invoking queue_clear, the reallocation does
13850         that for us, always free_words so the upcoming resize will
13851         relayout the label's contents.
13852
13853 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13854
13855         * applied argument implementation patches from Elena Devdariani
13856         <elena@cogent.ca>.
13857
13858         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13859         ::space_style, ::relief
13860         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13861         * gtk/gtkpreview.c: ::expand
13862         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13863         * gtk/gtknotebook.c: ::homogeneous
13864         * gtk/gtklabel.c: ::wrap
13865         * gtk/gtklist.c: ::selection_mode
13866         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13867         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13868         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13869         * gtk/gtkclist.c: ::sort_type
13870         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13871         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13872
13873 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13874
13875         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13876         comment.
13877
13878 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13879
13880         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13881         counting right when we have to attach a new style
13882         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13883
13884         * gtk/gtkstyle.c: Documented the refcounting
13885         peculularities of gtk_style_attach.
13886
13887 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13888
13889         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13890         window types.
13891
13892         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13893         of GTK_TOPLEVEL for creating the window.
13894
13895 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13896
13897         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13898         the last argument (reported by Per Winkvist).
13899         
13900 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13901
13902         Fixes for invisible XOR lines (Frank Loemker
13903         <floemker@TechFak.Uni-Bielefeld.DE>)
13904         
13905         * gtk/gtkclist.c (gtk_clist_realize): Always use
13906         a non-zero pixel for GDK_XOR.
13907
13908         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13909         Use GDK_INVERT instead of GDK_XOR.
13910
13911 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13912
13913         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13914         signals if h/voffsets differ from adjustment values.
13915         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13916
13917 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13918
13919         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13920         ::selection-done emissions up to the topmost menu shell.
13921
13922 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13923
13924         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13925         the user data on the window before destroying it.
13926
13927         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13928         unrealize handler to take care of destroying 
13929         notebook->panel properly. 
13930         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13931
13932         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13933         of g_new and g_realloc to stop memory leak. (Actually,
13934         we could just use g_realloc(), but I'm not 100% sure
13935         that is portable).
13936         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13937
13938 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13939
13940         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13941
13942         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13943         for fontsets.
13944
13945         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13946         with bin/button confusion.
13947
13948 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13949
13950         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13951         and show how preselection of radio items is done.
13952
13953 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13954
13955         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13956         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13957         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13958         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13959         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13960         * gtk/gtktable.c (gtk_table_attach): 
13961         * gtk/gtklist.c (gtk_list_insert_items): 
13962         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13963         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13964         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13965         * gtk/gtkbin.c (gtk_bin_add): 
13966         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13967         * gtk/gtkfixed.c (gtk_fixed_put): 
13968         * gtk/gtklayout.c (gtk_layout_put):
13969         general fixups to container_add logic. always realize child if
13970         child->parent is realized, only map the child and queue a resize
13971         if child and child->parent are both visible.
13972
13973 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13974
13975         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13976         instead of gtk_container_foreach to walk and unrealize children, so
13977         composite children get also unrealized.
13978         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13979         (gtk_widget_map): assert that the widget is visible (basic constrain).
13980         (gtk_widget_real_map): assert that the widget is realized (basic
13981         constrain).
13982
13983 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13984
13985         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13986
13987 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13988
13989         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13990         file for iso-8859-2 locales.
13991
13992         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13993
13994 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13995
13996         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13997          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13998          Remove some suspicious and useless lines. 
13999
14000 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
14001
14002         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
14003         width,height = 0, 0 to mean - here to edge of window,
14004         instead of -1, -1, since the former is all we support.
14005
14006 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
14007
14008         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
14009         when removing from quit_functions list.
14010
14011 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
14012
14013         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
14014
14015 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
14016
14017         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
14018          When redrawing characters on non-visible entry, use appropriate
14019          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
14020
14021 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
14022
14023         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
14024         from drag coordinates.
14025         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
14026         use drag_dest_cell.
14027
14028         * gtk/gtktree (drag_dest_cell)
14029         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
14030         (Bug #1129)
14031
14032 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
14033
14034         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
14035         translate_* fields.
14036         (gtk_item_factory_finalize): invoke translate_notify independant from
14037         translate_data.
14038         (gtk_item_factory_set_translate_func): likewise.
14039         (gtk_item_factory_destroy): only remove ifactory pointer from those
14040         widgets that belong to us (stupid me).
14041
14042 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
14043
14044         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
14045         rc_style list when lookup succeeeds.
14046
14047 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
14048
14049         * gtk/gtkctree.c (resync_selection): 
14050         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
14051         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
14052         bug.
14053
14054 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
14055
14056         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
14057         Add some missing GDK_THREADS_ENTER()/LEAVE around
14058         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
14059
14060 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
14061
14062         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
14063         rather than emit_by_name.
14064
14065         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
14066         on the widget across multiple signal emissions.
14067         (gtk_editable_delete_text): same here.
14068         (gtk_editable_class_init): set widget_class->activate_signal after
14069         editable_signals[ACTIVATE] has been created.
14070
14071 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
14072
14073         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
14074         position here prematurely -- we might not have the
14075         right ->min_position and ->max_position yet.
14076
14077 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14078
14079         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
14080         Add error traps so if the other end of the connection
14081         dies, we survive.
14082
14083         * gtk/gtkselection.c (gtk_selection_notify): Clean
14084         up properly when selection property retrieval fails.
14085         
14086         * gtk/gtkselection.c (gtk_selection_request): Correctly
14087         reject SelectionRequest notifies where the handler
14088         returns no data.
14089
14090 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14091
14092         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
14093         when we've previously highlighted.
14094
14095         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
14096         emit two "drag_leave" signals for Motif drops.
14097
14098         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
14099         back the correct status messages when dropping from
14100         Motif onto a proxy window that is rejecting the
14101         drop.
14102
14103 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
14104
14105         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
14106         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
14107         to compare two argument values. added gtk_arg_to_valueloc() to set a
14108         variable from an arg through its location (pointer).
14109
14110         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
14111         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
14112         as gfloat*, uchars are collected as guchar*, ints are collected as
14113         gint*, etc...
14114
14115 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
14116
14117         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
14118         Include <string.h> instead of <strings.h>.
14119
14120         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
14121         (actually, a lot more duplicate includes occur if
14122          you trace through the sequence of #include's)
14123         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
14124         
14125 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14126
14127         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14128         gtk-a-higuti-990322-[0-3]
14129
14130         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14131         that was causing -DX_LOCALE not to work.
14132
14133         * gtk/gtkrc.c (gtk_rc_init):
14134         X_LOCALE will never have LC_MESSAGES defined
14135
14136 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
14137
14138         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
14139         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
14140
14141         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
14142         left/right as well (gtk-michael-980726-0.patch.gz).
14143
14144         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
14145         for pointer values, use gchar instead of char. fixed uline allocation
14146         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
14147         chunks instead of G_ALLOC_ONLY.
14148         (gtk_label_size_request): always alter requisition as passed and leave
14149         widget->requisition alone.
14150         (gtk_label_set_text): allow NULL strings.
14151         (gtk_label_new): likewise.
14152
14153 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
14154
14155         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
14156
14157 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
14158
14159         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
14160         *and* mapped (i.e. drawable).
14161         (gtk_bin_expose): only send exposes to drawable children.
14162
14163         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
14164         (gtk_box_expose): only send exposes to drawable children.
14165
14166         * gtk/gtkhscale.c (gtk_hscale_draw): 
14167         * gtk/gtkvscale.c (gtk_vscale_draw):
14168         hm, this is an ugly one. we first compute the size of our trough area
14169         here (window relative) and then check intersection with the draw_area
14170         which is parent relative because we're a NO_WINDOW widget, so we need
14171         to offset the trough area by allocation.x and allocation.y before the
14172         check. (this must not be done for the background area though, since
14173         that's already computed parent relative).
14174
14175 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
14176
14177         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
14178         unrealize title buttons.
14179
14180 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
14181
14182         * gtk/gtkclist.c (gtk_clist_column_title_passive)
14183         (gtk_clist_column_title_active): 
14184         only connect/disconnect to GtkWidgetClass::event to block mouse events.
14185
14186         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
14187         zero initialize event, removed superfluous gdk_window_get_pointer call
14188
14189         * gtk/gtklist.c (gtk_list_vertical_timeout)
14190         (gtk_list_horizontal_timeout): removed superfluous
14191         gdk_window_get_pointer call
14192
14193 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14194
14195         * plugging problems reported by "Bruce Mitchener, Jr."
14196         <bruce@puremagic.com> due to a purify session.
14197
14198         * gtk/gtkstyle.c:
14199         (gtk_style_ref): 
14200         (gtk_style_unref): assert ref_count to be > 0.
14201
14202         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
14203         the requisition.
14204         (gtk_clist_set_shift): likewise.
14205
14206         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
14207         adjustments.
14208
14209         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
14210         event before sending it and set send_event to TRUE (which needs to
14211         be done for *all* synthesized events).
14212         (gtk_list_vertical_timeout): likewise.
14213
14214         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
14215         leaks.
14216
14217         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
14218         to TRUE when synthesizing events.
14219
14220 [ *** end of merges from 1.2 *** ]      
14221         
14222 1999-11-21  Tor Lillqvist  <tml@iki.fi>
14223
14224         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
14225         (or copied from gdkconfig.h.win32 on Win32, sigh).
14226
14227         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
14228
14229         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
14230
14231         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
14232
14233         * gdk/gdkconfig.h.win32: New file.
14234
14235         * gdk/win32/makefile.cygwin: Build just a static archive here.
14236
14237         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
14238         for the DLL from the static archive built above.
14239
14240         * gdk/gdk.def: Moved here from the win32 subdirectory.
14241
14242         * gdk/win32/*: Adapt for the changed private struct organisation.
14243
14244         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
14245
14246 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
14247
14248         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
14249         for wheel mice (buttons 4 and 5).
14250
14251 1999-11-18  Tor Lillqvist  <tml@iki.fi>
14252
14253         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
14254         drawables use just the pixel field in the foreground and
14255         background GdkColor of the GdkGC.
14256
14257         gdk_gc_set_{fore,back}ground() are called in the GIMP with
14258         GdkColors containing uninitialized (red,green,blue) fields, and
14259         just the pixel field filled in, and furthermore in the
14260         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
14261         It thus turns out that we really don't need to have the full
14262         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
14263         it later to have just the pixel values.
14264
14265 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14266
14267         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
14268
14269 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
14270
14271         * docs/gtkfaq.sgml: threads example from Erik Mouw.
14272         New question on GtkLabel background colors.
14273
14274         * docs/gtk_tut.sgml:
14275           - Correct the example code callback
14276             function definitions.
14277           - Update the gtkdial example code, from Frans van Schaik.
14278           - Update setselection.c to current API.
14279
14280         * examples/Makefile examples/*/*.c: Update to code
14281         listed in tutorial.
14282
14283 1999-11-10  Tor Lillqvist  <tml@iki.fi>
14284
14285         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
14286         subrange table (from the "Developing International Software for
14287         WIndows 95 and Windows NT" book) was missing the Hangul syllable
14288         block... Get the loaded font's charset correctly.
14289
14290         (Note that this, and the other *-win32.c files, still really are
14291         the old ones, the win32 subdirectory is not ready for compilation
14292         yet after the reorg.)
14293
14294 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
14295
14296         * gtk/gtkclist.c: Fix off-by-one bug in parameter
14297         check.
14298
14299 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
14300
14301         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
14302         on results of XQueryDeviceState().
14303
14304 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
14305
14306         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
14307         we need to accesss only ->children. We need an accessor
14308         for the children.
14309
14310         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
14311         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
14312         to get rid of gdkx.h include.
14313         
14314         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
14315         and random references to 'None'.
14316
14317         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
14318         Get rid of unused #include <gdk/gdkx.h>
14319
14320         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
14321         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
14322         gdkconfig.h.
14323
14324 1999-11-08  Tor Lillqvist  <tml@iki.fi>
14325
14326         * gdk/win32/gdkdraw.c
14327         * gdk/win32/gdkfont.c
14328         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
14329         following yesterday's changes. (Unrelated to Owen's reorg.)
14330
14331 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
14332
14333         * gdk/x11/gdkinput-gxi.c: Add missing include,
14334           fix GdkWindowPrivate => GdkDrawablePrivate.
14335
14336         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
14337
14338         * gdk/x11/Makefile.am (xinput_sources): Add missing
14339         backslash to fix building with --with-xinput=none
14340
14341 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
14342
14343         Move all X specific code into the x11/ directory.
14344         Aside from shuffling things around, did the following:
14345
14346        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
14347          gdk_arg_context_* - a simple argument parsing system
14348          in the style of popt.
14349
14350        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
14351          gdk/x11/gdkprivate-x11.h:
14352          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
14353          add ->klass and ->klass_data fields. The klass_data
14354          field points to an auxilliary structure that is
14355          windowing system dependent.
14356
14357        * gdk/gdkfont.c: Make most of the measurement functions
14358          simply wrappers around gdk_text_extents().
14359
14360        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
14361          _gdk_font_strlen() function that hides the weird
14362          behavior in gtk+-1.[02] where a string is interpreted
14363          differently for 8-bit and 16-bit fonts.
14364
14365        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
14366          to store common code for synthesizing double/triple
14367          press events.
14368         
14369        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
14370          Make all the function that modify an existing GC
14371          simply wrappers around gdk_gc_set_values().
14372          
14373        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
14374          for throwing out later.
14375
14376        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
14377          GdkImagePrivate and GdkColormapPrivate to have a
14378          windowing system dependent part (GdkFontPrivateX etc.)
14379          that "derives" from the system-independent part.
14380
14381        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
14382          Got rid of the included-source-files for XInput in
14383          favor of automake conditionals. (Which didn't exist
14384          when XInput support was originally added.)
14385
14386        * gdk/gdkrgb.c: Remove the visual id from the debugging
14387          statements since that is X11 specific; print out
14388          type/depth info instead.
14389          
14390
14391 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14392
14393         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14394         loading duplicates of hashed fonts.
14395
14396         * gdk/gdk.c (gdk_keysym_convert_case): rename
14397         gdk_XConvertCase to gdk_keysym_convert_case, allow
14398         results to be NULL in the GTK+ style.
14399
14400         * gdk/gdkcompat.h: Started compatibility header
14401         for renames.
14402
14403 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14404
14405         * gdk/win32/gdkprivate.h: New font private structures, related to
14406         fontsets.
14407
14408         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14409         gdk_font_list_free(). On X11, will just be wrappers to
14410         XListFonts() and XFreeFontNames(). On Win32, the code previously
14411         in gtkfontsel.c is now here.
14412
14413         New function gdk_font_xlfd_create(). On X11 will get the FONT
14414         property of the font (for GDK_FONT_FONTs), or call
14415         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14416         builds a XLFD style name from the font information in the LOGFONT
14417         struct(s).
14418
14419         New function gdk_font_xlfd_free(), which correspondingly frees the
14420         string returned by gdk_font_xlfd_create().
14421
14422         Implement fontsets on Win32. Add a function that iterates over a
14423         wide char string and calls a callback function for each substring
14424         of wide chars from the same Unicode subrange (and thus probably
14425         available in the same real font).
14426
14427         Improve the XLFD emulation a bit.
14428
14429         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14430
14431         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14432         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14433         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14434         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14435         ImmGetCompositionStringW() to get the composed Unicode chars.
14436
14437         * gdk/win32/gdkgc.c
14438         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14439         struct changes.
14440
14441         * gdk/win32/gdk.def: Add the new functions.
14442
14443 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14444
14445         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14446         get the Platform SDK to get <dimm.h>.
14447
14448         * gdk/win32/gdkevents.c: More event handling fixes and
14449         simplification. Never generate motion events with is_hint true. We
14450         used to do that on bogus grounds earlier. Windows sends
14451         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14452         moved, ignore these.
14453
14454         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14455
14456         * gdk/win32/gdkglobals.c
14457         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14458         the TrackMouseEvent function, and use it.
14459
14460         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14461         char before calling WideCharToMultiByte in order to get a string
14462         for the window title.
14463
14464         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14465
14466         * gdk/win32/gdk.def: Remove obsolete functions.
14467
14468         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14469         /nodefaultlib and /defaultlib switches.
14470
14471         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14472
14473 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14474
14475         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14476         EuroSign).
14477
14478         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14479         same type as GdkWChar, especially on Win32.
14480
14481         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14482
14483         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14484         before passing to Windows GDI for drawing etc. Convert to the
14485         system default codepage before passing to Windows as window
14486         titles.
14487
14488         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14489         support changing input locale on the fly.
14490
14491         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14492         on-the-fly changes. Convert incoming characters from the current
14493         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14494         on the current input language. Use keysym<->Unicode mapping tables
14495         and functions borrowed from xterm sources.
14496
14497         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14498         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14499         Manager) if available. IMEs and the Active IMM are available under
14500         the disguise of Chinese, Korean and Japanese support for IE and
14501         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14502         support is present in all editions (as long as you install it).
14503
14504         Call DispatchMessage from gdk_events_queue() (and thus
14505         gdk_WindowProc()), instead of duplicating the code in
14506         gdk_WindowProc().
14507
14508         Reworked the grab handling and propagation code, factored out
14509         duplicated code snippets into separate functions. Other cleanups,
14510         too.
14511
14512         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14513         the <dimm.h> header describing the Active IMM.
14514
14515         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14516         just do the same as for "single" fonts.
14517
14518         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14519         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14520         the new keysyms from gdkkeysyms.h.
14521
14522         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14523         fontset, so that gtkentry uses wide characters.
14524
14525         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14526         GTk+'s system directory "gtk+", not "gtk".
14527
14528 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14529
14530         * docs/gtkfaq.sgml: FAQ update
14531
14532 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14533
14534         * gdk/win32/gdkprivate.h: Add more font private data.
14535
14536         * gdk/win32/gdkfont.c
14537         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14538         fonts and strings. Now works much better. You still have to
14539         have a correct font selected, though. No fontset emulation yet.
14540
14541 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14542
14543         * gtk/maketypes.awk: Use G_OS_WIN32.
14544
14545         * gtk/gtk.def: Add some missing entry points. Also some non-public
14546         ones, but PyGTK porter claims to need them.
14547
14548         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14549         built-in type generation.
14550
14551 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14552
14553         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14554         GDK_FONT_FONT fonts (which is all we have for now, we don't
14555         emulate fontsets). The X11 version uses plain XDrawString in that
14556         case, too. The string passed to gdk_draw_text_wc seems to be in
14557         fact (at least, when used by gtkentry and gtktext) either in a
14558         single-byte charset, or a DBCS. Not Unicode.
14559
14560         This fixes the problem in gtkfontsel, where even if you had
14561         selected a font with a non-Latin1 charset (windows-greek, for
14562         instance), the preview still used Latin-1 glyphs.
14563
14564         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14565         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14566         (gdk_font_load): Recognize the demibold etc weights, even if we
14567         don't have the corresponding constants in the headers.
14568         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14569         version. Should save font resources a bit, when we don't have
14570         multiple HFONTs for the same font.
14571
14572         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14573         version.
14574
14575 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14576
14577         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14578         X values
14579
14580 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14581
14582         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14583         layout support (as mentioned on
14584         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14585
14586 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14587
14588         * gtk/fnmatch.c
14589         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14590
14591 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14592
14593         * configure.in (ALL_LINGUAS): Added Galician (gl)
14594
14595 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14596
14597         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14598
14599         * gdk/win32/gdkcompat.c: New file, actually provide an
14600         implementation for the deprecated functions. (Just temporarily.)
14601
14602         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14603
14604         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14605
14606         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14607
14608 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14609
14610         * configure.in: Added "uk" to ALL_LINGUAS.
14611         
14612 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14613
14614         * configure.in: correct checking for BeOS check
14615
14616         * gdk/gdktypes.h
14617         * gtk/fnmatch.c
14618         * gtk/gtkfilesel.c
14619         * gtk/gtkitemfactory.c
14620         * gtk/gtkmain.[ch]
14621         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14622
14623 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14624
14625         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14626         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14627         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14628         by Bulgarian). 
14629
14630 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14631
14632         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14633         Fix a reference to window_private->destroyed.   
14634
14635         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14636         (ugly) setting of an internal GdkWindow member to use
14637         a _slightly_ cleaner macro.
14638
14639         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14640         GdkDrawablePrivate and GdkWindowPrivate.
14641         Add extra macros for accessing GDK_DRAWABLE_ components.
14642
14643         * *.[ch]: Massive adjustments for the above, use the
14644         new macros in a lot of places.
14645
14646 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14647
14648         * gdk/gdktypes.h: Make GdkDrawable the base type,
14649         not GdkWindow.
14650
14651 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14652
14653         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14654
14655 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14656
14657         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14658
14659 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14660
14661         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14662         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14663
14664         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14665
14666         * docs/gtk-config.1: Now autogenerated.
14667         * docs/Changes-1.4.txt: started
14668         
14669 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14670
14671         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14672         to #ifdef also here.
14673
14674         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14675         Owen did to the X11 backend.
14676
14677         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14678         ScrollWindowEx when blitting inside a window, it can't be correct
14679         in the general case.
14680
14681         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14682         WM_GETMINMAXINFO is easier.
14683
14684         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14685         depth equal to the bitspixel value, not the visual's depth.
14686
14687         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14688         to 24 even if the bitspixel value is 32.
14689
14690         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14691         need to check for depth==32 when bpp==32, depth will always be 24.
14692
14693 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14694
14695         * docs/Changes-1.4.txt: Started
14696         
14697         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14698
14699         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14700         
14701         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14702         into C file.
14703         
14704         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14705         header to gdkinputprivate.h.
14706
14707         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14708         unused since before 1.2.
14709
14710 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14711
14712         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14713         expand possible hex escapes in the font family (put there by
14714         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14715         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14716         On Win32, add hex escapes here, too.
14717
14718 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14719
14720         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14721         to #ifdef GDK_WINDOWING_X11.
14722
14723 [ Merges from gtk-1-2 ]
14724
14725 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14726
14727         * configure.in: fixed "GNU Make" check to pass with new make version
14728         3.77.95.
14729
14730 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14731
14732         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14733         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14734         AM_PATH_GTK() macros don't get confused by the -pre1.
14735
14736 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14737
14738         * configure.in (REBUILD): Change check for perl5
14739           to check explicitely for v >= 5.002. (5.001
14740           does not work with our scripts.)
14741
14742 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14743
14744         * configure.in: evaluate $PERL for the perl version check. added
14745         --disable-rebuilds to give the user an option to completely disable
14746         any source autogeneration rules.
14747
14748 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14749
14750         * configure.in: evaluate $ac_make when checking for GNU Make.
14751
14752 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14753
14754         * docs/Makefile.am: added generation.txt.
14755
14756         * Makefile.am: require automake 1.4, build README from README.in and
14757         INSTALL from INSTALL.in in dist-hook.
14758         
14759         * README.in:
14760         * INSTALL.in: new files to autogenerate README and INSTALL from.
14761
14762         * configure.in: figure whether we have GNU Make
14763
14764         * docs/generation.txt: minor additions/corrections.
14765
14766 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14767
14768         * docs/gtkfaq.sgml: FAQ Update
14769
14770 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14771         
14772         * configure.in: Fix autoconf warnings about cross compilation by
14773         trying to provide sane defaults for AC_TRY_RUN.
14774
14775 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14776
14777         * ltconfig
14778         * ltmain.sh: upgrade to libtool 1.3.3
14779
14780 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14781
14782         * INSTALL: Indicate that the --with-glib= configure
14783         time flag is unsupported.
14784
14785 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14786
14787         * docs/generation.txt: Added a file that gives
14788         documenation about the autogeneration process for
14789         various autogenerated files.
14790         
14791 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14792
14793         * configure.in (LIBS): Look for libgmodule in the
14794         right location.
14795
14796 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14797
14798         * docs/gtk_tut.sgml: Removed references to
14799         code examples in my directory on gtk.org as
14800         they should all be in the tutorial now.
14801
14802         * docs/gtk_tut.sgml: Added sources for dial-test
14803         and scribble-xinput programs that were previously
14804         missing.
14805
14806 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14807
14808         * TODO: Added entry about menu keyboard navigation, removed
14809         some finished items.
14810
14811 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14812
14813         * acinclude.m4: Standardize on func_dgettext
14814         not func_gettext, so that the checks for dgettext
14815         actually are paid attention to.
14816
14817 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14818
14819         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14820         directly, rather than repeating the checks for
14821         gettext.
14822
14823         * INSTALL: Added information about gettext and
14824         NLS support.
14825
14826         * acinclude.m4 (LIBM): Check for dgettext, not
14827         just gettext. This should hopefully fix things wrt
14828         systems with old versions of GNU gettext installed.
14829
14830 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14831
14832         * configure.in (LIBS): Look for libgmodule in the
14833         right location.
14834
14835 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14836
14837         * autogen.sh: add --enable-maintainer-mode
14838
14839         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14840
14841 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14842
14843         * docs/gtk-config.1.in:
14844           docs/Makefile.am:
14845           configure.in: gtk-config is now generated.
14846
14847         * docs/gtk-config.1: Removed, now generated.
14848
14849 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14850
14851         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14852         handle CreateNotify itself, still put out a debuging message for
14853         --gdk-debug=events. made the ReparentNotify debugging message more
14854         verbose.
14855         wrap xcoords translation for ConfigureEvents into an error trap,
14856         a destroy event may already be pending, and in that case, the
14857         actuall coordinate values are not at all critical.
14858
14859 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14860
14861         * gdk/gdkcc.c: Stop leaking the color_hash all over
14862         the place. Simplify and improve the logic.
14863
14864 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14865
14866         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14867         for prototypes and function implementations consistent (reported
14868         by Tomas Ogren).
14869
14870 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14871
14872         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14873         send_event set in debugging output.
14874         (gdk_compress_exposures): default initialize the event so we don't
14875         operate on bogus values (namely send_event).
14876
14877 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14878
14879         * gdk/gdkwindow.c: When we receive an unexpected
14880         destroy notify on one of our windows, don't just
14881         warn about it, also mark our windows as destroyed.
14882
14883 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14884
14885         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14886           name => font and name => fontset hashes. The 
14887           name => fontset hash is a _big_ win since we
14888           weren't previously caching fontsets at all and loading
14889           fontsets is expensive. The name => font hash
14890           is less of a win, but it does save us from doing
14891           repeated XQueryFont calls on the same font.
14892
14893         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14894           list so we can remove font/fontset from hash.
14895
14896 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14897
14898         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14899           and slightly confusing test. [ XInternAtom (,,TRUE)
14900           will never return None ].
14901
14902 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14903
14904         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14905           gdk/gdkwindow.c (gdk_window_set_hints):
14906
14907         Don't omit setting the properties if flags == 0 -
14908         there may be an existing set of properties there
14909         already. (Very old bug. Would it be better to
14910         delete the property instead?)
14911
14912         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14913           spelling error in comment.
14914
14915 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14916
14917         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14918           to avoid stomping over gdk_error_warnings.
14919
14920         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14921           as (bits_per_pixel + 7) / 8. This gives the same
14922           result as before for multiples of 8, but actually
14923           a "reasonable" value for 1bit or 4bit displays.
14924
14925 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14926
14927         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14928         GNU Make.
14929
14930 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14931
14932         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14933         discarding configure events.
14934
14935 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14936
14937         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14938         refcount is greater than zero.
14939
14940         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14941
14942         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14943
14944         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14945
14946         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14947
14948 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14949
14950         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14951         that format 32 => sizeof(item) == 4. It really is
14952         sizeof(long).
14953
14954 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14955
14956         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14957         core dump at all on X IO errors, only core dump
14958         if --enable-debug for X errors.
14959
14960 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14961
14962         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14963         unknown window:" message. disabled ConfigureNotify discarding code,
14964         because it led to events being processed out of order.
14965
14966 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14967
14968         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14969
14970         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14971         we export this function, supress error warnings and don't reset the
14972         error code in the first half of this function.
14973
14974         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14975         code (instead of just -1) so gdk_error_trap_pop() reveals something
14976         actually informative about the error that happened.
14977
14978         * gdk/*.c:
14979         don't rely on gdk_error_code being -1 if an error occoured, but just
14980         gdk_error_code != 0.
14981
14982 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14983
14984         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14985         pointer *before* invoking the filter function, so we at least don't
14986         crash if a filter is removed that is currently executed. window filters
14987         *really* need to be made truely reentrant at some point.
14988
14989 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14990
14991         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14992         PropertyNotify debug messages.
14993
14994 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14995         
14996         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14997         
14998         * gdk/gdkim.c: Fix cut-and-paste errors for 
14999         x/y and PreeditAttributes/StatusAttributes.
15000
15001 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15002
15003         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
15004         G_MAXINT to 2^16 to alleviate overflow problems in
15005         various window managers.
15006
15007 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
15008
15009         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
15010         for fontsets.
15011
15012 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
15013
15014         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
15015         Initialize size_hints.x and size_hints.y because kwm
15016         brokenly pays attention to them.
15017         (Bug #1181 -  Lars Heete <hel@admin.de>)
15018
15019 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
15020
15021         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
15022         return value of gdk_list_visuals(). 
15023         (Bug #1193 - Morten Welinder <terra@diku.dk>)
15024
15025 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
15026
15027         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
15028         XSetIMValues to (void *) when comparing to NULL, to workaround
15029         the problem of some compilers barfing since older X headers don't
15030         have the prototype for it.
15031
15032 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
15033
15034         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
15035         for pseudocolor where colormap->colors was double
15036         allocated.
15037
15038         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
15039         color value in the hash table with the pixel filled
15040         in so when we do later hash table lookups, the color
15041         value is correct.
15042         
15043 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
15044
15045         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
15046         making the call
15047
15048 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
15049
15050         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
15051         pointed out by Morten Welinder <terra@diku.dk>.
15052
15053 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15054
15055         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15056           default filter from the list
15057
15058 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15059
15060         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15061           default filter from the list
15062
15063 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
15064
15065         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
15066
15067         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
15068         g_strdup_printf instead of calcing the length separately
15069
15070 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
15071
15072         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
15073         that we don't do in many other places. (Fixing duplicate 
15074         #include of config.h)
15075
15076         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
15077         Otherwise, #ifndef XINPUT_NONE check in the latter
15078         doesn't work. (Bug #546)
15079
15080 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
15081
15082         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
15083         "None" case insensitive.
15084
15085 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
15086
15087         * gdk/gdkselection.c: 
15088         Add error traps so if the other end of the connection
15089         dies, we survive.
15090
15091 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
15092
15093         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
15094         dest_xid field into two fields - one for the window
15095         to send in messages, one to indicate the last looked
15096         up window for caching purposes. This is needed, so
15097         that Leave messages get the correct window.
15098
15099 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
15100
15101         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
15102         Fix warning created by people mucking around
15103         with the gsource API.
15104
15105         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
15106         Change mapping between GIOCondition and GdkInputCondition
15107         to match the way the Linux kernel does it. This should
15108         fix problems where closed pipes were no longer signalling
15109         GDK_INPUT_READ on systems with a native poll().
15110
15111 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
15112
15113         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
15114         explicitly for the string "None" - it is in the XPM
15115         spec and some servers treat unknown colors in odd ways
15116         (like asking the user!)
15117
15118 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
15119
15120         * gdk/gdkevents.c: made "->" into a "." of previous change so
15121         it compiles
15122
15123 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
15124
15125         * gdk/gdkevents.c (gdk_compress_exposures): Set the
15126         window field of the event structure before calling
15127         user filters.
15128
15129 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15130
15131         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
15132         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
15133
15134 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
15135
15136         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
15137         intermediate text property - prevents major memory
15138         leak when gdk_use_mb.
15139         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
15140
15141 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
15142
15143         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
15144         gtk-a-higuti-990322-[0-3]
15145
15146         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
15147         sizeof(wchar_t) != sizeof (GdkWChar)
15148
15149         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
15150         that was causing -DX_LOCALE not to work.
15151
15152         * gtk/gtkrc.c (gtk_rc_init):
15153         X_LOCALE will never have LC_MESSAGES defined
15154
15155         * gdk/gdk.c (gdk_init_check):
15156         Remove --xim-preedit and --xim-status from argv properly.
15157
15158         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
15159         that the client window is present on the X server
15160         before we pass it to the input method.
15161
15162 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15163
15164         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
15165         if --display is specified on the command line, than
15166         the drag window will not be created on that display.
15167         
15168 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
15169
15170         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
15171         lookups with only_if_exists == TRUE were inserting
15172         bogus values into the atom cache.
15173
15174 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
15175
15176         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
15177         then reset it to NULL.
15178
15179         * gdk/gdkcolor.c:
15180         (gdk_colors_free): 
15181         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
15182         key for g_hash_table_remove() in both functions, this prevents us
15183         from accessing possibly uninitialized portions of a GdkColor structure
15184         where we are only interested in its pixel value.
15185
15186 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15187
15188         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15189         font hash table, if we have a GdkFontPrivate entry for this font
15190         already, simply increment its reference count, provided by Olaf Dietsche
15191         <olaf.dietsche+list.gtk@netcologne.de>.
15192
15193 1999-09-21  Tor Lillqvist  <tml@iki.fi>
15194
15195         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
15196         just to be sure.
15197
15198         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
15199         unused variables, leftovers from the X11 version.
15200
15201         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
15202
15203         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
15204         downcase fields on X11.
15205
15206 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
15207         
15208         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
15209         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
15210
15211 1999-09-17  Tor Lillqvist  <tml@iki.fi>
15212
15213         * gdk/win32/gdk.def: Add gdk_threads_mutex.
15214
15215         * gtk/makefile.msc: Correct path to libintl.
15216
15217         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
15218         use of gint vs. int, and gint vs. gboolean in headers and
15219         definitions. Use GtkType for the *_get_type functions. Note that
15220         these changes preserve binary compatibility.
15221
15222         * gdk/gdk.c
15223         * gdk/win32/gdk.c
15224         * gdk/gdk.h: Fix inconsistencies: gint vs int.
15225
15226         * gtk/gtkmain.c
15227         * gtk/gtkclist.c
15228         * gtk/gtkmenufactory.c
15229         * gtk/gtknotebook.c
15230         * gtk/gtkwidget.c: Fix inconsistencies, also gint
15231         vs. gboolean.
15232
15233         * gtk/gtkcolorsel.[ch]
15234         * gtk/gtkcombo.[ch]
15235         * gtk/gtkdrawingarea.[ch]
15236         * gtk/gtkgamma.[ch]
15237         * gtk/gtkhandlebox.[ch]
15238         * gtk/gtkhpaned.[ch]
15239         * gtk/gtkhruler.[ch]
15240         * gtk/gtkplug.[ch]
15241         * gtk/gtkpreview.[ch]
15242         * gtk/gtkruler.[ch]
15243         * gtk/gtksocket.[ch]
15244         * gtk/gtkstatusbar.[ch]
15245         * gtk/gtktoolbar.[ch]
15246         * gtk/gtkvbbox.[ch]
15247         * gtk/gtkvpaned.[ch]
15248         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
15249         functions.
15250
15251         * gtk/gtkgamma.h: Fix bug, missing () in call of
15252         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
15253
15254 1999-09-14  Tor Lillqvist  <tml@iki.fi>
15255
15256         * gdk/gdkcolor.c (gdk_colormap_new)
15257         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
15258         colormap->colors was allocated twice.
15259
15260         * gdk/win32/gdk.c: Remove some unused stuff.
15261
15262         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
15263         colormap.
15264
15265         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
15266         * gtk/gtklabel.h (gtk_label_get_type)
15267         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
15268         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
15269         in a couple of places, not guint.
15270
15271 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15272
15273         * configure.in,po/et.po: added Estonian language file
15274
15275 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
15276
15277         * configure.in,po/da.po: added Danish file
15278
15279 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
15280
15281         * docs/gtkfaq.sgml: Minor FAQ Update
15282
15283 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
15284
15285         * docs/gtkfaq.sgml: FAQ update
15286
15287 1999-08-27  Tor Lillqvist  <tml@iki.fi>
15288
15289         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
15290         way to get window contents continually refreshed while resizing. I
15291         didn't like the effects myself, so it's not on by default.
15292
15293         * gdk/win32/gdkprivate.h: New flag variable
15294         gdk_event_func_from_window_proc, FALSE by default.
15295
15296         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
15297         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
15298         are passed --gdk-event-func-from-window-proc.
15299
15300         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
15301         and we have am event_func, call it instead of enqueing the event.
15302
15303 1999-08-23  Tor Lillqvist  <tml@iki.fi>
15304
15305         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
15306         Kelley: Set expose_count in GdkEventExposes correctly.
15307
15308         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
15309         MULTIPLE_WINDOW_CLASSES).
15310
15311         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
15312         for bug in NT, apparently NT *does* draw the end pixel, too, in
15313         LineTo with a one-pixel pen, so we don't have to do it ourselves.
15314
15315 1999-08-21  Tor Lillqvist  <tml@iki.fi>
15316
15317         Improvements by Hans Breuer: 
15318
15319         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
15320
15321         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
15322         CS_?REDRAW flags as they cause lots of (late) redraws when "show
15323         window contents while dragging" is turned on. Allocate at least
15324         one unique class for every GdkWindowType. If support for single
15325         window-specific icons is ever needed (eg. Dialog specific), every
15326         such window should get its own class.
15327
15328 1999-08-19  Tor Lillqvist  <tml@iki.fi>
15329
15330         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
15331         error that caused crashes.
15332
15333 1999-08-17  Tor Lillqvist  <tml@iki.fi>
15334
15335         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
15336         window, use ScrollWindowEx, and call UpdateWindow. This prevents
15337         bugs when for instance part of the window was outside the
15338         display. Thanks to Philippe Colantoni for finding and fixing this.
15339
15340 1999-08-16  Tor Lillqvist  <tml@iki.fi>
15341
15342         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
15343         endpoint calculations which were totally wrong. (A little RTFMing
15344         helps a lot ;-)
15345
15346         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
15347         from a separate directory, not from gettext, because of licensing
15348         issues (we want to use the LGPL version).
15349
15350         * README.win32: Mention the intl from glibc vs from gettext issue.
15351
15352 1999-08-13  Tor Lillqvist  <tml@iki.fi>
15353
15354         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
15355         in the key event handling: Now AltGr chars work again. Also,
15356         now Alt-digits are passed up as well as Control-digits.
15357         Pass keypad plus and minus as normal plus and minus.
15358
15359 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
15360
15361         * docs/gtkfaq.sgml: FAQ Update
15362
15363 1999-07-25  Tor Lillqvist  <tml@iki.fi>
15364
15365         * README.win32
15366         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
15367         the Wintab SDK.
15368
15369         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
15370         OK, but getting closer. Guard against bogus tilt data from Wacom
15371         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
15372         enable easier building without Wintab.
15373
15374         * gdk/win32/gdkinput.h
15375         * gdk/win32/gdkevents.c 
15376         * gdk/win32/gdkwindow.c: Minor changes related related to above.
15377         
15378         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
15379         code. As we have just one visual on Win32, no sense to have it in a
15380         table, and no need for the hash table.
15381
15382         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
15383         better on white background.
15384
15385 1999-07-21  Tor Lillqvist  <tml@iki.fi>
15386
15387         * README.win32: Update gcc build instructions. Mention gettext is
15388         GPL.
15389
15390         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15391         supported cursor size with GetSystemMetrics.
15392
15393         * gdk/win32/gdkfont.c
15394         * gtk/gtkfontsel.c: Guard against some font weight and charset
15395         symbols being undefined (in mingw32 headers).
15396
15397         * gdk/win32/makefile.cygwin
15398         * gtk/makefile.cygwin
15399         * gtk/gtkthemes.c: No longer need to have differently named
15400         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15401
15402 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15403
15404         * docs/gtkfaq.sgml: Long awaited FAQ update.
15405
15406 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15407
15408         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15409         it. Obscure bit manipulation needed.
15410
15411         * gdk/win32/gdkevents.c: Logging.
15412         
15413         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15414         style (file name include compiler name) for theme engines.
15415
15416 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15417
15418         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15419
15420         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15421         events. The key.string wasn't zero-terminated, still we strdup'ed
15422         it in gdk_event_copy(). Synthesize crossing events for button
15423         events before possible propagation.
15424
15425         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15426
15427         * gdk/win32/makefile.cygwin
15428         * gtk/makefile.cygwin: Use new DLL naming style for the
15429         GCC-compiled ones.
15430
15431         * gdk/win32/makefile.msc
15432         * gtk/makefile.msc: Cosmetics mostly.
15433
15434         * gtk/gtk.def: Add missing entry points.
15435
15436         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15437
15438 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15439
15440         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15441         or height is zero. Don't print a warning if Pie or Arc fails, they
15442         always fail (?) for very narrow ellipses.
15443
15444         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15445         the part or the destination window corresponding to source area
15446         outside of the source drawable's boundary.
15447
15448         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15449         anything if less than two points.
15450
15451         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15452         return NULL. Gtk cut-and-paste inside a single program works
15453         better this way. (It always gets the clipboard contents from
15454         Windows, not from its own copy, which is cleared anyway. I can't
15455         say I fully understand what happens... Emulating the X selection
15456         and property stuff is a bit of a mess.)
15457
15458         * gdk/win32/gdkevents.c
15459         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15460
15461         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15462         that never got deleted). Revamp gdk_region_shrink.
15463
15464         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15465         after use.
15466
15467         * gtk/gtk.def: Add some missing entry points.
15468
15469         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15470         component.
15471
15472 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15473
15474         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15475         Control-digits specially.
15476
15477 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15478
15479         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15480
15481 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15482
15483         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15484         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15485         finding this.)
15486
15487 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15488
15489         * gtk+.spec.in: Corrected some typos in files section.
15490         
15491 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15492
15493         * README.win32: Mention using GNU gettext.
15494         * config.h.win32: Enable NLS stuff.
15495         * gtk/makefile.msc: Use GNU gettext.
15496         * gdk/win32/gdkdnd.c: Minor header reorg.
15497         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15498         cosmetics.
15499         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15500         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15501
15502 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15503
15504         * acinclude.m4
15505         * config.guess
15506         * config.status
15507         * ltconfig
15508         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15509
15510 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15511
15512         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15513         SafeAdjustWindowRectEx. Don't override all calls to
15514         AdjustWindowRectEx by it, but use it only in two places: When
15515         creating a new top-level window and when moving a top-level
15516         window.
15517
15518         Use screen coordinate rectangle, not client rectangle, in
15519         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15520         when we try to place a window so that the decoration (mainly,
15521         title bar) isn't visible.
15522
15523         These changes fix the bug that showed up for instance as the
15524         GIMP's saved top-level windows moving right and down (by an amount
15525         equal to the window decoration) for each session. This bug showed
15526         up also in testgtk's "Saved Position".
15527
15528         gdk_window_resize also redone a bit.
15529
15530 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15531
15532         * gtk/testgtkrc: Add (commented out) Windows-style theme
15533         include line.
15534
15535         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15536
15537 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15538
15539         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15540         gdkx.h to a gdk subdirectory, so that applications can include
15541         these with <gdk/*.h> without trouble.
15542
15543         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15544         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15545         have their bitmap destroyed.
15546
15547         * gdk/win32/gdk.def: Add gdk_root_parent.
15548
15549 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15550
15551         * configure.in
15552           gtk-config.in
15553           ltconfig
15554           ltmain.sh     
15555           gtk/Makefile.am: changes to compile nicely (with xlib) 
15556           on BeOS
15557
15558 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15559
15560         * acinclude.m4
15561         * config.guess
15562         * config.sub
15563         * ltconfig
15564         * ltmain.sh: upgrade to libtool 1.3
15565
15566 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15567
15568         * gtk/gtkclist.c:
15569         * gtk/gtkctree.c: merges from gtk-1-2
15570
15571 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15572
15573         Support added for building using a GNU toolchain on Win32,
15574         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15575
15576         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15577         * config.h.win32: Changes for gcc.
15578         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15579         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15580         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15581         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15582         Protect shl stuff unavaiilable with mingw32 headers.
15583         * gdk/win32/gdkevents.c: Fix typo.
15584         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15585         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15586         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15587         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15588         the mingw32 headers.
15589         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15590         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15591         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15592         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15593         Test for NATIVE_WIN32, not _MSC_VER.
15594         * gtk/gtkmain.c: No use warning about developer version on Win32,
15595         there aren't any non-developer versions anyhow.
15596         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15597         * gtk/makefile.msc: Use pthread from another directory. Minor other
15598         changes. 
15599
15600 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15601
15602         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15603           default filter from the list
15604
15605 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15606
15607         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15608          when gtk_widget_grab_default() is called for a widget that
15609          is not within a GtkWindow.
15610
15611 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15612
15613         * docs/gtk_tut.sgml, examples/clist.c: use a
15614           scrolled window in the clist example. Minor
15615           tutorial fixes.
15616
15617 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15618
15619         * docs/gtk_tut.sgml: Style check from David King
15620           <dking@youvegotmail.net>
15621
15622 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15623
15624         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15625         compile with unknown value of GDK_WINDOWING
15626
15627 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15628
15629         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15630         after the rule is fired.
15631         (install-exec-local): Install gdkconfig.h only if the contents are
15632         different from the currently installed gdkconfig.h.
15633
15634 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15635
15636         * gdk/Makefile.am (configexecincludedir): Rename from 
15637         configincludedir so that gdkconfig.h will be installed 
15638         as part of `make install-exec'. 
15639
15640 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15641
15642         * acinclude.m4
15643         * config.guess
15644         * config.sub
15645         * ltconfig
15646         * ltmain.sh: upgrade to libtool 1.2f
15647
15648         * autogen.sh: libtool is not required to autogen gtk+
15649
15650         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15651         needed)
15652
15653 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15654
15655         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15656         declaring gdk variables exported/imported from the DLL. New image
15657         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15658         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15659         GDK_DRAG_PROTO_OLE2.
15660
15661         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15662         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15663         declared only for the Win32 version, but could be in the X11
15664         version as well. (Needed for a Xlib-less gdk_imlib.)
15665         gdk_color_hash should have only one parameter. Declare
15666         gdk_threads_mutex with GDKVAR.
15667         
15668         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15669         just one parameter.
15670
15671         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15672         per pixel, not bits.
15673
15674         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15675         Fetch bpp (which means bits-per-pixel here) from another place on
15676         Win32. Accept also depth==32 (which we might get on Win32) with
15677         bpp==32.
15678
15679         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15680         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15681         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15682         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15683         in the backend-dependent directory, not in the common gdk
15684         directory.
15685
15686         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15687         headers.
15688
15689 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15690
15691         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15692         want to use the Gtk+ devel version (which is true, and yes - even i am
15693         currently working with the 1.2.x branch). so everyone reading this, you
15694         probably want to issue
15695         cvs checkout -r glib-1-2 glib
15696         and
15697         cvs checkout -r gtk-1-2 gtk+
15698         as your next two comands.
15699
15700 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15701
15702         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15703         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15704
15705         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15706         file. strongly deprecated the GTK_HAVE_* macros, we provide
15707         GTK_CHECK_VERSION() for people that need to check for certain
15708         Gtk+ versions.
15709
15710         * gtk/gtkcompat.h: removed this from CVS.
15711         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15712         idea right from the start, it just didn't seem like that back then.
15713
15714 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15715
15716         * merges from gtk-1-2:
15717
15718 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15719
15720         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15721         item factory class has been created.
15722         (gtk_item_factory_parse_rc): likewise.
15723
15724         * gtk/gtkmenu.c:
15725         keep proper references for old_active_menu_item.
15726         (gtk_menu_reparent): unset the usize of the new parent,
15727         so the menu can sanely be size requested and we don't get nasty screen
15728         artefacts upon next reparentation.
15729         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15730         enter notify. only synthesize enter notifies if the pointer really is
15731         inside the event window.
15732         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15733         (gtk_menu_popup): move the background setting stuff into
15734         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15735
15736         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15737         gtk_menu_shell_select_item() to select the new item.
15738         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15739         do the right thing for deselection as well.
15740
15741 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15742
15743         * gtk/gtkwidget.[hc]:
15744         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15745         are locked.
15746
15747         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15748         existing accelerators if the widget's accelerators are locked.
15749
15750 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15751
15752         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15753
15754         * gtk/gtkmenu.c: truely forward key press and key release events to
15755         the menu widget from the toplevel or tearoff window. we can't simply
15756         connect to that, we need to stop further processing of the events as
15757         well.
15758
15759 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15760
15761         * gtk/gtkmenu.c:
15762         (gtk_menu_key_press): pass event->keyval, event->state to
15763         gtk_accelerator_valid, instead of event->keyval twice.
15764         refuse to install single letter accelerators for menus that use
15765         single letter shortcuts.
15766
15767         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15768         gtk_menu_ensure_uline_accel_group().
15769
15770         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15771         which will always return an uline accel group, made
15772         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15773         yet created.
15774
15775 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15776
15777         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15778
15779         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15780         Leave button sensitive, trap  button_press, button_release,
15781         motion_notify, enter_notify and leave_notify events instead.
15782         (gtk_clist_column_title_active): disconnect event handler.
15783         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15784         Guillaume Laurent <glaurent@worldnet.fr>
15785
15786 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15787
15788         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15789         width/height mixups.
15790
15791         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15792         if needed.
15793
15794 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15795
15796         * gtk/testgtk.c (create_item_factory): unref the item factory after
15797         window's destruction.
15798
15799         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15800         count on the menu shell around the menu item's activation, since the
15801         signal emission may cause menu shell destruction.
15802
15803         * gtk/gtkitemfactory.c:
15804         the previous code leaked one accel group per menu. we use
15805         gtk_menu_get_uline_accel_group() now to fix that, and with that
15806         also create the underline accelerator group of the menus only if
15807         required (i.e. an underline accelerator has been specified).
15808         (gtk_item_factory_construct):
15809         (gtk_item_factory_create_item): removed code that would create an
15810         extra accel group for the menu (and leak references).
15811         (gtk_item_factory_create_item): adapted the underline accelerator
15812         installation code to properly feature gtk_menu_get_uline_accel_group().
15813
15814         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15815         menu->accel_group, this may return NULL if the accelerator group
15816         hasn't been set yet.
15817         added gtk_menu_get_uline_accel_group() to retrive the underline
15818         accelerator group of the menu, this will be created on demand
15819         and proper care is taken about its reference count.
15820
15821         * gtk/gtkitemfactory.h:
15822         * gtk/gtkitemfactory.c:
15823         dumped the approach of keeping a widgets by action list on the
15824         factory since the factory<->widget destroy negotiation didn't work
15825         and would be hard to get going at all. instead we keep a list of
15826         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15827         persistant throughout a program's life time).
15828         also, i removed the static const gchar *key_* variables, and made
15829         them inline strings (they weren't actually used anyways).
15830         (gtk_item_factory_add_item): update ifactory->items.
15831         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15832         the item factory pointer from the remaining ifactory widgets).
15833         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15834         list to find the widget.
15835         (gtk_item_factory_get_item): new function that works around
15836         gtk_item_factory_get_widget() limitations, this function will only
15837         return menu items, even for <Branch> entries.
15838
15839 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15840
15841         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15842         font hash table, if we have a GdkFontPrivate entry for this font
15843         already, simply increment its reference count, provided by Olaf Dietsche
15844         <olaf.dietsche+list.gtk@netcologne.de>.
15845
15846         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15847         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15848
15849 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15850
15851         * gtk/gtkcontainer.c:
15852         (gtk_container_add_with_args):
15853         (gtk_container_addv):
15854         (gtk_container_add): before adding a child to a conatiner, make sure
15855         it is (default) constructed, this is neccessary because under certain
15856         circumstances the child will get relized and mapped immediatedly, in
15857         which case it has to be constructed already.
15858
15859 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15860
15861         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15862         values > 1 as TRUE also.
15863
15864 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15865
15866         * README.win32: New file.
15867                 
15868         * configure.in: Check for lstat.
15869
15870         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15871         completeness.
15872
15873         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15874
15875         * gtk/gtk.def: Removed CRs.
15876
15877         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15878         ..\gdk\win32).
15879
15880         * gdk/win32/makefile.msc: Correct upwards relative paths.
15881         
15882 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15883
15884         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15885           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15886           it was connecting a void function to expose_event and the int
15887           returning function to the draw signal
15888
15889 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15890
15891         * configure.in:
15892         Use correct path to libgmodule.la when ref'ing uninstalled copy
15893         of glib.  (Already in stable branch, Bug #417)
15894
15895 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15896
15897         Win32 merge and general portability stuff:
15898                 
15899         * acconfig.h,configure.in: Check for <sys/time.h>.
15900
15901         * gdk/win32: New directory (actually, been there for a while).
15902         
15903         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15904         NATIVE_WIN32, and use these. Always case fold on Win32. No
15905         backslashed escapes on native Win32.
15906
15907         * gtk/{gtk.def,makefile.msc}: New files.
15908
15909         * gtk/Makefile.am: Add above new files.
15910         
15911         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15912         instead of <strings.h>.
15913
15914         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15915         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15916         <unistd.h> appropriately.
15917
15918         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15919         Use ABS() (from <glib.h>) instead of abs().
15920         
15921         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15922         of gtk (and thus glib) headers, so that WIN32 will be
15923         defined. With MS C, include <direct.h> for mkdir prototype.
15924
15925         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15926         some casts, needed by MS C.
15927
15928         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15929         implemented).
15930
15931         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15932         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15933         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15934
15935         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15936                 
15937         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15938         the event is not a hint, or its window is not the slider. Needed
15939         on Win32, at least.
15940
15941         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15942         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15943         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15944         a subdirectory of the Windows directory as gtk system
15945         configuration directory.
15946
15947         * gtk/gtkselection.c: No chunks on Win32.
15948
15949         * gtk/gtksocket.c: Not implemented on Win32.
15950
15951         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15952
15953         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15954
15955         * gtk/maketypes.awk: Declare variables with a macro that expands to
15956         necessary export/import magic in the case of Win32.
15957                 
15958         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15959
15960 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15961
15962         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15963         since those were meant only for gdki18n.h.  
15964         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15965         for widechar tests.
15966         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15967
15968 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15969
15970         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15971         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15972
15973         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15974         installed) to CFLAGS.
15975
15976         * gdk/Makefile.am: Add rules for gdkconfig.h.
15977
15978         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15979         APIs.
15980
15981         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15982         gdkx.h anyway when compiling for X11.
15983         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15984         general): Merge in Win32 version.
15985         
15986         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15987         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15988         expansion (if we don't have HAVE_PWD_H), allow for drive
15989         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15990         included code from Craig Setera's port to Win32 (the one that uses
15991         X11, and the cygwin dll), even if it probably will be abandoned.
15992
15993         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15994         the user entered one herself.  This way one can complete *.h and
15995         don't get matches on any .help files, for instance.
15996         
15997 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15998
15999         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
16000         font hash table, if we have a GdkFontPrivate entry for this font
16001         already, simply increment its reference count, provided by Olaf Dietsche
16002         <olaf.dietsche+list.gtk@netcologne.de>.
16003
16004         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
16005         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
16006
16007 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
16008
16009         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
16010         the number of calls to gdk_draw_point() (and thus to X) by
16011         clipping the points by hand.
16012
16013         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
16014         the clip parameter.
16015         (gtk_handle_box_paint): Only paint the handle if the expose area
16016         intersects it.
16017
16018 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16019
16020         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
16021
16022 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
16023
16024         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
16025         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
16026
16027 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
16028
16029         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
16030          textmode (O_TEXT) for OS/2 version.
16031
16032 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
16033
16034         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
16035         GtkSpinButton, "input" and "output", to make the output more flexible.
16036         The user has to provide a mapping between adjustment->value and the
16037         output string (and vice versa, if the spin button is editable). 
16038         See testgtk for examples.
16039
16040 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
16041
16042         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
16043         new one.
16044         
16045         * configure.in: set gtk+ version to 1.3.0.