]> Pileus Git - ~andy/gtk/blob - ChangeLog
Test for window == NULL in a number of cases.
[~andy/gtk] / ChangeLog
1 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4         window == NULL in a number of cases.
5
6         * tests/testdnd.c: Set module path for gdk-pixbuf.
7
8 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
9
10         * gtk/Makefile.am xembed.h: File containing #defines
11         for XEMBED protocol.
12
13         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
14
15         - Change protocol from old plug/socket specific protocol
16           to XEMBED draft
17         - Various fixes to work with GTK+-2.0
18
19         Still quite a bit of work to do here to handle initiation
20         from the socket side (as specified by XEMBED), to handle
21         the more advanced features of XEMBED, and to figure out
22         a good way to handle same-app embedding with less overhead
23         than using full XEMBED.
24
25 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
26
27         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
28         track of whether the toplevel has the focus; only send
29         focus-in events to the focus widget when the window
30         actually has the focus.
31
32 2001-04-25  Havoc Pennington  <hp@pobox.com>
33
34         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
35         were still in the header
36
37 2001-04-24  Alexander Larsson  <alexl@redhat.com>
38
39         * gtk/gtkclist.[ch]:
40         * gtk/gtkctree.c:
41         When there is a row highlighted for D'n'D it must alse
42         be painted hightlighted on exposes. Otherwise exposes from
43         the icon being dragged will mess up the hightlight.
44
45         * gtk/gtkfontsel.c:
46         Don't recenter selected font when exposing the font family
47         clist. This means you can now actually scroll the font family
48         list.
49
50         * gtk/gtknotebook.c:
51         Fix focus movement on scrolling tabs that are placed on the left
52         and right.
53
54 2001-04-21  Havoc Pennington  <hp@pobox.com>
55
56         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
57         empty/invisible lines.
58
59         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
60         (gtk_text_iter_set_visible_line_index): new functions to set
61         indexes excluding invisible text
62
63         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
64         index
65
66         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
67         (gtk_text_iter_get_visible_line_offset): new functions to 
68         get indexes excluding invisible text
69
70         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
71         bunch of extra padding that served no purpose
72
73         * gtk/gtkdialog.c: Make all the spacings configurable via style
74         properties, for chubbiness configuration in themes
75
76         * tests/testtext.c: fix path to the immodules.
77         
78 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
79
80         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
81         got munched by #endif.
82
83         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
84
85         * gtk/gtktreeview.c: Refactored code to clean up a number of
86         events.
87
88         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
89         values to make consistent with other functions.  Spotted by Jeff
90         Franks <jcf@tpg.com.au>.
91
92         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
93         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
94
95 2001-04-23  Sven Neumann  <sven@gimp.org>
96
97         * gtk/Makefile.am
98         * gtk/gtkplug.c
99         * gtk/gtksocket.c: on request of Owen, reverted my last change 
100         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
101
102 2001-04-23  Sven Neumann  <sven@gimp.org>
103
104         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
105         compile for non-X11 targets again
106
107 2001-04-20  Alexander Larsson  <alexl@redhat.com>
108
109         * gtk/gtkcolorsel.[ch]:
110         API Change. Take GdkColor arguments instead of gdouble *.
111         Leave the old gtk_color_selection_set_color for compatibility,
112         but marked deprecated.
113         Do correct rounding when converting RGB <-> HSV.
114         
115         * gtk/gtkcolorseldialog.c:
116         * tests/testgtk.c:
117         Use new GtkColorSelection API.
118
119         * gtk/gtkhsv.c:
120         Fix problem selecting colors in triangle when Hue is 330.
121         Fix some black dots around the HSB triangle.
122         
123         * gtk/gtkfilesel.c:
124         return FALSE from the focus_in_event handler to fix focus problems.
125
126 2001-04-18  Havoc Pennington  <hp@redhat.com>
127
128         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
129         set, so keybindings are configurable    
130         (gtk_window_activate_default): Change to activate the focus widget
131         instead if there's a focus widget, to be consistent with the
132         behavior that previously existed in key_press_event
133
134 2001-04-18  Havoc Pennington  <hp@redhat.com>
135
136         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
137
138 2001-04-18  Havoc Pennington  <hp@redhat.com>
139
140         Close bug #50615:
141         
142         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
143         the layout
144
145         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
146
147         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
148
149         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
150         
151         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
152         to blue for base, in addition to bg
153         
154 2001-04-18  Havoc Pennington  <hp@redhat.com>
155
156         * tests/testgtk.c (create_image): allow shrinking the image window
157         to test that we clip to allocation.
158
159         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
160         #9845
161
162         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
163
164 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
165
166         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
167         mode on shm segments to 0600. We'll see who complains.
168
169         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
170         _gdk_windowing_window_destroy() AFTER recursing through
171         children.
172
173         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
174         testsocket_child on X.
175
176         * tests/testsocket[_child].c: Fix uses of
177         gtk_window_get_default_accel_group().
178
179         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
180
181         * gdk/gdkimage.c: (gdk_image_get):
182         Deal with the possibility that XGetImage() might return NULL.
183         Allocate the GdkImagePrivate structure only after XGetImage()
184         succeeds in order not to dereference a NULL ximage pointer.  This
185         prevents a core dump when XGetImage() fails - which is unlikely,
186         but can happen due to race conditions accessing the geometries of
187         drawables.  An x error will still be triggered, but the gdk image
188         wrapper at least wont seg fault.
189         
190 2001-04-18  Havoc Pennington  <hp@redhat.com>
191
192         * gtk/gtkimage.c: fix to properly queue resizes when the image is
193         set
194
195         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
196         if the insertion point isn't editable
197
198         * demos/gtk-demo/images.c: Added a GtkImage demo
199
200         * demos/gtk-demo/drawingarea.c: drawing area demo
201         
202         * demos/gtk-demo/menus.c (create_menu): cleanups
203
204 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
205
206         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
207           gdk/x11/gdkevents-x11.c: Introduce an extra child
208         of toplevel windows that serves to hold the focus to
209         avoid events being delivered to embedded windows.
210
211         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
212         some extra variables to clean up code and reduce the
213         number of casts.
214
215         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
216         guint for 1 bit bit fields, not gboolean.
217
218 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
219
220         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
221         not TRUE. (Fixes #52925)
222
223 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
224
225         * Released 1.3.4
226
227         * NEWS: Updated
228
229         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
230         use GTK_TYPE_ENUM.
231
232 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
233
234         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
235
236         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
237         names to compatibility #defines so docs work.
238
239         * gtk/gtkenums.h: Remove GtkMenuFactoryType
240
241         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
242
243         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
244
245         * tests/testgtkrc: No magenta cursors, please.
246
247         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
248
249         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
250         
251 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
252
253         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
254         grabs, since they are no longer necessary.
255
256         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
257         by signal_connect() and call gtk_button_pressed() rather
258         than signal_connect_after().
259
260         * tests/testgtk.c: Restore radio menu items to combos 
261         since they'll look OK with Raleigh, and it is easier
262         than finishing the process of removing them that was
263         started earlier.
264
265 2001-04-16  Hans Breuer  <hans@breuer.org>
266
267         * gdk/gdk.def :
268         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
269
270         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
271         we are interested in the functions return value not the function address
272         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
273
274         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
275
276 2001-04-14  Hans Breuer  <hans@breuer.org>
277
278         * gdk/gdk.def :
279         * gdk/makefile.msc : updated
280
281         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
282         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
283         (the testgtk::text backgound pixmap is drawn again)
284         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
285         Win32 Pango change
286         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
287
288         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
289         Not sure if the returned settings have the right unit, because I couldn't
290         find any docs for the X version ...
291
292         * gtk/gtk.def :
293         * gtk/makefile.msc.in : updated
294
295 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
296
297         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
298         wording problems. (Compared to version from Johannes Stezenbach to
299         check correctness.)
300
301 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
302
303         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
304         this to compile.
305
306 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
307
308         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
309         not pixbufpos.
310
311         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
312
313         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
314         are unsigned insts, therefore use g_value_set_uint.
315         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
316
317 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@webwynk.net>
318
319         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
320
321         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
322         GTK_TYPE_STRING.
323
324         * gtk/gtktreeview.c: New functions to allow initial column
325         dragging work.
326
327         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
328
329         * tests/testtreefocus.c: give dave some love.
330
331         * tests/testtreesort.c: Modify test to check really long samples.
332
333 2001-04-11  Alexander Larsson  <alexl@redhat.com>
334
335         * gtk-2.0.m4: Pass pkg-config options
336         before the other args so it works even if
337         POSIXLY_CORRECT is set.
338
339 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
340
341         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
342         0, interface 0).
343
344 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
345
346         * gtk/gtkcalendar.c (gtk_calendar_button_press):
347         check for action_func != NULL
348
349 2001-04-04  Sven Neumann  <sven@gimp.org>
350
351         * tests/testgtk.c (test_init): corrected path to gtk.immodules
352
353 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
354
355         * Released Gtk+-1.3.3.
356
357 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
358
359         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
360
361 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
362
363         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
364         files to/from source dir. (if we don't stay in builddir, we
365         can't reach make-inline-pixbuf.
366
367         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
368         deps.
369
370         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
371         ages 0).
372
373 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
374
375         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
376         moved to the GtkTreeSortable interface.
377
378         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
379         Make more efficient (fixes #50262).
380
381 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
382
383         * NEWS: Updated.
384
385         * configure.in: Remove support for uninstalled glib.
386
387         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
388         so as not to stop emission.
389
390         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
391         is no longer supported.
392
393         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
394         into tests, change build order to build modules before
395         gtk/.
396
397         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
398         to here.
399
400 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
401
402         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
403         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
404         GPatternSpec. this is actually unlikely to cause breakage in
405         third-party apps since except for gle, pretty much ever caller
406         passes NULL here.
407
408         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
409
410         * *.c: use g_pattern_*() API.
411
412         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
413
414         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
415         directions aren't passed in.
416
417         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
418         functionality to be usable from gtkstyle.c as well, give precedence
419         for conversion to user-supplied parsers.
420         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
421
422         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
423         _gtk_settings_parse_convert() for rcporperty value conversion.
424
425 2001-04-03  Alexander Larsson  <alexl@redhat.com>
426
427         * gdk/linux-fb/gdkevents-fb.c:
428         Add empty gdk_setting_get().
429
430 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
431
432         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
433         variable names.
434         
435         * gtk/makeenums.pl: touch this so enum files get remade.
436
437 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
438
439         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
440         work again when not sorted.
441
442         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
443         and "expand_row" signal, closing bug 52578.
444
445         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
446         support.
447
448         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
449         support.
450
451 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
452
453         * gdk/gdkevents.h: Add GdkEventSetting event for notification
454         of changes to system settings, gdk_setting_get() to retrieve
455         a single system setting.
456
457         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
458         to the draft XSETTINGS mechanism.
459
460         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
461         XSETTINGS.
462
463         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
464         of GDK settings changes to the GtkSettings object.
465
466         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
467         double-click-timeout property to GDK.
468
469         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
470         Define GDK boxed types here.
471
472         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
473         gdk/gdkenumtypes.[ch] for enum definitions.
474
475         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
476         * gtk/gtk-boxed.defs: Comment out GDK types
477         * gtk/gtktypeutils.h: Remove GDK types
478         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
479
480 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
481
482         * Applied patch from Ron Steinke to add signal accumulators
483         so that signals with the convention 'TRUE return means
484         handled' stop emission on a TRUE return.
485
486         * gtk/gtkmain.[ch]: Add private accumulator 
487         _gtk_boolean_handled_accumulator, used throughout GTK+.
488         
489         * gtk/gtkspinbutton.c: Add accumulator for ::output.
490
491         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
492         
493         * gtk/gtkwidget.c: Add accumulators for event signals,
494         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
495         for ::mnemonic-activate.
496
497         * gtk/gtkwindow.c: Add accumulator for ::frame_event
498
499 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
500
501         * gtk/gtkwidget.c: Add missing include.
502
503 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
504
505         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
506         marshaller.
507
508         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
509         "changed" signal to "range_changed".
510
511         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
512         removing a tree from one model would remove all trees from that
513         model.
514         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
515         changed signal instead.
516
517 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
518
519         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
520         chaining up to parent impl, since we have a INPUT_ONLY
521         window.
522
523         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
524         foreground color for the cursor.
525
526 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
527
528         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
529         param spec when caching property values, since we unref it
530         later when we free the style.
531
532         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
533         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
534
535 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
536
537         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
538         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
539         stupidity.
540
541 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
542
543         [ First pass at adding style properties. Still needs some definite
544         fine-tuning. ]
545
546         * gtk/gtkbutton.c: Add ::default_spacing style property.
547          
548         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
549         ::indicator_spacing style properties.
550
551         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
552         style properties.
553
554         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
555         rather than a normal property.
556
557         * gtk/gtkwidget.c: Add an ::interior_focus style property to
558         draw focus inside buttons, in the Windows/Java Metal/etc. style.
559
560         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
561         Honor ::interior_focus.
562         
563         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
564         TRUE.
565
566         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
567         Add ::slider_width, ::trough_border, ::stepper_size,
568         ::stepper_spacing style properties.
569
570         * gtk/gtkscale.[ch] Add ::slider-length style property.
571
572 2001-04-02 Alexander Larsson   <alexl@redhat.com>
573
574         * gdk/linux-fb/gdkwindow-fb.c:
575         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
576         warnings that were spewed on startup.
577
578         * gtk/gtkwindow-decorate.c:
579         gtk_window_reposition -> _gtk_window_reposition
580
581 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
582
583         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
584         Add boxed type for GtkRequistion. Use it for ::size-request.
585
586         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
587         Add a new GtkBorder structure useful for geometry properties
588         for widgets. Add corresponding GTK_TYPE_BORDER.
589         
590         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
591         Support automatic parser selection like
592         gtk_settings_install_property_parser().
593
594         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
595         functionality for use by gtk_widget_class_install_style_property.
596         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
597
598 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
599
600         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
601         g_param_spec_unichar(). 
602
603 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
604
605         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
606         _NET window managers.
607
608         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
609
610 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
611
612         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
613         bad needs to be nuked, not just deprecated.
614
615         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
616         gtk_widget_popup().
617
618         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
619         
620         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
621         widget.
622         
623         * docs/Changes-2.0.txt: updates.
624         
625 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
626
627         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
628         for (i = 0; i < 100; i ++)
629           g_print ("I will confirm it compile before committing\n");
630
631 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
632
633         * gtk/gtktreestore.c: Initial work on implementing the
634         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
635
636 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
637
638         * gtk/gtkwidget.c: fixed a bunch of notifications, added
639         reference counts around emissions where the widget is used afterwards.
640         added freeze/thaws around multiple properties being notified.
641         (_gtk_widget_get_aux_info): cleanups.
642         
643         * gtk/gtksettings.c (gtk_settings_install_property): provide
644         default parsing functions for gdkcolor, enums and flags.
645
646         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
647         applied by owen.
648         backed out gtk_window_get_location(), gtk_window_set_location(),
649         gtk_window_get_size() and gtk_window_set_size(), these
650         have to be sorted out wrg x/y/width/height/default_with/default_height
651         properties.
652         kept a flag in GtkWindowGeometryInfo to handle user
653         resetting default sizes.
654         cleaned up ZVT comments.
655         bunch of assorted bug fixes, notification fixes.
656         (_gtk_window_reposition): make this a really internal function.
657         
658         * gtk/testgtk.c: fixups.
659         
660 2001-03-31  Hans Breuer  <hans@breuer.org>
661
662         * config.h.win32.in : disable USE_MMX for msvc build cause
663         the assembler doesn't fit and is out of my scope. Disable
664         USE_GMODULE for msvc build as wel. The right way to share
665         binaries on win32 would be to use libtiff.dll etc. To reduce
666         installation hassles IMO it's better to include all fileformats
667         builtin to gdk-pixbuf
668
669         * gdk-pixbuf/makefile.msc : new file
670
671         * gdk/gdk.def : updated
672
673         * gdk/win32/gdkevents-win32.c : don't erase the background if
674         .no_bg is set. It improves the scrolling (e.g. of testgtk main
675         buttons
676         * gdk/win32/gdkgeometry-win32.c : added comment about the above
677
678         * gdk/win32/gdkwindow-win32.c : added three new functions like
679         the X version. Only one is implemented, because the other two
680         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
681         be default behaviour on win32 anyway ...
682
683         * gtk/gtk.def : updated
684
685         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
686         from where it was built and add an additional rule to automagically
687         build gtkmarshal.[hc]
688
689         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
690         before array access for the current entry isn't finished
691
692         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
693         use g_return_val_if_fail
694
695         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
696         for the static array, but let the compiler calculate it. It
697         makes me wonder if gcc isn't capable to catch bugs like this ...
698
699 2001-03-31  James Henstridge  <james@daa.com.au>
700
701         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
702         constant "-1" in the aux info structure.
703
704 2001-03-30  Alexander Larsson  <alexl@redhat.com>
705
706         * gtk/gtkbutton.c (gtk_button_get_property):
707         * gtk/gtklabel.c:
708         Remove leaks.
709         
710         * gtk/gtkcontainer.c:
711         * gtk/gtkhscale.c:
712         * gtk/gtkhscrollbar.c:
713         * gtk/gtklayout.c:
714         * gtk/gtkmisc.c:
715         * gtk/gtkprogress.c:
716         * gtk/gtkprogressbar.c:
717         * gtk/gtkrange.c:
718         * gtk/gtktable.c:
719         * gtk/gtkviewport.c:
720         * gtk/gtkvscale.c:
721         * gtk/gtkvscrollbar.c:
722         * gtk/gtkwidget.c:
723         Property patches, based on patches from John Margaglione and Lee Mallabone.
724
725 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
726
727         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
728         adjustment. Cleaned redundant preconditions (spin != NULL). Added
729         inline API function docs.
730         (gtk_spin_button_new_with_range): New convenience constructor.
731         (gtk_spin_button_set_increments): New adjustment helper.
732         (gtk_spin_button_set_range): New adjustment helper.
733
734         * gtk/testgtk.c : added test of the new convenince constructor and
735         value_changed signals.
736
737 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
738
739         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
740         listen to the reorder signal.
741
742 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
743
744         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
745         to get the aux info structure fo the widget.
746
747         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
748         above function.
749
750         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
751
752         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
753         to get the size of the window manager frame, basically the same
754         code that gdk_window_get_root_origin() had
755         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
756
757         * gtk/gtkwindow.c (gtk_window_set_default_size): use
758         gdk_window_resize() if the window is realized and resizeable
759
760         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
761         typo so that setting gravity works
762
763         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
764         allocation if auto_shrink is on, even if the default size
765         has not changed.
766
767         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
768         g_return_if_fail
769
770 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
771
772         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
773         reordering/sorting work.  Now pretty much works.
774
775         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
776         reorder mostly work.  Still need to get the parity correct.
777
778         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
779         signal, so I can listen for the sort_column_changed signal so I
780         can change my "sort_indicator" property.  Cool.
781
782 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
783
784         [ Patch from Havoc Pennington, hp@redhat.com ]
785
786         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
787         Add functions gdk_window_begin_resize_drag/begin_move_drag
788         to start resizing or moving a toplevel window. This
789         is done either using the _NET_WM_MOVERESIZE protocol,
790         or, if that isn't present, by emulation.
791
792         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
793         to export the above to GTK+-land.
794
795         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
796         
797         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
798         Move this function into gdkwindow, since we need it
799         when implementing fallback resizing.
800
801         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
802         Fix typo when setting gravity.
803
804         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
805         Add an optional (but on by default) resize grip for resizing 
806         the parent window.
807
808 01-03-29  Alexander Larsson  <alexl@redhat.com>
809
810         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
811         Don't return TRUE from the event handler, that blocks all
812         event signals on the tooltip widget. Now you can press buttons
813         in toolbars again.
814
815 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
816
817         * gtk/testtext.c (create_buffer): Add missing NULL on
818         valist.
819
820         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
821         c-n-p problem with INCONSISTENT property.
822
823         [ Patch from Havoc Pennington  <hp@redhat.com> ]
824
825         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
826         hook.
827
828         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
829         signal as a hook for extending the default popup menu
830
831         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
832         use radio menu items for the input method menuitems
833
834         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
835         inserted unicode from Ctrl-Shift-hex input method
836
837         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
838         validatation here, already done at GtkTextBuffer level.
839
840         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
841         popup_menu run action signal and Shift+F10 and Menu keybindings.
842
843         * gtk/gtkentry.c: implement a default handler for popup_menu
844
845         * gtk/gtktextview.c: implement a default handler for popup_menu
846
847         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
848         from a key event
849         
850         * gtk/gtklabel.c: remove "trailer" cruft
851
852 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
853
854         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
855         handle reordering of trees.  Seems to mostly work w/ the exception
856         of the parity flag.
857
858         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
859         signal.
860
861 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
862
863         * gtk/gtkwidget.h: c++ fixes.
864
865 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
866
867         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
868         memory.
869
870 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
871
872         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
873         Nils Barth fixing event return values. (#51041)
874
875         * gtk/gtkwidget.c: Fix some return values for default
876         functions.
877
878         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
879         return values for trough_keys functions.
880
881         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
882         value for add_accelerator (shoudl have been a void
883         return.)
884
885         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
886         Fix return type of EVENT.
887
888         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
889         signal return a boolean.
890
891 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
892
893         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
894         reordered signal.
895
896         * tests/testtreesort.c (main): fix spelling.
897
898 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
899
900         * gtk/gtkliststore.c: More work on implementing sortable
901         interface.
902
903 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
904
905         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
906         reference the widgets in the resulting list. (#11821)
907         This makes this consistent with gtk_container_children.
908
909         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
910         uses of gtk_window_list_toplevels.
911
912 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
913
914         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
915         a virtual function to set whether the IM context should use 
916         the preedit string. (#51922)
917         
918 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
919
920         * gdk/gdkpango.h: Remove stale FIXME comment.
921
922 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
923
924         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
925         Fixed bug that returned NULL if a filename was selected.
926
927 2001-03-24  Havoc Pennington  <hp@pobox.com>
928
929         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
930         to contain the word "theme"
931
932 2001-03-24  Havoc Pennington  <hp@pobox.com>
933
934         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
935         slower but finer-grained
936         (gtk_hsv_focus): get initial focus on the ring or triangle 
937         according to tab direction
938
939         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
940
941 2001-03-23  Havoc Pennington  <hp@pobox.com>
942
943         * gtk/gtkhsv.c: make this somewhat key-navigable
944
945         * gtk/gtkfontsel.c: mnemonics
946
947         * gtk/gtkgamma.c: mnemonics
948
949         * gtk/gtkcolorsel.c: add mnemonics to labels
950
951 2001-03-22  Havoc Pennington  <hp@pobox.com>
952
953         Applied big patch from Seth Lytle to fix event handler return
954         values, slightly modified.
955
956         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
957         handled.
958         (gtk_calendar_key_press): return TRUE for GDK_space triggers
959         select_day
960
961         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
962         (gtk_clist_button_release): return TRUE if handled
963
964         * gtk/gtkcolorsel.c (mouse_release):
965         (palette_activate): 
966         (palette_press): 
967         (palette_new): 
968         (mouse_press): 
969         (get_screen_color): 
970         fixed return type (void to gboolean), return TRUE,
971         added GTK_SIGNAL_FUNC cast
972
973         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
974         (void to gboolean), and return TRUE
975         (gtk_combo_button_release): changed return value to TRUE after
976         gtk_grab_add on combo->popwin
977
978         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
979         collapse or expand
980
981         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
982         button/motion
983
984         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
985         press/release and motion that trigger act
986
987         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
988
989         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
990         for GDK_Return
991         
992         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
993         (gtk_list_button_release): return TRUE if selection
994
995         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
996         press
997
998         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
999         (gtk_menu_shell_button_release): chain parent_menu_shell retval
1000
1001         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
1002         nothing triggered
1003         (gtk_notebook_button_release): return TRUE if we do anything
1004
1005         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
1006         (gtk_spin_button_button_release): return TRUE or chained retval
1007
1008         * gtk/gtktext.c (gtk_text_button_press): 
1009         (gtk_text_button_release): return TRUE
1010         (gtk_text_key_press): remove redundant retval code
1011         
1012         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
1013         and sensitive
1014         (gtk_tree_item_subtree_button_click): changed type to gint, and return
1015         TRUE if sensitive
1016
1017         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
1018         return TRUE
1019
1020 2001-03-23  Havoc Pennington  <hp@redhat.com>
1021
1022         * gtk/testgtk.c: fix warnings
1023
1024         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
1025
1026         * gtk/gtktextview.c: fix warnings
1027
1028         * gtk/gtktext.c (find_cursor_at_line): fix warning
1029
1030         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
1031
1032         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
1033         of this function
1034
1035         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
1036         fix warning
1037
1038         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
1039
1040         * gtk/gtkfontsel.c: fix warning
1041
1042         * gtk/gtkcolorsel.c: fix warnings
1043
1044 2001-03-23  Havoc Pennington  <hp@redhat.com>
1045
1046         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
1047
1048         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
1049
1050         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
1051         and deprecated gtk_check_menu_item_set_show_toggle().
1052         
1053         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
1054
1055         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
1056
1057         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
1058
1059 2001-03-23  Havoc Pennington  <hp@redhat.com>
1060
1061         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
1062         some docs
1063
1064 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1065
1066         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
1067         this.
1068
1069         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
1070         set_cell to set_value
1071
1072         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
1073         set_cell to set_value
1074
1075 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
1076
1077         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1078         fix braino.
1079         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
1080         support.
1081
1082         * gtk/gtktreeview.c: Addition of initial sortable support.
1083
1084         * gtk/gtktreestore.c: Addition of initial sortable support.
1085
1086         * gtk/gtkliststore.c: Addition of initial sortable support.
1087
1088         * gtk/gtkmarshal.list: yet another marshaller.
1089
1090         * gtk/gtktreedatallist.[ch]: shared code between the store models
1091         for handling sorting headers.
1092
1093 2001-03-22  Havoc Pennington  <hp@redhat.com>
1094
1095         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
1096         (gtk_container_unset_focus_chain): Add ability to override the 
1097         focus chain for a container explicitly
1098
1099 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
1100
1101         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
1102         added PROP_MNEMONIC_WIDGET.
1103
1104         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
1105         (gtk_window_remove_mnemonic): 
1106         (gtk_window_add_mnemonic): fixed assertions.
1107         (gtk_window_activate_mnemonic): constrain modifier checks to those
1108         permitted by gtk_accelerator_get_default_mod_mask().
1109         got rid of gtk_window_get_default_accel_group().
1110
1111         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
1112         activatable widgets either by focussing or a warning.
1113         added a signal accumulator to ::activate_mnemonic which stops the
1114         emission once a handler returned TRUE.
1115
1116 2001-03-22  Havoc Pennington  <hp@pobox.com>
1117
1118         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
1119         the stock item label
1120
1121         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
1122
1123         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
1124
1125         * demos/gtk-demo/*.c: Add mnemonics all over the place
1126
1127         * gtk/gtklabel.h: mark parse_uline deprecated
1128
1129 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1130
1131         * gtk/gtkitemfactory.[ch]:
1132         Add support for stock and normal imagemenuitems.
1133         
1134         * gtk/testgtk.c:
1135         Add some tests for mnemonics, stock toolbars, stock
1136         and image menuitems in itemfactory and gdk_window_scroll.
1137
1138 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1139
1140         * gtk/gtkbutton.[ch]:
1141         * gtk/gtkdialog.c:
1142         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
1143         removed accel_group argument. Renamed gtk_button_new_accel() to
1144         gtk_button_new_with_mnemonic() and removed accel_group argument.
1145
1146         * gtk/gtkcheckbutton.[ch]:
1147         New function gtk_check_button_new_with_mnemonic().
1148
1149         * gtk/gtkentry.c:
1150         Override activate_mnemonic and just grab focus.
1151
1152         * gtk/gtkitemfactory.c:
1153         Don't add menu uline accel group, instead use mnemonics support.
1154
1155         * gtk/gtklabel.[ch]:
1156         New support for mnemonics.
1157
1158         * gtk/gtkmarshal.list:
1159         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
1160
1161         * gtk/gtkmenu.[c]:
1162         * gtkmenushell.c:
1163         Use mnemonics instead of accel groups for uline
1164         support in menu items.
1165         Removed gtk_menu_get_uline_accel_group() and
1166         gtk_menu_ensure_uline_accel_group().
1167
1168         * gtk/gtkmenuitem.c:
1169         Override activate_mnemonic to handle switching between
1170         menu items if there are collisions.
1171         
1172         * gtk/gtknotebook.c:
1173         Connect to activate_mnemonic on the tab_label, so that
1174         activating it switches to that notebook page.
1175
1176         * gtk/gtkwidget.[ch]:
1177         Add activate_mnemonic signal. New function
1178         gtk_widget_activate_mnemonic() to emit it.
1179         Default implementation does activate/grab_focus.
1180
1181         * gtk/gtkwindow.[ch]:
1182         Add support for mnemonics in windows.
1183         New functions:
1184         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
1185         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
1186
1187         * gtk/testgtk.c:
1188         Update to function name changes.
1189         
1190 2001-03-21  Alexander Larsson  <alexl@redhat.com>
1191
1192         * gtk/gtkimagemenuitem.[c]:
1193         Add gtk_image_menu_item_new_from_stock()
1194
1195 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
1196
1197         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1198         Fix buglet in meeting.
1199
1200 2001-03-19  Havoc Pennington  <hp@redhat.com>
1201
1202         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
1203         add a bunch of accessor functions. This is because we have
1204         reasonable expectations of extending what fields it contains in
1205         the future.
1206
1207         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
1208         changes
1209
1210         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
1211         GtkIconSource   
1212
1213 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
1214
1215         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
1216         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
1217
1218         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
1219           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
1220           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
1221           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
1222         Change float to double everywhere with the exception of 0<->1.0 alignment
1223         and GtkCurve.
1224
1225 2001-03-19  Tor Lillqvist  <tml@iki.fi>
1226
1227         * gdk/win32/gdkdrawable-win32.c
1228         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
1229         output.
1230
1231         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
1232         gdkwin32.h.
1233
1234 2001-03-18  Tor Lillqvist  <tml@iki.fi>
1235
1236         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
1237         print_event_state, print_event): Use preprocessor macro to make
1238         code more compact. Print also GDK_WINDOW_STATE events.
1239         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
1240         
1241         * gtk/gtk.def
1242         * gtk/makefile.mingw.in: Update.
1243
1244         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
1245         to catch also Cygwin.
1246
1247 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
1248
1249         * gtk/gtkspinbutton.[hc]: added rc-style argument
1250         GtkSpinButton::shadow_type.
1251         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
1252         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
1253         rc-style settings.
1254
1255         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
1256
1257         * gtk/gtkwidget.c: quark cleanups.
1258
1259         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
1260         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
1261         to create_rc_style() (we don't do cloning in standard OO sense).
1262         added per rc style properties.
1263         
1264         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
1265         property values and for caching those. some cleanups.
1266         
1267         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
1268         
1269         * gtk/gtksettings.[hc]: new file for global rc-file properties
1270         (at least currently, should get extended to support X properties
1271         and other communication mechanisms).
1272         
1273         * gtk/gtkwidget.[hc]: added style property support:
1274         (gtk_widget_class_install_style_property_parser): install style
1275         property pspec with parser function for rc-file values other
1276         than LONG, DOUBLE or STRING.
1277         (gtk_widget_class_install_style_property): same as above without
1278         parser (parsers are going to be needed quite infrequently).
1279         (gtk_widget_style_get_property): retrive style property value.
1280         (gtk_widget_style_get_valist): same as above with varargs support,
1281         has NOCOPY semantics.
1282         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
1283
1284 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
1285
1286         * demos/gtk-demo/main.c (row_activated_cb): modified to use
1287         "row_activated" signal.
1288
1289         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
1290         stupidity.  Lets actually pass in the row with this signal...
1291
1292 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
1293
1294         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
1295
1296         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
1297
1298         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
1299         everything into the ::destroy function, and freed a lot more.
1300
1301 2001-03-16  Havoc Pennington  <hp@redhat.com>
1302
1303         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
1304         instead of gint16, to avoid overflow issues, since sizes > 16-bit
1305         are now allowed.
1306
1307 2001-03-16  Havoc Pennington  <hp@redhat.com>
1308
1309         * Applied patch from Nils Barth (bug # 51041) to 
1310         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
1311         in various places.
1312
1313 2001-03-15  Havoc Pennington  <hp@redhat.com>
1314         
1315         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
1316         for properties to set on the tag.
1317
1318         * gtk/testtext.c: fixups to reflect create_tag change
1319         
1320         * gtk/gtktexttag.c (gtk_text_tag_set_property):
1321         background/foreground stipple are objects, not boxed.
1322
1323         * demos/gtk-demo/textview.c: intellihancing
1324
1325 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1326
1327         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
1328         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
1329
1330 2001-03-16  Alexander Larsson  <alexl@redhat.com>
1331
1332         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
1333         Fix sign error with queued region translations.
1334
1335 2001-03-15  HideToshi Tajima  <tajima@happy>
1336
1337         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
1338         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
1339         * gtk/gtkentry.c (update_im_cursor_location): 
1340         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
1341         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
1342         set_cursor_pos to set_cursor_location in GtkInputContext class
1343
1344 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
1345
1346         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
1347         the location of the cell relative to its area.
1348         * gtk/gtkcell*: modified for above change
1349         * gtk/gtktreeview.c: modified for above change.
1350
1351 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
1352
1353         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
1354          (gtk_tree_view_finalize): actually unref the model.  Thanks to
1355         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
1356
1357 2001-03-14  Havoc Pennington  <hp@redhat.com>
1358
1359         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
1360         
1361         * gtk/gtk.h: remove gtkdata.h
1362
1363         * gtk/Makefile.am: remove gtkdata
1364         
1365         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
1366         not "disconnect" on the adjustments.
1367         
1368         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
1369         GtkData
1370
1371         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
1372         not GtkData
1373
1374         * configure.in: handle case where X render exists, but Pango lacks
1375         Xft support.
1376
1377 2001-03-15 Alexander Larsson  <alexl@redhat.com>
1378
1379         * gtk/gtktoolbar.[ch]:
1380         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
1381         to add stock items to toolbars.
1382
1383         * gtk/Makefile.am:
1384         Remove ../gdk/gdkim.h from gdk_headers.
1385
1386 2001-03-15  Sven Neumann  <sven@gimp.org>
1387
1388         * gdk/gdkim.h: removed
1389         
1390         * gdk/gdkprivate.h
1391         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
1392
1393 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
1394
1395         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
1396         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
1397         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
1398         set_cursor_pos() virtual method
1399
1400         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
1401         (gtk_im_context_xim_set_cursor_pos): add implementation for
1402         set_cursor_pos() method
1403
1404         * gtk/gtkentry.c (recompute_idle_func): set current cursor
1405         position to input methods
1406
1407 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
1408
1409         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
1410         code a lot.
1411
1412         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
1413         g_mem_chunk.
1414         (_gtk_tree_data_list_alloc): use g_mem_chunk.
1415         (_gtk_tree_data_list_node_to_value): Fix to switch on
1416         G_TYPE_FUNDAMENTAL.
1417         (_gtk_tree_data_list_value_to_node): Fix to switch on
1418         G_TYPE_FUNDAMENTAL.
1419         (_gtk_tree_data_list_node_copy): Fix to switch on
1420         G_TYPE_FUNDAMENTAL.
1421
1422 2001-03-12  Havoc Pennington  <hp@redhat.com>
1423
1424         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
1425         to convert to new property API. Also, change default_width and
1426         default_height get_property to return 0 as the flag value for
1427         "unset"; -1 is not a valid value for these fields.
1428
1429 2001-03-12  Havoc Pennington  <hp@redhat.com>
1430
1431         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
1432         enum with registration for icon sizes, instead of strings.
1433
1434         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
1435         gtkwidget.c: Fix to reflect GtkIconSize
1436         
1437 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1438
1439         Make GtkFB compile and link.
1440         
1441         * gdk/linux-fb/gdkdrawable-fb2.c:
1442         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1443         
1444         * gdk/linux-fb/gdkwindow-fb.c:
1445         window->mapped to GDK_WINDOW_IS_MAPPED(). 
1446         Added gdk_window_shape_combine_region.
1447         Added assorted placeholders for unimplemented new GdkWindow API calls.
1448
1449 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1450
1451         * gtk/gtkfilesel.c:
1452         Add more test when converting filenames from/to utf-8.
1453         Don't allow entering text in the filename entry which isn't allowed in
1454         a filename. Just beep instead.
1455
1456 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1457
1458         * gtk/gtkclist.c:
1459         Scroll using gdk_window_scroll(). Don't wait for exposes.
1460         Move the column headers in an order that makes them flash less.
1461
1462 2001-03-10  Hans Breuer  <hans@breuer.org>
1463
1464         * gdk/gdk.def : updated
1465
1466         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1467         to offseting the clip_mask at the right place
1468
1469         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1470         for all the gdkClasses, especially not for the input_only case.
1471         Otherwise flickering wont be avoidable, because we don't get
1472         WM_ERASEBKGND message for these windows.
1473
1474         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1475         and fixed massive redraw problems apparently triggered by Alexanders 
1476         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1477         but it seems to work quite well :-)
1478
1479         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1480         prototype
1481
1482 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1483
1484         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1485         (gtk_list_store_set_cell): Fix a stupid typo.
1486
1487 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1488
1489         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1490         select_all not work if you're in SINGLE mode (it doesn't make that
1491         much sense, anyway.)
1492
1493         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1494         handle types more sanely.
1495         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1496         (_gtk_tree_data_list_node_copy): handle types more sanely.
1497
1498         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1499         GValue better. Converts the type as well.
1500
1501         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1502         GValue better. Converts the type as well.
1503
1504 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1505
1506         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1507         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1508         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1509         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1510
1511         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1512         gdk_im/gdk_ic.
1513
1514 2001-03-09  Hans Breuer  <hans@breuer.org>
1515
1516         * gdk/gdk.def : updated
1517
1518         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1519         for their palette
1520
1521         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1522         removing
1523
1524         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1525         removing and implemented Havoc's GdkWindow state functions; 
1526         stick/unstick only as no-op, cause I don't know how to emulate 
1527         on win32 ...
1528
1529         * gtk/gtk.def : updated
1530
1531         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1532
1533         * gtk/gtktypeutils.c : #include <string.h>
1534
1535         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1536
1537 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1538
1539         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1540         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1541         not a boxed.
1542
1543 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1544
1545         * docs/Changes-2.0.txt:
1546         Document expose event->region change and that gtk_widget_event
1547         doesn't allow passing expose events.
1548
1549         * gdk/gdkevents.h:
1550         Add region to expose event.
1551         
1552         * gdk/gdkevents.c:
1553         Handle event->region in gdk_event_copy() and gdk_event_free().
1554
1555         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1556         Generate expose_event->region when creating expose events.
1557
1558         * gdk/x11/gdkevents-x11.c:
1559         Generate expose events with regions when translating X events.
1560
1561         * gtk/gtkcontainer.[ch]:
1562         Default expose handler that propagates expose events to NO_WINDOW
1563         children. New function gtk_container_propagate_expose()
1564
1565         * gtk/gtkwidget.[ch]:
1566         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1567         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1568         expose events. New function gtk_widget_send_expose() to send expose
1569         events. New function gtk_widget_region_intersect() to calculate
1570         window/region intersections.
1571         
1572         * gtk/gtkmain.c (gtk_main_do_event):
1573         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1574         Use gtk_widget_send_expose() to send expose events.
1575         
1576         * gtk/gtkbin.c:
1577         * gtk/gtkbox.c:
1578         * gtk/gtkfixed.c:
1579         * gtk/gtkimagemenuitem.c:
1580         * gtk/gtklist.c:
1581         * gtk/gtkpacker.c:
1582         * gtk/gtktable.c:
1583         * gtk/gtktree.c:
1584         Remove expose handler, using the default container implementation
1585         instead.
1586         
1587         * gtk/gtkbutton.c:
1588         * gtk/gtkcheckbutton.c:
1589         * gtk/gtkeventbox.c:
1590         * gtk/gtkfixed.c:
1591         * gtk/gtkhandlebox.c:
1592         * gtk/gtklayout.c:
1593         * gtk/gtklistitem.c:
1594         * gtk/gtkmenu.c:
1595         * gtk/gtkmenubar.c:
1596         * gtk/gtkmenuitem.c:
1597         * gtk/gtknotebook.c:
1598         * gtk/gtkoptionmenu.c:
1599         * gtk/gtkpaned.c:
1600         * gtk/gtkscrolledwindow.c:
1601         * gtk/gtktogglebutton.c:
1602         * gtk/gtktoolbar.c:
1603         * gtk/gtktreeitem.c:
1604         * gtk/gtkviewport.c:
1605         Chain expose handler to parent class handler. Use
1606         gtk_container_propagate_expose() to propagate exposes.
1607
1608         * gtk/gtkclist.c (check_exposures):
1609         * gtk/gtktext.c (process_exposes):
1610         Use gtk_widget_send_expose instead of gtk_widget_event.
1611
1612 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1613
1614         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1615
1616 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1617
1618         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1619         unref the nodes.   Fixes bug #50058.
1620
1621         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1622         "::ref_iter" to "::ref_node".
1623         (gtk_tree_model_unref_node): change "::unref_iter" to
1624         "::unref_node". Fixes bug #50064.
1625
1626 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1627
1628         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1629         support for invisible cells.
1630          (gtk_tree_view_bin_expose): ditto
1631
1632 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1633
1634         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1635         on gobjects.
1636
1637         * tests/testtreefocus.c (main): New test file.
1638
1639         * tests/testtreeview.c: update to latest glib changes.
1640
1641         * tests/testtreecolumns.c: update to latest glib changes.
1642
1643 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1644
1645         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1646
1647 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1648
1649         * *.c: added accumulator data argument to g_signal_newc()
1650         functions.
1651
1652         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1653         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1654         * gtk/treestoretest.c (make_window):
1655         s/g_signal_connect/g_signal_connectc/.
1656
1657         * gtk/gtktextbuffer.c: completed signal arg fixups,
1658         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1659
1660 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1661
1662         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1663         G_CONST_RETURN.
1664
1665         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1666         ::hierarchy-changed signal when a widget changes
1667         from anchored to unanchored or vice versa.
1668         (anchored means 
1669          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1670         Use a private flag to keep track of this efficiently.
1671
1672 2001-03-07  Havoc Pennington  <hp@redhat.com>
1673
1674         * gtk/testgtk.c (create_spins): uglify so that size request gets
1675         tested.
1676
1677         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1678         request on values for upper/lower, completes #6152
1679
1680 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1681
1682         * Makefile.am: Remove gtk-config-2.0 again.
1683         (Grrrr, pkg-config. And stops make loops.)
1684
1685 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1686
1687         * gtk/gtksignal.[hc]: removed old emission hook API.
1688         
1689         * docs/Changes-2.0.txt: fixed sections.
1690         
1691         * gtk/gtktextbuffer.c: signal arg fixups.
1692
1693 2001-03-07  Havoc Pennington  <hp@redhat.com>
1694
1695         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1696
1697         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1698         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1699         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1700         validation and the redraw which is higher priority than the
1701         validation.
1702
1703 2001-03-07  Havoc Pennington  <hp@redhat.com>
1704
1705         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1706         (gtk_entry_set_property): remove trailer
1707
1708         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1709         (gtk_entry_get_width_chars): new functions, to set size request to 
1710         a given number of characters
1711
1712         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1713
1714         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1715         (gtk_dialog_get_has_separator): new function
1716         (run_delete_handler): fix to not emit "response" signal
1717         because we already did in the delete event handler installed
1718         at dialog creation time.
1719         
1720         * gtk/gtkdialog.h: add a has_separator property,
1721         add GTK_DIALOG_NO_SEPARATOR flag
1722
1723 2001-03-07  Havoc Pennington  <hp@redhat.com>
1724
1725         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1726         off decorations for a window.
1727
1728         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1729         changes
1730
1731         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1732         to get location of PangoLayout inside the label, closes #51198
1733
1734         * gtk/testgtk.c (create_bbox): fix up button box usage
1735
1736         * gtk/testcalendar.c (create_calendar): fix up button box usage
1737
1738         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1739
1740         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1741
1742         * gtk/gtkhbbox.h: deprecations
1743
1744         * gtk/gtkvbbox.h: deprecations
1745
1746         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1747         emulate deprecated gtk_button_box_get_spacing
1748
1749         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1750         the "set global default" functions
1751         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1752         GtkBox base class
1753
1754         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1755
1756         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1757         render the icon, return the missing image icon.
1758
1759         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1760         image icon if the load fails.   
1761
1762         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1763         when no image is found; should be the Netscape "missing image"
1764         icon eventually but for now is a random image
1765
1766         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1767         role for the session manager
1768
1769         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1770
1771         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1772         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1773
1774         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1775
1776 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1777
1778         * gtk/*.c: marshaller fixes.
1779         
1780         * gtk/gtkmarshal.list: extreme cleanup.
1781
1782         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1783         param spec for now.
1784
1785         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1786         where appliable.
1787
1788         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1789         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1790         which are not reference counted:
1791         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1792         PangoFontDescription, GtkTreeIter and GtkTreePath.
1793
1794 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1795
1796         * gtk/gtktreeselection.h: 
1797         * gtk/gtktreemodel.c:
1798         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1799         file should be included directly, and gobject/gmarshal.h
1800         as well as gtk/gtkmarshal.h even can't be included directly.
1801
1802         * Makefile.am: grr, install gtk-config-2.0.
1803
1804         * gtk/testgtk.c:
1805         * gtk/simple.c:
1806         * gtk/gtkmenu.c:
1807         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1808         passing "*signal*::*" args to gtk_widget_set().
1809         
1810         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1811         
1812         * gtk/*.c: removed trailer arg from property setters and getters.
1813         macro fixups.
1814
1815 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1816
1817         * gtk/gtklabel.c (set_markup): Removed warning
1818
1819 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1820
1821         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1822         field to allow you to hide cell renderers.
1823
1824         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1825
1826         * gtk/gtktreeview.c: Add support for invisible cells.
1827
1828 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1829
1830         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1831         Add "clicked" signal back to columns.
1832
1833         * ChangeLog: remove conflict markers.
1834
1835 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1836
1837         * gtk/gtkbutton.c: Add animation of activation by, on 
1838         activate, pressing the button, and adding a timeout that 
1839         releases the button after 250ms or on key release and
1840         emits ::clicked. (#51501)
1841
1842         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1843         action area, we connect to ::clicked instead of ::activate
1844         so the dialog stays up through the animation.
1845
1846 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1847
1848         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1849         check the ignore_enter flag for the menu shell that
1850         the item is actually a child of, not for attached
1851         submenus. (#51536)
1852
1853 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1854
1855         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1856         special key-press grab handling for widgets within
1857         GtkWindows. Otherwise, fall through to normal case.
1858
1859         This prevents key events being sent twice to GtkInvisible
1860         widgets, which can cause all sorts of mischief.
1861
1862 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1863
1864         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1865         widget is in effect, give the grab widget a first
1866         crack at KEY_PRESS/RELEASE events. (#424)
1867
1868 2001-03-06  James Henstridge  <james@daa.com.au>
1869
1870         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1871         offset for the window_state_event to point at window_state_event
1872         rather than no_expose_event.
1873
1874 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1875
1876         * gtk/gtkimmodule.h: fix busted /* comment */
1877
1878 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1879
1880         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1881         object properties.
1882
1883 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1884
1885         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1886         add object properties.
1887
1888         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1889         to add object properties.
1890
1891         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1892         object properties.
1893
1894         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1895         add object properties.
1896
1897         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1898         object properties.
1899
1900 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1901
1902         * gtk/gtktreemodel.c: renamed "child_toggled" to
1903         "has_child_toggled".
1904
1905         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1906         handle new signal name.
1907
1908         * gtk/gtktreestore.c: Updated to handle new signal name.
1909         * gtk/gtklisttore.c: Updated to handle new signal name.
1910         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1911
1912 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1913
1914         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1915         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1916
1917 2001-03-05  Michael Natterer  <mitch@gimp.org>
1918
1919         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1920         pixbuf-engine coincidentially also failed to make one of it's
1921         parent_class pointers static, causing overwriting of GtkLabel's
1922         parent_class pointer in pixbuf_style_class_init().
1923         (Will commit the fix to the pixbuf-engine too).
1924
1925 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1926
1927         * gdk/gdkwindow.h:
1928         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1929         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1930         gdk_window_set_icon_list for net wmspec functionality.
1931
1932         * gdk/x11/gdkwindow-x11.c:
1933         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1934         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1935         gdk_window_set_icon_list.
1936         Added gdk_wmspec_change_state helper function and used it in the code.
1937         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1938
1939         * gtk/gtkdialog.c (gtk_dialog_init):
1940         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1941
1942         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1943         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1944
1945         * gtk/gtkwindow.c:
1946         new function gtk_window_set_type_hint.
1947         On realize, set type hint and modal hint.
1948
1949         * gtk/gtkwindow.h:
1950         Added type_hint field and gtk_window_set_type_hint.
1951
1952 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1953
1954         * gtk/gtklabel.[ch]:
1955         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1956         New function gtk_label_get_accel_keyval () to get the underline accelerator
1957         of the label. Setting the label pattern overrides other attributes.
1958
1959 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1960
1961         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1962         Added missing initializers to gtk_rc_style_init().
1963
1964 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1965
1966         * gtk/gtktextview.c: fixed bug #51097 about setting 
1967         gtk_text_view_set_border_window_size() if the widget is 
1968         already realized.
1969
1970 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1971
1972         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1973
1974         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1975         comment. Won't do to have duplicated doc comments between
1976         the platform subdirs.
1977
1978 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1979
1980         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1981           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1982
1983         Detectable auto-repeat - make a repeating key generate
1984         press/press/press/release instead of press/release pairs.
1985
1986         If we have Xkb and XkbSetDectableAutoRepeat supports
1987         that, we do it that way. Otherwise, when we get
1988         a release event, we check ahead with XPending to see
1989         if the next key is a KeyPress with the same keycode
1990         and timestamp. (Not 100% reliable, but pretty close.)
1991           
1992 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1993         
1994         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1995         special key-press grab handling for widgets within
1996         GtkWindows. Otherwise, fall through to normal case.
1997  
1998         This prevents key events being sent twice to GtkInvisible
1999         widgets, which can cause all sorts of mischief.
2000  
2001 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
2002  
2003         * gtk/gtkmain.c (gtk_propagate_event): When a grab
2004         widget is in effect, give the grab widget a first
2005         crack at KEY_PRESS/RELEASE events. (#424)
2006  
2007 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
2008
2009         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
2010         to extend the selection. (Roughly based on patch
2011         from Jay Cox, #50939)
2012
2013         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
2014         to properly handle previous GDK_BUTTON_PRESS. 
2015         (Patch from Jay Cox, #50938)
2016
2017         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
2018         '\0' back along with the deleted text. (#51148)
2019
2020 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
2021
2022         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
2023         the group when extracting it from the X keyboard event.
2024
2025         * modules/input/Makefile.am modules/input/imipa.c: 
2026         Simple module for entering IPA. (Do we need a 
2027         gtk-stupid-input-tricks CVS module?)
2028
2029 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
2030
2031         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
2032         const.
2033
2034         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
2035
2036         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
2037         is no focus widget for the dialog currently, grab the focus as well
2038         as the default.
2039
2040         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
2041         the action area's children to iterate through, not the
2042         dialog's children.
2043
2044 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
2045
2046         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
2047         Add plug-socket tests. (Won't work worth a darn until I commit
2048         the rest of the plug-socket changes, but no reason these
2049         can't go into CVS now.)
2050
2051 2001-03-02  Havoc Pennington  <hp@redhat.com>
2052
2053         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
2054         _gdk_region_get_xrectangles()
2055
2056         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
2057
2058         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
2059
2060         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
2061         function, contributed by Ron Steinke    
2062
2063         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
2064         gdk_net_wm_supports
2065
2066         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
2067         New function, contributed by Ron Steinke
2068
2069         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
2070         used to line up the text in the entry when using the entry for
2071         editable sheet cell hacks
2072
2073         * gtk/testgtk.c (create_entry): test the activate_default setting
2074         on GtkEntry
2075
2076         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
2077         cause the entry to activate the default button for a dialog when 
2078         activated
2079         (gtk_entry_get_activates_default): new function
2080
2081 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
2082
2083         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
2084         Hwang to move call to sync_selection() up a few lines
2085         to before the row list is modified, to fix crash when
2086         removing rows in the undo_selection list.
2087
2088         (Test case provided by Daniel Elstner:
2089
2090         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
2091
2092 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
2093
2094         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
2095         of tree->root_tree in parent_set rather than _map(), 
2096         fixing #50892 in a bit better manner.
2097
2098 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
2099
2100         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
2101
2102 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
2103
2104         * gtk/gtkstyle.c : Remove duplicate fwd decl for
2105         gtk_default_draw_shadow.
2106
2107 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2108
2109         * gdk/gdkimage.c (gdk_image_new): Remove excess 
2110         warning, make warnings more verbose, treat a error
2111         in shmat as permanent, and don't try again.
2112         (#51163, Ed Randall.)
2113
2114 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
2115
2116         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
2117         delay for the first click before starting to scroll.
2118         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
2119
2120         * gtk/gtktext.c: GtkText should have I-beam cursor. 
2121         (based on gtk-enf-990513-1.patch, Eric Fisher.)
2122
2123 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
2124
2125         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
2126         cleanup to remove some references to unused
2127         ->xoffset, ->yoffset.
2128
2129 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
2130
2131         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
2132         mask. (#51039, fix from Martin Maierhofer)
2133
2134 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
2135
2136         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
2137         for unshifted + and shifted = for non-us keyboards.
2138         Make <Control>+ and <Control>- work as well as 
2139         <Control>KP_Plus, <Control>KP_Minus for recursive
2140         open/close.  (#2682, René Seindal)
2141
2142 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2143
2144         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
2145         the active menu item before deactivating the menu,
2146         so gtk_menu_popdown doesn't change the history. (#50964)
2147         
2148 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
2149
2150         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
2151         draw lines with text_gc rather than black_gc.
2152         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
2153
2154 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
2155
2156         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2157         Move handling of buttons fully in gtktreeviewcolumn.  This code is
2158         less interrelated then it was, but it still requires the
2159         GtkTreeView to map it.
2160
2161         * test/testtreecolumn.c: Now I can add a column to one view,
2162         remove it, add it to the another view, remove it, then re-add it
2163         to the first.  Nifty.
2164
2165 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
2166
2167         * docs/tutorial/gtk-tut.sgml: Minor corrections
2168
2169 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
2170
2171         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
2172         GtkRowReference.
2173
2174 2001-02-28  Havoc Pennington  <hp@redhat.com>
2175
2176         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
2177         draw_default
2178         (gtk_widget_draw_focus): remove this function; we could instead
2179         make it just gtk_widget_draw(), but in most cases I think the
2180         result would be broken user code, so think it's better to have
2181         that code not compile and get fixed
2182         (gtk_widget_draw_default): ditto
2183
2184         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
2185         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
2186         
2187         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
2188         widgets lose/get the default, instead of calling draw_default
2189         
2190         * docs/Changes-2.0.txt: note about all this
2191
2192         Then fixed every widget in GTK, I won't list all the filenames.
2193
2194 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
2195
2196         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
2197         _gtk_tree_row_reference_deleted.
2198         (inserted_callback): Proxy out to
2199         _gtk_tree_row_reference_inserted.
2200         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
2201         get around signal emission ordering problem.
2202
2203         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2204         fix to work with SINGLE 
2205         (_gtk_tree_selection_internal_select_node): Major sanitization on
2206         selections.  SINGLE now seems to work.
2207
2208         * tests/Makefile.am: add testtreecolumn.c:
2209
2210         * tests/testtreecolumn.c: New test.  Mostly points out selection
2211         bugs currently, but will test columns later.
2212
2213         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
2214         selection bug.  I hate touching this code -- it's scary.
2215
2216 2001-02-26  Havoc Pennington  <hp@redhat.com>
2217
2218         * gtk/testgtk.c: test the window state stuff
2219
2220         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
2221         window come to the user's attention as if it were just created
2222         (gtk_window_iconify): new function
2223         (gtk_window_deiconify): new function
2224         (gtk_window_stick): new function
2225         (gtk_window_unstick): new function
2226         (gtk_window_maximize): new function
2227         (gtk_window_unmaximize): new function
2228
2229         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
2230
2231         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
2232
2233         * gdk/x11/gdkevents-x11.c: create window state events when
2234         appropriate
2235         (gdk_wmspec_supported): new function
2236
2237         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
2238         iconification before showing the window
2239         (gdk_window_deiconify): new function
2240         (gdk_window_stick): new function
2241         (gdk_window_unstick): new function
2242         (gdk_window_maximize): new function
2243         (gdk_window_unmaximize): new function
2244
2245         * gdk/gdkwindow.c: store the window state in the window; 
2246         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
2247         window->mapped.
2248         (gdk_window_get_state): return the current window state
2249
2250         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
2251         (gdk_event_get_state): handle GDK_WINDOW_STATE
2252         (gdk_synthesize_window_state): function to create the window state
2253         events
2254
2255         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
2256         event, for changes to "window state" such as maximized, sticky, 
2257         etc.
2258         
2259         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
2260         focuses a window
2261
2262         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
2263         finds out if we support a given WM spec hint
2264
2265 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
2266
2267         * docs/faq/gtk-faq.sgml: New question re memory leaks.
2268
2269 2001-02-25  Hans Breuer  <hans@breuer.org>
2270
2271         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
2272         cause we want to loose those prototypes only in the latter case
2273
2274         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
2275         GdkPixmapImplWin32 because it itsn't derived from it. Use the
2276         impl member variable instead
2277
2278         * gtk/gtk.def : updated
2279
2280         * gtk/gtklist.c : 
2281         * gtk/gtkmenus.c : include <string.h> for memset ()
2282
2283         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
2284         for everthing built here, but for gtk-x.x.dll only. This solves
2285         problem of indifferent gtk type definitions
2286
2287 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
2288
2289         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
2290
2291 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
2292
2293         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
2294         column that is exposed.
2295
2296         (_gtk_tree_view_update_size): Changed name from set_size, and
2297         changed function to do more work, and not force people calling it
2298         to figure out the size.  Simplifies a lot of code elsewhere.
2299
2300 2001-02-23  Alexander Larsson  <alexl@redhat.com>
2301
2302         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
2303         return solid masks for xpms that have no transparent color.
2304         This makes the ..._create_from_xpm... API backwards
2305         compatible.
2306
2307 2001-02-23  Tor Lillqvist  <tml@iki.fi>
2308
2309         * README.win32: Update. Mention the gtk-1-3-win32-production
2310         branch.
2311
2312         * gdk/win32/bdfcursor.c: New file. A program that generates
2313         xcursors.h. Thanks to Stefan Ondrejicka.
2314
2315         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
2316         compact format.
2317
2318         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
2319
2320         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
2321         function, uses xcursors.h.
2322         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
2323         cursor from inline data instead of using LoadCursor() to generate
2324         it from a resource.
2325
2326         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
2327         event, must check the Windows message for mouse button state, as
2328         the GDK event state might not have been built if it is
2329         undelivered. Remove one goto.
2330
2331         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
2332         SetCursor() if the current cursor as returned by GetCursor() is
2333         the window's previous cursor. The ChildWindowFromPoint() test
2334         apparently didn't work correctly.
2335
2336         * gdk/win32/rc/*.cur: Remove.
2337
2338         * gdk/win32/rc/gdk.rc.in: Remove cursors.
2339
2340         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
2341
2342         * gtk/makefile.{mingw,msc}.in: Updates.
2343
2344 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
2345
2346         * gtk/gtktreemodel.h: add functions for signal emission.
2347
2348         * gtk/gtktreestore.c: move to use above functions instead of
2349         g_signal_emit.
2350
2351         * gtk/gtkliststore.c: ditto
2352
2353 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
2354
2355         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
2356         GObject instead of GtkObject.
2357
2358         * gtk/gtkliststore.c: ditto.
2359
2360         * gtk/gtktreemodelsort.c: ditto.
2361
2362         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
2363         GtkTreeModelIface, instead of in each model.
2364
2365 2001-02-21  Havoc Pennington  <hp@redhat.com>
2366
2367         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
2368         unbreak this function
2369
2370         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
2371         properties
2372
2373         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
2374         properties
2375
2376         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
2377         properties
2378
2379         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
2380         mean unset the max length
2381
2382 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
2383
2384         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
2385         Changed name to be set_cell_data_func to make it clear what
2386         the functino does.  Close bug #51069.
2387
2388 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
2389
2390         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
2391         have memory actually freed.  Keeps box running longer.
2392
2393 2001-02-21  Alexander Larsson  <alexl@redhat.com>
2394         
2395         * gtk/gtkseparatormenuitem.[ch]:
2396         Added new menu separator item. The drawing and size handling
2397         is still done in GtkMenuItem, but the API is a bit more sane.
2398         
2399         * gtk/Makefile.am:
2400         Add gtkseparatormenuitem.[ch].
2401
2402         * gtk/gtk.h:
2403         Add gtkseparatormenuitem.h.
2404         
2405         * gtk/gtkentry.c:
2406         * gtk/gtkmenufactory.c:
2407         * gtk/gtktextview.c:
2408         Use the new API for menu separators.
2409         
2410         * demos/gtk-demo/menus.c (create_menu):
2411         Add some GtkSeparatorMenuItem demo code.
2412
2413 2001-02-20  Havoc Pennington  <hp@redhat.com>
2414
2415         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
2416         Lee Mallabone
2417
2418         * gtk/gtkarrow.c: Convert to new property API, patch from 
2419         Lee Mallabone
2420
2421 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
2422
2423         * tests/testtreeview.c (toggled_callback): fix to reflect change
2424         in GtkTreeModelStore.
2425
2426 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
2427
2428         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
2429         function to create an icon set from a pixbuf.
2430
2431 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2432
2433         * gtk/gtkcellrenderertext.[ch]:
2434         Add a "markup" property.
2435
2436         * gtk/treestoretest.c:
2437         Use the markup property, remove some leftover stuff from
2438         GtkTreeModelMapping.
2439
2440 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2441
2442         * gtk/gtklabel.c (gtk_label_set_selectable):
2443         Queue a redraw if the selectable setting was changed.
2444
2445 2001-02-20  Alexander Larsson  <alexl@redhat.com>
2446
2447         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2448         Actually copy the whole gc, not just the public parts.
2449         
2450         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2451         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2452         labels.
2453
2454 2001-02-19  Havoc Pennington  <hp@pobox.com>
2455
2456         * gdk/gdkwindow.c: docs
2457
2458         * gdk/gdkrgb.c: docs
2459
2460         * gdk/gdkregion-generic.c: docs
2461
2462         * gdk/gdkgc.c (gdk_gc_set_values): docs
2463
2464         * gdk/gdkdraw.c: docs
2465
2466         * gdk/gdkdrawable.h: deprecate drawable get/set data
2467
2468 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2469
2470         * demos/gtk-demo/dialog.c: Add simple new demo.
2471
2472 2001-02-19  Havoc Pennington  <hp@redhat.com>
2473
2474         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2475         insert_child_anchor signal, bug #50245
2476
2477         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2478         from create_child_anchor, so the anchor is passed in
2479
2480         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2481         (_gtk_widget_segment_new): have the child anchor object passed in, 
2482         instead of creating it.
2483
2484         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2485         to gtk_text_buffer_get_modified
2486
2487 2001-02-19  Havoc Pennington  <hp@redhat.com>
2488
2489         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2490         changed GLib without fixing GTK
2491
2492         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2493         functions to have an underscore in front. Most of them should 
2494         probably just go away, but for starters don't export them.
2495         Bug #50482
2496
2497 2001-02-19  Havoc Pennington  <hp@redhat.com>
2498
2499         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2500         excluded by default
2501
2502         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2503         clean up the old code a bit
2504
2505         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2506         inconsistent state
2507
2508         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2509         draw inconsistent state
2510
2511         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2512         (create_menu): add inconsistent test
2513
2514         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2515         new function
2516         (gtk_check_menu_item_get_inconsistent): new function
2517         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2518         state (using etched in for now)
2519
2520         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2521         draw inconsistent state
2522
2523         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2524         function, used when the user has selected a range of stuff in
2525         different states
2526         (gtk_toggle_button_get_inconsistent): accessor for that
2527         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2528         don't know what else to do)
2529
2530 2001-02-19  Hans Breuer <hans@breuer.org>
2531
2532         * gtk/gtk.def : updated exported symbols
2533
2534         * gtk/makefile.msc.in : updated
2535
2536         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2537         a colormap, when invoked from testgtk::entry. I'm not sure where
2538         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2539         avoids immediate crashing ...
2540
2541         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2542         any objections ?
2543
2544         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2545         0 parameter. At least msvc doesn't like macros with var args. 
2546         I simply removed the extra 0, was it a feature or a typo ?
2547
2548         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2549         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2550         because the value assignment to the internal struct wasn't working.
2551         I'm not absolutely sure. The problem could have been resolved by
2552         changing the "func" declartion in the struct, but was the pointer
2553         to the function pointer intended ?
2554
2555         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2556
2557         * gdk/gdk.def : updated exported symbols
2558
2559         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2560         only use SetDIBitsToDevice if there is a palette at the drawable
2561         and the image is GDK_VISUAL_PSEUDO_COLOR
2562
2563         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2564
2565         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2566
2567         * gdk/*/makefile.msc : updated
2568
2569 2001-02-19  Havoc Pennington  <hp@redhat.com>
2570
2571         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2572         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2573
2574         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2575         (gdk_key_repeat_restore): nuke
2576
2577         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2578         (gdk_init_check): no atexit func
2579
2580         * gdk/gdkrgb.h: mark some stuff deprecated
2581
2582         * gdk/gdkcolor.h: mark some stuff deprecated
2583         
2584         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2585
2586         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2587
2588 2001-02-16  Havoc Pennington  <hp@redhat.com>
2589
2590         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2591         scroll steps.
2592
2593         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2594         steps, and add Ctrl-arrow shortcuts for paging visually as with
2595         HScale, since Page Up and Page Down move logically.
2596
2597         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2598         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2599         
2600         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2601         steps
2602         (gtk_range_scroll): handle the visual steps
2603
2604         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2605         scroll steps
2606
2607         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2608         steps, not the logical ones.
2609
2610         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2611         (scroll_vertical): handle up/down steps
2612
2613 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2614
2615         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2616         Copy data and free data with free().
2617
2618         * gdk-pixbuf/gdk-pixbuf.c:
2619         * gdk-pixbuf/io-jpeg.c:
2620         * gdk-pixbuf/io-png.c:
2621         Use g_try_malloc/g_free instead malloc/free.
2622         
2623         * gdk-pixbuf/test-gdk-pixbuf.c:
2624         Must... initialize... gobject...
2625         
2626         * gdk-pixbuf/pixops/timescale.c:
2627         * gtk/gtkcalendar.c:
2628         Use g_malloc instead of malloc.
2629         
2630 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2631
2632         * gtk/testgtkrc:
2633         Comment out property assignments, these don't work yet.
2634
2635 2001-02-17  Havoc Pennington  <hp@pobox.com>
2636
2637         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2638         bit.
2639
2640 2001-02-17  Havoc Pennington  <hp@pobox.com>
2641
2642         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2643         shadowed variables that had broken size request in some cases,
2644         leading to bogus tooltips (#50996)
2645
2646 2001-02-06  Jon K Hellan  <hellan@acm.org>
2647
2648         Implement fast browsing of tooltips, bug #50619
2649         
2650         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2651         and last_popdown
2652         
2653         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2654         use_sticky_delay and last_popdown.
2655         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2656         time of popdown.
2657         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2658         is NULL.
2659         (gtk_tooltips_recently_shown): New static function.  Return true
2660         if < sticky_delay has elapsed since last popdown.
2661         (gtk_tooltips_event_handler): Display window after sticky_delay
2662         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2663         since last popdown.
2664         
2665 2001-02-17  Havoc Pennington  <hp@pobox.com>
2666
2667         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2668         instead of (). #6394
2669
2670         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2671         G_CONST_RETURN, make it return by reference, #50473
2672         
2673 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2674
2675         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2676         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2677         setup fields contain garbage (e.g. subwindow, breaking
2678         gdk_drawable_ref() upon event copy).
2679         (gtk_menu_stop_navigating_submenu_cb): same here.
2680
2681         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2682         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2683         * gtk/gtkclist.c (vertical_timeout): 
2684         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2685         default-zero-intialization for unions to memset(,0,), as unions are
2686         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2687         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2688
2689         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2690         g_closure_sink() warning.
2691
2692         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2693         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2694         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2695         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2696         
2697 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2698
2699         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2700         gtk_*_store_get, and moved to GtkTreeModel.
2701
2702         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2703
2704         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2705
2706         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2707
2708         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2709         set the func.
2710
2711         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2712         freeze/thaw notify between setting all the properties for a cell.
2713
2714         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2715
2716 2001-02-15  Havoc Pennington  <hp@redhat.com>
2717
2718         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2719         the X coordinates so they're with respect to the line, rather than 
2720         with respect to the layout.
2721
2722         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2723         Mallabone
2724
2725         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2726         and inverted test
2727
2728         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2729         #50806
2730
2731         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2732
2733         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2734         gtk_text_iter_is_end
2735
2736         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2737         rename gtk_text_buffer_get_end_iter
2738
2739         * gtk/testgtk.c (create_labels): Add test for selectable
2740
2741         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2742         the selection stuff. This code is kind of broken since it doesn't 
2743         use the theme engine.
2744
2745         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2746         fix infinite loop and y offset problem
2747         (gdk_draw_layout_line_with_colors): fix foreground color handling
2748
2749         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2750         that makes the label selectable.
2751         
2752         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2753         layout when the style is set, since fonts etc. could have changed.      
2754
2755 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2756
2757         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2758
2759         * gtk/gtktreemodelsimple.[ch]: removed.
2760
2761 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2762
2763         * gtk/gtktreemodelmapping.[ch]:
2764         New files. Implement GtkTreeModelMapping.
2765         
2766         * gtk/Makefile.am:
2767         Add gtktreemodelmapping.[ch].
2768         
2769         * gtk/gtk.h:
2770         Add gtktreemodelmapping.h
2771
2772         * gtk/treestoretest.c:
2773         Test the GtkTreeModelMapping
2774
2775 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2776
2777         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2778         have a demo, we might as well pass in real values.  Thanks to
2779         clahey for pointing this out.
2780
2781 2001-02-14  Havoc Pennington  <hp@pobox.com>
2782
2783         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2784         "static" to a private function
2785         (gtk_image_menu_item_class_init): remove destroy handler,
2786         add "image" object property
2787
2788 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2789
2790         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2791         Add a shortcut if the window and the current clip_region doesn't
2792         overlap. This is needed when there are a lot of windows in a
2793         window. The layout test in testgtk is a good test.
2794
2795         * gdk/linux-fb/gdkwindow-fb.c:
2796         Whitespace fix.
2797
2798 2001-02-13  Sven Neumann  <sven@convergence.de>
2799
2800         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2801
2802 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2803
2804         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2805         Don't reference last_cursor if it is null. Fixes crash when rotating
2806         the screen before having moved the mouse.
2807
2808         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2809
2810         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2811
2812         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2813         when using 90 or 270 degrees rotation.
2814
2815 2001-02-12  Havoc Pennington  <hp@pobox.com>
2816
2817         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2818         it always set the foreground, even if we were only using
2819         a stipple.
2820         (gdk_draw_layout_line_with_colors): new function, allow
2821         override colors
2822         (gdk_draw_layout_with_colors): new function, allow override
2823         colors
2824         (gdk_pango_layout_line_get_clip_region): function to get the clip
2825         region for a logical text range
2826         (gdk_pango_layout_get_clip_region): get the clip region for a
2827         logical text range
2828
2829         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2830         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2831         the right number of arguments.
2832
2833         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2834         enhance the function to check that node data corresponds to a 
2835         view still belonging to the tree.
2836
2837         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2838         GtkTreePath
2839         (gtk_tree_view_inserted): ditto
2840         (gtk_tree_view_child_toggled): ditto
2841
2842         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2843         simplify this code.
2844
2845         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2846         a PangoAttrList
2847
2848         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2849
2850         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2851
2852         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2853         size in the size request 
2854         (gtk_menu_bar_size_allocate): consider toggle size here
2855
2856         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2857         that displays a widget in the toggle slot
2858
2859         * gtk/testgtk.c: test GtkImageMenuItem
2860
2861         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2862         
2863         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2864         request and allocation
2865
2866         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2867
2868         * gtk/gtkcheckmenuitem.c
2869         (gtk_check_menu_item_toggle_size_request): ditto
2870         
2871 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2872
2873         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2874         reference.
2875
2876         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2877         and refuse to initialize GTK+ if they fail.
2878
2879 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2880
2881         * configure.in: Add check for gtk-doc version.
2882
2883 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2884
2885         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2886         where the xpad/ypad was only being used on one side!
2887
2888 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2889
2890         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2891         function, copied from X11 version.
2892
2893         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2894         DestroyCursor failures. The reason for the problem (despite the
2895         inconsistent messages from GetLastError()) was that
2896         DestroyCursor() cannot be called while a cursor is set in a
2897         window. Set the new cursor first and then destroy the old one.
2898         Thanks to jpe@archaeopteryx.com.
2899
2900         * gdk/win32/gdkcc-win32.c: Remove.
2901
2902         * gdk/win32/Makefile.am: Remove from here, too.
2903         
2904         * gdk/gdk.def
2905         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2906
2907         * gtk/gtk.def
2908         * gtk/makefile.mingw.in: Updates.
2909
2910 2001-02-08  Havoc Pennington  <hp@redhat.com>
2911
2912         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2913         add a widget to a bin that already has a child.
2914
2915         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2916
2917         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2918         
2919         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2920
2921         * gdk/gdk.h: remove gdkcc.h
2922
2923         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2924
2925         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2926         GdkPixbuf, since the previous implementation was GdkColorContext
2927         dependent.
2928
2929         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2930         
2931 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2932
2933         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2934         a sane value!
2935
2936 2001-02-08  Havoc Pennington  <hp@redhat.com>
2937
2938         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2939         lighten them.
2940
2941 2001-02-08  Havoc Pennington  <hp@redhat.com>
2942
2943         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2944         validation idle
2945
2946         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2947         cell renderer
2948
2949         * demos/pixbuf-demo.c (timeout): remove deprecated
2950         gtk_widget_draw
2951
2952         * demos/testpixbuf-save.c (main): remove deprecated
2953         gtk_drawing_area_size
2954
2955         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2956         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2957         at the start of the allocation.
2958         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2959         unsetup or NULL model.
2960
2961         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2962         even/odd/sorted cells in the tree view.
2963
2964         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2965         bugfixes
2966
2967         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2968         backgrounds with draw_flat_box using different detail for even/odd
2969         rows.
2970
2971         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2972         row, so we can draw the alternating colors thing
2973
2974         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2975         property from a synonym property, notify for the synonym.
2976         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2977         (gtk_text_tag_get_property): Always return the font, even if
2978         all its fields aren't set
2979
2980         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2981         store the attr list; it leaves us with no way to change attributes
2982         in _render according to the render flags, and no way to implement
2983         get_property. Instead store all the specific text attributes. 
2984         Separate whether an attribute is enabled from its value. Sync all
2985         properties with GtkTextTag, make them all consistent, etc.
2986
2987         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2988         renderers can highlight the sort row/column     
2989
2990         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2991         accessor functions to get values; this has the side effect of
2992         showing up which accessor functions were missing. Added those.
2993
2994         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2995         set_alignment, to be consistent with GtkLabel, GtkMisc
2996
2997         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2998         arrow.
2999
3000         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
3001
3002         * gtk/gtktreesortable.h: updates in here
3003
3004 2001-02-07  Sven Neumann  <sven@convergence.de>
3005
3006         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
3007         pango dimensions after painting the background. We used to draw
3008         gigantic flat boxes here.
3009
3010 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
3011
3012         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
3013         error introduced with earlier commit) (pointed out by
3014         Ollie Lho)
3015
3016 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
3017
3018         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
3019         which are no longer necessary.
3020
3021 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
3022
3023         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
3024
3025 2001-02-04  Tor Lillqvist  <tml@iki.fi>
3026
3027         * gdk/gdk.def
3028         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
3029         Provide dummy implementations.
3030
3031 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
3032
3033         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
3034
3035         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
3036         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
3037         deprecated this function.
3038
3039         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
3040         argument.
3041
3042 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
3043
3044         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
3045
3046 2001-02-03  Havoc Pennington  <hp@pobox.com>
3047
3048         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
3049         Mikael Hermansson with patch from Mikael (if there was a toggle
3050         start one after the first character in the range, this function
3051         was broken). Bug #50380
3052
3053 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
3054
3055         * configure.in: Remove confusing comment about X11.
3056
3057 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
3058
3059         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
3060         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
3061         
3062 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
3063
3064         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
3065         it breaks things on BSD. If you want to compile GTK+ with
3066         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
3067         when configuring, since GTK+ simply can't be "pure ANSI" 
3068         in the header files it uses. (#8170, Greg Hudson)
3069
3070 2001-02-02  Havoc Pennington  <hp@redhat.com>
3071
3072         * gtk/gtkwindow.c: docs
3073
3074         * gtk/gtkwidget.c: docs
3075         (gtk_widget_set_colormap): add a reference to the colormap
3076         (gtk_widget_get_default_colormap): add a reference to the colormap
3077
3078         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
3079
3080         * gtk/gtktextiter.c: docs
3081
3082         * gtk/gtkmain.c (gtk_propagate_event): docs
3083
3084         * gtk/gtkpaned.c (gtk_paned_get_position): docs
3085         (gtk_paned_set_position): docs
3086
3087         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
3088         sort interface, no implementation yet.
3089
3090         * demos/testpixbuf.c (new_testrgb_window): replace
3091         gtk_drawing_area_size() with gtk_widget_set_usize()
3092
3093         * demos/testpixbuf-drawable.c (main): ditto
3094         
3095         * gtk/testgtk.c: remove use of GtkStatusbarMsg
3096
3097         * gtk/gtktextbuffer.c: docs
3098
3099         * gtk/gtkstock.c: docs
3100
3101         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
3102
3103         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
3104
3105         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
3106         
3107         * gtk/gtkimage.c: add some docs in here
3108         (gtk_image_size_request): change name of
3109         gtk_widget_render_stock_icon
3110         (gtk_image_get_icon_set): don't dup returned string
3111         (gtk_image_get_icon_set): don't dup returned string
3112
3113         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
3114         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
3115         and gtkiconfactory.h functions
3116
3117         * gtk/gtkiconfactory.c: add some docs in here
3118
3119         * gtk/gtkmain.c (gtk_get_default_language): document
3120         (gtk_get_current_event): document
3121         (gtk_get_current_event_state): document
3122         (gtk_get_event_widget): document
3123
3124         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
3125
3126         * gtk/gtkcontainer.c: Add some documentation
3127         (gtk_container_add): give a more explanatory warning on adding an
3128         already-parented widget, this is kind of a FAQ and also a common
3129         typo that's easier to debug with a nice warning 
3130
3131         * gtk/gtkcellrenderertoggle.c
3132         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
3133         adding this, it's useless
3134         (gtk_cell_renderer_toggle_set_active): remove
3135         (gtk_cell_renderer_toggle_get_radio): add
3136
3137         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
3138         the NULL cell renderer, that doesn't make any sense to me. 
3139
3140         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
3141         demo code should never use deprecated features.
3142
3143         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
3144         code should never use deprecated features.
3145
3146         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
3147         gtk_widget_queue_clear_area deprecated
3148
3149         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
3150         deprecated
3151
3152         * gtk/gtklabel.h: mark gtk_label_get() deprecated
3153
3154         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
3155         a GdkImage deprecated, replaced by new consistently-named
3156         functions       
3157
3158         * gtk/gtkmain.h: Mark gtk_exit() deprecated
3159
3160         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
3161
3162         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
3163         deprecated
3164
3165         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
3166         so it won't appear in docs and confuse people.
3167
3168         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
3169
3170         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
3171         macros deprecated. (can't mark the type itself deprecated, since
3172         GtkProgressBar is not deprecated and we need the type decl to use
3173         GtkProgressBar)
3174
3175         * gtk/gtkpixmap.h: Mark deprecated
3176
3177         * gtk/gtkoldeditable.h: Mark deprecated
3178
3179         * gtk/gtklist.h: Mark deprecated
3180
3181         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
3182         for anything anymore.
3183
3184         * gtk/gtkctree.h: Mark deprecated
3185
3186         * gtk/gtkclist.h: Mark deprecated
3187
3188         * gtk/gtkpreview.h: Mark deprecated
3189
3190         * gtk/gtkpacker.h: Mark deprecated
3191
3192         * gtk/gtktipsquery.h: Mark deprecated
3193
3194         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
3195
3196         * gtk/gtkvruler.h: Add comment that it will move out of GTK
3197
3198         * gtk/gtkhruler.h: Add comment that it will move out of GTK
3199
3200         * gtk/gtkruler.h: Add comment that it will move out of GTK
3201
3202         * gtk/gtkgamma.h: Add comment that it will move out of GTK
3203
3204         * gtk/gtkcurve.h: Add comment that it will move out of GTK
3205
3206 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
3207
3208         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
3209         gdk_colormap_sync private since it was never exported
3210         in a header file.
3211
3212         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
3213         colormap->colors[] for StaticGray, StaticColor colormaps.
3214
3215         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
3216         was being used as if it was image->bits_per_pixel.
3217
3218         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
3219         for the image in the GdkImage structure since it isn't
3220         reconstructable, and we need it to handle packed types
3221
3222         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
3223         the assumption that on Win32 image->bits_per_pixel == image->depth,
3224         always.
3225
3226         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
3227
3228         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
3229         warning message if no converter can be found. 
3230
3231 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
3232
3233         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
3234         chars to isupper() / tolower(). (#567)
3235
3236         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
3237         to clear up 64-bit warnings. (#567)
3238
3239 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
3240
3241         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
3242         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
3243
3244         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
3245         since some people set $(libdir) separately. (#1290, David Kaelbling)
3246
3247 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
3248
3249         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
3250         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
3251         MAXPATHLEN, but the code here depends on a fixed value.)
3252         (#4524)
3253
3254 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
3255
3256         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
3257         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
3258
3259 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
3260
3261         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
3262         viewable there is no way that moving the node will cause the 
3263         focus row to become not viewable, so omit check on the visibility
3264         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
3265
3266 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
3267
3268         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
3269         selection before inserting new text.
3270
3271 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
3272
3273         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
3274         Make the sensitivity of the reparented child track that of
3275         the original parent menu item. (#34218, David Hodson)
3276
3277         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
3278         the case where the current item is destroyed properly.
3279
3280         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
3281         some edge cases with child-less menuitems.
3282         
3283 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
3284
3285         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
3286         key pop down window. (#12074, Jon K Hellan)
3287
3288 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
3289
3290         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
3291         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
3292         The solution here isn't perfect - you get an extraneous
3293         emission of "toggle", which could conceivably confuse an app,
3294         but better than the current situation. LXR search seems to
3295         indicate that no apps in GNOME CVS connect to "toggle".
3296
3297 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
3298
3299         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
3300         gtk_public_h_sources to directly here to avoid warning when
3301         building srcdir != builddir. (#9656)
3302
3303 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
3304
3305         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
3306         handlers in gtkrange.c return the proper values (TRUE == handled)
3307         (#10316).
3308
3309         This is just the tip of the iceberg, but gtkrange.c is the
3310         most common place where the propagation is problematical,
3311         and also a place where it is almost certainly safe to change
3312         this in the stable branch.
3313
3314         (You don't want right click popups on a range control or anything...)
3315
3316 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
3317
3318         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
3319         area on focus out, even if a background pixmap isn't set.
3320         (#13941)
3321         
3322 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
3323
3324         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
3325         to deal with setting the shape properly when scrolling arrows are
3326         turned on, but not visible because there is sufficient space.
3327         (#13432)
3328
3329 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
3330
3331         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
3332         items with submenus, destroy the item along with the submenu.
3333         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
3334         properly.
3335
3336         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
3337         later.
3338
3339 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
3340
3341         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
3342         the focus widget sometimes wasn't drawn with the default if there
3343         was no default widget.
3344
3345         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
3346         unreference pixmaps. 
3347
3348         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
3349         for some extra safety.
3350
3351 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
3352
3353         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
3354         the text of a cell to the old pointer value better, by
3355         copying the new text before freeing the old text. Some code
3356         cleanup. (#8079, Karl Nelson)
3357
3358 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
3359
3360         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
3361         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
3362
3363 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
3364
3365         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
3366         item from a menu, check to see if it matches 
3367         menu->old_active_menu_item, and if so, unref and clear
3368         old_active_menu_item (Patch from Pavel Cisler)
3369
3370         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
3371         menu_shell->active_menu_item, if it is the child being
3372         removed. (Patch based on that of Gene Ragan, #50337)
3373
3374 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
3375
3376         * gdk/linux-fb/gdkselection-fb.c: 
3377         * gdk/linux-fb/gdkcolor-fb.c: 
3378         * gdk/linux-fb/gdkdrawable-fb2.c: 
3379         * gdk/linux-fb/gdkfont-fb.c: 
3380         * gdk/linux-fb/gdkim-fb.c: 
3381         * gdk/linux-fb/gdkinput.c: 
3382         * gdk/linux-fb/gdkkeyboard-fb.c: 
3383         * gdk/linux-fb/gdkmain-fb.c: 
3384         * gdk/linux-fb/gdkrender-fb.c: 
3385         A bunch of whitespace cleanup.
3386         
3387 2001-01-30  Havoc Pennington  <hp@pobox.com>
3388
3389         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
3390         #ifdef GTK_ENABLE_BROKEN.
3391
3392         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
3393         GTK_ENABLE_BROKEN just before including the broken headers.
3394         
3395         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
3396         deprecated types registered.
3397
3398         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
3399         we have to test the broken stuff.
3400
3401         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
3402         
3403 2001-01-30  Havoc Pennington  <hp@redhat.com>
3404
3405         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
3406         here where prev pointer was set to the wrong thing
3407
3408         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
3409         (gtk_tree_path_is_descendant): new function
3410
3411         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
3412         cached length
3413         (gtk_list_store_get_iter): don't modify iter if we can't get the
3414         path.
3415
3416         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
3417         
3418         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
3419         GtkTreeDragDest
3420
3421         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
3422         was causing segfault
3423
3424         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
3425         pointer to NULL
3426
3427         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
3428
3429         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
3430         on returning FALSE
3431         (gtk_list_store_iter_children): ditto
3432         (gtk_list_store_iter_nth_child): ditto
3433         (gtk_list_store_iter_nth_child): ditto
3434         (gtk_list_store_iter_parent): ditto
3435
3436         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
3437         on iter->user_data != NULL instead of silently accepting it.
3438         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
3439         we are returning TRUE.
3440         (gtk_tree_store_iter_children): ditto
3441         (gtk_tree_store_iter_nth_child): ditto
3442         (gtk_tree_store_iter_parent): ditto
3443         (gtk_tree_store_insert): remove handling of parent->user_data ==
3444         NULL, replace with parent == NULL       
3445
3446         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
3447         and a comment explaining things
3448
3449         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3450         interface support to GtkTreeStore.
3451
3452         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3453         FALSE if no prev, fix
3454
3455         * gtk/gtktreeview.c (set_source_row): use a row reference
3456         (set_dest_row): use a row reference
3457
3458 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3459
3460         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3461         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3462         (gtk_tree_selection_select_iter): The same as above.
3463
3464 2001-01-26  Havoc Pennington  <hp@redhat.com>
3465
3466         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3467         which holds a handle to a specific row (particular set of values
3468         in the model, i.e. pointer-identity row).
3469
3470         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3471         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3472         Still need to use it for the src/dest row saved on the drag context.
3473
3474 2001-01-26  Havoc Pennington  <hp@redhat.com>
3475
3476         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3477
3478         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3479         not offset by TREE_VIEW_HEADER_HEIGHT
3480         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3481         TREE_VIEW_HEADER_HEIGHT
3482
3483         * configure.in (included_loaders): for me, --with-included-loaders
3484         generates the error "the specified loader yes does not exist",
3485         i.e. the arg defaults to "yes", so change test for value ""
3486         to test for value "yes", and include all loaders in that case.
3487
3488         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3489
3490         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3491         handle TREE_VIEW_VERTICAL_SEPARATOR
3492         (gtk_tree_view_bin_expose): fix to consider the row offset as
3493         pointing halfway into vertical separator.       
3494         (gtk_tree_view_draw_node_focus_rect): ditto
3495
3496         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3497         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3498         (TRUE) to be called.
3499
3500         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3501         debug mode where the invalid region is colored in on invalidate,
3502         so you can see the flicker and know whether your redraw code is 
3503         doing a good job.
3504
3505         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3506         tree window coordinates (clip rect is in tree window coords)
3507
3508         * gtk/Makefile.am: add gtktreednd.[hc]
3509
3510         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3511
3512         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3513         drag-and-drop data operations on a model (so we can set up tree
3514         drag-and-drop automatically)
3515
3516         * gtk/testgtk.c: Add a window to change sensitivity in the
3517         GtkLabel test; add a way to change the entry frame in GtkEntry
3518         test
3519
3520         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3521         (gtk_entry_get_has_frame): new functions to remove the frame
3522         around an entry
3523         (gtk_entry_size_request): shrink requisition if no frame
3524         (gtk_entry_draw_focus): don't draw frame if no frame
3525
3526         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3527         checks inside a cell renderer
3528         (gtk_default_draw_option): ditto for options
3529
3530         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3531         children from the alignment, not the button
3532         (gtk_tree_view_column_init): ref/sink the column, to emulate
3533         GObject refcounting.
3534
3535         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3536         
3537         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3538         Use theme functions to draw the toggles 
3539
3540         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3541
3542         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3543         GdkPangoAttrEmbossed to use in rendering insensitive text
3544
3545         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3546
3547         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3548         using new GDK features
3549         
3550 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3551
3552         * gtk/gtkimage.c:
3553         Splitted gtk_image_clear into gtk_image_clear() and
3554         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3555         to avoid leaks.
3556
3557         * gtk/gtklabel.c (set_markup):
3558         Don't leak text.
3559
3560         * gtk/gtktextlayout.c:
3561         Always free display->shaped_objects.
3562
3563         * gtk/testgtk.c (create_clist):
3564         Don't leak custom style.
3565
3566 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3567
3568         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3569         Don't leak image. Simplify using gdk_colormap_query_color().
3570         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3571
3572         * linux-fb/gdkcolor-fb.c:
3573         Implemented gdk_colormap_query_color.
3574
3575 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3576
3577         * linux-fb/gdkcursor-fb.c:
3578         Don't leak built-in cursors.
3579
3580         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3581         Don't leak tmp_points.
3582
3583         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3584         Don't modify desc. Don't leak font if the PangoFont
3585         isn't found.
3586         
3587         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3588         Free dash_list.
3589
3590         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3591         Don't leak string.
3592         
3593 2001-01-20  Havoc Pennington  <hp@pobox.com>
3594
3595         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3596         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3597         me, matches Pango
3598
3599 2001-01-22  Havoc Pennington  <hp@redhat.com>
3600
3601         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3602
3603         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3604
3605         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3606         Remove, move back to gdk-pixbuf
3607
3608         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3609         to all the word functions
3610
3611         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3612         before doing anything on NULL layout or if we don't have the focus
3613
3614         * gtk/testtext.c (fill_example_buffer): "justification"
3615
3616         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3617         to be called "justification" not "justify"
3618
3619         * demos/gtk-demo/textview.c (create_tags): "justification"
3620         
3621         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3622
3623 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3624
3625         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3626         Don't leak visible_region. Use visible_region instead of region.
3627         
3628         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3629         Don't do extra gdk_drawable_ref(). This is not X.
3630         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3631         gdk_fb_focused_window is ref:ed.
3632         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3633         windows.
3634
3635 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3636
3637         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3638         Don't leak the PangoFontDescriptor.
3639
3640 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3641
3642         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3643         when not realized.
3644         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3645         (gtk_tree_view_realize): add scroll_to support
3646         (gtk_tree_view_finalize): add a finalize method.  Populate.
3647         (gtk_tree_view_insert_column): ref and sink the column.
3648         (gtk_tree_view_append_column): ref and sink the column.
3649         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3650         individual nodes.  Should make the code much more efficient, if
3651         actually used.
3652
3653 2001-01-19  Havoc Pennington  <hp@redhat.com>
3654
3655         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3656         byte_offset variable was being used to mean both "offset into
3657         layout" and "offset into buffer line" which was no longer true
3658         with addition of preedit string; fix
3659
3660 2001-01-19  Havoc Pennington  <hp@redhat.com>
3661
3662         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3663
3664         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3665         function
3666
3667         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3668         implement
3669
3670         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3671         scroll_to_cell, matches TextView scroll functions better
3672         (gtk_tree_view_tree_to_widget_coords): new function
3673         (gtk_tree_view_widget_to_tree_coords): new function
3674         (gtk_tree_view_get_visible_rect): new function
3675         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3676         (gtk_tree_view_draw_node_focus_rect): new function moved from
3677         draw_focus, also, use width of bin_window as width of the focus
3678         rect
3679         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3680         already-expanded rows
3681         (gtk_tree_view_get_cell_rect): new function
3682         (gtk_tree_view_get_path_at_pos): return the click position
3683         relative to the passed-in cell
3684         (gtk_tree_view_set_expander_column): new function
3685
3686         * configure.in: remove gtk-config-2.0 chmod
3687
3688         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3689         and properly handle drags with targets we don't understand
3690         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3691         scrolling anyway
3692         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3693         mark invisible
3694
3695         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3696         function
3697         (gtk_drag_dest_get_target_list): new function
3698         (gtk_drag_dest_set_target_list): new function
3699         
3700         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3701
3702         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3703         related to drag-and-drop
3704
3705 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3706
3707         * gdk/linux-fb/gdkprivate-fb.h:
3708         Define EMULATE_GDKFONT.
3709         Add extra pango_font stuff to GfkFontPrivate.
3710         
3711         * gdk/linux-fb/gdkdrawable-fb2.c:
3712         * gdk/linux-fb/gdkfont-fb.c:
3713         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3714         emulation using PangoFont.
3715
3716 2001-01-17  Havoc Pennington  <hp@pobox.com>
3717
3718         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3719         all the non-deprecated set_foo functions. Added missing object
3720         properties, and added g_object_notify() to setters. 
3721         Wrote docs.
3722         
3723 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3724
3725         * gtk/gtkmain.c
3726         * gtk/gtkrc.c: (Win32) Use the new
3727         g_win32_get_package_installation_(sub)directory() functions.
3728
3729         * config.h.win32.in: New file.
3730         
3731         * config.h.win32: Removed.
3732
3733         * configure.in: Output config.h.win32.
3734
3735         * Makefile.am: Add it to EXTRA_DIST.
3736
3737         * gtk/gtk.def: Update.
3738
3739 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3740
3741         * gtk/gtklabel.c (gtk_label_size_request): Set the
3742         attributes onto the PangoLayout even if they are newly
3743         created from label->pattern.
3744
3745 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3746
3747         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3748
3749         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3750         structures in functions. Fixes bug where gtk_dataset_*
3751         was accidentally still being used in one place, causing
3752         every dest side event to be treated independently.
3753
3754         * gtk/gtkdnd.c: Remove last vestages of handling
3755         ::draw (fixes warning)
3756         
3757         * gtk/gtkentry.[ch]: Add drag and drop support.
3758
3759         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3760         new function gtk_check_drag_threshhold() for checking
3761         to check if (dx,dy) has exceeded the threshhold for starting
3762         a drag and use it everywhere.
3763
3764 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3765
3766         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3767         add -I{includedir}/gtk-2.0.
3768
3769         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3770         gdk/gdk-pixbuf.h: Doc fixups.
3771         
3772         * gtk/gtkobject.h: Remove trailing , from enum
3773
3774 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3775
3776         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3777         Doh! Mixed up x and y.
3778
3779         * gdk/linux-fb/gdkglobals-fb.c:
3780         Removed gdk_fb_pointer_grab_window_events,
3781         added _gdk_fb_pointer_grab_owner_events and
3782         _gdk_fb_keyboard_grab_owner_events.
3783
3784         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3785         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3786         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3787         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3788         Send crossing events after ungrab finished.
3789         (gdk_keyboard_grab): Set ..._owner_events
3790         (type_masks): Move out of function.
3791         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3792         gdk_fb_keyboard_event_window): New functions, return the
3793         window an event should be targeted at. Handles grabs and
3794         event propagation. Can return NULL.
3795         (gdk_event_make): Remove event_mask checking. Now always
3796         returns an event.
3797                 
3798         * gdk/linux-fb/gdkkeyboard-fb.c:
3799         * gdk/linux-fb/gdkproperty-fb.c:
3800         * gdk/linux-fb/gdkselection-fb.c:
3801         Use new event_window/gdk_event_make() behaviour.
3802         
3803         * gdk/linux-fb/gdkmouse-fb.c:
3804         Use new event_window/gdk_event_make() behaviour.
3805         Only send motion events if in the same window.
3806         If grabbed, use cursor from window if sibling of grabbed
3807         window, and cursor from grabbed window otherwise.
3808
3809         * gdk/linux-fb/gdkprivate-fb.h:
3810         Update gdk_fb_window_send_crossing_events, gdk_event_make
3811         and grab varaible declarations. Add gdk_fb_*_event_window().
3812
3813         * gdk/linux-fb/gdkwindow-fb.c:
3814         Use new event_window/gdk_event_make() behaviour.
3815         Keep correct track of focus window.
3816         (gdk_window_set_events): Set all specific button motion masks
3817         if GDK_BUTTON_MOTION_MASK set.
3818
3819         * gtk/gtkdnd.c (gtk_drag_update):
3820         Free info->last_event if gdk_drag_motion returned FALSE.
3821
3822 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3823
3824         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3825         Eliminate redraws when input-only windows are shown or
3826         hidden. Thanks to jpe@archaeopteryx.com.
3827
3828 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3829
3830         * docs/faq/gtk-faq.sgml: FAQ update:
3831           - Update to bugzilla
3832           - Add GTK+ and security/SUID/SGID
3833           - Add DnD question
3834
3835 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3836
3837         * gdk/linux-fb/gdkdnd-fb.c:
3838         Some cleanups.
3839         
3840 2001-01-15  Havoc Pennington  <hp@pobox.com>
3841
3842         * tests/testtreeview.c: add test stuff for CellRendererToggle
3843
3844         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3845         accessor
3846
3847         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3848         only toggle on button press (would do release like GtkButton, but
3849         we'd need implicit grab code for treeview cells)
3850
3851 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3852
3853         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3854
3855         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3856         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3857
3858         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3859         to g_{locale,filename}_{to,from}_utf8 to match current API.
3860
3861         * gtk/makefile.msc.in (gtk_OBJECTS)
3862         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3863
3864         * gtk/gtk.def: Update.
3865
3866 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3867
3868         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3869         implementaion that more closely mimics the events that an X server
3870         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3871         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3872         with nested preview widgets, for instance, more responsive when
3873         you move the mouse quickly into them.
3874         (find_window_for_pointer_event): Make it actually compile.
3875         (gdk_event_translate): Set send_event to the value of
3876         InSendMessage (). This doesn't really mean the same as X11's
3877         send_event flag, but is close enough, says jpe@archaeopteryx.com
3878
3879 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3880
3881         * gdk/linux-fb/gdkdnd-fb.c:
3882         Implemented drag and drop.
3883         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3884         when it tries to free and then copy the same event (info->last_event).
3885         I am not sure about why this happens, but will continue looking.
3886
3887 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3888
3889         * gdk/linux-fb/gdkwindow-fb.c:
3890         Use gdk_window_invalidate_rect instead of
3891         gdk_window_invalidate_rect_clear to minimise flashing.
3892         When hiding windows you need to clear the root window though.
3893
3894 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3895
3896         * gdk/linux-fb/gdkdrawable-fb2.c:
3897         For optization, add an full_shapes argument to gdk_fb_clip_region.
3898         If this is false, only the cliprects of the shapes are used.
3899
3900         * gdk/linux-fb/gdkprivate-fb.h:
3901         Export gdk_fb_window_peek_shape.
3902         Add full_shapes to gdk_fb_clip_region.
3903
3904         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3905         When moving a window, don't clear everything under the it, just the
3906         root window. Makes stuff faster and flash less.
3907         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3908         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3909         offset of the shape.
3910         
3911
3912 2001-01-12  Havoc Pennington  <hp@redhat.com>
3913
3914         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3915         current invalid region, fixes redraw bug while scrolling the 
3916         text widget
3917
3918         * gtk/gtktextview.c, gtk/gtktextview.h:
3919         Rearrange the scrolling/validation/etc. code in a major way, 
3920         so it seems to make sense to me. Probably isn't genuinely that
3921         much better, but...
3922
3923         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3924         notifies
3925
3926         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3927
3928 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3929
3930         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3931         Hide mouse pointer while rotation. Show it afterwards.
3932
3933 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3934
3935         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3936         windows in consideration when generating clip region.
3937
3938         * gdk/linux-fb/gdkfb.h:
3939         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3940
3941         * gdk/linux-fb/gdkprivate-fb.h:
3942         Add shape to GdkWindowFBDatat.
3943         exported gdk_fb_window_get_abs_shape().
3944         removed gdk_fb_draw_lines declaration.
3945
3946         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3947         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3948         send focus changes when there is a grabbed window.
3949         (gdk_window_get_pointer): Handle shaped windows.
3950         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3951         (gdk_fb_window_peek_shape): Returns the shape for a window,
3952         handles GDK_FB_USE_CHILD_SHAPE.
3953         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3954         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3955         (gdk_window_shape_combine_mask): Implement.
3956
3957         * gtk/gtkwindow-decorate.c:
3958         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3959         setting the shape of a window makes the window transparent.
3960
3961 2001-01-11  Havoc Pennington  <hp@redhat.com>
3962
3963         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3964
3965 2001-01-10  Havoc Pennington  <hp@redhat.com>
3966
3967         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3968         add this function, bug 40251
3969
3970         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3971         of type macro   
3972
3973 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3974
3975         * acconfig.h:
3976         Added ENABLE_SHADOW_FB
3977
3978         * configure.in:
3979         Added --disable-shadowfb
3980
3981         * gdk/linux-fb/gdkcursor-fb.c:
3982         Update shadowfb when updating cursor
3983
3984         * gdk/linux-fb/gdkdrawable-fb2.c:
3985         Added wrappers for shadowfb that calls  the normal drawable
3986         methods, but calls gdk_shadow_fb_update(bounding box) when
3987         GdkWindows are drawed to.
3988         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3989         which also returns the bounding box.
3990
3991         * gdk/linux-fb/gdkfb.h:
3992         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3993
3994         * gdk/linux-fb/gdkgeometry-fb.c:
3995         Update shadowfb when scrolling window.
3996
3997         * gdk/linux-fb/gdkglobals-fb.c:
3998         Add _gdk_fb_screen_angle.
3999         
4000         * gdk/linux-fb/gdkkeyboard-fb.c:
4001         Test code for screen rotation. Shift-F2 in the xlate driver
4002         rotates the screen.
4003
4004         * gdk/linux-fb/gdkmain-fb.c:
4005         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
4006
4007         * gdk/linux-fb/gdkmouse-fb.c:
4008         Use fb_width/height instead of modeinfo.xres/yres.
4009
4010         * gdk/linux-fb/gdkprivate-fb.h:
4011         Added fb_men, fb_width, fb_height & fb_stride. When using
4012         shadow fb these can differ from the framebuffer stuff.
4013         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
4014         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
4015         _gdk_fb_screen_angle. Removed CM, RP.
4016
4017         * gdk/linux-fb/gdkrender-fb.c:
4018         Added code for shadowfb handling and screen rotation using
4019         shadowfb.
4020
4021         * gdk/linux-fb/gdkwindow-fb.c:
4022         Use fb_mem, fb_stride, fb_width, fb_height.
4023         Added recompute_rowstride to reset the rowstride of all windows.
4024         Added gdk_fb_recompute_all() which recomputes rootwindow size,
4025         window abs positions and window rowstrides. Usefull when the
4026         rotation has changed.
4027
4028 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
4029
4030         * docs/faq/gtk-faq.sgml: update to make web site updating easier
4031
4032 2001-01-10  Havoc Pennington  <hp@redhat.com>
4033
4034         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
4035         where sibling == iter
4036         (gtk_tree_store_insert_after): handle sibling == iter
4037         (gtk_tree_store_prepend): remove stamp checks
4038         (gtk_tree_store_insert_before): ditto
4039         (gtk_tree_store_append): ditto
4040         (gtk_tree_store_get_path): ditto
4041         (gtk_tree_store_get_value): ditto
4042         (gtk_tree_store_iter_has_child): ditto
4043         (gtk_tree_store_iter_n_children): ditto
4044         (gtk_tree_store_iter_nth_child): ditto
4045         (gtk_tree_store_insert_after): ditto
4046         (gtk_tree_store_is_ancestor): ditto
4047         (gtk_tree_store_iter_depth): ditto
4048         (gtk_tree_store_insert_before): assert that sibling's parent is
4049         the same as the passed-in parent
4050         (gtk_tree_store_insert_after): assert that sibling's parent is
4051         the same as the passed-in parent
4052
4053         
4054         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
4055         function to get the first iterator in a model
4056         
4057         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
4058         conventionally the "root" in this sense is just NULL afaict.
4059
4060         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
4061         where sibling == iter
4062         (gtk_list_store_insert_after): handle case where sibling == iter
4063
4064         * tests/testtreeview.c (run_automated_tests): fairly lame basic
4065         automated tests for ListStore, TreeStore
4066
4067         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
4068         (gtk_list_store_insert): update tail pointer, and fix it to work
4069         (gtk_list_store_insert_before): update tail pointer, and fix it to work
4070         (gtk_list_store_append): use tail to be faster
4071         (gtk_list_store_prepend): fix it, update tail pointer
4072         (gtk_list_store_insert_after): fix it, update tail pointer
4073
4074         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
4075         the list
4076
4077 2001-01-09  Havoc Pennington  <hp@redhat.com>
4078
4079         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
4080         is NULL due to a pending resize
4081
4082         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
4083         column width to values less than 1
4084
4085         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
4086         width to be between min/max width, and still set the width 
4087         even if autosize is turned on, so the tree view can use this 
4088         function in order to autosize.
4089         (gtk_tree_view_column_init): set initial width to 1 not 0
4090
4091         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
4092         setter function to modify column width, so we get notification
4093         (gtk_tree_view_insert_iter_height): ditto
4094         (gtk_tree_view_calc_size): ditto
4095         (gtk_tree_view_check_dirty): ditto
4096
4097         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
4098         properties to change all the interesting attributes of the tree
4099         view column.
4100         (gtk_tree_view_column_set_header_clickable): rename set_clickable
4101         (gtk_tree_view_column_get_clickable): add
4102         (gtk_tree_view_column_set_cell_renderer): don't unset the current
4103         attributes; assume a cell renderer with equivalent object
4104         properties has been swapped in. Do g_object_notify().
4105         (gtk_tree_view_column_set_visible): g_object_notify
4106         (gtk_tree_view_column_get_sizing): rename from get_col_type
4107         (gtk_tree_view_column_set_sizing): g_object_notify
4108         (gtk_tree_view_column_set_width): add g_object_notify
4109         (gtk_tree_view_column_set_min_width): ditto
4110         (gtk_tree_view_column_set_max_width): ditto
4111         (gtk_tree_view_column_set_title): ditto
4112         (gtk_tree_view_column_set_clickable): ditto
4113         (gtk_tree_view_column_set_widget): ditto
4114         (gtk_tree_view_column_set_justification): ditto
4115
4116 2001-01-09  Havoc Pennington  <hp@redhat.com>
4117
4118         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
4119         there are no rows in the model
4120
4121         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
4122         NULL, then return the start of the list
4123
4124         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
4125         if we can't get any rows from an empty model 
4126
4127         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
4128         extraneous * after function pointer typedef usage
4129
4130         * Makefile.am: don't specify full path to cp and rm
4131
4132         * gtk/gtkcellrenderertextpixbuf.c
4133         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
4134         NULL before dereferencing, fixes a segfault that happened from
4135         time to time
4136
4137         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4138         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
4139         and reindent the function
4140         (gtk_cell_renderer_pixbuf_get_size): indentation
4141
4142         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
4143         we quit it
4144         (gtk_dialog_add_buttons_valist): add g_return_if_fail
4145         (gtk_dialog_set_default_response): New function, to set default
4146         button
4147         (gtk_dialog_set_response_sensitive): New function, to set 
4148         sensitivity of buttons
4149
4150         * gtk/gtkcellrendererpixbuf.c
4151         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
4152         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
4153
4154         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4155         handle any G_TYPE_OBJECT subclass, not just the base class, and 
4156         also boxed types.
4157         (_gtk_tree_data_list_value_to_node): ditto
4158
4159         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
4160         --gtk-debug=tree
4161
4162         * gtk/gtkmain.c: add GTK_DEBUG_TREE
4163
4164         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
4165
4166 2001-01-09  Tor Lillqvist  <tml@iki.fi>
4167
4168         * gdk/win32/gdkevents-win32.c: Implement better mouse
4169         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
4170         (find_window_for_pointer_event): New function.
4171         (gdk_event_translate): Use it when handling mouse events.
4172
4173 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
4174
4175         * configure.in:
4176         Added --with-included-loaders option
4177
4178         * gdk-pixbuf/Makefile.am:
4179         * gdk-pixbuf/gdk-pixbuf-io.c:
4180         Add support for including selected gdk-pixbuf loaders only.
4181
4182         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
4183         gtk_window_set_has_frame):
4184         Added inline documentation.
4185
4186         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
4187         * docs/reference/gdk/tmpl/windows.sgml:
4188         Added inline documentation.
4189
4190 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
4191
4192         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
4193         realizing buttons that have already been realized.
4194
4195 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
4196
4197         * tests/testtreeview.c (main): Show menu items before adding to
4198         option menu.
4199
4200         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
4201         around if we kill them.
4202
4203         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
4204         Return if we pass in a NULL model.
4205
4206 2001-01-08  Havoc Pennington  <hp@redhat.com>
4207
4208         * tests/testtreeview.c: hack on this some
4209
4210         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
4211         gtk_tree_store_set_valist, v is for arrays, valist for varargs
4212         list
4213         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
4214
4215         * gtk/gtkliststore.h: Add varargs set() and get() convenience
4216         functions
4217
4218 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4219
4220         * gtk/gtkwindow-decorate.[hc]:
4221         * gtk/Makefile.am:
4222         New files. Contains an implementation of a minimal WM for
4223         linux-fb.
4224
4225         * gtk/gtkwindow.h:
4226         Add the possibility for GtkWindows to specify a frame. This
4227         is used for the window decoration code, but could concievably
4228         be used for X programs too (xmms style windows).
4229         GtkWindow->frame is the toplevel window if the window is framed.
4230         The signal frame_event gets all events that are targeted to
4231         GtkWindow->frame.
4232         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
4233         
4234         * gtk/gtkwindow.c:
4235         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
4236         Call out to gtkwindow-decorate.c for WM support in linx-fb.
4237
4238 2001-01-08  Alexander Larsson  <alexl@redhat.com>
4239
4240         * docs/README.linux-fb:
4241         Correct filename ~/.pangoft2_aliases
4242
4243         * gdk/gdkwindow.h:
4244         Added new function gdk_window_get_decorations.
4245
4246         * gdk/linux-fb/gdkfb.h:
4247         Removed _gdk_window_get_decorations declaration.
4248         Renamed _gdk_window_set_child_handler to
4249         gdk_fb_window_set_child_handler.
4250
4251         * gdk/linux-fb/gdkwindow-fb.c:
4252         Renamed _gdk_window_set_child_handler to
4253         gdk_fb_window_set_child_handler.
4254
4255         * gdk/x11/gdkwindow-x11.c:
4256         New function gdk_window_get_mwm_hints().
4257         Implemented gdk_window_get_decorations.
4258
4259         * docs/reference/gdk/tmpl/windows.sgml:
4260         * docs/reference/gdk/gdk-sections.txt:
4261         Added gdk_window_get_decorations docs.
4262         
4263 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
4264
4265         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
4266         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
4267         gdk_fb_window_send_crossing_events):
4268         Possibly send focus events when the mouse moves from one
4269         window to another.
4270
4271 2001-01-07  Tor Lillqvist  <tml@iki.fi>
4272
4273         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
4274         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
4275         to match current API.
4276
4277         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
4278         environment variable is set, don't call g_error when on a
4279         palettized (PseudoColor) display. Some people want to use GTK+ 
4280         in 256-colour mode even though works only partially.
4281
4282         * gdk/gdk.def
4283         * gtk/gtk.def
4284         * gtk/makefile.mingw.in: Update.
4285
4286 2001-01-05  Havoc Pennington  <hp@redhat.com>
4287
4288         * tests/testtreeview.c: hack on this a bit
4289
4290         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
4291         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
4292
4293         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
4294         was spelled incorrectly
4295         (GTK_IS_TREE_MODEL_SIMPLE): ditto
4296
4297         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
4298         from gtk_tree_view_set_headers_active   
4299
4300         * gtk/gtktexttag.c:
4301         (gtk_text_tag_get_property): handle PROP_DIRECTION
4302         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
4303         properties, bug 40235
4304
4305         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
4306         forward_to_line_end
4307
4308 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
4309
4310         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
4311         modules/input/gtkimcontextxim.c: Adapt to new prototypes
4312         for unicode,locale,filename conversion functions.
4313
4314 2001-01-05  Havoc Pennington  <hp@redhat.com>
4315
4316         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
4317         broken if called on the first position in the buffer.
4318
4319         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
4320         forward_to_delimiters to be called only if we aren't already at
4321         the delimiters.
4322
4323 2001-01-05  Havoc Pennington  <hp@redhat.com>
4324
4325         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
4326
4327 2001-01-05  Alexander Larsson  <alexl@redhat.com>
4328
4329         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
4330         colormap in here. Sync from X port.
4331         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
4332         Sync from X port.
4333         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
4334         This happens now and then, and i don't think it is a bug.
4335         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
4336         != endpoint.
4337         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
4338         GDK_LINE_SOLID.
4339
4340         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
4341         some of the fields filled in at least.
4342
4343         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
4344         miLineArcD is no more, remove it from the function definition.
4345
4346 2001-01-04  Havoc Pennington  <hp@redhat.com>
4347
4348         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
4349         this
4350
4351         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
4352         user_data instead of tree_node
4353
4354         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
4355         TREE_VIEW_COLUMN_SIZE
4356
4357         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
4358         "size" field to "width" finishes bug 40061
4359
4360         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
4361         for bitfields, bug 40268
4362
4363 2001-01-04  Havoc Pennington  <hp@redhat.com>
4364
4365         Rename some stuff:
4366         
4367         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
4368
4369         s/GtkModelSimple/GtkTreeModelSimple/g;
4370         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
4371         s/gtk_model_simple/gtk_tree_model_simple/g;
4372         s/gtkmodelsimple/gtktreemodelsimple/g;
4373
4374         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
4375
4376         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
4377         s/column_set_col_type/column_set_sizing/g;
4378
4379         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
4380         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
4381
4382         s/GtkCellRendererType/GtkCellRendererState/g;
4383         
4384         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
4385         (gtk_cell_renderer_toggle_class_init): change "state" property to
4386         "active", to match GtkToggleButton
4387         (gtk_cell_renderer_toggle_get_active): new function, bug
4388         40269
4389         (gtk_cell_renderer_toggle_set_active): new function
4390         (gtk_cell_renderer_toggle_set_property): route changes to toggle
4391         state through gtk_cell_renderer_set_active
4392
4393 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
4394
4395         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
4396         temporarily until they work again.  Brought up to date with
4397         changes in the model.
4398         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
4399         model.
4400
4401 2001-01-04  Havoc Pennington  <hp@redhat.com>
4402
4403         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
4404         equal to the line length, then position iterator before paragraph 
4405         separators. Fixes crash reported by Mikael Hermansson when
4406         pressing left arrow from the start of a line.   
4407
4408         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
4409         about byte indexes off the end
4410         (iter_set_from_char_offset): add g_error about char offsets
4411         off the end
4412
4413 2001-01-03  Havoc Pennington  <hp@redhat.com>
4414
4415         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
4416
4417         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
4418         of private functions; remove inclusion of private headers.
4419
4420         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
4421         function, so we don't need private functions in gtktextdisplay.c
4422
4423         * gtk/gtktextiterprivate.h: underscore-ification
4424
4425         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
4426         to instead say "only useful to implement widgets"
4427
4428         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
4429         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
4430         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
4431
4432         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
4433         This function was completely broken
4434
4435         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
4436
4437         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
4438
4439         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
4440
4441         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
4442
4443         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
4444
4445         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
4446
4447         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
4448         gtk_paint_layout
4449
4450         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4451         gtk_paint_layout
4452
4453         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4454         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4455         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4456         which were not implemented.     
4457
4458         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4459         insert_pixbuf signal. Rename delete_text to delete_range since it
4460         also deletes pixbufs and child anchors. This almost closes bug
4461         40245 (still need to deal with child anchors)
4462
4463         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4464         insert_pixbuf, change signal names as appropriate, change types of
4465         signals taking marks/tags to have the specific type, not just
4466         G_TYPE_OBJECT
4467         
4468         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4469         closes bug 40051
4470
4471         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4472         unnecessary remove_contents() call
4473         (gtk_option_menu_class_init): add a "changed" signal, closes
4474         bug 40039
4475         (gtk_option_menu_update_contents): emit "changed" if the 
4476         active menu item changes
4477
4478         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4479         cast to GtkObject, reported by Jonas Borgstrom
4480         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4481         we can't do stuff with side effects in finalize. Instead, spew a
4482         warning if the loader isn't closed.
4483
4484         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4485         colormap in here, non-X ports probably need to sync to this change
4486
4487         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4488         assertion that colormap != NULL, you can set the colormap to NULL
4489         if you like.
4490         
4491         * Makefile.am: remove gtk-config-2.0
4492
4493         * configure.in: Use pkg-config to locate GLib. Remove
4494         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4495         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4496         Use pkg-config to locate Pango. Output correct Pango libs to
4497         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4498
4499         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4500         files
4501         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4502         X11 pc files
4503
4504         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4505         unref from here
4506
4507 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4508
4509         * configure.in:
4510         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4511
4512 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4513
4514         * gtk/gtktextlayout.c
4515         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4516         variable when moving back onto a single line.
4517
4518 2001-01-01  Havoc Pennington  <hp@redhat.com>
4519
4520         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4521
4522         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4523
4524         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4525         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4526
4527 2001-01-01  Havoc Pennington  <hp@redhat.com>
4528
4529         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4530
4531         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4532         GtkTextAttributes
4533
4534         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4535         #40246
4536         (gtk_text_attributes_copy_values): rename from 
4537         gtk_text_attributes_copy
4538         (gtk_text_attributes_copy): a more standard GTK copy function, 
4539         which returns a new object
4540
4541 2001-01-01  Havoc Pennington  <hp@redhat.com>
4542
4543         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4544         
4545         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4546         don't fill in tree_view->priv->selection, kind of an unexpected
4547         side effect
4548
4549         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4550         gtkintl.h
4551         
4552         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4553         gtkintl.h
4554         (gtk_cell_renderer_get_property): remove calls to g_value_init
4555
4556         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4557         gtkintl.h
4558
4559         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4560         and include gtkintl.h
4561         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4562         property names
4563
4564         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4565         GtkTreeSelection
4566         (_gtk_tree_selection_new_from_with_view): rename, return
4567         GtkTreeSelection
4568         (_gtk_tree_selection_set_tree_view): rename with uscore
4569         (gtk_tree_selection_get_selected): fill in the "model" out param
4570         first, so it gets filled in even if we return at the top of the 
4571         function
4572         (gtk_tree_selection_real_select_all): add a comment and an else{}
4573         to clarify this a bit
4574         (gtk_tree_selection_real_unselect_all): add the same else{}
4575
4576         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4577         set_tree_view to have underscore prefixes, move them to the
4578         private header, fix return type of new_with_tree_view
4579         (struct _GtkTreeSelection): mark struct
4580         fields private  
4581
4582         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4583         GtkTreeModelFlags, not a guint
4584         (gtk_tree_path_prev): return gboolean not gint
4585         (gtk_tree_path_up): return gboolean not gint
4586
4587         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4588         return GtkTreeModelFlags, not a guint
4589
4590         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4591         that child model is non-null before unrefing it
4592         (g_value_int_compare_func): make this a qsort compare func, not 
4593         a boolean predicate
4594
4595         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4596         (add -umn to the end), and mark it unimplemented
4597         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4598         I don't see what it's for - doesn't the model always sort itself?
4599         (gtk_tree_model_sort_set_compare): this had the wrong signature
4600
4601         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4602         Fix the docs to say that it destructively replaces existing
4603         attributes (previously said that it added attributes).
4604         (gtk_tree_view_column_set_visible): canonicalize bool before
4605         equality testing. Also, check for realization before
4606         hiding/showing the tree_column->window; if this window could exist
4607         before realization, then it's busted and needs fixing, we can't 
4608         create GDK resources pre-realization. Also, remove
4609         superfluous queue_resize(), since set_size() does that for us.
4610         (gtk_tree_view_column_set_col_type): check realization before 
4611         using tree_column->window
4612
4613         * gtk/gtktreedatalist.c: fix filename in copyright notice
4614
4615 2000-12-31  Havoc Pennington  <hp@pobox.com>
4616
4617         * gtk/gtktextview.c: Rearrange all the
4618         scroll-while-dragging-or-selecting code to be different, not
4619         necessarily better. ;-)
4620         (gtk_text_view_scroll_to_mark): Change this
4621         function to take within_margin as a fraction instead of a pixel
4622         value, and to take alignment arguments (indicating where to align 
4623         the mark inside the visible area)
4624         
4625         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4626         to GtkObject
4627
4628         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4629         behavior so that offsets past the end of the line are not 
4630         allowed, and an offset equal to the line length moves the iterator
4631         to the next line
4632         (gtk_text_iter_set_line_index): make parallel change
4633         (gtk_text_iter_get_bytes_in_line): add this function
4634         
4635         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4636         of byte indexes off the end of the line; byte index at the end of
4637         the line now returns FALSE and doesn't fill in the requested
4638         values, byte index past the end of the line is an error.  Also,
4639         don't allow -1 offset anymore, since its meaning is unclear.
4640
4641         This change exposes some bug in visual cursor motion, where we
4642         end up with a huge invalid byte index; needs fixing. Symptom of 
4643         bug is a crash when you hit up arrow.
4644         
4645         (_gtk_text_line_char_locate): match the change to byte_locate
4646
4647         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4648         from start of line properly. fixes bug reported by Mikael
4649         Hermansson where backspace would delete all text before the
4650         cursor.
4651
4652 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4653
4654         * gdk/win32/gdkwindow-win32.c
4655         (gdk_window_impl_win32_get_visible_region): New function, as in
4656         the X11 backend.
4657         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4658         instead of duplicating the same code here.
4659
4660         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4661         GDK_COLORMAP macro.
4662
4663         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4664         destroy function.
4665         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4666         access that.
4667
4668         * gtk/gtk.def: Update.
4669
4670         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4671
4672 2000-12-30  Havoc Pennington  <hp@pobox.com>
4673
4674         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4675         colormap on input only windows, to avoid special cases all over
4676         the code for these windows.
4677
4678 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4679
4680         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4681         we are on a palettized display ("PseudoColor" in X11), as the code
4682         for that doesn't work anyway, and never has.
4683
4684 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4685
4686         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4687         Don't use isprint() for chars > 255.
4688
4689 2000-12-21  Havoc Pennington  <hp@redhat.com>
4690
4691         * tests/testtreeview.c: more work
4692
4693 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4694
4695         * docs/README.linux-fb:
4696         Update the docs to the new pangoft2 way.
4697
4698 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4699
4700         * configure.in:
4701         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4702         pango version.
4703         Remove modules/linux-fb/Makefile.
4704
4705         * gdk/linux-fb/gdkdrawable-fb2.c:
4706         Render glyphs using freetype.
4707
4708         * gdk/linux-fb/gdkfb.h:
4709         Add new fb-specific functions needed for managing windows.
4710
4711         * gdk/linux-fb/gdkmain-fb.c:
4712         Remove gdk_font_init/fini() calls.
4713
4714         * gdk/linux-fb/gdkpango-fb.c:
4715         Remove old implementation. Use pangoft2 instead.
4716
4717         * gdk/linux-fb/gdkprivate-fb.h:
4718         Remove PangoFBFont and related stuff.
4719
4720         * gdk/linux-fb/gdkwindow-fb.c:
4721         Implement drawable->get_visible_region.
4722         Implement support for _gdk_window_set_child_handler () and
4723         _gdk_window_get_decorations().
4724
4725         * modules/Makefile.am:
4726         Remove linux-fb subdir.
4727
4728         * modules/linux-fb/*:
4729         Removed all.
4730         
4731 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4732
4733         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4734         calls, as they are no longer needed.
4735
4736         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4737         
4738         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4739         figure out how to emit a signal on an interface.
4740
4741 2000-12-20  Havoc Pennington  <hp@redhat.com>
4742
4743         * tests: new directory to contain tests, gtk/test* should move
4744         here sometime (with appropriate on-cvs-server hackery)
4745
4746         * tests/testtreeview.c, tests/Makefile.am: a test
4747         
4748         * configure.in (AC_OUTPUT): add tests/Makefile
4749
4750         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4751         and "invisible_set" which were missing
4752
4753         * gtk/gtkrbtree.h: some cheesy indentation fix
4754         
4755 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4756
4757         * gtk/gtkinvisible.c (gtk_invisible_realize):
4758         Attach the style to the window so that the style it is not
4759         leaked when unrealizing the window.
4760
4761 2000-12-18  Havoc Pennington  <hp@redhat.com>
4762
4763         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4764         begin/end user action where appropriate
4765         (gtk_text_view_commit_handler): add begin/end user action
4766
4767         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4768         bracket interactive operations with begin/end user action pair.
4769         
4770         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4771         "interactive" arg from insert_text and delete_text signals.
4772         Add begin_user_action, end_user_action signals
4773         (gtk_text_buffer_begin_user_action): 
4774         (gtk_text_buffer_end_user_action): New functions to delimit 
4775         a user-visible action
4776
4777         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4778         signals.
4779         
4780 2000-12-18  Havoc Pennington  <hp@redhat.com>
4781
4782         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4783         was pretty non-working.
4784
4785         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4786         by passing the length to g_utf8_validate().
4787
4788 2000-12-16  Havoc Pennington  <hp@pobox.com>
4789
4790         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4791         Port to GObject, can go back in gdk-pixbuf after setting up 
4792         a gdk-pixbuf-marshal.h header over there.
4793
4794         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4795         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4796         args
4797         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4798         set
4799         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4800         here, do it when we create the buttons later
4801         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4802         (gtk_tree_view_map): paranoia checks that column->button is shown 
4803         and unmapped
4804         (gtk_tree_view_size_request): only request visible children.
4805         Move header size calculation in here, for cleanliness, and 
4806         to maintain invariants for child widgets if we eventually 
4807         let users set different children inside the buttons
4808         (gtk_tree_view_map_buttons): factor out code to map buttons,
4809         since it was being called several times
4810         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4811         windows instead of just moving them; their height may change 
4812         if we allow random widgets in there, or the theme changes.
4813         (gtk_tree_view_size_allocate): move button size allocation 
4814         above emitting the scroll signals, to ensure a sane state when we
4815         hit user code
4816         (gtk_tree_view_button_release): remove queue_resize after
4817         tree_view_set_size(), set_size() will handle any resize queuing
4818         that's needed
4819         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4820         draw_focus goo
4821         (gtk_tree_view_focus): use gtk_get_current_event() and
4822         gdk_event_get_state()
4823         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4824         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4825         semicolon
4826         (gtk_tree_view_create_button): show the button here
4827         (gtk_tree_view_button_clicked): actually emit the clicked signal
4828         on the column
4829         (_gtk_tree_view_set_size): return right away if the size is
4830         unchanged, as a cheesy optimization
4831         (gtk_tree_view_setup_model): rename set_model_realized to 
4832         setup_model to match the flag that indicates whether we've 
4833         called it
4834         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4835         exist, because set_scroll_adjustment does that and it shouldn't
4836         matter what order you call these in
4837         (gtk_tree_view_get_vadjustment): ditto
4838         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4839         for paranoia
4840         (gtk_tree_view_set_headers_visible): call
4841         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4842         (gtk_tree_view_append_column): clarify whether the return value
4843         is the count of columns before or after, and do the increment 
4844         separately from the return statement so you can tell from the code.
4845         (gtk_tree_view_remove_column): ditto
4846         (gtk_tree_view_insert_column): ditto
4847         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4848         outside the existing range, the docs say that outside-range
4849         columns are allowed, so we handle them as documented. (Presumably
4850         this allows a nice loop with column != NULL as test.)
4851         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4852         mean (left/right/center etc.).
4853         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4854         (gtk_tree_view_expand_row): add docs
4855         (gtk_tree_view_collapse_row): add docs
4856
4857         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4858         function to emit the clicked signal on a column
4859         
4860         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4861         state of an event
4862         (gdk_event_get_time): don't treat GDK_SCROLL 
4863         as a button event, remove default case from switch so gcc 
4864         will whine if we don't explicitly handle all event types
4865
4866         * gtk/gtktreeselection.h: added some FIXME 
4867         
4868         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4869         "columns" to "n_columns" and "column" to "columns" for clarity
4870
4871 2000-12-16  Havoc Pennington  <hp@pobox.com>
4872         
4873         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4874         stuff. This should make e.g. the delete key work again in the
4875         text widget...
4876         (gtk_text_iter_forward_cursor_positions): handle negative count
4877         (gtk_text_iter_backward_cursor_positions): handle negative count
4878         (gtk_text_iter_forward_word_ends): handle negative count
4879         (gtk_text_iter_backward_word_starts): handle negative count
4880
4881         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4882         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4883         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4884         GObject. No doubt will cause breakage.
4885
4886         * demos/gtk-demo/textview.c: remove hacks around
4887         non-GObject-ification of the text objects
4888
4889         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4890         the text tag
4891         
4892 2000-12-14  Havoc Pennington  <hp@pobox.com>
4893
4894         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4895         that we have Xrender
4896
4897 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4898
4899         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4900         Add two virtualized functions gdk_drawable_get_clip_region - to
4901         get the clip region when drawing.
4902         
4903         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4904         use invalidate_region.
4905
4906         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4907         region.
4908
4909         * acconfig.h configure.in: Check for Xft. For now, assume
4910         that if Xft is found, Pango was compiled with Xft support
4911         as well.
4912
4913         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4914         gdk_colormap_query_color().
4915         
4916         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4917         with Xft if appropriate.
4918
4919         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4920         a pangoxft context if we have XFT and the environment
4921         variable GD_USE_XFT is set.
4922         
4923         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4924         and also possibly an XftDraw structure.
4925
4926         * gtk/gtkfontsel.c: Handle the case where the font from the
4927         style doesn't match any of the fonts a bit better.
4928         
4929         * gtk/testgtk.c: Add tabs between directional segments for
4930         hebrew/arabic test. (Not really necessary, just a little
4931         prettier.)
4932
4933 2000-12-14  Havoc Pennington  <hp@redhat.com>
4934
4935         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4936         reading a file
4937
4938 2000-12-14  Havoc Pennington  <hp@redhat.com>
4939
4940         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4941         unused call to get_last_line()
4942
4943         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4944         here until boxed is working (and maybe after that - we should
4945         really not gratuitously break old code)
4946
4947         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4948         specific types for font_desc and tabs args, move them to
4949         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4950         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4951
4952         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4953         use GTK_TYPE_POINTER for signal signatures as a hack-around
4954
4955         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4956         PangoTabArray
4957
4958         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4959         make static
4960         (line_display_index_to_iter): make static
4961
4962         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4963         to marshal a string not a boxed
4964
4965         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4966
4967         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4968         since the UTF-8 isn't validated yet
4969
4970         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4971         lines to end in '\n'
4972         
4973         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4974         forward_to_delimiters, and grapheme boundaries
4975         (gtk_text_view_delete_from_cursor): properly handle non-newline
4976         delimiters, and grapheme boundaries
4977
4978         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4979         to gtk_text_iter_forward_to_delimiters, and make it work properly
4980         if empty lines end with a character other than '\n'
4981
4982         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4983         position
4984
4985 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4986
4987         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4988
4989         * gtk/gtk.def
4990         * gdk/gdk.def: Update.
4991
4992         * gdk/win32/gdkmain-win32.c
4993         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4994         gdkmain-win32.c here.
4995
4996         * gdk/win32/makefile.mingw.in (all): No need to make
4997         gdk-win32res.o here, the makefile one step up will call us to make
4998         it.
4999
5000         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
5001         gdkkeys-win32.
5002
5003         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
5004
5005         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
5006         call to g_source_add().
5007
5008         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
5009         leak. Thanks to Andreas Kemnade.
5010
5011 2000-12-13  Havoc Pennington  <hp@pobox.com>
5012
5013         * gtk/gtktextbtree.h: Remove double _ in front of some functions
5014
5015         * gtk/gtktext*.[hc]: update accordingly
5016         
5017 2000-12-13  Havoc Pennington  <hp@pobox.com>
5018
5019         * gtk/gtktextbtree.h: Put _ in front of every function in this 
5020         header file
5021
5022         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
5023
5024 2000-12-13  Alex Larsson  <alexl@redhat.com>
5025
5026         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
5027         Add support for ps2 intellimouse.
5028
5029         * gdkkeyboard-fb.c:
5030         Move shift-F1 repaint handling to xlate handler only.
5031         
5032         * docs/README.linux-fb:
5033         Add imps2 to docs.
5034         Document the new refresh keys.
5035         
5036 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
5037
5038         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
5039
5040         * gtk/gtkbox.c: change property types from (u)long to (u)int for
5041         ::position and ::padding.
5042
5043         * gtk/gtkcontainer.c: make ::border_width an INT property.
5044
5045         * gtk/gtkpacker.c: make ::position an INT property.
5046
5047         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
5048         guard against NULL h/v scrollbars, since this is used at construction
5049         time.
5050
5051         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
5052         internal gtk_clist_constructor().
5053
5054         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
5055         gtk_ctree_constructor().
5056
5057         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
5058         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
5059
5060         * docs/reference/Makefile.am: fun stuff, disabled docs generation
5061         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
5062
5063         * gtk/gtkwidget.[hc]:
5064         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
5065         and gtk_widget_get().
5066         (gtk_widget_new): use g_object_new_valist().
5067         (gtk_widget_set): use g_object_set_valist().
5068
5069         * gtk/gtkobject.[hc]:
5070         removed gtk_object_arg_get_info(), gtk_object_getv(),
5071         gtk_object_query_args(), gtk_object_newv(),
5072         gtk_object_class_add_signals(),
5073         gtk_object_class_user_signal_new(),
5074         gtk_object_class_user_signal_newv(),
5075         gtk_object_arg_set(), gtk_object_arg_get(),
5076         gtk_object_args_collect(),
5077         gtk_object_default_construct(),
5078         gtk_object_constructed(),
5079         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
5080         removed nsignals, signals and n_args members from GtkObjectClass.
5081         (gtk_object_new): use g_object_new_valist().
5082         (gtk_object_set): use g_object_set_valist().
5083         (gtk_object_get): use g_object_get_valist().
5084         
5085         * gtk/gtkcompat.h: define gtk_object_default_construct().
5086         
5087         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
5088         g_object_new().
5089
5090         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
5091         fucntions, cleaned up method assignments (make sure your structures
5092         are setup properly before calling out). removed all GTK_CONSTRUCTED
5093         hacks ;)
5094
5095 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
5096
5097         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
5098         off-by-one error in checks. (Dave Lambert)
5099
5100 2000-12-12  Alexander Larsson  <alexl@redhat.com>
5101
5102         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
5103         Don't free gdk_fb_keyboard twice.
5104
5105 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
5106
5107         * gtk/testgtk.c:
5108         (create_tooltips): 
5109         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
5110         use GObject swapped_signal:: properties instead.
5111
5112         * gtk/gtkcellrenderertoggle.c: 
5113         * gtk/gtkcellrenderertextpixbuf.c: 
5114         * gtk/gtkcellrenderertext.c: 
5115         * gtk/gtkcellrendererpixbuf.c: 
5116         * gtk/gtkcellrenderer.c:
5117         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
5118         missing warnings for invalid property ids, install properties
5119         with g_object_class_install_property() now.
5120         
5121         * gtk/gtksignal.c:
5122         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
5123         
5124 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
5125         
5126         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
5127         to determine if a window is the focus widget within
5128         its toplevel.
5129
5130         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
5131         to be boolean.
5132
5133         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
5134         of the case where the container CAN_FOCUS to here instead
5135         of having it in each individual move-the-focus place.
5136
5137         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
5138         focusing to be geometric in a much more obvious sense. Arrowing
5139         around is still non-intuitive because it isn't perfect and
5140         because entries, etc, grab the arrow keys, but it at least
5141         usually will do what you expect now.
5142         
5143         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
5144         file.
5145
5146         * gtk/gtknotebook.c: Change tabs to be a single item in
5147         the focus chain. Make movement of focus on tabs with arrow
5148         keys wrap around.
5149         
5150         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
5151         CHECK_FIND_CHILD macro to give informative error messages
5152         instead of silent returns.
5153
5154         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
5155         flag since we handle GdkReturn on the tabs.
5156
5157         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
5158         windows rather than sending expose events directly.
5159
5160         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
5161         definition for GtkNotebookPage into .c file, since it is private.
5162
5163         * gtk/testgtk.c (create_notebook): Add option for 
5164         testing borderless notebook.
5165
5166         * gtk/testgtk.c (page_switch): Removed egregious poking
5167         around in GTK+ internals.
5168
5169         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
5170
5171         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
5172         properly through gtk_clist_focus. Make the title headers a
5173         single item in the tab-focus chain, and make left-right wrap
5174         around.
5175
5176         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
5177         focus method so that wrapping around works properly.
5178
5179         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
5180         that is handled for the widget now. 
5181
5182 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
5183
5184         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
5185         widgets as TOPLEVEL.
5186
5187         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
5188         TOPLEVEL widgets are containers.
5189
5190         * gtk/gtkinvisible.h: Remove useless include.
5191
5192 2000-12-11  Havoc Pennington  <hp@redhat.com>
5193
5194         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
5195         Handle chopping off \r\n and 0x2029 in addition to \n before
5196         passing to PangoLayout
5197
5198         * gtk/gtkimcontextsimple.c
5199         (gtk_im_context_simple_get_preedit_string): 
5200         return an empty string if no match is pending
5201
5202         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
5203         assertion that the returned preedit string was sane
5204
5205         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
5206         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
5207         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
5208
5209 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
5210
5211         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
5212         Fix up finalizer to chain to its parent.
5213
5214 2000-12-11  Alexander Larsson  <alexl@redhat.com>
5215
5216         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
5217         Clearified the difference between the keyboard types. Wrote a note
5218         about the magic sysrq key to get out of raw mode.
5219
5220 2000-12-09  James Henstridge  <james@daa.com.au>
5221
5222         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
5223         member to hold masks for detecting the start of a protocol packet.
5224         (mouse_devs): add packet start masks for ps2 and ms device types.
5225         Left the mask for fidmour blank, as I have no idea what it should
5226         be.
5227         (handle_mouse_io): skip bytes until we get to the start of a
5228         packet.  My Logitech mouse seems to be passing an extra NULL pad
5229         byte, and GPM does a similar thing here.
5230         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
5231         this is the ms mouse driver.
5232         (gdk_fb_mouse_ms_packet): fix up button handling, which was
5233         completely broken except for button1.  It was checking the wrong
5234         bit in the packet for the status of the right mouse button, and
5235         wrongly assuming right == button2 rather than 3.  I fixed that and
5236         also added support for middle button (button2).
5237
5238 2000-12-08  Havoc Pennington  <hp@redhat.com>
5239
5240         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
5241         that cause a segfault on text insertion
5242
5243         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
5244         warning
5245
5246         * gtk/gtktextiter.c (test_log_attrs): use
5247         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
5248
5249         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
5250         Get log attrs for a line, using a cache stored on the buffer
5251         
5252         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
5253         reported by Jeff Franks
5254
5255 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5256
5257         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
5258         /dev/ttyS0 -> /dev/mouse
5259
5260 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5261
5262         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
5263         Added dummy gdk_fontset_load.
5264
5265 2000-12-08  Alexander Larsson  <alexl@redhat.com>
5266
5267         * docs/README.linux-fb:
5268         * docs/Makefile.am:
5269         Initial GtkFB docs.
5270         
5271         * gdk/linux-fb/Makefile.am:
5272         Define GDK_DATA_PREFIX.
5273
5274         * gdk/linux-fb/gdkmain-fb.c:
5275         Fix typo.
5276         Change default display to /dev/fb0.
5277
5278         * gdk/linux-fb/gdkpango-fb.c:
5279         Add $(prefix)/share/fonts/ to font path.
5280         
5281 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
5282
5283         * gdk/linux-fb/gdkkeyboard-fb.c:
5284         New file containing the abstracted keyboard driver. Most code
5285         taken from gdkinput-ps2.c
5286
5287         * gdk/linux-fb/gdkinput-ps2.c:
5288         Removed file.
5289         
5290         * gdk/linux-fb/Makefile.am:
5291         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
5292
5293         * gdk/linux-fb/gdkcolor-fb.c:
5294         display->fb was renamed to display->fb_fd.
5295
5296         * gdk/linux-fb/gdkcursor-fb.c:
5297         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5298
5299         * gdk/linux-fb/gdkinput.c:
5300         Moved gdk_input_init here from gdkinput-ps2.c
5301
5302         * gdk/linux-fb/gdkmain-fb.c:
5303         display->fb was renamed to display->fb_fd.
5304         Now the tty and the console is opened here instead
5305         of in the keyboard driver. Also check GDK_VT to see what
5306         tty to open.
5307         Move gdk_beep () here from gdkinput-ps2.c
5308         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5309
5310         * gdk/linux-fb/gdkmouse-fb.c:
5311         Add header.
5312         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5313         Return correct keyboard modifiers.
5314         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
5315
5316         * gdk/linux-fb/gdkprivate-fb.h:
5317         Add tty and vt info to display.
5318         Add orignal modeinfo storage to display
5319         Update global functions
5320
5321         * gdk/linux-fb/gdkwindow-fb.c:
5322         Added gdk_fb_window_find_focus().
5323         gdk_mouse_get_info -> gdk_fb_mouse_get_info
5324
5325 2000-12-07  Havoc Pennington  <hp@pobox.com>
5326
5327         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
5328         function, noticed by Alex
5329
5330 2000-12-06  Elliot Lee  <sopwith@redhat.com>
5331
5332         * configure.in: Detect freetype properly
5333
5334         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
5335         above.
5336
5337 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5338
5339         * gdk/linux-fb/Makefile.am:
5340         Add gdkmouse-fb.c
5341         
5342         * gdk/linux-fb/gdkmouse-fb.c:
5343         New file. Abstracted the mouse drivers a bit.
5344
5345         * gdk/linux-fb/gdkcursor-fb.c:
5346         The cursor hide/show functions was moved here from gdkinput-ps2.c.
5347
5348         * gdk/linux-fb/gdkinput-ps2.c:
5349         Removed old mouse handling code. Moved cursor handling code
5350         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
5351         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
5352         gdk_mouse_get_info.
5353
5354         * gdk/linux-fb/gdkmain-fb.c:
5355         Pass NULL pointers for x,y in gdk_mouse_get_info call.
5356
5357         * gdk/linux-fb/gdkprivate-fb.h:
5358         Removed public gdk_fb_find_common_ancestor, added and renamed
5359         functions for the new mouse handling code.
5360
5361         * gdk/linux-fb/gdkwindow-fb.c:
5362         Moved gdk_fb_window_send_crossing_events here. added global
5363         variable gdk_fb_window_containing_pointer. made
5364         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
5365         renamed to gdk_mouse_get_info.
5366
5367 2000-12-06  Alexander Larsson  <alexl@redhat.com>
5368
5369         * gdk/linux-fb/gdkevents-fb.c:
5370         Update to match latest gmain/gsource changes.
5371
5372         * gdk/linux-fb/gdkinput-ps2.c:
5373         Bogus gdk_keymap_get_entries_for_keycode implementation so that
5374         it links. Will be implemented later.
5375
5376 2000-12-03  Havoc Pennington  <hp@pobox.com>
5377
5378         * gdk/Makefile.am: add gdkkeys.[hc]
5379
5380         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
5381         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
5382
5383         * acconfig.h, configure.in: add checks and command line options
5384         for XKB
5385
5386         * gdk/x11/gdkkeys-x11.c: Implement the above functions
5387         
5388         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
5389         and group in the key event
5390
5391         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
5392         field with the low-level hardware key code, and a group
5393         field with the keyboard group
5394
5395         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
5396         and declare a couple globals used for keymap handling
5397         
5398         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
5399         hold down Shift-Control and type a hex number to get a Unicode 
5400         character corresponding to the hex number
5401         (gtk_im_context_simple_get_preedit_string): Fix cursor position
5402         (return bytes not chars)
5403
5404 2000-12-05  Elliot Lee  <sopwith@redhat.com>
5405
5406         * gdk/gdkcolor.h: Make GdkColor specify element sizes
5407         to avoid waste on 64-bit platforms.
5408
5409 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
5410
5411         * INSTALL: Fix link to PNG home, remove reference
5412         to fribidi.
5413
5414         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
5415         
5416         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
5417         tested.)
5418
5419         * gtk/gtkcheckmenuitem.c: Permanently turn on
5420         always_show_toggle.
5421
5422         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
5423         be NULL. (Vladimir Klebanov, #26545)
5424
5425         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
5426         some signed/unsigned comparison problems. (#6510,
5427         David Kaelbling)
5428
5429         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
5430         return type to boolean (Oskar Liljeblad, #18648)
5431
5432 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5433
5434         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
5435         Remove bogus colormap setting.
5436
5437 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5438
5439         * gdk/linux-fb/gdkcolor-fb.c:
5440         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
5441
5442         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
5443         Must set colormap.
5444         
5445 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
5446
5447         * docs/tutorial/gtk-tut.sgml: DND updates
5448
5449 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5450
5451         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5452         Remove old debug g_warning().
5453         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5454         or an implementation, just pass the implementation to draw_drawable_2.
5455         
5456         * gdk/linux-fb/gdkprivate-fb.h:
5457         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5458
5459         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5460         clear and invalidate area when window is destroyed.
5461         (send_map_events): Remove old commented out code.
5462
5463 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5464
5465         * gdk/linux-fb/gdkpango-fb.c:
5466         Use italic instead of oblique in font aliases.
5467         
5468         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5469         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5470         other unsupported functions.
5471
5472 2000-12-04  Havoc Pennington  <hp@redhat.com>
5473
5474         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5475
5476         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5477
5478         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5479
5480         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5481         hack to avoid infinite loops (synthetic expose event) - 
5482         Owen has more appropriate fixes in a branch he'll check in later.
5483
5484         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5485         separator, CR, and CRLF as line ends
5486
5487         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5488         into lines using pango_find_paragraph_boundary(); other bits of
5489         the widget are still going to be broken if the boundary isn't '\n'
5490         though
5491
5492 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5493
5494         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5495         multiply.
5496
5497         * gdk/linux-fb/gdkpango-fb.c:
5498         Copied some 26.6 scaling macros from pango to clean up the rounding.
5499         (pango_fb_font_get_glyph_info): Correct sign on x value.
5500
5501         * gdk/linux-fb/gdkprivate-fb.h:
5502         Removed unreferenced external functions.
5503
5504         * modules/linux-fb/Makefile.am: Use ` instead of '.
5505
5506         * modules/linux-fb/basic.c:
5507         Remove dead code. In particular the dummy lang engine which broke all
5508         pango layouts in GtkFB. Don't include tables-big.i anymore.
5509
5510         * modules/linux-fb/tables-big.i:
5511         Upgrade to latest version from pango. Left for reference, basic_ranges
5512         moved to basic.c.
5513         
5514 2000-12-04  Havoc Pennington  <hp@redhat.com>
5515
5516         Fix bugs Alex found:
5517         
5518         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5519         to "draw"
5520
5521         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5522
5523         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5524
5525         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5526         implementation in here, apparently the expose() implementation was
5527         dead code.
5528
5529 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5530
5531         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5532         Return positive descent.
5533
5534 2000-12-02  Havoc Pennington  <hp@pobox.com>
5535
5536         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5537         method and signal
5538         
5539         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5540         calls gdk_window_process_updates() to push the exposes through
5541         (gtk_widget_class_init): No more draw signal, no
5542         gtk_widget_real_draw()  
5543         
5544         * gtk/gtkbin.c (gtk_bin_draw): remove
5545
5546         * gtk/gtkbox.c (gtk_box_draw): remove
5547
5548         * gtk/gtkbutton.c (gtk_button_draw): remove
5549
5550         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5551
5552         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5553
5554         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5555
5556         * gtk/gtkclist.c (gtk_clist_draw): remove
5557
5558         * gtk/gtkentry.c (gtk_entry_draw): remove
5559
5560         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5561
5562         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5563
5564         * gtk/gtkframe.c (gtk_frame_draw): remove
5565
5566         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5567
5568         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5569
5570         * gtk/gtklayout.c (gtk_layout_draw): remove
5571
5572         * gtk/gtklist.c (gtk_list_draw): remove
5573
5574         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5575
5576         * gtk/gtkmenu.c (gtk_menu_draw): remove
5577
5578         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5579
5580         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5581
5582         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5583
5584         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5585
5586         * gtk/gtkpacker.c (gtk_packer_draw): remove
5587
5588         * gtk/gtkrange.c (gtk_range_draw): remove
5589
5590         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5591
5592         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5593
5594         * gtk/gtktable.c (gtk_table_draw): remove
5595
5596         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5597
5598         * gtk/gtktext.c (gtk_text_draw): remove
5599
5600         * gtk/gtktextview.c (gtk_text_view_draw): remove
5601
5602         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5603
5604         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5605
5606         * gtk/gtktree.c (gtk_tree_draw): remove
5607
5608         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5609
5610         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5611
5612         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5613
5614         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5615
5616         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5617
5618         * gtk/gtkwindow.c (gtk_window_draw): remove
5619
5620 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5621
5622         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5623         a GtkToggleButton is both insensitive and active, it was being
5624         drawn by the GtkButton draw handler which doesn't check the
5625         state. Now it's calling gtk_toggle_button_paint instead.
5626         
5627 2000-12-01  Havoc Pennington  <hp@redhat.com>
5628
5629         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5630         dangling pointers to the appearance attributes from the 
5631         line display
5632
5633         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5634         width/height to mean "full width/height of drawable"
5635
5636         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5637         click to select word/line
5638         
5639         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5640         when getting log attrs. Get a slice, so that pixmaps and stuff
5641         are properly handled.
5642
5643         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5644         paste into the selection (replaces selection now, previously
5645         crashed or added to selection). Reveals longstanding btree bug -
5646         select multiple lines, middle-click on the selection, boom. This
5647         isn't related to my changes though.
5648
5649         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5650         PangoLogAttrs changes
5651         (gtk_entry_move_backward_word): ditto
5652
5653         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5654         functions return bool whether the iter moved onto a
5655         dereferenceable position.
5656  
5657         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5658         functions for motion in terms of display lines.
5659
5660         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5661         get the buffer a mark is inside
5662         
5663 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5664
5665         * gdk/linux-fb/Makefile.am:
5666         * modules/linux-fb/Makefile.am:
5667         Freetype 2 final uses freetype-config
5668
5669         * gdk/linux-fb/gdkpango-fb.c:
5670         Upgrade to use Freetype 2 final.
5671         More flexible support for font aliases, this also fixes a bug with
5672         GtkFontSelector, as the aliases must be visible in the font/family list,
5673         or GtkFontSelector reads uninitialized memory.
5674
5675 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5676
5677         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5678         XGetIMValues to properly terminate variable argument list, and do
5679         NULL return check for ic_values and xim_styles.
5680
5681         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5682         Restore preedit state after XmbResetIC().
5683         
5684         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5685         XvaCreateNestedList() should take XvaNestedList, but not
5686         XvaNestedList*.
5687
5688         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5689         preedit_draw_callback, preedit_caret_callback): Match
5690         "preedit-changed" signal name to "preedit_changed" to be
5691         consistent to the spec.
5692
5693         * gtk/gtkimcontextsimple.c (check_table):
5694         Match "preedit-changed" to "preedit_changed" to be consistent
5695         to the spec.
5696
5697 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5698
5699         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5700         gc->clip_region == NULL>
5701
5702 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5703
5704         Changes by Hans Breuer:
5705         
5706         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5707         Dont't use negative width and height as max_hints. This fixes
5708         Owen's recent testgtk changes for win32.
5709
5710         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5711         gdk_win32_hdc_release): These are exported and may be called with
5712         other drawable types than our GdkDrawableImplWin32 (?).
5713
5714         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5715         so always #define USE_BACKING_STORE.
5716
5717         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5718         of printf for debugging output.
5719
5720         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5721         
5722         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5723
5724         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5725         declaration.
5726
5727         * gtk/gtktexttypes.h: Ditto.
5728
5729         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5730         (GDK_VoidSymbol) also if in case of arg check failure.
5731
5732         * gtk/gtkimcontextsimple.c
5733         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5734         position to the pointer, but to the variable it points to.
5735
5736         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5737
5738         * gtk/gtk.def: Updates.
5739
5740 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5741
5742         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5743         GTK_TYPE_TREE_MODEL.
5744
5745 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5746
5747         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5748         Set the size of the font from the description.
5749         (gdk_text_width): Gross hack that calculates the width
5750         of text by text_length * size/2. This is necessary because
5751         GtkLabel does some ugly gtk_string_width call to calculate
5752         an good size.
5753         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5754
5755 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5756
5757         * docs/tutorial/gtk-tut.sgml: DND updates
5758
5759 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5760
5761         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5762         If you pass width or height == 0 to gdk_window_clear_area they
5763         should be calculated from the window size.
5764
5765 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5766
5767         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5768         a grab, but no grab-cursor, use the cursor from the grabbed
5769         window. (gdk_fb_window_send_crossing_events): Send normal
5770         enter/leave notifications if grab and owner_events == TRUE.
5771
5772 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5773
5774         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5775         Do implicit button grabs, even if the window doesn't
5776         want the event.
5777         (gdk_fb_window_send_crossing_events): If there is a
5778         grab, only the grabbed window gets normal enter/leave
5779         notifications. On ungrab go from grabbed window to current.
5780         Don't send any notification to b when propagating from c -> b.
5781         If setting a grab on window, don't set prev_window.
5782         (handle_mouse_input): Send enter/leave events to the window the
5783         mouse is over, not the grabbed one.
5784         
5785 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5786
5787         * gdk/gdkregion-generic.c: Zap warning.
5788         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5789         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5790
5791 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5792
5793         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5794         The cursor should be hidden if it is part of either the
5795         source or destination region. Not only if it is in both.
5796         (gdk_window_set_transient_for): Silence warnings.
5797
5798 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5799
5800         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5801         The default mode in X is Pie Arcs, therefore that is
5802         what Gtk+ uses.
5803
5804 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5805
5806         * gdk/linux-fb/gdkinput-ps2.c:
5807         Implement correct EnterNotify/LeaveNotify:
5808         (gdk_fb_window_send_crossing_events): New function that sends
5809         all GdkCrossingEvents from the last mouse-window to the specified
5810         destination.
5811         (gdk_fb_window_visibility_crossing): Removed function.
5812         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5813         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5814         instead of gdk_window_get_pointer() for better readability.
5815
5816         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5817         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5818
5819         * gdk/linux-fb/gdkprivate-fb.h:
5820         removed gdk_fb_window_visibility_crossing, added
5821         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5822
5823         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5824         New function that finds the least common ancestor of two windows.
5825         (gdk_window_show, gdk_window_hide):
5826         Use gdk_fb_window_send_crossing_events.
5827         (gdk_fb_window_move_resize): Send configure events to toplevel
5828         windows. Use gdk_fb_window_send_crossing_events.
5829
5830 2000-11-27  Havoc Pennington  <hp@redhat.com>
5831
5832         * gtk/gtkprivate.h (enum): Remove a trailing comma
5833
5834 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5835
5836         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5837         the "changed" callback of the adjustment.  We need to redraw the
5838         spin button's arrows when the adjustment's range changes.
5839         (adjustment_changed_cb): Draw the arrows.
5840         (gtk_spin_button_value_changed): Draw the arrows.
5841
5842 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5843
5844         * gdk/linux-fb/gdkselection-fb.c:
5845         Initial selection implementation.
5846
5847         * gtk/gtkselection.c:
5848         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5849         requestor in gtk_selection_request.
5850         
5851         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5852         Added gdk_selection_property atom.
5853
5854         * gdk/linux-fb/gdkprivate-fb.h:
5855         Export _gdk_selection_window_destroyed.
5856         Removed mask_off_x/y from GdkCursorPrivateFB.
5857         Removed hbearing, added top, left to PangoFBGlyphInfo.
5858
5859         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5860         Call _gdk_selection_window_destroyed
5861         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5862         the root window has been created.
5863         (static_dx_hack, static_dy_hack, compare_draw_rects,
5864         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5865         in region. They are already sorted. Instead just traverse them in
5866         reverse if draw_direction < 0.
5867         
5868         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5869         Double-clicks must be sent after the normal button_press.
5870         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5871         
5872         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5873         Pass _gdk_fb_screen_gc instead of NULL.
5874
5875         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5876         Initialize gdk_selection_property.
5877         (gdk_event_make): Remove unused code.
5878
5879         * gdk/linux-fb/gdkcursor-fb.c:
5880         Make the pixmap for the cursor the same size as the mask. Also remove
5881         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5882         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5883         Now the whole cursor is visible.
5884
5885         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5886         Fix bug where xdest+height instead of ydest+height was used
5887         to calculate if the source and dest overlapped. This fixes the
5888         redraw bug when the main window in testgtk was scrolled when
5889         partially covered by a tall window.
5890         Copy rectangles in region in order depending on draw_direction.
5891         Also moved the draw_direction flipping of start_y and end_y into
5892         the gc functions, as this might not be what all of them want.
5893         (gdk_fb_draw_lines): Support dashed lines.
5894         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5895         so that the text is positioned correctly (was 1 pixel high).
5896
5897         gdk/linux-fb/gdkgc-fb.c:
5898         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5899         all lines were drawn a pixel to short. Also checked the default of
5900         the rest of the values, and they're the same as X now.
5901
5902         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5903         Clean up pixel positioning of the glyphs. Just use bgy->top and
5904         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5905         to all divisions to get correct rounding behaviour.
5906
5907         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5908         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5909         Moved start_y/end_y flip into draw_drawable implementations.
5910         Flip also x rendering when draw_direction < 0.
5911         Remove unneccesary multiply with draw_direction.
5912
5913 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5914
5915         * docs/tutorial/gtk-tut.sgml:
5916           - get rid of gtk_toggle_button_toggled FUD
5917           - start DND section - needs work - based on:
5918                 http://wolfpack.twu.net/docs/gtkdnd/
5919
5920 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5921
5922         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5923         Correct calculation of font metrics. Now GtkEntrys have sane
5924         size.
5925
5926 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5927
5928         * gdk/gdktypes.h:
5929         Add new type GdkSpan
5930         
5931         * docs/reference/gdk/gdk-sections.txt,
5932         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5933         gdk/gdkregion.h:
5934         Implement and document gdk_region_spans_intersect_foreach.
5935
5936         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5937         Add new file gdkrender-fb.c which contains all core
5938         rendering code.
5939         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5940         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5941         (optimized rectangle fillers).
5942
5943         * gdk/linux-fb/gdkdrawable-fb2.c:
5944         Move all rendering code to gdkrender-fb.c.
5945         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5946         Use the new span intersection functions in gdk_fb_fill_spans.
5947         gdk_fb_draw_rectangle() clips filled rectangles and calls
5948         gc->fill_rectangle with the result.
5949         gdk_fb_fill_spans() gets extra argument "sorted".
5950
5951         * gdk/linux-fb/gdkevents-fb.c:
5952         Remove unused includes and defines.
5953         New function gdk_fb_get_time() to get correct time for events.
5954
5955         * gdk/linux-fb/gdkinput-ps2.c:
5956         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5957         Make sure to set the time of all events.
5958
5959         * gdk/linux-fb/gdkmain-fb.c:
5960         Use gdk_fb_get_time ().
5961
5962         * gdk/linux-fb/gdkprivate-fb.h:
5963         New virtual GC calls: fill_span & fill_rectangle.
5964         Export gdk_fb_get_time().
5965         gdk_fb_fill_spans() gets extra argument "sorted".
5966
5967         * gdk/linux-fb/mi*.c:
5968         Use GdkSpan instead of GdkRectangle.
5969         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5970         from XFree 4 source)
5971         
5972 2000-11-22    <jrb@redhat.com>
5973
5974         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5975         reversing the order in an if statement will do.  Doing so managed
5976         to make the treemodelsort half work.  Other half will follow after
5977         I get the insert function fully fixed.
5978
5979 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5980         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5981         more than 2 bits. Besides, I need to implement an evil hack. :)
5982
5983 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5984
5985         * docs/tutorial/gtk-tut.sgml: minor corrections
5986
5987 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5988         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5989           convert to and from relative path's and iters.
5990
5991         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5992           testing sorting functions a bit better.  Currently broken -- will
5993           fix in morning.
5994
5995 2000-11-20  Havoc Pennington  <hp@redhat.com>
5996
5997         * gtk/gtkwidget.c: Documented a bunch of functions in here
5998         (gtk_widget_realize): Warn if you try to realize
5999         a widget with no parent that isn't a toplevel
6000         (gtk_widget_intersect): return a gboolean
6001
6002 2000-11-20  Havoc Pennington  <hp@redhat.com>
6003
6004         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
6005         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
6006         scrolling to be implemented in GDK to finish. Also, right now
6007         we just size_allocate all children on every layout change,
6008         which is pretty lame. Test commented out of testtext.c, 
6009         until it works better.
6010
6011 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
6012
6013         * gdk/linux-fb/gdkdrawable-fb2.c:
6014         Removed unused arguments from gdk_fb_drawable_get_pixel().
6015
6016         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
6017         Renamed fidur specific mouse packet data in MouseDevice to
6018         generic. Used it in ps2 mouse handling code to avoid blocking
6019         reads.
6020
6021 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
6022
6023         * demos/gtk-demo/main.c: Changed to have the list become
6024         non-italic when the demo window is destroyed through an external
6025         event (like a close button).  Doing so found three bugs in the
6026         widget.
6027
6028         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
6029
6030         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
6031         we actually set the cell.
6032
6033         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
6034
6035         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
6036         free a leaked path.  Thanks memprof.
6037
6038 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
6039
6040         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
6041         off-by-one error when destroying allocated segments
6042         on failure. (Elliot)
6043
6044 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
6045
6046         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
6047         memleaks found by Evan Martin.
6048
6049 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
6050
6051         * Released 1.3.2
6052         
6053         * NEWS: Updates for 1.3.2
6054
6055 2000-11-17  Tor Lillqvist  <tml@iki.fi>
6056
6057         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
6058         but in general for window system specific events.
6059
6060         * gtk/gtk.def
6061         * gtk/makefile.mingw.in
6062         * gtk/makefile.msc.in: Update.
6063         
6064         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
6065
6066 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
6067
6068         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
6069         distribute gtk.immodules.
6070
6071         * gtk/Makefile.am (install-data-local): Don't install the
6072         gtk.immodules file created for the uninstalled modules;
6073         instead run gtk-query-immodules after install
6074
6075 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
6076
6077         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
6078         -rpath to the right install location.
6079
6080         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
6081         -export-dynamic.
6082
6083         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
6084         properly.
6085
6086 2000-11-15  Havoc Pennington  <hp@pobox.com>
6087
6088         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
6089         patch from Mikael Hermansson to temporarily stop blinking while
6090         the user is using the keyboard to type or navigate. 
6091
6092         Also, when blinking, stay on for longer than we stay off. Also,
6093         return from start_cursor_blink if !cursor_visible, to save
6094         checking that flag all over the place before we call
6095         start_cursor_blink.
6096
6097 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
6098
6099         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
6100         only contain a "fontset" line, which is now ignored.
6101
6102         * gtk/gtkentry.c (gtk_entry_button_release): Make 
6103         double-click-to-select-word work.
6104         
6105 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
6106
6107         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
6108         Don't move back one char when we are actually at the end of the 
6109         paragraph.
6110
6111 2000-11-15  Robert Brady  <robert@suse.co.uk>
6112
6113         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
6114         'o' < 'p'.
6115         
6116         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
6117         bind_textdomain_codeset.
6118
6119         (gtk_init_check): Make the warning about translating default:LTR
6120         sterner.
6121         
6122 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
6123
6124         * **/Makefile.am : remove unecessary rules for win32-specific
6125         config-substituted targets. If you want these rules, use
6126         --enable-maintainer-mode (called automatically by autogen.sh).
6127         Stops a lot of unneccessary make-time warnings.
6128
6129         * gtk/gtktext{layout,display}.c: Factor in total width as
6130         well as screen when figuring alignment for word-wrap as well as
6131         no wrap; this is necessary to handle lines that cannot be wrapped
6132         at all.
6133
6134 2000-11-15  Havoc Pennington  <hp@redhat.com>
6135
6136         * gtk/testtext.c: Implement essential color cycling feature
6137
6138 2000-11-15  Havoc Pennington  <hp@redhat.com>
6139
6140         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
6141         when we invalidate the main window.
6142
6143         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
6144         GtkTextView will now invalidate the side windows for us when text
6145         changes.
6146
6147 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
6148
6149         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
6150         unconditionally, since we may need to update the horizontal
6151         scrollbars even if the height didn't change.
6152
6153         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
6154         the extra attrs, since some of them affect size.
6155
6156         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
6157         x_offset correctly.
6158
6159 2000-11-15  Havoc Pennington  <hp@redhat.com>
6160
6161         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
6162         don't move the first line out into the margin, instead move the
6163         whole paragraph in order to make space for the first line within 
6164         the margin
6165
6166 2000-11-15  Havoc Pennington  <hp@redhat.com>
6167
6168         * gtk/gtktextview.c (changed_handler): offset redraw rect by
6169         xoffset in addition to yoffset, so horizontal scrolling doesn't
6170         break redraws
6171
6172 2000-11-15  Havoc Pennington  <hp@redhat.com>
6173
6174         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
6175         from the cursor
6176         (render_layout_line): fix reversed test that caused weird
6177         underlines to get drawn
6178
6179 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6180
6181         * gdk/linux-fb/gdkprivate-fb.h:
6182         Fix debug macros.
6183         
6184 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
6185
6186         * gdk/linux-fb/gdkprivate-fb.h:
6187         Added virtual functions set_pixel, get_color,
6188         fill_span and draw_drawable to the GC.
6189         Added global _gdk_fb_screen_gc to use instead of
6190         NULL when drawing to the screen.
6191         Added _gdk_fb_gc_calc_state() prototype.
6192
6193         * gdk/linux-fb/gdkgc-fb.c:
6194         Call _gdk_fb_gc_calc_state() on any gc state change.
6195
6196         * gdk/linux-fb/gdkglobals-fb.c:
6197         Add _gdk_fb_screen_gc
6198                 
6199         * gdk/linux-fb/gdkdrawable-fb2.c:
6200         _gdk_fb_gc_calc_state() calculates best functions
6201         for the GC state and depth.
6202         Moved bpp specialized code to separate functions.
6203         Added optimized 24 bpp AA draw_drawable.
6204
6205         * gdk/linux-fb/gdkevents-fb.c:
6206         Silence gcc warning.
6207
6208         * gdk/linux-fb/gdkimage-fb.c:
6209         Use _gdk_fb_screen_gc
6210
6211         * gdk/linux-fb/gdkwindow-fb.c:
6212         Init and use _gdk_fb_screen_gc
6213
6214         * gdk/linux-fb/mitypes.h:
6215         Remove unused types.
6216
6217 2000-11-14  Havoc Pennington  <hp@pobox.com>
6218
6219         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
6220         to pixels
6221
6222 2000-11-14  Havoc Pennington  <hp@pobox.com>
6223
6224         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
6225
6226         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
6227         unknown char, no real reason we were using a variable. 
6228         Remove gtk_text_unknown_char variable. Fix all the text widget
6229         files accordingly.
6230
6231         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
6232         since the Unicode spec seems to prefer that character for our
6233         purposes.
6234
6235 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
6236
6237         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
6238         value of g_getenv() isn't freeable, so g_strdup it.
6239
6240         * modules/input/inuktitut.c: Inuktitut input method.
6241
6242         * modules/input/Makefile.am: Build this.
6243         
6244 2000-11-14  Elliot Lee  <sopwith@redhat.com>
6245
6246         * gtk/Makefile.am: Install gtk.immodules, needed for operation
6247         of gtk programs.
6248
6249 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
6250
6251         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
6252         reversed > that was causing Home to go to end of previous line.
6253
6254         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
6255         modified-keypresses (leave for bindings.)
6256
6257         * modules/input/Makefile.am: Remove useless -export-dynamic
6258         from module LDFLAGS.
6259
6260 2000-11-14  Havoc Pennington  <hp@redhat.com>
6261
6262         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
6263         higher.
6264
6265         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
6266         account. Also, render rise, underline, background, etc. for
6267         pixbufs as well as text. Also, draw underlines one pixel higher.
6268
6269         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
6270         PangoAttribute for the rise, so it gets drawn properly. Also,
6271         add the GtkTextAppearance attribute for pixbuf/widget segments
6272         as well; we should go ahead and have rise, underline, background,
6273         stipple work for those
6274
6275         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
6276         Pango
6277
6278 2000-11-15  Tor Lillqvist  <tml@iki.fi>
6279
6280         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
6281
6282         * gtk/gtk.def: Update.
6283
6284         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
6285         included.
6286         (gtk_rc_get_im_module_file): Use run-time installation directory
6287         on Win32.
6288
6289         * gdk/win32/rc/gdk.rc: Remove.
6290         * gdk/win32/rc/gdk.rc.in: New file.
6291         * gdk/win32/rc/Makefile.am: New file
6292         * gdk/win32/Makefile.am: Corresponding changes.
6293
6294         * gtk/gtk.rc: Remove.
6295         * gtk/gtk-win32.rc.in: New file.
6296         * gtk/Makefile.am: Corresponding changes.
6297
6298         * configure.in: Corresponding changes.
6299
6300         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
6301         has a built gtkcompat.h. Developers using CVS code on Win32 can
6302         hand-edit it from gtkcompat.h.in.
6303
6304         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
6305         gtkcompat.h from gtkcompat.h.win32.
6306
6307 2000-11-14  Havoc Pennington  <hp@redhat.com>
6308
6309         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
6310         to default to GDK_ACTION_MOVE if the drag is within a single
6311         widget. Defaults to GDK_ACTION_COPY between widgets.
6312
6313 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
6314
6315         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
6316
6317         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
6318
6319         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
6320         srcdir != builddir
6321
6322         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
6323
6324         * configure.in (GTK_VERSION): Up to 1.3.2
6325
6326         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
6327         gtkimcontextxim.h
6328
6329         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
6330         missing doc comment.
6331
6332 2000-11-14  Alexander Larsson  <alexl@redhat.com>
6333
6334         * modules/linux-fb/basic.c:
6335         Use the glib iconv wrappers.
6336
6337 2000-11-13  Havoc Pennington  <hp@pobox.com>
6338
6339         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
6340         still more bugs.
6341
6342         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
6343         scroll the GdkWindows before realization.
6344
6345 2000-11-13  Havoc Pennington  <hp@redhat.com>
6346
6347         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
6348         where GC didn't always get updated properly
6349
6350         * demos/gtk-demo/textview.c (create_tags): Use subattributes
6351         of fonts instead of setting the entire font
6352
6353         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
6354         setting entire font
6355
6356         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
6357
6358         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
6359         a bunch of individually-settable font attributes. You can still 
6360         use the "font" and "font_desc" args, they just set all the font
6361         attributes at once.
6362
6363 2000-11-13 Elliot Lee <sopwith@redhat.com>
6364
6365         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
6366
6367 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
6368
6369         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
6370         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
6371
6372         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
6373         work better.
6374
6375 2000-11-13  Havoc Pennington  <hp@redhat.com>
6376
6377         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
6378         the module file.
6379
6380         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
6381         dest->language
6382
6383         * gtk/testtext.c: Test pixels above/below/inside paragraphs
6384         settings
6385
6386         * gtk/gtktextview.c: Implement object args and setters/getters for
6387         all the aspects of the GtkTextAttributes that are not set from
6388         GtkWidget attributes. This is spacing, justification, margins,
6389         etc.
6390
6391         (gtk_text_view_set_arg)
6392         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
6393         args
6394         (gtk_text_view_class_init): Add args for justify, left_margin,
6395         right_margin, indent, and tabs
6396         
6397
6398         * gtk/gtktextlayout.c (set_para_values): fix to display indent
6399         attribute properly
6400
6401         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
6402         replace with indent attribute
6403
6404         * gtk/gtktextlayout.c (set_para_values): multiply indent by
6405         PANGO_SCALE
6406
6407         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
6408         rearranging code to do that
6409         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
6410         i.e. don't subtract the top_margin first, just to keep
6411         all margin-futzing in one place.
6412
6413         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
6414
6415         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
6416         special case of last line, Pango now handles this itself.
6417         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
6418         Y coordinate
6419         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
6420         (find_display_line_above): wasn't moving the byte index as it
6421         iterated over lines, so always returned byte 0. Also, port to use
6422         PangoLayoutIter.
6423         (find_display_line_below): same problem as
6424         find_display_line_above. Also, port to use PangoLayoutIter.
6425
6426 2000-11-13  Alexander Larsson  <alexl@redhat.com>
6427
6428         * gdk/linux-fb/*.[ch]:
6429         Massive reindent to gtk+ standard. My hands hurt.
6430
6431         * gdk/linux-fb/gdkcolor-fb.c:
6432         Move GdkColorPrivateFB from inherited to windowing_data
6433
6434         * gdk/linux-fb/gdkcursor-fb.c:
6435         _gdk_cursor_new_from_pixmap made static
6436
6437         * gdk/linux-fb/gdkdnd-fb.c:
6438         GdkDragContextPrivate moved to windowing_data
6439
6440         * gdk/linux-fb/gdkdrawable-fb2.c:
6441         Removed endian.h, use glib endianness macros instead
6442         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
6443         and GDK_DRAWABLE_IMPL_FBDATA
6444
6445         * gdk/linux-fb/gdkfont-fb.c:
6446         Add empty gdk_font_load(). Needed for linking of Gtk+.
6447
6448         * gdk/linux-fb/gdkimage-fb.c:
6449         Removed endian.h, use glib endianness macros instead
6450         Moved GdkImagePrivateFB to windowing_data
6451         gdk_image_new_bitmap didn't always allocate enough
6452         memory.
6453
6454         * gdk/linux-fb/gdkinput-ps2.c:
6455         Added semi-working support for MS serial mice.
6456
6457         * gdk/linux-fb/gdkprivate-fb.h:
6458         s/GdkWindowPrivate/GdkWindowObject/
6459         Removed GdkWindowPrivate typedef
6460         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6461         Removed GDK_DRAWABLE_P
6462         Move GdkColorPrivateFB from inherited to windowing_data
6463         Moved GdkImagePrivateFB to windowing_data
6464
6465         * gdk/linux-fb/gdkvisual-fb.c:
6466         Removed some unused debug code.
6467
6468         * gdk/linux-fb/gdkwindow-fb.c:
6469         Use stock cursors instead of including X headers.
6470         s/GdkWindowPrivate/GdkWindowObject/
6471
6472         * gdk/linux-fb/mitypes.h:
6473         Removed unused types.
6474
6475         * modules/linux-fb/basic.c:
6476         Use the pango fribidi wrappers.
6477
6478 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6479
6480         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6481         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6482         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6483         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6484         GEqualFunc where applicable.
6485         
6486         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6487         pango_font_description_equal as changed in pango.
6488         
6489         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6490
6491         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6492
6493         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6494
6495         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6496
6497         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6498
6499         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6500
6501         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6502         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6503
6504         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6505         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6506
6507 2000-11-12  Havoc Pennington  <hp@pobox.com>
6508
6509         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6510         dir to datadir/gtk+-2.0/demo
6511
6512         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6513         sorts of text widget and Pango font bugs. Urgh.
6514
6515         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6516
6517         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6518         tree that you should double click to see the demo. Fix 
6519         types of variables to reflect changed return values from 
6520         GtkTreeStore and GtkTreeViewColumn constructors.
6521
6522         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6523         newly-created buffer to prepare for GObject semantics
6524
6525         * gtk/testtext.c: don't leak the buffer with GObject semantics
6526
6527         * gtk/testtextbuffer.c: ditto
6528         
6529 2000-11-12  Havoc Pennington  <hp@pobox.com>
6530
6531         Rename this testgtk to gtk-demo to avoid confusion, and 
6532         install it so people can use it as a supplement to 
6533         the documentation.
6534         
6535         * demos/gtk-demo: Moved from demos/testgtk
6536
6537         * demos/testgtk: Removed
6538
6539         * configure.in: make Makefile in gtk-demo
6540         
6541         * demos/gtk-demo/Makefile.am: Install sample source to 
6542         datadir/gtk-demo (maybe there's a better place?), and 
6543         rename the binary to gtk-demo
6544         
6545         * demos/gtk-demo/main.c (load_file): Load installed sample
6546         source if source isn't found in pwd.
6547
6548 2000-11-09  Havoc Pennington  <hp@pobox.com>
6549
6550         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6551         argument to set the char displayed when visibility == FALSE
6552         (gtk_entry_create_layout): If !entry->visible, replace 
6553         all chars with the "invisible char"
6554
6555         * gtk/testgtk.c: Test the invisible_char deal
6556         
6557 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6558
6559         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6560         can't get a native font in the right encoding.
6561
6562 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6563
6564         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6565         respectively.
6566
6567 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6568
6569         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6570         Fix warning when moving between paragraphs.
6571
6572         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6573         delete => delete_from_cursor, insert => insert_at_cursor
6574
6575 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6576
6577         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6578
6579         * modules/input/imthai-broken.c: A Thai input method for use if
6580         Thai keys are really generating Latin1 keysyms.
6581
6582         * modules/input/Makefile.am: Build these.
6583
6584 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6585
6586         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6587         g_filename_{to,from}_utf8 now takes an extra parameter.
6588
6589         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6590         strftime into UTF-8.
6591
6592         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6593         calendars.
6594
6595         (gtk_calendar_paint_day_names): Draw day names in the right 
6596         place.
6597         
6598 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6599
6600         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6601         problem with using result of g_get_charset() backwards -
6602         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6603
6604         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6605         negative min_width/height and max_width/height to
6606         mean "requisition"; this allows setting a window
6607         to be user-resizable in only one direction easily.
6608
6609         * gtk/testgtk.c (create_main_window): Remove hard-coded
6610         usize - set a default size in the vertical direction.
6611
6612 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6613
6614         * gtk/gtkrange.c: Add some missing casts. Support 
6615         2 and 3 button clicks on the arrows to mean 
6616         "move by pages" and "jump to end". (Like gtkspinbutton)
6617
6618 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6619
6620         * gdk/win32/makefile.msc : reflect build module changes
6621
6622         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6623         from GdkPixmap*, cast implementation member instead.
6624
6625         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6626         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6627         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6628         more Gdi functions return value checking. 
6629         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6630         GdkImagePrivateWin32 *.
6631
6632         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6633         menus useable again. Add #pragma message to keep reminded on this issue.
6634         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6635         windows. This allows to enable backing store on Win32!
6636
6637         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6638         in drawable is of impl type. Correct specific type checks appropriate.
6639  
6640         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6641         GDK_WINDOW_DESTROYED before allocating new resources.
6642
6643         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6644
6645         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6646         (gdk_window_foreign_new) initialize parent handle.
6647         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6648
6649         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6650         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6651         problems (e.g. main buttons in testgtk). 
6652
6653 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6654
6655         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6656         gtk_widget_activate for GDK_Return.
6657
6658         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6659         of preedit cursor position.
6660
6661 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6662
6663         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6664         static.
6665
6666 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6667
6668         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6669         out support for multiple locales; that simple doesn't
6670         work reliably with current Xlib
6671
6672         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6673         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6674         Add support for positioning the cursor within the preedit string.
6675
6676 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6677
6678         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6679         at XIM input method module.
6680
6681         * gtk/gtktextview.c: Check for bindings after passing
6682         events to im context filter.
6683
6684 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6685
6686         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6687         empty attribute lists properly.
6688
6689 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6690
6691         * gtk/queryimmodules.c (main): Return non-zero exit
6692         status if errors were encountered querying any
6693         modules.
6694
6695         * modules/input/Makefile.am (moduledir): remove
6696         leftover bin program target.
6697
6698         * docs/make-todo: Fix typo in error message.
6699
6700 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6701
6702         * configure.in: Add modules/input/Makefile
6703
6704 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6705
6706         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6707         don't include gtkthemes.h.
6708
6709         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6710         to point
6711
6712         * gtk/Makefile.am: Add new .c and .h files, build 
6713         gtk-query-immodules and use it to create a gtk.immodules
6714         file for use of test programs.
6715
6716         * gtk/gtkpreview.c: remove extra blank line.
6717
6718 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6719
6720         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6721         Add the ability to add extra tables beyond the default
6722         one, and also the ability to have compose sequences 
6723         that are prefixes of other compose sequences. 
6724
6725         * gtk/gtkimcontextsimple.c: Export a preedit string which
6726         consists of possible candidates for keystrokes that have
6727         been entered but not yet committed.
6728
6729         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6730         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6731
6732         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6733         Add a function to add input-method switching menu items
6734         to a menu.
6735
6736         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6737         when switching input methods.
6738
6739         * gtk/gtkimcontextsimple.[ch]: Change the format of
6740         the compose table to allow compose tables of different
6741         lengths / sequence.
6742
6743 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6744
6745         * gtk/gtkimmodule.[ch]: Support routines for loading
6746         GtkIMContext implementations dynamically at runtime.
6747
6748         * modules/input/imcyrillic-translit.c: A sample input
6749         method (based on GtkIMContextSimple with an extra table),
6750         which demonstrates preedit strings and the module
6751         system for input modules
6752
6753         * gtk/queryimmodules.c: Program to query the available
6754         input modules and write the results into a file.
6755          
6756         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6757         extra config options "im_module_file" (cache file for
6758         input method modules), and "im_module_path" - path
6759         to look for modules when generating cache file.
6760
6761         This doesn't scale.
6762
6763 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6764
6765         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6766         generic code from gtkthemes into a new abstraction
6767         GtkModule which has the logic for implementing
6768         a loadable module which implements a number of 
6769         GObject types.
6770
6771 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6772
6773         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6774         a class into an interface  
6775         
6776         * gtk/gtkoldeditable.[ch]: Move the old editable
6777         implementation into here, so legacy widgets can
6778         still rely on the implemenation. GtkOldEditable
6779         exports GtkEditable. Make selection handling
6780         code use new text conversion functions (and
6781         handle UTF-8 as a side-effect). Use GtkClipboard
6782         for CLIPBOARD.
6783
6784         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6785         Adopt to match above changes.
6786
6787         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6788         avoid GtkOldEditable implementation. Restructure
6789         to reduce number of places that modify state directly.
6790         Move to GtkBindingSet. Display the preedit string.
6791         Queue recomputation of PangoLayout and scroll position
6792         to improve effiency of doing complex changes naively.
6793         Add a menu with cut/copy/paste and input method selection.
6794
6795 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6796
6797         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6798         to set preedit string and attributes; display preedit string by
6799         inserting string and attributes at cursor when creating the
6800         GtkTextLineDisplay.
6801
6802         * gtk/gtktextlayout.c: Move all conversions between byte
6803         positions in PangoLayout and GtkTextIter into new functions
6804         line_display_iter_to_index/index_to_iter that properly
6805         handle the preedit string.
6806
6807         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6808         it to return const char * (eventually will end up
6809         as GCONST char *, most likely.)
6810
6811         * gtk/gtktextview.[ch]: Handle the preedit string, call
6812         gtk_im_context_reset() as necessary, add a menu to switch
6813         input methods.
6814         
6815         * gtk/gtktextlayout.[ch]: Remove useless
6816         gtk_text_layout_get_log_attrs() function.
6817
6818 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6819
6820         * gdk/gdk.def
6821         * gtk/gtk.def: Update.
6822
6823         * gdk/win32/*.c: Add last argument to g_type_register_static()
6824         calls.
6825
6826         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6827
6828         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6829         generated by older wheel mouse drivers. Get the correct y
6830         coordinate from WM_MOUSEWHEEL messages.
6831
6832         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6833         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6834         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6835         Debugging functions.
6836
6837         * gdk/win32/gdkprivate-win32.h: Declare them.
6838
6839         * gdk/win32/gdkinput-win32.h: Add declaration for
6840         gdk_input_window_destroy().
6841
6842         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6843
6844 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6845
6846         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6847         function to help handle keeping things in sync.
6848
6849 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6850
6851         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6852         BOXED marshallers.
6853
6854         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6855         (gtk_list_store_class_init): use the new BOXED marshallers.
6856
6857         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6858         new_with_values to new_with_types.
6859         (gtk_tree_store_get_column_type): add this.
6860         (gtk_tree_store_class_init): use the new BOXED marshallers.
6861
6862         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6863         mirror some POINTER marshallers.
6864
6865 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6866
6867         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6868         allow more interesting iterators.  Also, made the lifecycle of
6869         iterators more explicit.
6870
6871         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6872
6873         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6874         types.
6875
6876 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6877
6878         * demos/testgtk/menus.c:
6879         Changes to make the new testgtk compile after
6880         gtk_menu_append was removed.
6881
6882         * gdk/linux-fb/gdkdrawable-fb2.c
6883         (gdk_fb_get_depth, gdk_fb_get_visual,
6884         gdk_drawable_impl_fb_class_init): Implement
6885         these drawable functions. Now GtkImages work again.
6886
6887         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6888
6889         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6890         
6891         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6892         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6893         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6894         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6895
6896 2000-11-08  Havoc Pennington  <hp@pobox.com>
6897
6898         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6899         visible_set args, don't know where these had gone, I thought they
6900         used to be there
6901
6902         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6903         now we can test the feature and see that it's totally broken.
6904
6905 2000-11-08  Havoc Pennington  <hp@pobox.com>
6906
6907         Make DND copy pixbufs and tags when source and target share a 
6908         tag table.
6909         
6910         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6911         in-process GTK_TEXT_BUFFER_CONTENTS target
6912         (gtk_text_view_drag_data_received): Paste from
6913         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6914
6915 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6916
6917         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6918         API changes.
6919
6920         * gtk/gtkmenu.c: Add support for scrolling menus.
6921         Remove gtk_menu_append/prepend/insert, these have been moved to
6922         gtkcompat.h as #defines.
6923
6924         * gtk/gtkcompat.h.in:
6925         Add compatibility #defines for gtk_menu_append/prepend/insert
6926
6927         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6928         GtkMenuPositionFunc gets an extra argument push_in.
6929         gtk_menu_append/prepend/insert removed.
6930         
6931         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6932         positioning behaviour to fit to scrolling menus.
6933
6934         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6935         into menuitem->submeny. That is wrong, and broke torn
6936         off submenus of torn off menus, since they were unrealized
6937         when the first menu was unrealized.
6938
6939         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6940         gtk_menu_shell_select_item() since these need to be overridden in
6941         GtkMenu.
6942
6943         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6944         positioning behaviour to fit to scrolling menus.
6945         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6946         the current item so that it is prelighted when the menu pops up.
6947         This is a workaround to the fact that the menu doesn't get the
6948         initial enter event (due to grabs).
6949
6950         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6951         s/gtk_menu_append/gtk_menu_shell_append/
6952
6953         * gtk/gtknotebook.c:
6954         s/gtk_menu_insert/gtk_menu_shell_insert/
6955
6956         * gtk/testgtk.c (create_menu, create_menus):
6957         Create the first menu with 50 items so that menu scrolling
6958         can be tested.
6959         
6960         
6961         Patch from Jonathan Blandford  <jrb@redhat.com>
6962
6963         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6964         system to handle size requests.  First, we ask what the size of
6965         the toggle is.  Then, when allocating the size, we allocate the
6966         toggle_size first.  This way we can have multiple menu-item
6967         classes w/o needing a seperate class for each.
6968
6969         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6970         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6971
6972         * gtk/gtkcheckmenuitem.c
6973         (gtk_check_menu_item_toggle_size_request): New function to handle
6974         the toggle size-request.
6975
6976 2000-11-07  Havoc Pennington  <hp@redhat.com>
6977
6978         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6979         Half-ass somewhat fix this function, so that scrolling to the
6980         insertion point works. Pango hacking is in the future to really
6981         fix it.
6982
6983         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6984         length of data, no longer used.
6985
6986         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6987         method contents in here, get rid of destroy method
6988         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6989         that were backward. Remove debug spew.
6990         (cut_or_copy): Make the clipboard work with insert_range to
6991         preserve tags and pixbufs, not just the primary selection.
6992
6993 2000-11-07  Havoc Pennington  <hp@redhat.com>
6994
6995         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6996         to gtk_text_mark_get_visible
6997
6998         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6999         bug that was generating an invalid iterator
7000
7001         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
7002         ensure_char_offsets() in front of code placing the iter in an
7003         invalid state.
7004
7005         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
7006         make override_location arg const
7007         (paste): Replace the selection if we paste into the 
7008         current selection
7009
7010         * gtk/gtkselection.h: Remove "GtkSelectioData"
7011         (struct _GtkSelectionData): move the definition here.
7012
7013         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
7014         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
7015
7016         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
7017
7018         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
7019         (gtk_text_buffer_insert_range_interactive): implement
7020         (gtk_text_buffer_get_tags): Remove, replaced by
7021         gtk_text_iter_get_tags()
7022
7023         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
7024         limit parameter, to avoid infinite linear scan.
7025         (gtk_text_iter_backward_search): Add search limit
7026         (gtk_text_iter_forward_find_char): Add search limit
7027         (gtk_text_iter_backward_find_char): Add search limit
7028
7029 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
7030
7031         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7032         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
7033         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
7034         gdk/linux-fb/gdkwindow-fb.c:
7035         use g_object_new() instead of g_type_create_instance() which
7036         is a private function for fundamental type implementations.
7037
7038         * gdk/linux-fb/gdkinput-ps2.c:
7039         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
7040         instead just store the current modifier state. Add a (somewhat broken)
7041         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
7042         Rename exported function gdk_input_ps2_get_mouseinfo to
7043         gdk_input_get_mouseinfo.
7044
7045         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
7046         gdk/linux-fb/gdkwindow-fb.c:
7047         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
7048         
7049
7050 2000-11-02  Havoc Pennington  <hp@redhat.com>
7051
7052         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
7053         use stock buttons. Should be 100% source compatible, appropriate
7054         filesel fields now point to dialog->vbox and dialog->action_area.
7055         On the bizarre side, dialog->action_area and filesel->action_area
7056         are not the same widget.
7057         (gtk_file_selection_init): Put some padding around the selection
7058         entry, so it isn't touching the GtkDialog separator.    
7059
7060         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
7061         use stock buttons, etc. Should also be source compatible.
7062         Set the dialog default title in _init not _new().
7063         
7064         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
7065         Use stock buttons; don't put a button box inside the existing
7066         dialog button box. Don't bother with push/pop colormap anymore.
7067
7068         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
7069         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
7070         for message dialog, and necessary for the font selection and color
7071         selection with help and apply buttons.
7072         
7073         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
7074         to the created button widget. Set GTK_CAN_DEFAULT on the button.
7075         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
7076         between buttons, put less padding around the action area.
7077         (gtk_dialog_run): Exit on unmap rather than on destroy. 
7078         This will also exit the loop if the widget is hidden.
7079         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
7080         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
7081         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
7082         special-case delete event.
7083
7084         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
7085         formatting
7086         
7087 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
7088
7089         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
7090         button to temporarily disable position recording in the
7091         "saved position" test.
7092
7093 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
7094
7095         * gtk/gtkthemes.c: added compat code that temporarily implements
7096         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
7097         going to be revamped by owen's upcoming GtkModule patches, but
7098         untill then people want gtk to build, right? ;)
7099
7100 2000-11-04  Havoc Pennington  <hp@pobox.com>
7101
7102         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
7103         list
7104
7105         * docs/Changes-2.0.txt: Add note about
7106         gtk_container_get_toplevels()
7107
7108         * gtk/gtktextview.h: formatting
7109         
7110         * gtk/gtktextview.c: don't start descriptions with "Returns",
7111         confuses gtk-doc
7112
7113 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
7114
7115         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
7116         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
7117
7118 2000-11-03  Havoc Pennington  <hp@redhat.com>
7119
7120         * gtk/gtktexttagtable.c: Docs
7121         (gtk_text_tag_table_size): return a signed int
7122
7123         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
7124         (gtk_text_tag_event): make the event_object a GObject
7125
7126         * gtk/gtktextview.c: Write API docs for all functions.
7127
7128         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
7129         for gtk_text_view_get_window_type() called on one of the private
7130         windows.
7131
7132         * gtk/gtktextview.c: Instead of accessing text_view->buffer
7133         directly, call get_buffer() which demand-creates a default
7134         buffer. So gtk_text_view_new() can be used to create a view with a
7135         default buffer in it, if you just want an empty text box users can
7136         put data in. Useful for GUI builders also.
7137
7138 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
7139
7140         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
7141         the charset encodign portion MUST be in lowercase.
7142         * gtk/gtkrc.az: added file for Azeri language
7143
7144 2000-11-03  Havoc Pennington  <hp@redhat.com>
7145
7146         Get widgets working on the btree/buffer side. Display of them 
7147         still doesn't work.
7148         
7149         * gtk/gtktextview.c: start implementing child widget stuff
7150
7151         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
7152
7153         * gtk/gtktextlayout.c: handle embedded widgets
7154
7155         * gtk/gtktextdisplay.c: handle embedded widgets
7156
7157         * gtk/gtktextchild.c: Implement all the child anchor goo
7158
7159         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
7160         function
7161
7162         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
7163         (insert_pixbuf_or_widget_segment): abstract out common portions of 
7164         creating a child anchor or a pixbuf segment.
7165         (gtk_text_btree_create_child_anchor): new function
7166         (gtk_text_btree_unregister_child_anchor): new function
7167
7168         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
7169         allocate_child signal on GtkTextLayout
7170
7171         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
7172         values
7173         (gtk_text_iter_get_child_anchor): new function
7174
7175         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
7176         default handler for the changed signal, which calls
7177         gtk_text_buffer_set_modified(), instead of just always emitting
7178         changed then calling set_modified() manually. I guess this is
7179         maybe more flexible. It seems logical.
7180
7181 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
7182
7183         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
7184         now.
7185
7186         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
7187
7188 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
7189
7190         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
7191         been marked static.
7192
7193 2000-11-02  Havoc Pennington  <hp@redhat.com>
7194
7195         * gtk/testgtk.c (create_labels): had a test backward
7196
7197         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
7198         fields, so the dest GC ends up with the correct clip origin, 
7199         etc. Fixes a bug where colored labels didn't redraw 
7200         properly.
7201
7202 2000-11-02  Alexander Larsson  <alexl@redhat.com>
7203
7204         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
7205         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
7206         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
7207         Add last argument to t_type_register_static call.
7208         
7209         * gdk/linux-fb/gdkdrawable-fb2.c:
7210         Add last argument to t_type_register_static call.
7211         export the get_image drawable virtual function.
7212
7213         * gdk/linux-fb/gdkimage-fb.c:
7214         Add last argument to t_type_register_static call.
7215         rename gtk_image_get to _gdk_fb_get_image and
7216         export it for use by gdkdrawable-fb2.
7217
7218         * gdk/linux-fb/gdkprivate-fb.h:
7219         export _gdk_fb_get_image.
7220
7221         * gdk/linux-fb/gdkselection-fb.c:
7222         Add new api call stubs.
7223
7224         * gtk/Makefile.am:
7225         Missing ( in linux-fb part.
7226
7227         * modules/linux-fb/Makefile.am:
7228         Must link with gdk_pixbuf or get unresolved symbol.
7229
7230 2000-11-01  Havoc Pennington  <hp@pobox.com>
7231
7232         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
7233         GTK_TYPE_TEXT_ITER and BOXED marshallers
7234
7235         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
7236
7237         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
7238         
7239         * gtk/gtk-boxed.defs: add GtkTextIter
7240
7241         * gtk/gtkmarshal.list: Add marshallers for text widget that 
7242         properly use OBJECT and BOXED
7243
7244 2000-11-01  Havoc Pennington  <hp@redhat.com>
7245
7246         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
7247
7248         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
7249         before returning it. 
7250         
7251 2000-11-01  Havoc Pennington  <hp@redhat.com>
7252
7253         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7254         Clip the rectangle to be rendered to the drawable, since
7255         get_from_drawable() requires a region within the drawable
7256
7257 2000-11-01  Havoc Pennington  <hp@redhat.com>
7258
7259         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
7260         from coordinates.
7261
7262 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
7263
7264         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
7265         it isn't NULL.
7266
7267 2000-11-01  Havoc Pennington  <hp@pobox.com>
7268
7269         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
7270         on a label
7271         (gtk_label_finalize): unref the attr list if any.
7272
7273         * gtk/testgtk.c (create_get_image): close test on second click
7274         (make_message_dialog): close dialog if it exists
7275
7276         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
7277
7278         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
7279         gdk-pixbuf
7280
7281         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
7282         from Pango markup format
7283         (gtk_label_set_markup_with_accel): ditto but with accelerator
7284         parsing
7285
7286         * gtk/gtkimage.c (gtk_image_expose): reformatting.
7287
7288         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
7289         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
7290         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
7291         call gdk_window_get_origin().
7292
7293         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
7294         implement GDK_PIXBUF_ALPHA_FULL
7295         
7296 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
7297
7298         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
7299         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
7300         g_signal_handlers_disconnect_matched to block/unblock and disconnect
7301         multiple handlers respectively, instead of only treating the
7302         first handler found (bug reported by owen).
7303
7304 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
7305
7306         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
7307
7308         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
7309
7310         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
7311         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
7312         gtk/gtktreeviewcolumn.h: Fixed inline docs.
7313
7314         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
7315         widget.  Needs writing someday.
7316
7317         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
7318         the docs.
7319
7320 2000-10-30  Havoc Pennington  <hp@redhat.com>
7321
7322         * gtk/gtktextview.h, gtk/gtktextview.c:
7323         Rename delete_at_cursor delete_from_cursor, and 
7324         move to move_cursor.
7325
7326 2000-10-30  Havoc Pennington  <hp@redhat.com>
7327
7328         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
7329         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
7330         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
7331         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
7332         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
7333         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
7334         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
7335         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
7336         gtktexttypes.h, gtktextview.c, gtktextview.h:
7337
7338         Massive reindentation and reformatting. Arg alignment and comments
7339         still need fixing in various places.
7340
7341 2000-10-30  Havoc Pennington  <hp@redhat.com>
7342
7343         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
7344         to be named insert_at_cursor and delete_at_cursor so C++ can
7345         handle them.
7346
7347 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7348
7349         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
7350         to get a double directory separator in case the home directory
7351         ends with one. This would cause trouble especially on Windows,
7352         where the path will be confused with the syntax for an an UNC
7353         (network share) path \\server\share\path.
7354         (gtk_rc_add_initial_default_files): Ditto.
7355
7356 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
7357
7358         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
7359
7360         * gtk/gtktextview.c: Use correct marshallers.
7361
7362 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
7363
7364         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
7365         use new iter stuff, and added all the appropriate signals et al.
7366
7367         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
7368         code is internal to gtk only.
7369
7370 2000-10-28  Tor Lillqvist  <tml@iki.fi>
7371
7372         * gtk/gtk.def
7373         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
7374         glib-genmarshal etc.
7375
7376 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
7377
7378         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
7379         parallel builds.
7380
7381 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
7382
7383         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
7384
7385 2000-10-27  Robert Brady  <robert@suse.co.uk>
7386
7387         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
7388         en_GB (British), ia (Interlingua).
7389
7390 2000-10-26  Havoc Pennington  <hp@redhat.com>
7391
7392         * gtk/gtktextiter.c (my_strrstr): fix constness warning
7393
7394         Fixed output of:
7395         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
7396         
7397         * gtk/gtktextsegment.c (char_segment_new): rename
7398         (_char_segment_new_from_two_strings): rename
7399         (_toggle_segment_new): rename
7400         
7401         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
7402         (make_clipboard_widget): make it static
7403         (text_get_func): static
7404         (text_clear_func): static
7405
7406         * gtk/gtkcolorsel.c (adjustment_changed): make this function
7407         static
7408         (hex_changed): make it static
7409         (hsv_changed): make it static
7410         (opacity_entry_changed): make it static
7411
7412         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
7413         (toggle_segment_check_func): rename with _gtk
7414
7415         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
7416         (_widget_segment_new): rename
7417         (_widget_segment_add): rename
7418         (_widget_segment_remove): rename
7419         (_widget_segment_ref): rename
7420         (_widget_segment_unref): rename
7421
7422         * gtk/gtktextmark.c (_mark_segment_new): Rename
7423         _gtk_mark_segment_new   
7424
7425 2000-10-26  Havoc Pennington  <hp@redhat.com>
7426
7427         * gtk/gtkmarshal.list: add new marshallers used by the text widget
7428         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
7429         types
7430
7431         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
7432         marshaller types
7433
7434         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
7435         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
7436         license on these files.
7437
7438         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
7439         work.
7440
7441         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
7442         runtime random number different for each tree, instead of 
7443         a constant I made up.
7444
7445 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
7446
7447         * gtk/Makefile.am: buncha cleanups, kludged build sources
7448         dependencies with a Makefile: oldest-source-stamp dependancy
7449         for the moment. automake is really fighting us here, with
7450         intentionally not allowing user-defined rules or dependancies
7451         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7452
7453         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7454         to public headers. tehy have a comment stating that they are
7455         "semi-public" aren't included by gtk.h and if enums popup there,
7456         they can be /*< skip >*/-ed.
7457
7458         * gtk/gtktextlayout.h: 
7459         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7460         added LGPL... <SIGH>
7461
7462 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7463
7464         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7465         GtkTreeIter.  Added iterators everywhere.
7466
7467         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7468
7469         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7470
7471         * gtk/gtktreestore.c: Changed to use the iterators.
7472
7473         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7474         iterators tomorrow.
7475
7476         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7477         iterators tomorrow.
7478
7479         * gtk/treestoretest.c: Changed to use iterators.
7480
7481         * demos/testgtk/main.c: Moved to use the new iterator system.
7482
7483 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7484
7485         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7486         localization misbehaviour.
7487
7488         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7489         a useless type without copy/free.
7490
7491         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7492         of GTK_TYPE_CTREE_NODE.
7493
7494 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7495
7496         * gtk/gtksignal.c:
7497         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7498         applicable.
7499
7500         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7501         gtk_selection_data_copy and gtk_selection_data_free
7502         do GtkSelectionData work as params in signals.
7503
7504 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7505
7506         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7507         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7508         couldn't they at least give it a non-standard name?
7509         
7510         * gtk/gtktextlayout.c: arg! yet another implementation of
7511         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7512
7513         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7514         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7515         home. now i know this _is_ a conspiracy.
7516
7517         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7518         ::state-changed.
7519
7520         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7521         (gtk_accel_group_create_add): marshaller signature fixups.
7522
7523         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7524         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7525
7526         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7527         anymore.
7528
7529 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7530
7531         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7532         due to the signal system changes, it wouldn't build currently. to
7533         be fixed soon.
7534
7535         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7536
7537         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7538         so it needs gtk_marshal_VOID__ENUM() instead of
7539         gtk_marshal_NONE__UINT().
7540
7541         * gdk/gdk*.c: adapted type registration functions.
7542
7543         * gtk/gtkbindings.c:
7544         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7545         gone.
7546
7547         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7548
7549         * gtk/gtkobject.c:
7550         (gtk_object_destroy):
7551         (gtk_object_shutdown): fixed recursion guards. basically we have to
7552         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7553         is called during ::destroy, and avoid recursion there.
7554
7555         * gtk/gtktypeutils.c:
7556         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7557         boxed_copy/boxed_free. this needs a more general solution based on a
7558         publically installed code-generator utility.
7559
7560         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7561         glib's gobject has support for that now.
7562         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7563
7564 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7565
7566         * gtk/gtksignal.[hc]:
7567         * gtk/gtkmarshal.[hc]:
7568         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7569         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7570         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7571         care of that.
7572
7573         * *.c: marshaller name fixups.
7574
7575         * gtk/gtkmarshal.list: added a comment briefing the format.
7576
7577 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7578
7579         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7580         compatibility macros here now. more specifically, most of
7581         the API is preserved (yes, _most_, nonwithstanding the
7582         following exceptions listed, the API is stil lHUGE ;)
7583         things that got removed completely:
7584         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7585         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7586         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7587         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7588         gtk_signal_remove_emission_hook().
7589         non-functional functions variants:
7590         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7591         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7592         not supported anymore.
7593         (gtk_signal_compat_matched): new internal function to aid
7594         implementation of the compatibility macros, it  provides
7595         functionality to block/unblock/disconnect handlers based
7596         on func/data.
7597
7598         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7599
7600         * *.c: adaptions to new type registration API signatures.
7601
7602 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7603
7604         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7605
7606 2000-10-25  Robert Brady  <robert@suse.co.uk>
7607
7608         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7609         gdk_property_delete): If window == NULL, assume the root window.
7610         (restoring the behaviour that was in 1.2).
7611         
7612         * gtk/testtext.c (save_buffer): Allow creation of new files when
7613         saving.
7614
7615         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7616         calls to read().
7617
7618 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7619
7620         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7621
7622         * gdk/win32/gdkdrawable-win32.c
7623         * gdk/win32/gdkimage-win32.c
7624         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7625         X11 backend.
7626
7627         * gdk/win32/gdkcc-win32.c
7628         * gdk/win32/gdkcolor-win32.c
7629         * gdk/win32/gdkfont-win32.c
7630         * gdk/win32/gdkinput-win32.c
7631         * gdk/win32/gdkmain-win32.c
7632         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7633
7634 2000-10-24  Havoc Pennington  <hp@redhat.com>
7635
7636         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7637         it a static function
7638
7639         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7640         redraw text when a tag is applied to it.
7641
7642         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7643         (gtk_text_tag_affects_nonsize_appearance): private functions to
7644         see if a tag requires various kinds of redraw/layout to be queued
7645         up.
7646
7647         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7648
7649         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7650         at the start of the buffer, so search works by default
7651
7652         * gtk/gtktextiter.c (lines_match): init match_start always
7653
7654         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7655         function, get iter at a line + a byte index
7656
7657         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7658         to set byte position within a line
7659         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7660
7661 2000-10-23  Havoc Pennington  <hp@redhat.com>
7662
7663         * gtk/testtext.c: Re-enable the "find" dialog
7664
7665         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7666         
7667         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7668         the arguments to gdk_draw_drawable were in the wrong order
7669         (gdk_window_paint_init_bg): This function was ignoring the
7670         init_region, instead of clipping to it, so the entire backing
7671         pixmap was cleared on every begin_paint()
7672         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7673         was in here again, the loop kept using the same GtkWindowPaint
7674         over and over.
7675         (gdk_window_begin_paint_region): Fix a bug where we had two
7676         x_offset instead of x_offset and y_offset
7677
7678         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7679         before we get the image.
7680         (gdk_draw_drawable): get the composite before we draw the drawable.
7681         (gdk_drawable_real_get_composite_drawable): default
7682         get_composite_drawable implementation that returns the drawable 
7683         itself
7684
7685         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7686         get_composite_drawable virtual function
7687
7688         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7689         list-walking bug
7690
7691         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7692         make this work if the source drawable is a GdkDrawableImplX11
7693         instead of a public drawable type. This is really broken; the
7694         problem is that GdkDrawable needs a virtual method get_xid(), but
7695         of course that doesn't work in practice. Enter RTTI.
7696
7697         Also, improve mismatched depth message.
7698
7699         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7700         GdkPixmap
7701
7702         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7703         install _gdk_x11_get_image as our implementation of get_image
7704         
7705         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7706         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7707
7708         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7709         gdk_drawable_get_image
7710
7711         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7712
7713         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7714         get_image
7715
7716         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7717         trailing semicolon after for loop
7718
7719 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7720
7721         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7722         where font_desc for widget's context lagged widget's font_desc by
7723         one step.
7724
7725 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7726
7727         * gdk/win32/gdkgc-win32.c
7728         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7729
7730         * gtk/makefile.mingw.in
7731         * gtk/gtk.def: Updates.
7732
7733         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7734         library.
7735
7736         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7737
7738         * gtk/makefile.msc: Remove
7739
7740         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7741
7742         * gtk/Makefile.am: Add it.
7743
7744         * configure.in: Generate it.
7745
7746         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7747         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7748         something even if not implemented, to satisfy picky MSVC.
7749
7750         Patches by Hans Breuer:
7751         
7752         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7753         SetBkMode() and SetTextAlign() before calling
7754         pango_win32_render().
7755
7756         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7757         Set hcliprgn to NULL after destroying it.
7758         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7759
7760         * gdk/win32/gdkgeometry-win32.c
7761         (_gdk_windowing_window_queue_antiexpose): More effective
7762         implementation.
7763
7764         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7765         depth as default, not the visual's.
7766
7767         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7768         against empty title.
7769
7770         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7771         IMAGE_PRIVATE_DATA.
7772
7773         * gdk/win32/gdkimage-win32.c: Use it.
7774
7775 2000-10-22  Robert Brady  <robert@suse.co.uk>
7776
7777         * configure.in: Check for bind_textdomain_codeset
7778
7779         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7780         present, make use of it.
7781
7782         Add a translatable string "default:LTR" which, if translated
7783         to "default:RTL", will cause the default direction to be
7784         Right-to-Left.
7785
7786         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7787         direction if marked as flippable.
7788
7789         * gtk/gtkhscale.c: Mark widget as flippable.
7790         
7791 2000-10-04  Havoc Pennington  <hp@redhat.com>
7792
7793         * gtk/testgtk.c (create_buttons): create some stock buttons
7794         with the default accel group
7795         (create_image): test some new GtkImage features
7796         (make_message_dialog): test GtkMessageDialog
7797         (create_modal_window): fix someone's bizzarro indentation
7798
7799         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7800         GTK_WIN_POS_CENTER_ON_PARENT. 
7801         Add "destroy with parent" setting, which means the window goes
7802         away with its transient parent.
7803         (gtk_window_get_default_accel_group): get the default accel group
7804         for the window.
7805         (gtk_window_set_destroy_with_parent): set/unset destroy with
7806         parent flag
7807         (gtk_window_read_rcfiles): invalidate icon set caches
7808         after reloading rcfiles 
7809
7810         * gtk/gtkenums.h (GtkWindowPosition): add
7811         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7812         on its parent window when the dialog is mapped for the first time.
7813
7814         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7815         a simple message dialog class
7816         
7817         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7818         handler to emit response signal, and maybe later it would
7819         honor a hide_on_delete flag - though that isn't there yet.
7820         Set border width on the vbox to 2, so we get some padding.      
7821         Use a button box for the action area.
7822         (gtk_dialog_key_press): synthesize a delete event if Esc
7823         is pressed and the GtkWidget key press handler didn't 
7824         handle the escape key.
7825         (gtk_dialog_new_with_buttons): new function creates a dialog
7826         with some default buttons in it.
7827         (gtk_dialog_add_action_widget): add an activatable widget
7828         as a button in the dialog - you can also add a non-activatable
7829         widget by accessing the action area directly.
7830         (gtk_dialog_add_button): add a simple button - stock ID or 
7831         label - to the action area
7832         (gtk_dialog_response): emit response signal
7833         (gtk_dialog_run): block waiting for the dialog, return 
7834         the response. Override normal delete_event behavior, so that 
7835         delete_event does nothing inside gtk_dialog_run().
7836
7837         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7838         emitted when an action widget is clicked or the dialog gets
7839         delete_event
7840
7841         * gtk/gtk.h: add gtkmessagedialog.h
7842
7843         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7844
7845 2000-10-18  Havoc Pennington  <hp@redhat.com>
7846
7847         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7848         where any number of empty lines would get skipped
7849
7850         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7851         edge.
7852
7853         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7854         warning about invalid iterators (explain more thoroughly)
7855         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7856
7857         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7858         big
7859
7860         * demos/*.c: Add error handling
7861
7862         * gtk/gtktextbuffer.c: don't modify const iterators
7863
7864         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7865
7866         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7867         on file load
7868
7869         * gtk/gtkiconfactory.c: Update to reflect addition of error
7870         handling to gdk-pixbuf loaders
7871
7872 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7873
7874         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7875         move to new modularized testgtk.
7876
7877 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7878
7879         * gtk/gtktreeview.c: Draw the arrows correctly.
7880
7881         * gtk/gtktreemodel.c: Added user docs.
7882
7883         * gtk/gtk.h: remove gtktreedatalist.h.
7884
7885         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7886         parent when generating my type.
7887
7888         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7889         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7890
7891 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7892
7893         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7894         GtkTreeModel from object to interface.
7895
7896 2000-10-16  Havoc Pennington  <hp@redhat.com>
7897
7898         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7899         compilation
7900
7901 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7902
7903         * gtk/gtktreeselection.c: Add API documentation to all public
7904         functions.
7905
7906         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7907         functions.
7908
7909 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7910
7911         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7912         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7913         docs to all public functions.
7914
7915         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7916         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7917         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7918         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7919         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7920         issue.
7921
7922 2000-10-14  Robert Brady  <robert@suse.co.uk>
7923
7924         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7925
7926 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7927
7928         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7929         values other then G_TYPE_STRING.
7930         * gtk/gtktreeselection.c: Minor commenting updates.
7931         * gtk/gtktreeview.c: Format updates.
7932
7933 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7934
7935         * README.win32: Update.
7936
7937         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7938         lines that had been deleted by mistake (?).
7939
7940         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7941         also the case fg==white and bg==black (but still not randomly
7942         coloured cursors). Thanks to Wolfgang Sourdeau.
7943
7944         * gdk/win32/*.c: Silence gcc -Wall.
7945
7946         * gtk/gtk.def: Add missing entry points.
7947
7948         Fixes by Hans Breuer:
7949
7950         * gdk/makefile.msc
7951         * gdk/win32/makefile.msc: Update.
7952
7953         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7954         some MSVC thing, presumably), cause breakpoint on failures. Add
7955         GDK_NOR case. Call g_log_set_always_fatal.
7956
7957         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7958         should be pased by reference.
7959         
7960         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7961         
7962         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7963
7964         * gdk/win32/gdkevents-win32.c
7965         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7966
7967         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7968         implementation object.
7969
7970         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7971         not just windows.
7972         
7973         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7974         Use the wrapper object.
7975         
7976 2000-10-06  Havoc Pennington  <hp@redhat.com>
7977
7978         * Makefile.am (SRC_SUBDIRS): contrib subdir
7979
7980         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7981         so it can be used in Xlib version
7982
7983         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7984         tree
7985
7986         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7987         change from 1.0 tree that returns first frame of animation
7988         if the loaded file is an animation.
7989
7990         * contrib: add new directory to hold stuff that comes with GTK+
7991         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7992         
7993         * configure.in: add contrib/*
7994
7995 2000-10-05  Havoc Pennington  <hp@redhat.com>
7996
7997         * demos/testpixbuf-save.c: add pixbuf save test
7998
7999         * demos/Makefile.am: add testpixbuf-save.c
8000
8001 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
8002
8003         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
8004         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
8005         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
8006         * gtk/gtktreeselection.[ch]: Replaced
8007         "node_selected"/"node_unselected" signal with "selection_changed"
8008         signal.
8009
8010 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8011
8012         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
8013         tree widget.
8014
8015 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
8016
8017         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
8018         drawing.
8019
8020 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
8021
8022         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
8023         Move list pointer forwards before removing item from
8024         list. (Crash reported by Salmaso Raffaele)
8025
8026         * gdk/gdkwindow.h: Remove spurious trailing ,
8027
8028         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
8029         dependencies on uninstalled libraries, sorry folks.
8030
8031 2000-10-04  Havoc Pennington  <hp@redhat.com>
8032
8033         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
8034         gtk/gtkiconfactory.c: Fix copyrights    
8035
8036         * demos/testpixbuf.c: add inline pixbuf test
8037         
8038 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
8039
8040         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
8041         Add gdk_window_iconify.
8042
8043         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
8044         (gdk_window_set_geometry_hints): Add win_gravity
8045         to geometry structure.
8046
8047         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
8048         Implement _NET_WM_PING.
8049
8050         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
8051         Set _NET_WM_PID on the client leader.
8052
8053         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
8054         Handle UTF-8 better.
8055
8056         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
8057         UTF-8 better, set _NET_WM_NAME as well. Only set
8058         icon name if it hasn't previously been explicitely 
8059         set.
8060
8061 2000-10-03  Havoc Pennington  <hp@redhat.com>
8062
8063         * gtk/testtextbuffer.c: clean up trailing whitespace,
8064         add extensive tests for tag toggle iteration.
8065         
8066         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
8067         distance
8068
8069         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
8070         optimize case where the tag root is on level 1
8071         (gtk_text_line_previous_could_contain_tag): attempt to implement
8072         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
8073         functionality
8074
8075         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
8076         Implement this, though not very efficiently.
8077
8078         * gtk/gtktextiterprivate.h: reformat
8079
8080         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
8081         iterator
8082
8083         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
8084         this to properly revalidate the iterators.
8085
8086         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
8087         properly at the end of the line (and therefore on empty lines)
8088
8089         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
8090         maybe we should return a value...
8091
8092 2000-10-03  Tor Lillqvist  <tml@iki.fi>
8093
8094         * config.h.win32: Guard definition of alloca(). glib.h now handles
8095         that.
8096
8097         * gdk/gdk.def
8098         * gtk/gtk.def: Add new entry points.
8099
8100         Changes just to make GTK+ build without errors on Win32. No hope
8101         of it working in its current state, though...:
8102         
8103         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
8104         some functions from the X11 backend, just to make GTK+ build.
8105
8106         * gdk/makefile.mingw.in
8107         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
8108         number. Add new object files.
8109
8110         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
8111         GetMessageTime to get timestamp (where on X11 uses
8112         gdk_x11_get_server_time()).
8113
8114 2000-10-02  Havoc Pennington  <hp@pobox.com>
8115
8116         * gtk/gtktextview.c: text_window_* weren't static and should have
8117         been.
8118         Start work on child widgets; not yet complete, syncing to 
8119         office computer.
8120
8121         * gtk/gtktextchild.h: change this to contain a public interface,
8122         starting work on child interfaces.
8123         * gtk/gtktextchildprivate.h: move private interfaces here
8124
8125         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
8126
8127         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
8128         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
8129         gtk/gtktextmark.c: copyright notices
8130
8131         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
8132         internal functions      
8133
8134         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
8135         internal function
8136
8137         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8138         Reformatting    
8139
8140 2000-09-30  Havoc Pennington  <hp@pobox.com>
8141
8142         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
8143         NULL start/end pointers
8144
8145         * gtk/gtktextbuffer.c: Write some docs
8146         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
8147         NULL, so you can just check whether there's a selection.        
8148
8149         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
8150         cleanup_line or segments_changed ourselves, it gets done 
8151         in unlink_segment
8152
8153         * gtk/gtktextmark.h:
8154         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
8155         
8156         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
8157
8158         * gtk/gtktextmark.c: delete some more old Tk cruft
8159
8160         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
8161         mark before removing it, so we can emit MARK_DELETED with a valid
8162         pointer.
8163         (gtk_text_buffer_mark_set): hold ref across signal emission
8164
8165         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
8166         whining about attempts to delete special marks
8167
8168         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
8169         underscore, since it's internal.
8170
8171         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
8172         now implemented in terms of iterators in gtktextiter.h
8173
8174         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
8175         New function, destructively sets contents of buffer. Also 
8176         a convenient way to clear the buffer by setting text to ""
8177
8178         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
8179         multiline string literal
8180
8181         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
8182         text changes.
8183
8184         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
8185         is not dereferenceable
8186         (gtk_text_iter_forward_lines): fix return value
8187
8188 2000-09-29  Havoc Pennington  <hp@redhat.com>
8189
8190         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
8191
8192         * gtk/gtktextview.c: Implement drag thresholding; change functions 
8193         that set border window size to have nicer name
8194         (gtk_text_view_mark_set_handler):  Fix this to have the 
8195         right signature.
8196
8197         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
8198
8199         * gtk/testtext.c: Update with API changes, put line numbers on 
8200         both sides.
8201         
8202         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
8203         with this
8204
8205         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
8206         pixbuf; delete a big block of #if 0 Tk code
8207
8208         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
8209         insert_pixmap with insert_pixbuf
8210
8211 2000-09-29  Martin Baulig  <baulig@suse.de>
8212
8213         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
8214         confusion with the GdkPixbuf of the GNOME 1.x platform.
8215
8216 2000-09-29  Havoc Pennington  <hp@pobox.com>
8217
8218         * gtk/gtktextview.c: Implement the side windows.
8219
8220         * gtk/testtext.c: Implement simple line numbering in the 
8221         left side window; seems to make scrolling sloooow. Oops.
8222         Also, cursor blink is for some reason causing redraws
8223         of the line numbers. Should investigate...
8224
8225 2000-09-28  Havoc Pennington  <hp@redhat.com>
8226
8227         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
8228         scrolling child windows, and draw focus rectangle properly.
8229         
8230         (gtk_text_view_buffer_to_window_coords):
8231         Coordinate transformation to deal with all these freaking windows
8232         and offsets
8233         (gtk_text_view_window_to_buffer_coords): transform the other way
8234
8235         * gtk/testtext.c (create_buffer): Update to match Pango API change
8236
8237         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
8238         anonymous tags
8239         (foreach_unref): don't emit remove signal from finalize, just
8240         set tag's parent to NULL
8241
8242 2000-09-26  Havoc Pennington  <hp@redhat.com>
8243
8244         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
8245         Fix some warnings       
8246
8247 2000-09-26  Havoc Pennington  <hp@redhat.com>
8248
8249         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
8250         headers into the private header list
8251
8252         * Makefile.am (pkgconfig_DATA): install pkg-config files
8253
8254         * configure.in: add pkg-config files
8255
8256         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
8257
8258         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
8259         outstanding icon caches on theme change.
8260
8261         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
8262         important types:
8263
8264         (GtkIconSource): Specification for creating a pixbuf 
8265         appropriate for a direction/state/size triplet from 
8266         a source pixbuf or filename
8267
8268         (GtkIconSet): List of GtkIconSource objects that are used to
8269         create the "same" icon (e.g. an OK button icon), and cache for
8270         rendered icons
8271
8272         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
8273         up the icon set for a given stock ID.  GTK maintains a stack of
8274         GtkIconFactory to search, and applications or libraries can add
8275         additional icon factories on top of the stack
8276         
8277         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
8278         the set of GtkIconSource specified for a given stock ID into 
8279         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
8280         RcStyle, under the specified stock ID.
8281
8282         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
8283         render_icon used to derive a GdkPixbuf from a GtkIconSource.
8284         This allows people to theme how prelight, insensitive, etc. are
8285         done.
8286
8287         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
8288         icon factories for a style, and return the resulting 
8289         icon set if any.
8290
8291         (gtk_style_render_icon): Render an icon using the render_icon 
8292         method in the GtkStyleClass.
8293
8294         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
8295         Use the style for a given widget to look up a stock ID, get the
8296         icon set, and render an icon using the render_icon method 
8297         of the style
8298
8299         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
8300         (contains information about a stock item), the built-in stock item
8301         IDs, and functions to add/lookup stock items.
8302
8303         * gtk/stock-icons/*: Stock icons that come with GTK
8304
8305         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
8306         a button based on a GtkStockItem
8307         (gtk_button_new_accel): Takes a uline string and accel group, and
8308         installs the accelerator.
8309
8310         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
8311         image-display widget.
8312
8313 2000-09-25  Havoc Pennington  <hp@redhat.com>
8314
8315         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
8316
8317         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
8318         Fix a bug when removing node data, we didn't properly 
8319         re-splice the linked list after removing the data.
8320
8321         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
8322         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
8323
8324         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
8325
8326         * gtk/gtktextlayout.c (set_para_values): Set tab array 
8327         for the layout from the GtkTextTag.
8328
8329         * gtk/gtktexttypes.h: delete tab and search cruft, 
8330         remove g_convert() in favor of GLib version
8331
8332         * gtk/gtktexttypes.c: remove tab implementation from here,
8333         move to Pango
8334
8335         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
8336         tab stuff using new PangoTabArray from Pango
8337
8338         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
8339         unused border_width stuff
8340
8341 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
8342
8343         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
8344         glib) and now useless utf_to_latin1() latin1_to_utf()
8345
8346         * gtk/gtktextview.[ch]: Change ::move_insert and
8347         ::delete_text action signals to ::move and ::delete;
8348         create the signals with the right enumeration type,
8349         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
8350         C-v bindings, change Home, End to move to beginning/end
8351         of line, Add C-Home C-End to move to beginning/end
8352         of buffer. Change ::cut_text to ::cut_clipboard, etc;
8353         combine ::scroll_text into ::move; use new GtkSelectionData
8354         functions to simplify DND text handling.
8355         
8356         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
8357         deletion enumerations here, rename enumeration values to 
8358         be consistently plural.
8359
8360         * gtk/gtktextbuffer.c: Use new clipboard interfaces
8361         for cut/copy/paste and primary selection.
8362
8363         * gtk/gtktextbuffer.[ch]: Remove excess time and
8364         'interactive' arguments from cut/copy/paste;
8365         rename cut to cut_clipboard, etc; remove
8366         gtk_text_buffer_get_clipboard_contents().
8367
8368         * gtk/gtktextlayout.[ch]: Add 
8369         gtk_text_layout_move_iter_to_line_end() to move the iter to 
8370         line ends.
8371
8372         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
8373         Functions to set or get a UTF-8 string on the selection
8374         data.
8375
8376         * gtk/gtkclipboard.[ch]: New, simplified selection handling
8377         interfaces.
8378
8379         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
8380         created widgets - one of these is useless if we don't.
8381
8382         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
8383         a public function clear all targets registered for the
8384         widget.
8385
8386         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
8387         Never call gtk_widget_realize() - that was just asking
8388         for bizarre side-effects.
8389
8390         * gtk/gtkselection.c (gtk_selection_owner_set): Call
8391         gdk_selection_owner_set even if the widget is the
8392         same so that we reliably update the timestamp on
8393         the server.
8394
8395         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
8396         gdk_x11_get_server_time() function.
8397         
8398         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
8399         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
8400         Add some tricky filtering on serial numbers for
8401         selection clear events to fix up long-standard
8402         race condition FIXME's in gtkselection.c.
8403
8404         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
8405         routines to convert from utf8 to compound text or
8406         STRING and from a text property to UTF-8.
8407
8408         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
8409         a convenience function gdk_get_current_event_time().
8410
8411         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
8412         and free selection_data->data properly
8413
8414 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
8415
8416         * gtk/gtkthemes.c: Remove some unecessary includes.
8417
8418 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
8419
8420         * gtk/gtktextdisplay.c
8421         * gtk/gtktextlayout.c
8422         * gtk/gtktexttag.c
8423         * gtk/gtktexttag.h
8424         * gtk/testtext.c: Change the overstrike property to strikethrough,
8425         to closer match pango.
8426
8427 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
8428
8429         * gtk/gtktextview.c: Fix up visibility so that focus,
8430         cursor_visible and blink interact properly.  Reenable cursor blink
8431         which had been roughly disabled. Make blink and focus
8432         properly per-view.
8433
8434         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
8435         Add a flag for whether to display insertion cursor and
8436         a function to set the flag.
8437
8438         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
8439         get_line_y() to get_line_yrange(), to be a bit more generally
8440         useful.
8441
8442 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
8443
8444         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
8445           do stop_navigating_submenu, to clear last timeout properly.
8446           Also in gtk_menu_motion_notify move ignore_enter above
8447           the conditional to make it always happen as suggested by Owen
8448
8449 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8450
8451         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8452
8453         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8454         w32api headers.
8455
8456         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8457         declarations.
8458
8459         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8460         (gdk_win32_get_colormap): A line had been deleted by mistake.
8461
8462         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8463         (gdk_event_translate): Handle more virtual keycodes to be able to
8464         generate GDK events for Control-comma, Control-period, etc.
8465
8466         * gtk/gtk.def: Add some missing entry points.
8467
8468 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8469
8470         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8471         Doc comment fixing. (Mostly non-matching parameter names.)
8472
8473         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8474         comments a little to avoid looking like a doc comment.
8475
8476         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8477         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8478         conversions be changed to GError?)
8479
8480         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8481         Move private #defines into .c file.
8482
8483         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8484         order of argument addition, remove duplicates.
8485
8486         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8487         parent class is FrameClass, not BinClass.
8488
8489         * gtk/gtk.h: Add gtkinvisible, which was missing.
8490         (It's occasionalyl useful for client apps, if seldom.)
8491
8492         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8493         #define.
8494
8495 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8496
8497         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8498         coordinates when creating window, instead of GDK-space
8499         coordinates. (Avoid BadValue on too large windows.)
8500
8501 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8502
8503         * configure.in (use_mmx_asm): Remove conftest* after use along the
8504         lines of AC_TRY_COMPILE.        
8505         
8506         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8507         of g_dirname, which is deprecated.
8508         (gtk_rc_parse_any): Removed calls to
8509         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8510
8511         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8512         Removed calls to g_hash_table_{freeze,thaw}, as they are
8513         deprecated now.
8514
8515         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8516         instead of g_basename.
8517         
8518 2000-09-04 Elliot Lee <sopwith@redhat.com>
8519         
8520         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8521         ANSI warning.
8522
8523 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8524
8525         * gtk/gtkwidget.h:  Add some documenting comments about 
8526           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8527           just as owen said on irc.
8528
8529         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8530           set HAS_DEFAULT.  Only set it if there isn't another window
8531           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8532           it if the widget is not the focused window with RECEIVES_DEFAULT.
8533           This fixes weird double default bugs in dialogs which has things
8534           call gtk_window_set_default at times.
8535
8536 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8537
8538         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8539         Nils Barth and David Santiago to improve submenu
8540         navigation. The patch does this by creating a triangular
8541         region from the point where the pointer leaves the
8542         menu to the submenu.  While the pointer is in
8543         that region and a timeout has not expired, events 
8544         that would cause the active submenu to change are
8545         ignored.
8546
8547 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8548
8549         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8550         moving a toplevel window immediately after sizing it would
8551         result in it being sized back to the old size since 
8552         impl->width, impl->height aren't updated until we hear
8553         back from the server. There is still a (longstanding) bug
8554         here that gdk_window_get_size() will give the wrong size
8555         until we do hear back.
8556
8557 2000-08-31  Havoc Pennington  <hp@redhat.com>
8558
8559         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8560         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8561         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8562         Rename GtkTextStyleValues to GtkTextAttributes
8563
8564 2000-08-31  Havoc Pennington  <hp@pobox.com>
8565
8566         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8567         for rapid testing whether an iterator is the end iterator
8568         (gtk_text_btree_new): init end line cache
8569         (gtk_text_line_is_last): use fast cached line to 
8570         see if we're the last line.
8571         (get_last_line): use cached line here too, should 
8572         speed up some random unrelated code.
8573         
8574 2000-08-30  Havoc Pennington  <hp@pobox.com>
8575
8576         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8577         signals.
8578
8579         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8580         delete_text signals. This allows the signals to be used for
8581         implementing undo.
8582
8583         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8584         provide "interactive" argument when emitting insert_text or
8585         delete_text signal.
8586         
8587 2000-08-30  Havoc Pennington  <hp@pobox.com>
8588
8589         * gtk/gtktextbuffer.c: Docs
8590
8591 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8592
8593         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8594         from switch statements, since Tor removed the enumeration
8595         value.
8596         
8597         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8598         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8599
8600 2000-08-29 Elliot Lee <sopwith@redhat.com>
8601         * */*.h: Use G_GNUC_CONST.
8602
8603 2000-08-27  Havoc Pennington  <hp@pobox.com>
8604
8605         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8606         minor indentation fixes, inserted some FIXME about stuff I
8607         realized was broken while documenting it.
8608         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8609         GTK convention  
8610
8611 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8612
8613         * gtk/testgtk.c (create_styles): Fix double free of
8614         font desc.
8615
8616 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8617
8618         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8619         
8620         * gtk/testgtk.c (create_styles): Add a test for modifying
8621         the style through gtk_widget_modify_*.
8622
8623         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8624         a function to get the current modifier style.
8625
8626         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8627         of the passed in GtkRcStyle instead of ref'ing it.
8628
8629         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8630
8631 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8632
8633         * gdk/gdkimage.h
8634         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8635         shared memory image+pixmap GdkImage type, or
8636         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8637         I am dropping that.
8638
8639         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8640         actually call gtk_init_abi_check(), passing also
8641         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8642
8643         * gtk/gtk.def
8644         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8645         New functions, used to check that the GTK+-using code has been
8646         compiled using the correct compiler and switches. In particular,
8647         with gcc one has to use the -fnative-struct switch as GTK+ is
8648         compiled with that.
8649
8650 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8651
8652         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8653         ->prev fields when merging lists. (Found simultaneously
8654         by Pawel Salek and Jakub Jelinek)
8655
8656 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8657
8658         * gdk/gdk.def
8659         * gtk/gtk.def: Add missing entries.
8660
8661         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8662         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8663
8664         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8665         function. Dummy implementation at this point.
8666
8667         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8668         rules. Undefine GTK_COMPILATION when compiling the test programs.
8669         
8670         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8671
8672 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8673
8674         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8675         to convert back and forth from UTF-8 and the "system" (or "current
8676         locale") charset when necessary. Indentation/spacing cleanup.
8677
8678 2000-08-10  Havoc Pennington  <hp@redhat.com>
8679
8680         * Makefile.am (snapshot): Change the format of the snapshot
8681         version to match glib
8682
8683         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8684         from EXTRA_DIST since it doesn't seem to exist
8685
8686 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8687
8688         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8689         version of the directory name (not the UTF-8 one) when building
8690         the path name to stat().
8691
8692 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8693
8694         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8695         PANGO_ATTR_SHAPE set.
8696
8697 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8698
8699         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8700         Peter Osterlund to simplify the code while keeping the
8701         functionality the same.
8702
8703 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8704
8705         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8706         is_viewable() test further inside the function, since removing the 
8707         window from the redraw list without clearing ->update_area
8708         was also very broken.
8709
8710 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8711
8712         * configure.in: Check for <unistd.h>.
8713
8714 2000-08-01  Martin Baulig  <baulig@suse.de>
8715
8716         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8717         to display the message that this is a development version of GTK+.
8718
8719 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8720
8721         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8722         was depending on widget->allocation instead of the width of text_area,
8723         which was incorrect for subclasses like GtkSpinButton.
8724
8725         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8726         with width == 1 tests that should be width == -1.
8727
8728 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8729
8730         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8731         (broken, Elliot, every single window blank on X) custom code with call
8732         to gdk_window_is_viewable() which a) prevents code duplicate and
8733         b) works. 
8734
8735 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8736
8737         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8738         to get the GDK_PARENT_ROOT() macro to work.
8739         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8740         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8741         of, windows that aren't shown.
8742         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8743         pointer grab stuff.
8744
8745 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8746
8747         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8748           s/gtk_main_iteration/g_main_iteration/
8749
8750           Did this already in change:
8751                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8752           don't know how it got reverted.
8753
8754 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8755
8756         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8757         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8758
8759         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8760         not gdk_pixbuf.
8761
8762 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8763
8764         * configure.in,po/{sp,sr}.po: Added Serbian files
8765
8766 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8767
8768         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8769
8770         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8771         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8772         GIOChannel implementation.
8773
8774         * gdk/win32/gdkinput.c
8775         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8776
8777         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8778         definition to match prototype.
8779
8780         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8781
8782 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8783
8784         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8785         function, to allow handling image formats that cannot be detected
8786         by looking at content alone.
8787
8788 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8789
8790         * docs/tutorial/*.gif *.jpg *.eps
8791           Update these to the same look-n-feel.
8792           Why does including images in DocBook suck so badly?
8793
8794 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8795
8796         * gtk/gtktable.c: applied patch from Phil Thompson
8797         <phil@river-bank.demon.co.uk> that enables space settings for
8798         the last row/columns as well.
8799
8800 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8801
8802         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8803         updates the license headers to the GNU Lesser General Public License,
8804         as well as updating the copyright year to 2000.
8805
8806 2000-07-26  Robert Brady  <rwb197@zepler.org>
8807
8808         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8809           and po/Makefile, was installing and looking for them under gtk20
8810           and gtk2 respectively.
8811
8812 2000-07-25  Havoc Pennington  <hp@redhat.com>
8813
8814         * gtk/testtext.c: Comment out some stuff that depends on the rest
8815         of my patches.
8816
8817 2000-07-25  Havoc Pennington  <hp@redhat.com>
8818
8819         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8820         buffer
8821
8822 2000-07-25  Havoc Pennington  <hp@redhat.com>
8823
8824         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8825         widget changes.
8826
8827         * gtk/gtktextview.h: To be consistent with usage of "line"
8828         throughout the API to mean "newline-terminated thingy", change
8829         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8830         to MOVEMENT_LINE.
8831
8832         (GtkTextView): Add flags for default editability, and whether to
8833         show the cursor. Add functions to get/set that. Add 
8834
8835         (gtk_text_view_get_iter_location): new function
8836
8837         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8838         gtktextlayout.h
8839         (g_convert): Add g_convert temporarily, will go in glib in a bit
8840         
8841         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8842         GtkTextTagTableForeach instead of brokenly using GHFunc.
8843         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8844
8845         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8846         moved to public header.
8847
8848         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8849         "invisible", since "elide" was a bad name.
8850         (gtk_text_tag_get_priority): Added
8851
8852         (GtkTextStyleValues): put this in public header, along with
8853         functions to use it.
8854
8855         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8856         longer include gtktextbtree.h.
8857
8858         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8859         gtk_text_mark_deleted
8860
8861         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8862         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8863         to make this possible. Now we only need to install
8864         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8865         (However the Makefile.am isn't changed yet because of the
8866         logistics of merging gtk-hp-patches piecemeal)
8867
8868         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8869         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8870         gtk_text_iter_get_line is now used in the public API for a
8871         different purpose.
8872
8873         * gtk/gtktextiter.h: Clean up function names to be more
8874         consistent. Always call char offset "offset" and byte index
8875         "index". A "line" is always a line number. 
8876
8877         (gtk_text_iter_is_last): new function, more efficient than 
8878         the existing way to check
8879         (gtk_text_iter_is_first): new function, also more efficient
8880
8881         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8882
8883         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8884         gtk_text_iter_forward_char, etc.
8885
8886         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8887         forward_find_tag_toggle, since this isn't a linear search
8888
8889         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8890
8891         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8892         New functions, search for a buffer substring.
8893
8894         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8895         interactive and default editable (since we need to store that info
8896         until we receive the selection data).
8897
8898         Remove all the _at_char and at_line etc. versions of functions;
8899         only have iterator versions.
8900
8901         Add _interactive() versions of functions, that consider the
8902         editability of text. (FIXME add interactive flag to the 
8903         insert/delete signals per Darin's suggestion)
8904
8905         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8906         tag table if necessary
8907
8908         Remove declaration of gtk_text_buffer_get_iter_from_string
8909
8910         (_gtk_text_buffer_get_btree): private/internal function, added.
8911         
8912
8913         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8914         (gtk_text_line_is_last): new function
8915
8916 2000-07-25  Havoc Pennington  <hp@redhat.com>
8917
8918         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8919         using GtkProgressBar. See Changes-2.0.txt for details.
8920
8921         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8922         "pulse_step" which are the equivalent of
8923         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8924         Implement new API.
8925         
8926         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8927         (use_text_format) to mark whether text set on the progress bar is
8928         a format string. Deprecate entire GtkProgress interface.
8929
8930         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8931         (gtk_progress_build_string): make this a no-op if use_text_format
8932         is FALSE
8933
8934         * docs/Changes-2.0.txt: Describe progress bar changes.
8935
8936 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8937
8938         * Makefile.am: Include the build directory.
8939
8940         * configure.in: Generate build/Makefile, build/win32/Makefile,
8941         gdk/, gdk/win32/, and gtk/makefile.mingw.
8942
8943         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8944         Add GETTEXT_PACKAGE.
8945         
8946         * gdk/gdk.def
8947         * gtk/gtk.def: Updates.
8948
8949         * gdk/gdkfont.h
8950         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8951         need them any longer.
8952
8953         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8954
8955         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8956         PANGOWIN32_LIBS and gdk_pixbuf.
8957
8958         * gdk/win32: Compiles, but no doubt doesn't work at all.
8959
8960         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8961
8962         * gdk/win32/gdkinput.c: New file, temporarily.
8963         
8964         * gdk/win32/gdkinput-win32.h: New file
8965
8966         * gdk/win32/gdkinputprivate.h: Remove.
8967
8968         * gdk/win32/gdkpango-win32.c: New file.
8969
8970         * gtk/makefile.mingw.in: New file
8971
8972         * gtk/makefile.cygwin: Removed
8973         
8974         * gtk/Makefile.am: Update accordingly.
8975
8976         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8977         made externally visible.
8978
8979         * gtk/gtkmain.c: Use it.
8980         
8981         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8982         is enough.
8983
8984         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8985
8986 2000-07-24 Elliot Lee <sopwith@redhat.com>
8987         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8988         individual backends already.
8989         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8990         again. Yes, there really is a good reason for this, if you are using the gdkregion
8991         internals, and if you're not, why do you care?
8992         * gdk/gdkwindow.c: Fix inverted condition
8993         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8994         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8995         * gtk/gtkrange.c: Redraw trough when moving.
8996         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8997         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8998
8999 2000-07-23  Tor Lillqvist  <tml@iki.fi>
9000
9001         * configure.in: Check for mkstemp and sigsetjmp. Output
9002         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
9003
9004         More work on GDK for Win32. Still in an intermediate state.
9005
9006         * gdk/makefile.cygwin
9007         * gdk/win32/makefile.cygwin: Removed.
9008         
9009         * gdk/makefile.mingw.in
9010         * gdk/win32/makefile.mingw.in: New files.
9011
9012         * gdk/Makefile.am
9013         * gdk/win32/Makefile.am: Generate and distribute them.
9014
9015         * gdk/win32/gdkwindow-win32.h
9016         * gdk/win32/gdkdrawable-win32.h
9017         * gdk/win32/gdkpixmap-win32.h: New files.
9018
9019         * gdk/win32/gdkcolor-win32.c
9020         * gdk/win32/gdkcursor-win32.c
9021         * gdk/win32/gdkdrawable-win32.c
9022         * gdk/win32/gdkgc-win32.c
9023         * gdk/win32/gdkimage-win32.c
9024         * gdk/win32/gdkprivate-win32.h
9025         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
9026         Rename fields and variables called xcursor, xid, etc (these names
9027         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
9028
9029 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
9030
9031         * gtk/gtkentry.[ch]: Fix some problems with vertical
9032         alignment.
9033
9034         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
9035         char/byte confusion.
9036
9037 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
9038
9039         * gtk/gtktextview.c (changed_handler): Fix bug where
9040         redraw wasn't being done properly when height of
9041         dirty region changed.
9042
9043         * demos/Makefile.am: Remove various references to
9044         -lgmodule
9045
9046 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
9047
9048         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
9049         PangoAttrShape to reserve space for pixmaps, add 
9050         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
9051         in the display functions.
9052         
9053         * gtk/testgtk.c (create_layout): Set some more exotic
9054         scrolled window options
9055
9056         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
9057         Add function to set the shadow type of a window, to allow
9058         putting a shadow around widgets such as GtkLayout or GnomeCanvas
9059         which don't draw their own frame.
9060
9061 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
9062
9063         * docs/tutorial/package-db-tutorial.sh: New file for
9064           packaging DocBook format tutorial
9065
9066 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
9067
9068         * docs/tutorial/gtk-tut.sgml: Minor updates
9069
9070         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
9071
9072 2000-07-19  Tor Lillqvist  <tml@iki.fi>
9073
9074         * gtk/gtksignal.c: Fix C++ comment.
9075
9076         * gtk/gtkimmulticontext.c
9077         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
9078         don't return value from void functions.
9079
9080         * gtk/gtk.def: Add gtk_rc_style_unref.
9081
9082 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9083
9084         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
9085         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
9086         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
9087         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
9088         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
9089         gtk/gtktypeutils.h: Include files outside of the extern "C"
9090         block. Makes some C++ compiler happy. Reported by Denis Vakatov
9091         <vakatov@peony.nlm.nih.gov>.
9092
9093 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
9094
9095         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
9096           Completes first pass. Hurrah!
9097
9098 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
9099
9100         * docs/tutorial/gtk-tut.sgml: More clean ups.
9101
9102 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
9103
9104         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
9105         paint the background of the text area which was accidentally
9106         removed at some point.
9107
9108         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
9109           
9110          - Move most of the functionality from the theme vtable
9111            into GtkRcStyleClass and GtkStyleClass. The moved
9112            vtable functions were changed a bit in the move to
9113            work better in their new home.
9114
9115          - Get rid of the engine and engine_data fields from
9116            GtkRcStyle and GtkStyle; instead the theme
9117            engine derives theme-specific subclasses of GtkRcStyle
9118            and GtkStyle
9119
9120          - Add extra dlsym() found entry point to themes,
9121            theme_create_rc_style().
9122
9123         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
9124         in gtk_style_real_copy.
9125
9126         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
9127         to register a type associated with an engine. (The engine
9128         won't be unloaded as there is an instance of the type.)
9129
9130
9131 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
9132
9133         * docs/tutorial/gtk-tut.sgml: Clean ups.
9134
9135 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
9136
9137         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
9138           of cleaning up to do.
9139
9140 2000-07-15  Tor Lillqvist  <tml@iki.fi>
9141
9142         * gdk/testgdk.c: New file, quick hack to test backends for
9143         pixel-by-pixel correctness of the most simple graphic operations.
9144
9145 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
9146
9147         * Really release 1.3.1
9148         
9149         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
9150         include structure.
9151
9152 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
9153
9154         * Released 1.3.1
9155
9156 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
9157
9158         * gtk/gtktextlayout.c: use FALSE for size_only most
9159         of the time when calling gtk_text_layout_get_line_display()
9160         to avoid causing double reshapes when a redraw follows
9161         immediately after.
9162
9163 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
9164
9165         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
9166         appropriate region and gdk_window_process_updates() so trough
9167         updating doesn't lag behind the window being scrolled.
9168
9169         * gdk/gdkgc.c: Make parent_class pointer static.
9170          
9171 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
9172
9173         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
9174         include <string.h>.
9175          
9176         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
9177         cut-and-paste error in computing memory offset for 4 channels.
9178
9179 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
9180
9181         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
9182         gtk_rc_append_default_pixmap_path(), since it wasn't
9183         adding an interesting path and we don't have a meaningful
9184         default for this value.
9185
9186 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
9187
9188         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
9189         gtk-config to gtk-config-2.0 move gtk_.m4 to
9190         gtk-2.0.m4
9191
9192         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9193         gdk/Makefile.am demos/Makefile.am: Change 
9194         library names to libgtk-1.3.la, etc, so that we
9195         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
9196
9197         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
9198         gdk/Makefile.am gdk/x11/Makfile.am
9199         Move include files into /usr/include/gtk-2.0, 
9200         /usr/lib/gtk-2.0/include/
9201          
9202         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
9203         gtk/gtkintl.h: Change package for gettext from 
9204         gtk+ to gtk20. Put hack in autogen.sh to modify
9205         po/Makefile.in.in after gettextize to make this
9206         possible.
9207
9208         * gtk+.spec: Some updates, not tested.
9209
9210         * gdk-pixbuf/Makefile.am: Move loaders into
9211         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
9212
9213         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
9214         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
9215         to THEMENAME/gtk-2.0/. Move engine directory  to
9216         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
9217         
9218 2000-07-12  Tor Lillqvist  <tml@iki.fi>
9219
9220         Win32 changes, still doesn't build though.
9221
9222         * gdk/makefile.cygwin
9223         * gdk/win32/makefile.cygwin
9224         * gtk/makefile.cygwin: Updates.
9225
9226         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
9227         default values for fg and bg pixel as X11 does (0 and 1), not
9228         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
9229         Use 0 for pen width by default (treated as 1 anyway later, but for
9230         apps that might check the value in the GdkGC).
9231         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
9232         interface to gdk_gc_predraw and _postdraw.
9233
9234         * gdk/win32/gdkwin32.h
9235         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
9236
9237         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
9238         extraneous semicolon.
9239
9240         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
9241
9242         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
9243         not the Win32 bitspixel value.
9244
9245         * gdk/win32/gdkcc-win32.c:
9246         * gdk/win32/gdkcolor-win32.c 
9247         * gdk/win32/gdkprivate-win32.h
9248         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
9249         GDK object structure.
9250
9251 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
9252
9253         * docs/tutorial/gtk_tut_12.es.sgml (name): 
9254         * docs/tutorial/gtk_tut_it.sgml (name): 
9255         * docs/tutorial/gtk_tut_fr.sgml (name): 
9256         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
9257         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
9258
9259 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
9260
9261         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
9262           small changes.
9263
9264 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
9265
9266         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
9267         a bug here, never been here and never fixed anything ;(
9268         (don't segfault if tree->root_tree is NULL, which happens prior
9269         to widget realization, but puke instead).
9270
9271 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
9272
9273         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
9274         add the necessary tokens.
9275
9276         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
9277         (gtk_rc_style_to_style): copy thicknesses.
9278         (gtk_rc_init_style): apply thicknesses.
9279         (gtk_rc_parse_style): parse xthickness and ythickness.
9280
9281         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
9282
9283         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
9284         (gdk_window_new): 
9285         (_gdk_windowing_window_init): 
9286         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
9287         (gdk_pixmap_create_from_data): 
9288         (gdk_bitmap_create_from_data): 
9289         (gdk_pixmap_new): 
9290         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
9291         (gdk_image_new): 
9292         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
9293         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
9294         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
9295         (gdk_colormap_get_system): 
9296         (gdk_colormap_new): 
9297         * gdk/gdkwindow.c (gdk_window_init): 
9298         * gtk/gtkstyle.c (gtk_style_new):
9299         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
9300         * gdk/gdkpixmap.c (gdk_pixmap_init): 
9301         * gtk/gtkrc.c (gtk_rc_style_new):
9302         use g_object_new() instead of g_type_create_instance() which
9303         is a private function for fundamental type implementations.
9304
9305 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
9306
9307         * configure.in: Add check for db2html
9308
9309 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
9310
9311         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
9312         hack to set glib_debug_objects based on gtk_debug_flags.
9313
9314 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
9315
9316         * INSTALL.in: Update the Prerequisites section.
9317
9318         * Makefile.am demos/Makefile.am docs/Makefile.am
9319         docs/tutorial/Makefile.am gdk/x11/Makefile.am
9320         gdk/linux-fb/Makefile.am: Dist fixes
9321
9322 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
9323
9324         * NEWS: 10,000 foot view of 1.3.1 changes.
9325
9326 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
9327
9328         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
9329         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
9330         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
9331         gdk/x11/gdkmain-x11.c: 
9332
9333         Patch from George Lebl to add a GdkGrabStatus enumeration to use
9334         as a return value of gdk_*_grab(). Previously, we just
9335         returned the X11 values directly.
9336
9337 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
9338
9339         * gdk/x11/Makefile.am: Patch from George Lebl to 
9340         install all the headers in the right place.
9341
9342 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
9343
9344         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
9345           initial conversion to DocBook.
9346
9347 2000-07-04  Tor Lillqvist  <tml@iki.fi>
9348
9349         * README.win32: Improve a bit.
9350
9351         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
9352         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
9353         Alt+0nnn on the numpad (used to enter characters by numeric code
9354         from current DOS or ANSI codepage) working correctly, as in other
9355         Windows apps.
9356
9357         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
9358         same argument validity tests as in X11 version.
9359         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
9360
9361         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
9362         definitions in case missing from headers.
9363
9364         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
9365         destroy the window-specific cursor.
9366         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
9367         calling GetModuleHandle(NULL).
9368         (gdk_window_set_cursor): Reworked to always copy the passed cursor
9369         with CopyCursor before setting it as the window-specific
9370         cursor. It is OK for the caller to destroy the GdkCursor (and thus
9371         also its Windows cursor) after calling this function. Destroy any
9372         previous window-specific cursor.
9373
9374 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
9375
9376         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
9377         font charset is iso8859-1, not iso-8859-1.
9378
9379 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
9380
9381         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
9382         Use g_get_charset() instead of g_get_codeset().
9383
9384         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
9385         Comment out some strdup'ing functions to keep timj
9386         happy until we finish fighting this out.
9387
9388 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
9389
9390         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
9391         <= width or height.
9392
9393         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
9394         from 1.2 for parent/child states.
9395
9396         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
9397         of typos.
9398
9399         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
9400         event structures, replace with a generic axes field. Replace 
9401         deviceid/sourec with GdkDevice *device.
9402
9403         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
9404         to extract particular axis use value from event. (Also
9405         can be used for normal X/Y.)
9406
9407         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
9408         allow for arbitrary number of axes, namespace everything
9409         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
9410         everywhere.
9411
9412         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
9413         Get rid of the gdk_input_vtable setup if favor of simply
9414         defining the functions in gdkinput-none/gxi/xfree.c in
9415         a similar fashion to the way that the port structure is 
9416         done.
9417
9418         * gtk/gtkdnd.c: Fix fields of synthesized button press event
9419         for new event structures. 
9420
9421         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
9422         new device interfaces.
9423
9424 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
9425
9426         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
9427         set the initial text.
9428
9429         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
9430         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
9431         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
9432         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
9433
9434         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9435         pango_layout_set_font_description to simplify.
9436
9437 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
9438
9439         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
9440         pango_layout_set_font_description to simplify.
9441
9442 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
9443
9444         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
9445         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
9446         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
9447
9448         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
9449         PANGO_PIXELS() macro.
9450
9451 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9452
9453         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9454         that returns a PangoContext owned by the widget and updated to
9455         match future changes in the widget. Also, make 
9456         gtk_widget_create_pango_layout() use this context. If we ever
9457         add a ::changed signal to PangoContext, this will make things
9458         much more convenient. 
9459
9460         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9461         in the appropriate places instead of destroying the layouts and
9462         creating new ones.
9463
9464         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9465         in a few strategic places.
9466
9467 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9468
9469         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9470         gtk_widget_size_request() on reparented child, if one. Otherwise,
9471         queue_resize() on the child never results in it getting size-requested
9472         at all.
9473
9474         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9475         in option menus, so that (with luck) people won't copy it into
9476         their apps in the future.
9477
9478         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9479         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9480         a lot of problems with changing the size of the menu's menu
9481         items after adding it to the option menu.
9482
9483         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9484
9485         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9486         the text direction for a widget changes.
9487
9488         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9489         ::direction_changed to get rid of various hacks.
9490
9491 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9492
9493         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9494         name.
9495
9496 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9497
9498         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9499         flag to the structure. Do not call XFreePixmap on pixmaps created
9500         by gdk_pixmap_foreign_new().
9501
9502 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9503
9504         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9505         value using GdkRGB functionality given GdkColormap and GdkColor.
9506         (name not final, waiting for inspiration.)
9507         
9508         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9509         set the foreground/background of a GC using the GC's colormap
9510         and GdkRGB. (name not final, waiting for inspiration.)
9511
9512         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9513         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9514
9515         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9516         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9517         purely a function of the corresponding colormap. Make
9518         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9519
9520         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9521         gdk_pixbuf_*create_from_xpm_* in terms of
9522         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9523         code.
9524
9525         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9526         advantage of the new draw_rgb_32_image_dithalign.
9527
9528         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9529
9530         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9531         on each created GC.
9532
9533         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9534
9535         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9536         which we initialize from the drawable when the GC is created,
9537         if the drawable has a colormap.
9538
9539         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9540
9541         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9542
9543         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9544
9545 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9546
9547         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9548         actually returning expose events, make sure to set
9549         the count field properly.
9550
9551         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9552         accidentally reintroced bug which always cleared
9553         the graphics_exposures value. 
9554
9555 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9556
9557         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9558
9559 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9560
9561         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9562
9563 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9564
9565         * docs/faq/gtk-faq.sgml: Start of Section 6.
9566
9567 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9568
9569         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9570         
9571         (Fixes problem with drawing childless frames. Pointed out
9572         by and a first patch from Anders)
9573         
9574         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9575         compute a child_allocation, even if we don't have a child.
9576
9577         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9578         Always chain to the parent's impl, even if we don't have a child.
9579
9580 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9581
9582         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9583         use multiple parts of it instead of creating a bunch of separate
9584         segments, since the maximum number of segments per system is not
9585         large. (This might be worth backporting to GTK+-1.2.x if we make a
9586         new release )
9587
9588         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9589         structure in preparation for per-colormap GdkRGB.
9590
9591         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9592         to False when we get EINVAL from shmget so that the caller of
9593         gdk_image_new can retry with a smaller segment size.
9594
9595 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9596
9597         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9598
9599 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9600
9601         * configure.in: make the current version number 1.3.1 (binary age 0,
9602         interface age 0).
9603         
9604         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9605         gtkcompat.h is all we want.
9606
9607         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9608         GLib primitive types. fixed g_type_register_fundamental() argument
9609         ordering.
9610
9611         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9612         compiles.
9613
9614         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9615         object code cleanup, comment trigraph fixes, etc...
9616
9617 2000-06-23  Havoc Pennington  <hp@redhat.com>
9618
9619         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9620         instead of making up a bogus name for first_para_mark
9621
9622         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9623         0 as a context ID
9624
9625 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9626
9627         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9628
9629 2000-06-21  Havoc Pennington  <hp@pobox.com>
9630
9631         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9632         we didn't check window->bg_pixmap != GDK_NO_BG.
9633
9634         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9635         gdk-pixbuf
9636
9637 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9638
9639         * docs/faq/gtk-faq.sgm: Move file to here.
9640           TODO: Update Makfile.am 
9641
9642 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9643
9644         * docs/gtk-faq.sgm: Add Section 2
9645
9646 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9647
9648         * docs/gtk-faq.sgm: New file. Start of DocBook
9649           version of the FAQ.
9650
9651 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9652
9653         * configure.in (GDK_PIXBUF_MAJOR): Define version
9654         numbers for GDK_PIXBUF_*, as they get substituted
9655         into a header file. Need to consider versioning
9656         for gdk-pixbuf more carefully later.
9657
9658 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9659
9660         Work with srcdir != builddir.   
9661         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9662         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9663         * demos/testpixbuf.c: Likewise.
9664         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9665         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9666         <gdk/x11/gdkx.h>.
9667         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9668         "gdk-pixbuf.h".
9669         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9670
9671 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9672
9673         * TODO.xml: Change 1.4 version numbers to 2.0.
9674
9675 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9676
9677         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9678         fixups to GTK+ standard.
9679
9680 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9681
9682         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9683         gdk-pixbuf.
9684
9685         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9686         fixups for GObject.
9687
9688         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9689         gdk-pixbuf with GDK dependencies moved into GDK.
9690         
9691         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9692         move gdk-pixbuf-loader here until GObject has signals.
9693
9694         * demos/: New directory of demos. Move demos from
9695         gdk-pixbuf here.
9696
9697         * demos/pixbuf-init.c: Small bit of code to check for
9698         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9699         set GDK_PIXBUF_MODULEDIR appropriately.
9700
9701         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9702         define which no longer makes sense.
9703
9704 2000-06-21  Havoc Pennington  <hp@redhat.com>
9705
9706         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9707         gtk_get_default_language
9708
9709         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9710         new function to get the default language
9711
9712         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9713         s/gtk_text_view_style_values/gtk_text_style_values/
9714
9715         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9716         Add a "language" field to tags.
9717
9718         (gtk_text_tag_set_arg): Fix bug in setting
9719         "bg_full_height_set" tag.
9720
9721 2000-06-21  Havoc Pennington  <hp@redhat.com>
9722
9723         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9724         in the interfaces
9725
9726         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9727         stuff instead when possible.
9728
9729         * gtk/gtktexttypes.h: Delete some unused constants
9730
9731         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9732         testtextbuffer.c: use glib instead of custom unicode routines
9733
9734 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9735
9736         * docs/es/: Removed mistakenly added generated sgml
9737
9738         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9739         Remove outdated info files.
9740
9741         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9742         Moved tutorial files into subdir
9743
9744         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9745         subdir.
9746
9747         * docs/man/gtk_button.pod: Remove. (contents will be
9748         integrated into gtk-reference button page.)
9749
9750         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9751         docs/faq/Makefile.am: Adjust for new organization
9752
9753 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9754
9755         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9756         not $(MKINSTALLDIRS)
9757
9758 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9759
9760         * gtk/testgtk.c (create_text): Finish the job Elliot started
9761         of removing font setting test for text widget. (Since text widget
9762         and GdkFont are not deprecated, and cause portability problems.)
9763
9764 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9765
9766         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9767         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9768         Remove use of libunicode in favor of new GLib functions.
9769
9770         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9771         nano-x, framebuffer. The X11 include is just a hack until we get
9772         the necessary functions in gdkcolor.h, so there is no reason to
9773         add other includes of platforms.
9774
9775         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9776         window bigger than the screen change.
9777
9778         * gtk/testgtk.c: Revert some random changes from Elliot
9779         that had no particular point and were causing testgtkrc
9780         not to function correctly.
9781         
9782         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9783         because GdkSegment and GdkRegionBox have the same fields,
9784         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9785         results in clearer code.
9786
9787         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9788         gdk_input_translate_coordinates): Fix missed GdkObjectification
9789
9790 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9791
9792         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9793         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9794
9795 2000-06-20  Havoc Pennington  <hp@redhat.com>
9796
9797         * modules/linux-fb/Makefile.am: Make this compile
9798         without framebuffer enabled
9799
9800         * gdk/linux-fb/Makefile.am: Add conditional to not build
9801         framebuffer unless specified in configure
9802
9803         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9804         the size of the target instead of source if -1 was passed for
9805         width/height
9806
9807         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9808         width/height confusion.
9809
9810 2000-06-19  Havoc Pennington  <hp@redhat.com>
9811
9812         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9813         GDK_DRAWABLE_XID. In the future, we probably want to make it
9814         faster with G_DISABLE_CHECKS turned on.
9815
9816 2000-06-14  Havoc Pennington  <hp@redhat.com>
9817
9818         * gdk/Makefile.am: add gdkpixmap.c
9819
9820         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9821         s/gdk_image_init/_gdk_windowing_image_init
9822
9823         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9824         ref/unref
9825
9826         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9827
9828         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9829         GdkWindowType is now non-deprecated; 
9830         change gdk_window_get_type() compat to be
9831         gdk_window_get_window_type().
9832
9833         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9834
9835         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9836         virtual GObject. Make all functions call into the vtable.
9837         Move gdk_image_put() guts in here. Remove GdkDrawableType
9838         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9839         draw_image, get_depth, get_size, set_colormap, get_colormap,
9840         get_visual added to the vtable.
9841         
9842         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9843         GObject. Virtualize everything. 
9844         (gdk_gc_new_with_values): remove check for destroyed window,
9845         because now GdkWindow::create_gc will check this.
9846         (gdk_gc_set_values): New function to set GC values, this 
9847         was already implemented but wasn't in the header
9848
9849         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9850
9851         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9852         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9853         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9854         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9855         _gdk_windowing_window_init, rename gdk_image_init to
9856         _gdk_windowing_image_init.
9857         
9858         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9859         (gdk_draw_layout): Remove check for destroyed window, 
9860         because all the drawable methods already check it.
9861         
9862         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9863         Add gdkpixmap.c which contains implementation of GdkDrawable
9864         virtual table (by chaining to a platform-specific implementation
9865         object).
9866         
9867         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9868         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9869         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9870         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9871         GdkColormapPrivate. 
9872
9873         * gdk/gdktypes.h: #include <glib-object.h>
9874
9875         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9876         Move most functionality to platform-specific implementation
9877         object. GdkWindow itself now handles the backing store, then
9878         chains to the platform-specific implementation.
9879         (gdk_window_get_window_type): return GdkWindowType of the window.
9880         (gdk_window_peek_children): New routine, returns the children of 
9881         a GdkWindow
9882         (gdk_window_get_children): Was in X11-specific code and did 
9883         XQueryTree. Changed to simply return a copy of window->children; 
9884         so it can go in cross-platform code.
9885         
9886         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9887
9888         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9889         GdkColormap; just changed to use the new private data instead
9890         of casting to GdkColormapPrivate.
9891
9892         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9893         gdk_cursor_new().
9894
9895         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9896         (private data member in the GObject). 
9897         (xdnd_manager_source_filter): Function had broken 
9898         error handling, fix it (use gdk_error_trap_push).
9899
9900         * gdk/x11/gdkdrawable-x11.c: This file now implements
9901         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9902         base class is purely for the convenience of the X port,
9903         and not part of the interface to cross-platform GDK.
9904
9905         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9906         
9907         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9908         specific to X, and returned by the create_gc virtual method
9909         of GdkDrawableImplX11. 
9910         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9911         rather than gchar, this was also changed in the GdkGC vtable.
9912         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9913         mask is 0, return immediately, instead of checking every flag.
9914         This is faster, and keeps us from segfaulting if values is NULL
9915         and the mask contains some nonzero flags.
9916
9917         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9918         GdkWindow.
9919
9920         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9921         GdkWindowPrivate is gone.
9922
9923         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9924
9925         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9926         remove the image_put stuff that got transferred to GdkDrawable.
9927         
9928         * gdk/x11/gdkinput.c: renamings
9929
9930         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9931
9932         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9933
9934         * gdk/x11/gdkprivate-x11.h: indentation fixes
9935
9936         * gdk/x11/gdkproperty-x11.c: renamings
9937
9938         * gdk/x11/gdkselection-x11.c: renamings
9939
9940         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9941         implements the platform-specific "impl" object.
9942         Moved gdk_window_get_children to gdk/gdkwindow.c
9943
9944         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9945         that no longer exist. Add declaration of GdkGCX11 object here.
9946         Fix all the macros to still work. 
9947
9948         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9949         GdkDragContext from the boxed types since they are now GObjects.
9950
9951         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9952         moved xthickness/ythickness into the instance. GtkStyleClass
9953         functions are now in the standard vtable for GtkStyle, so you have
9954         to create a GObject subclass to write a theme engine.
9955         (gtk_style_copy): fixed a leaked PangoFontDescription
9956         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9957         can be the standard GObject function.
9958         
9959         * Throughout GTK:
9960         s/style->klass->[xy]thickness/style->[xy]thickness
9961         s/pango_layout_unref/g_object_unref/
9962
9963         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9964         
9965         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9966         accessing GDK internals.
9967
9968         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9969         accessing GDK internals.
9970
9971 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9972
9973         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9974
9975         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9976         problem by calculating event position relative to the trough
9977         rather than the slider.
9978         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9979
9980         * gdk/gdkgc.h: Add GDK_NOR.
9981
9982         * configure.in, Makefile.am: Add modules top level dir
9983         * configure.in: Only use pangox library if building x11 target.
9984         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9985
9986 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9987
9988         * gtk/gtkcolorsel.c: Change private class member to be named
9989         private_data throughout the file.
9990
9991         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9992         private_data to avoid clashing with keyword.
9993
9994 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9995
9996         * gdk/gdkdnd.h: Add comment to remove warning.
9997
9998 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9999
10000         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
10001         Byelorussian language; changed the Makefile and file names 
10002         to reflect that.
10003
10004 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
10005
10006         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
10007         rather than gdk_window_hide; this makes things work
10008         correctly if the window is programmatically hidden while
10009         iconified.
10010
10011 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
10012
10013         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
10014         cut and paste typo where wrong pixmap was being
10015         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
10016
10017 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
10018
10019         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
10020         Add helper function to compute format / bytes 
10021         relationship. Use in a couple places to fix up
10022         errors which assume 8 * format.
10023
10024         * gtk/gtkselection.c (gtk_selection_request): Use 32
10025         rather than 8 * sizeof (GdkAtom), to work correctly
10026         on Alpha.
10027
10028 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
10029
10030         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
10031         libgtk.la
10032         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
10033         versions
10034
10035         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
10036         checking macros return NULL since the function has a return value.
10037
10038 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
10039
10040         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
10041         GTK+ from building at all.
10042
10043         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
10044
10045 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
10046
10047         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
10048         gtk/Makefile.am: make it possible to configure gtk for different
10049         targets on the same platform. The library name is now 
10050         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
10051         flag. Only the x11 target compiles right now.
10052         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
10053         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
10054         * gdk/nanox/gdk*generic*: delete generic region code.
10055         * gdk/linux-fb/gdk*generic*: delete generic region code.
10056         * README.nanox: update information.
10057         
10058 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
10059
10060         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
10061         prepend not append. (Pointed out by Brett Hall.)
10062
10063 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
10064
10065         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
10066
10067 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
10068
10069         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
10070         need this later, and this makes sure that the atexit for
10071         glib gets called after that for GDK, so atexits are
10072         properly ordered for object leak checking.
10073
10074         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
10075
10076         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
10077         pango_x_shutdown_display()
10078
10079         * gtk/simple.c (main): Close window on destroy.
10080
10081 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
10082
10083         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
10084         to treat initial creation different from setting with 
10085         regards to the graphics-exposures parameter, so add a parameter
10086         indicating whether this is initial or not.
10087
10088 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
10089
10090         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
10091         to sort of work by adding an extra return_exposes arg
10092         to gdk_event_translate() - it might be better to simply
10093         deprecate the function altogether and force people to rewrite
10094         without it. gdk_window_scroll() handles most of it, and where
10095         gdk_window_scroll() doesn't work, simply redrawing more does.
10096
10097         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
10098         assertion.
10099
10100         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
10101
10102         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
10103         bunch of pretty much useless /* Print debugging info */ comments 
10104         which had drifted away from the code they were commenting.
10105
10106 2000-06-02  Havoc Pennington  <hp@pobox.com>
10107
10108         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
10109         is in working order.
10110         
10111         * gtk/testtext.c: Change to reflect anonymous mark API
10112
10113         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
10114
10115         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
10116         field, which was unused.
10117
10118         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
10119         saves some typing.
10120
10121         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
10122
10123         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
10124         flag on the insertion point and selection bound
10125
10126         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
10127         make mark-manipulation functions take a GtkTextMark* instead of a
10128         mark name.
10129         
10130         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
10131         GtkTextMarkBody; will be used to detect attempts to delete
10132         the permanent marks (insert and selection bound)
10133
10134         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
10135
10136 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
10137
10138         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
10139         flag to on.
10140
10141         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
10142         Honor DOUBLE_BUFFRED_FLAG
10143
10144         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
10145         function to set the DOUBLE_BUFFERED flag.
10146
10147         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
10148         or not exposes done on the widget should be double-buffered.
10149
10150         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
10151         to be what would be expected. (Fixes problem with a
10152         g_return_if_fail() validating a TextDirection enumeration)
10153
10154 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
10155
10156         * gtk/gtkwidget.c: Remove all references to 
10157         offscreen flag which was no longer used.
10158
10159         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
10160
10161         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
10162         for non-null label_widget->parent.
10163
10164         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
10165         which no longer was used.
10166
10167         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
10168
10169         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
10170         for null arguments.
10171
10172         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
10173         check for destroyed windows.
10174
10175 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
10176
10177         * gtk/gtkimmulticontext.c: Add a finalize method and unref
10178         the slave context there.
10179
10180         * gtk/gtkinvisible.[ch]: Make reference counting behavior
10181         identical to GtkWindow.
10182
10183 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
10184
10185         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
10186         pangox to here, so we can write them independent of rendering
10187         system, using GDK primitives.
10188
10189         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
10190         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
10191         since we have a rendering-system independent implementation in
10192         terms of draw_glyphs().
10193         
10194         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
10195         function to render a single line.
10196
10197         * gdk/x11/gdkpango.c: Move the guts of this file mostly
10198         into ../gdkpango.c, which simplifies things, since we
10199         don't have to deal with raw X gc's.
10200
10201 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
10202
10203         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
10204         get the logical attributes for a given GtkTextLine.
10205
10206 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
10207
10208         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
10209         g_locale_get_codeset() to g_get_codeset() change.
10210
10211 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
10212
10213         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
10214         descriptions.
10215
10216         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
10217         the entry.
10218
10219         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
10220         redoing (vastly simplifying) for Pango. Still needs quite
10221         a bit of work. (Size selection is currently poor. List of 
10222         predefined sizes is not a good idea, since all of these
10223         sizes won't necessarily be distinct.)
10224
10225 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
10226
10227         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
10228         CODESET results for LANG=C.
10229
10230 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
10231
10232         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
10233         which takes a stringized pango font description;
10234         ignore the older 'font' and 'fontset' declarations.
10235
10236         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
10237         field with a GdkFont derived via gdk_font_from_description(),
10238         for compatibility. (Should we just remove it entirely?
10239         Probably too much compatibility breakage, but people
10240         should be migrating to the new Pango stuff as quickly
10241         as possible.)
10242
10243 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
10244
10245         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
10246
10247 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
10248
10249         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
10250         redoing; there are some bugs in size allocation right
10251         now, the semi-existant distinction between header / day
10252         fonts was removed, but, with Pango, could actually
10253         be made functional in a nice way.
10254         
10255         * gtk/testcalender: Move calender from examples into this
10256         directory as a test program. (We really need to restrcture
10257         testgtk into a whole directory full of tests for every
10258         widget or functionality group, separated into multiple .c
10259         files.)
10260
10261 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
10262
10263         * gtk/testgtk.c (file_exists): Fix stupid typo that
10264         was keeping RC file from being loaded.
10265
10266         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
10267         RC file font code.
10268
10269 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
10270
10271         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
10272         Add function to load a GdkFont from a PangoFontDescription.
10273
10274 2000-05-29  Tor Lillqvist  <tml@iki.fi>
10275
10276         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
10277         variable should be of type GdkEventPrivate.
10278
10279 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
10280
10281         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
10282         to have any widget for the label, use a GtkLabel widget
10283         to display the text. (Based partially on a patch from
10284         Anders Carlson.)
10285
10286         (Quite a bit of code reorganization - strip 90% of the
10287         guts out of gtkaspectframe and add a single virtual
10288         func to GtkFrameClass - compute_child_allocation.)
10289
10290 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
10291
10292         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
10293         (Removed clist->row_center_offset field because caching
10294         it wasn't saving time or code, added private function
10295         _gtk_clist_create_cell_layout()).
10296
10297 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
10298
10299         * gtk/gtkaccellabel.c: Pangoized.
10300
10301         * gtk/[hv]ruler.c: Pangoized
10302
10303 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
10304
10305         * gtk/gtkfilesel.c (gtk_file_selection_init):
10306         Use gtk_clist_set_column_auto_resize() to remove need
10307         need for manual column width computations.
10308
10309 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
10310
10311         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
10312         ensuring Pango correctness, and considerably simplifying the
10313         code.
10314         
10315         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
10316
10317         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
10318         getting of numbers of lines.
10319
10320         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
10321         to the actual requested width of the lable, not to the wrap
10322         width we set.
10323
10324         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
10325
10326         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
10327           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
10328
10329         * gtk/gtktextview.c: Fix structure inheritance.
10330
10331         * gtk/gtkprogressbar.c: Pangoize.
10332
10333 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
10334
10335         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
10336         in a function.
10337
10338         * gtk/gtktextlayout.c (find_display_line_above): Fixed
10339         bug with computing line tops.
10340
10341         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
10342
10343 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
10344
10345         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
10346         and y_offset coordinates to do what we need now. (The offset between
10347         buffer and layout coordinates has been reintroduced, but is a 
10348         bit different than before.)
10349
10350         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
10351         handle the adjustments ourselves, and scroll as necessary using
10352         the new gdk_window_scroll().
10353         
10354         The advantage of this is that when we are incrementally revalidating,
10355         we are essentially rearranging things around the visible portion
10356         of the screen. With the old setup, the visible portion of the
10357         screen was moved around in the layout, so scrolling and redrawing
10358         to track that caused jumping of the display. Since we now
10359         control the scrolling ourselves, we can suppress this and
10360         only redraw when things actually change.
10361
10362 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
10363
10364         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
10365         the region not just redisplay it after-all, since we store the
10366         cursors in the LineDisplay. (Ugly interactions here between
10367         GtkLayout and GtkTextBTree here.)
10368         
10369         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
10370
10371 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
10372
10373         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
10374         Added function to scroll contents of a window while keeping the
10375         window constant. Works by XCopyArea or guffaw-scrolling depending
10376         on the details of how the window is set up. (guffaw-scrolling
10377         still needs to be filled in.)
10378
10379 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
10380
10381         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
10382         move the debugging that was tied to a global variable
10383         to that.
10384
10385         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
10386
10387         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
10388         validated flag, in line data instead of setting height/width to
10389         -1. This allows us to perform operations with partially invalid
10390         buffer (using the old size for invalid lines) and thus to do
10391         incremental vaidation. Keep height/width aggregates up to date
10392         when deleting text and rebalancing the tree.
10393
10394         * gtk/gtktextbtree.[ch]: Add functions validate a line
10395         (gtk_text_btree_validate_line), and to validate up
10396         to a number of pixels (gtk_text_btree_validate).
10397
10398         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
10399         that indicates that something is changed and a revalidation
10400         pass is needed. Change ::need_repaint to ::changed, and
10401         make it take old and new yranges instead of a rectangle.
10402
10403         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
10404         the line_data_destroy() function from 
10405         gtk_text_btree_add_view() to a virtual function in 
10406         GtkTextLayout
10407
10408         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
10409         since we are handling partial repaints in a different fashion
10410         now.
10411
10412         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
10413         of the selection instead of queueing a repaint on the
10414         entire widget.
10415
10416         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
10417         get_selection_bounds() down to btree, make the function
10418         in buffer a wrapper around the btree function.
10419
10420         * gtk/gtktextlayout.[ch]: Add functions to check if the
10421         layout is valid and to recompute either a range of pixels
10422         aroudn a line or a certain total number of pixels.
10423
10424         * gtk/gtktextlayout.[ch]: Cache a single line display;
10425         now that we only redraw the needed portions, the hit rate
10426         for this cache is quite high.
10427         
10428         * gtk/gtktextview.[ch]: Keep track of the first paragraph
10429         on the screen so that when re-laying-out the buffer, we can
10430         keep the same place. This requires connecting to ::value_changed
10431         on the adjustments
10432
10433         * gtk/gtktextview.[ch]: Add idle functions to revalidate
10434         the buffer after we receive an ::invalidated signal.
10435         
10436 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
10437
10438         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
10439         to max of allocation and layout size, not just to the
10440         layout size.
10441
10442         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
10443         Invalidate window so it gets redrawn properly.
10444
10445         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
10446         to mean the entire window.
10447
10448         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
10449         into public header.
10450
10451 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10452
10453         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10454         to get the name of a mark.
10455
10456         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10457         to find the paragraph from a y position.
10458
10459 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10460
10461         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10462         nodes have width/height >= 0, not > 0.
10463
10464 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10465
10466         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10467         Add a size_only flag, so when we only need the size, we don't create
10468         useless appearance attributes.
10469
10470         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10471         duplicate setting of font description.
10472
10473         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10474
10475 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10476
10477         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10478         EXTRA_DIST. It does not work well when the file that
10479         everything depends on is not in the tarball.
10480
10481 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10482
10483         * gtk/testgtk.c: Some hacks and fixes so that it basically
10484         works when not sitting in the GTK+ build tree.
10485
10486 2000-05-03  Havoc Pennington  <hp@redhat.com>
10487
10488         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10489         Properly determine the ordering of the tag root and the current
10490         line within the tree. Previous algorithm only worked if the tag
10491         root's immediate parent was the common root of both the current
10492         line and the tag root.
10493
10494 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10495
10496         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10497         alignment.
10498
10499         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10500         the widget text directional dynamically.
10501
10502         * gtk/gtktextview.[ch]: Added functions to get and set default
10503         wrap mode.
10504
10505 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10506
10507         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10508         in cursor location computation.
10509
10510 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10511
10512         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10513         vadjusment values properly when layout gets smaller.
10514
10515         * gtk/gtktextview.c (need_repaint_handler): Areas being
10516         passed in are far completely inaccurate, and sometimes
10517         too small, so, for now, just queue a redraw on the
10518         whole visible region.
10519
10520 2000-04-25  Havoc Pennington  <hp@redhat.com>
10521
10522         * gtk/gtktextbtree.c (summary_destroy): new function to 
10523         destroy tag summary nodes
10524         (gtk_text_line_next_could_contain_tag): this function was 
10525         totally broken if the line passed in wasn't below the tag
10526         root. Fix it.
10527         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10528         "wildcard" case, we have to do a linear scan. Blah.
10529         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10530         we have to do the linear scan
10531         (tag_removed_cb): When a tag is removed from the tag table, 
10532         remove the GtkTextTagInfo node from the btree.
10533         (gtk_text_btree_spew): Implement the spew function, for 
10534         our debugging pleasure.
10535
10536 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10537
10538         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10539         a problem with referring to the wrong buffer.
10540
10541         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10542
10543         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10544         font description to gtk_style_new() - otherwise things
10545         don't work without a .gtkrc file.
10546
10547         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10548         tags table if we create it ourself, too.
10549
10550         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10551         it was conflicting with XKB modifiers.
10552
10553         * gtk/gtktextview.[ch]: Add simple support for 
10554         GtkIMContext.
10555
10556 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10557
10558         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10559         with deletion from last commit.
10560
10561 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10562
10563         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10564         in the context from the current locale.
10565         
10566         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10567         context, not hardcoded value.
10568
10569         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10570         not logical.
10571
10572 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10573
10574         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10575         attributes - that doesn't handle partial-glyph selection
10576         properly. Instead use new pango_layout_line_get_x_ranges()
10577         functionality to draw the selection.
10578
10579         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10580         now properly handles out-of-range coordinates.
10581
10582         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10583
10584         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10585         public.
10586
10587         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10588         for paragraphs opposite to the base direction of the widget.
10589
10590         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10591
10592         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10593         causes Arabic words to reshape as you cursor through.
10594
10595         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10596         cursor position when moving vertically with the arrow keys and
10597         scrolling with page-up/page-down. (Arrow keys save only the X,
10598         scrolling saves both X and Y.)
10599
10600         This means you can line-up / line-down or page-up / page-down
10601         without losing your place, and also that moving vertically
10602         with the cursor keys keeps the same X position, not the same
10603         character count:
10604
10605         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10606         arrow keys move by display lines, not paragraphs.
10607
10608 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10609
10610         * gtk/gtklayout.c: Make sure that the bin window is at least
10611         as big as the allocation. (Should we also make sure that the
10612         bin window is big enough to completely cover widget->window?)
10613
10614         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10615         function to get the onscreen rectangle.
10616
10617         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10618         for offsets in window coordinates.
10619
10620 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10621
10622         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10623         confusion.
10624
10625         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10626         from the widget direction.
10627
10628         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10629         Add a "direction" attribute.
10630
10631         * gtk/gtktextview.c: global s/tkxt/text_view/.
10632
10633         * gtk/testtext.c: Added long block of text in Arabic, to test out
10634         the direction attributes. (Some problems with the shaping system
10635         for arabic become obvious - like the fact the cursor splits words
10636         into unjoined pieces.)
10637
10638 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10639
10640         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10641
10642         * gtk/gtktextlayout.c: Fix up alignment.
10643
10644         * gtk/testtext.c: Add some tests for centering, wrapping.
10645
10646 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10647
10648         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10649         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10650         If we wrote GTK+-specific layout-render function this could just replace
10651         the draw_layout() operation in the vtable.
10652
10653         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10654         pango_layout_get_cursor_pos() and use that function.
10655
10656         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10657         is a non-static symbol.
10658
10659         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10660         with gtk_text_btree_find_line_by_y()
10661
10662         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10663         renderer that handles GtkTextAppearance attributes.
10664
10665         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10666
10667           - Move the values in the style that don't affect geometry into a
10668             GtkTextAppearance structure.
10669           - Change underline to take a PangoUnderline and "font" a string
10670             representation of a font description
10671           - Add a "font_desc" attribute which takes a FontDescription structure.
10672
10673         * gtk/gtktextlayout.[ch]:
10674
10675           - Get rid of the display-line list per each line. Instead, we
10676             generate, on demand, a GtkTextLineDisplay structure which]
10677             contains a PangoLayout * and other necesary information
10678             (offsets, cursor locations) for displaying a paragraph.
10679           - Get rid of the code to wrap lines, create display chunks,
10680             etc. Instead, we just go through a paragraph and convert
10681             it into the necessary inputs to a PangoLayout.
10682           - Implement a new attribute type, GtkTextAttrAppearance. This
10683             holds a GtkTextAppearance, and is used to pass colors, 
10684             stipple, etc, through from the layout to the display without
10685             having to use lots and lots of individual attributes.
10686           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10687             in terms of PangoLayout functions.
10688         
10689         * gtk/gtktextview.c: 
10690          
10691           - Handle passing the necessary PangoContext to the layout
10692           - Some fixups in painting to deal with the automatic backing store
10693             and offsetting of GTK+-1.4
10694           - Add a style_set handler so that the default style reacts
10695             properly to theme changes.
10696         
10697         * gtk/gtktext?*.[ch]: Random code-style fixes.
10698
10699         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10700
10701 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10702
10703         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10704         in original form preparatory to Pango-ization and gdkimcontext-ization.
10705
10706 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10707
10708         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10709         so that we can derive from gtkimcontext in language bindings properly.
10710
10711 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10712
10713         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10714         Add a compose table including (almost) all the compose combinations
10715         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10716         data in the XIM implementation.
10717
10718         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10719         Moved functions to convert keyvalues from and to unicode here from
10720         the win32 port and made them public.
10721
10722 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10723
10724         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10725
10726 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10727
10728         * gtk/gtkimcontext.[ch]: Base class for new input context system
10729
10730         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10731         the real input context implementation to be loaded from modules
10732         and switched on the fly.
10733
10734         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10735         context that just does direct keysymbol => unicode translation.
10736
10737         * gtk/gtkentry.[ch]: Start switching editing over to using
10738         GtkInputContext. (No handling of preedit yet.)
10739
10740 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10741
10742         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10743         many substitutions. (klass should not be subsituted.)
10744
10745 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10746
10747         * configure.in: Add checks for Pango
10748
10749         * configure.in docs/Makefile.am: Add test for sgml2html
10750         and allow 'make dist' without building html, but print out
10751         warnings in that case. (For making snapshots)
10752
10753         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10754         Add Pango libraries and C flags
10755
10756         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10757         Add function (gdk_draw_layout) to draw a pango layout.
10758
10759         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10760         for getting Pango contexts for GDK.
10761
10762         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10763
10764         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10765         editing.
10766
10767         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10768         keysym => unicode translations. More languages can be added
10769         here, but real input-method support is needed.
10770
10771         * docs/Changes-1.4.txt: Added note about entry behavior.
10772         
10773         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10774         to set the reading direction for a widget and the global direction.
10775         Add test which allows toggling the global direction. Two private
10776         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10777
10778         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10779           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10780
10781         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10782
10783         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10784         underlining now handled by Pango.
10785
10786         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10787         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10788         is temporary.)
10789
10790         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10791         convenience functions for creating contexts and layouts for widgets.
10792
10793         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10794
10795 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10796
10797         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10798         titles to be active, even if they aren't visible.
10799         (gtk_clist_column_titles_passive):  Ditto.
10800
10801 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10802
10803         * gtkmenu.c:
10804         * gtkmenu.h:
10805         * gtktypeutils.h: Spelling/grammar fixes in comments.
10806
10807 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10808
10809         * gdk/nanox/*.h: add missing header files.
10810
10811 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10812
10813         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10814         send_event to TRUE.
10815         (gtk_drawing_area_size): queue a resize.
10816
10817 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10818
10819         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10820         the handlers, also invalidate them. bug nailed down by Karl Nelson
10821         <kenelson@ece.ucdavis.edu>.
10822
10823 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10824
10825         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10826         "(nil)" foundries, patch from Grigorios Magklis.
10827
10828         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10829         on non-available fonts, based on a patch by Grigorios Magklis
10830         <maglis@cs.rochester.edu>.
10831
10832 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10833
10834         * gdk/x11/gdkregion-generic.c: If a region does not have any
10835         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10836         instead of GDK_OVERLAP_RECTANGLE_IN.
10837
10838 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10839
10840         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10841         OFFSCREEN, as it is no longer necessary.
10842
10843 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10844
10845         * gtk/gtkcolorsel.c: Patch from David Santiago
10846         <mrcooger@cyberverse.com> to change things so that the 
10847         indicator of the active palette entry is done independently,
10848         not via the focus, since it should always be visible.
10849
10850 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10851
10852         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10853         refcount leaks as in the X11 backend.
10854
10855         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10856         cosmetics.
10857
10858         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10859         backend. Add _gdk_windowing_window_destroy().
10860
10861         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10862         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10863         either, but these probably do exist on nanox?)
10864         
10865         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10866         which isn't necessarily defined by <math.h>.
10867
10868         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10869         ancestry past GtkObject.
10870
10871         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10872         from DLL on Win32.
10873
10874         * gtk/gtk.def: Update corresponding to recent changes.
10875
10876         * gtk/makefile.{cygwin,msc}: Updates.
10877
10878 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10879
10880         * docs/Changes-1.4.txt: A bit of editing.
10881
10882         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10883         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10884         to clear the update area for the window, and clear it
10885         when hiding a window.
10886
10887         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10888         if window destroyed.
10889
10890         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10891
10892         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10893         gdk_window_destroy() to the generic code, since there was a lot of 
10894         window-system-independent logic it in. Add a function:
10895         
10896          _gdk_window_destroy() 
10897
10898         to the internal API to destroy a window without unreferencing it.
10899         Add a function:
10900
10901          _gdk_windowing_window_destroy()
10902
10903         That does the windowing-system-dependent part of destroying 
10904         the window.
10905
10906 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10907
10908         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10909
10910 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10911
10912         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10913         Make gtk_widget_shape_combine_mask() keep a reference count on
10914         the pixmap since it keeps it around.
10915
10916 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10917
10918         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10919         leak.
10920
10921         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10922         leak with event filters.
10923
10924 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10925
10926         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10927         signal handlers with the right data arguments. (Fixes
10928         some warnings when a widget was repeatedly set as a drag
10929         destination.)
10930
10931         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10932         window so we can avoid avoid setting the DND properties on the
10933         toplevel window repeatedly.
10934
10935 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10936
10937         * gdk/win32/gdkwin32.h: Define more message types missing from
10938         mingw headers.
10939
10940         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10941         call gdk_window_destroy_notify(). It was never called. This
10942         probably meant that the GdkWindow was never freed. Thanks Owen for
10943         noticing (!).
10944
10945         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10946         window as destroyed before calling DestroyWindow(). DestroyWindow()
10947         causes a call to the window procedure (gdk_WindowProc), which
10948         calls gdk_event_translate(), which calls
10949         gdk_window_destroy_notify(), which gets confused unless the window
10950         is set as destroyed.
10951
10952         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10953         this function to indicate it's win32 only. Put inside #ifdef
10954         G_ENABLE_DEBUG.
10955
10956         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10957         debugging function. (gdk_event_translate:) Add a default branch
10958         that uses the above function to print debug messages with all
10959         Windows messages symbolically.
10960
10961         * gdk/win32/gdkprivate-win32.h: Declare it, and
10962         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10963
10964 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10965
10966         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10967         public header file.
10968
10969 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10970
10971         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10972
10973         * gtk/gtktext.c: made the adjustments no-construct args, simply
10974         provide default adjustments.
10975         (gtk_text_destroy): release adjustments.
10976
10977         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10978         adjustment argument non-construct.
10979
10980         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10981         instead of in finalize.
10982         (gtk_progress_get_text_from_value): 
10983         (gtk_progress_get_current_text): 
10984         (gtk_progress_set_value): 
10985         (gtk_progress_get_percentage_from_value): 
10986         (gtk_progress_get_current_percentage): 
10987         (gtk_progress_set_percentage): 
10988         (gtk_progress_configure): ensure an adjustment is present.
10989
10990 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10991
10992         * gtk/gtkcolorsel.[hc]:
10993         * gtk/gtkcolorseldialog.[hc]:
10994         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10995         their parent implementation, use bit fields for boolean values, don't
10996         create unused widgets, usage of glib types, braces go on their own
10997         lines, function argument alignment, #include directives etc. etc. etc..
10998
10999         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
11000
11001 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
11002
11003         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
11004
11005         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
11006         of NULL.
11007
11008         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
11009         to freed data.
11010         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
11011
11012         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
11013         to NULL when the toplevel is getting destroyed.
11014         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
11015         (gtk_menu_destroy): 
11016         (gtk_menu_init): store the information of whether we have to
11017         readd the initial child ref_count during destruction in a new
11018         GtkMenu field needs_destruction_ref_count.
11019
11020         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
11021         here, those reading: learn from my mistake! ;)
11022         in order for set_?adjustment to support a default adjustemnt if
11023         invoked with an adjustment pointer of NULL, the code read (pseudo):
11024         if (v->adjustment) unref (v->adjustment);
11025         if (!adjustment) adjustment = adjustment_new ();
11026         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
11027         now imagine the first unref to actually free the old adjustment and
11028         adjustment_new() creating a new adjustment from the very same memory
11029         portion. here, the latter comparision will unintendedly fail, and
11030         all hell breaks loose.
11031         (gtk_viewport_set_hadjustment):
11032         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
11033         after unreferencing it.
11034
11035         * gtk/gtkcontainer.[hc]: removed toplevel registration
11036         functions: gtk_container_register_toplevel(),
11037         gtk_container_unregister_toplevel() and
11038         gtk_container_get_toplevels() which had wrong semantics
11039         anyways: it didn't reference and copy the list.
11040
11041         * gtk/gtkwindow.c: we take over the container toplevel registration
11042         bussiness now. windows are registered across multiple destructions,
11043         untill they are finalized. the initial implicit reference count
11044         users are holding on windows is removed with the first destruction
11045         though.
11046         (gtk_window_init): ref & sink and set has_user_ref_count, got
11047         rid of gtk_container_register_toplevel() call. add window to
11048         toplevel_list.
11049         (gtk_window_destroy): unref the window if has_user_ref_count
11050         is still set, got rid of call to
11051         gtk_container_unregister_toplevel().
11052         (gtk_window_finalize): remove window from toplevel list.
11053         (gtk_window_list_toplevels): new function to return a newly
11054         created list with referenced toplevels.
11055         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
11056
11057         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
11058         adjustment a non-construct arg.
11059         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
11060         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
11061         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
11062
11063         * gtk/gtkrange.c: added some realized checks.
11064         (gtk_range_destroy): get rid of the h/v adjustments in the
11065         destroy handler instead of finalize. remove timer.
11066         (gtk_range_get_adjustment): demand create adjustment.
11067
11068         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
11069         we simply create them on demand now and get rid of them in
11070         the destroy handler.
11071         (gtk_viewport_destroy): get rid of the h/v adjustments in the
11072         destroy handler instead of finalize.
11073         (gtk_viewport_get_hadjustment): 
11074         (gtk_viewport_get_vadjustment): 
11075         (gtk_viewport_size_allocate): demand create h/v adjustment
11076         if required.
11077
11078         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
11079         gtk_widget_real_destroy () functionality.
11080         (gtk_widget_real_destroy): reinitialize with a new style, instead
11081         of setting widget->style to NULL.
11082
11083 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
11084
11085         * gtk/gtkcalendar.c:
11086         * gtk/gtkbutton.c: ported _get_type() implementation over to
11087         GType, either to preserve memchunks allocation facilities,
11088         or because Gtk+ 1.0 GtkTypeInfo was still being used.
11089
11090         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
11091         over. prepare for ::destroy to be emitted multiple times.
11092         removed reference tracer magic. chain into GObjectClass.shutdown()
11093         to emit ::destroy signal.
11094
11095         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
11096         fundamental.
11097
11098         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
11099         cludge.
11100
11101         * gtk/gtksocket.c:
11102         * gtk/gtkplug.c:
11103         * gtk/gtklayout.c:
11104         * gtk/gtklabel.c:
11105         * gtk/gtkargcollector.c:
11106         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
11107         not being a fundamental anymore, and to work with the new
11108         type system (nuked fundamental type varargs clutter).
11109
11110         * gtk/*.c: install finalize handlers in the GObjectClass
11111         part of the class structure.
11112         changed direct GTK_OBJECT()->klass accesses to
11113         GTK_*_GET_CLASS().
11114         changed direct object_class->type accesses to GTK_CLASS_TYPE().
11115
11116         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
11117         GType. made most of the GTK_*() type macros and Gtk* typedefs
11118         simple wrappers around macros and types provided by GType.
11119         most notably, a significant portion of the old API vanished:
11120         GTK_TYPE_MAKE(),
11121         GTK_TYPE_SEQNO(),
11122         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
11123         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
11124         GTK_TYPE_ARGS,
11125         GTK_TYPE_CALLBACK,
11126         GTK_TYPE_C_CALLBACK,
11127         GTK_TYPE_FOREIGN,
11128         GtkTypeQuery,
11129         gtk_type_query(),
11130         gtk_type_set_varargs_type(),
11131         gtk_type_get_varargs_type(),
11132         gtk_type_check_object_cast(),
11133         gtk_type_check_class_cast(),
11134         gtk_type_describe_tree(),
11135         gtk_type_describe_heritage(),
11136         gtk_type_free(),
11137         gtk_type_children_types(),
11138         gtk_type_set_chunk_alloc(),
11139         gtk_type_register_enum(),
11140         gtk_type_register_flags(),
11141         gtk_type_parent_class().
11142         replacements, where available are described in ../docs/Changes-1.4.txt.
11143         implemented compatibility functions for the remaining API.
11144
11145         * configure.in: depend on glib 1.3.1, use gobject module.
11146
11147 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
11148
11149         * TODO.xml: Various updates to current status.
11150
11151 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
11152
11153         * gtk.m4: Print out version when test succeeds.
11154
11155 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
11156
11157         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
11158         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
11159         
11160         (Original triangle color selector from Simon Budig
11161         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
11162         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
11163         Santiago <mrcooger@cyberverse.com>)
11164
11165         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
11166         out into a separate widget.
11167
11168         * gtk/testgtk.c: Add some checkbuttons for toggling palette
11169         and opacity controls.
11170
11171 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
11172
11173         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
11174         snuck in prematurely.
11175
11176 2000-05-07  Tor Lillqvist  <tml@iki.fi>
11177
11178         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
11179         had deleted a ! operator by mistake, which caused
11180         GDK_SELECTION_CLEAR events never to be generated, which caused
11181         only the first copy to the clipboard from an gtkeditable to
11182         actually cause a copy to the Windows clipboard.
11183
11184 2000-05-06  Tor Lillqvist  <tml@iki.fi>
11185
11186         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
11187         compilation, too. Current mingw gcc distributions include the
11188         necessary headers. Also the necessary IIDs are now in mingw
11189         headers/libraries, and own definitions unnecessary.
11190
11191         More hacking on OLE2 DND, still doesn't work though, and thus
11192         ifdeffed out.
11193
11194         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
11195         here, too.
11196
11197 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
11198
11199         * gdk/nanox/*: nano-X port work in progress.
11200         * gdk/simple.c: simple test for Gdk.
11201         * README.nanox: notes about the port: read this first!
11202         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
11203         with nano-X.
11204
11205 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
11206
11207         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
11208         gdk_window_clear() into common code, implement in terms of
11209         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
11210         not redirected to the backing rectangle.
11211
11212 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
11213
11214         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
11215         EXTRA_DIST. It does not work well when the file that
11216         everything depends on is not in the tarball.
11217
11218 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
11219
11220         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
11221         with recursion where process_updates() is called from
11222         an expose handler. (GtkTextView is highly broken in
11223         doing this, but it should work, so it is a nice test
11224         case.)
11225
11226 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
11227
11228         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
11229         handle the case where updates are queued during processing of
11230         updates.
11231
11232 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
11233
11234         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
11235         window is on gdk_display - use that instead of segfaulting.
11236
11237 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
11238
11239         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
11240         broken and require an empty arg, give it to them.
11241
11242 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
11243
11244         * gtk/gtklabel.h: indentation fixes.
11245
11246 2000-05-02  Tor Lillqvist  <tml@iki.fi>
11247
11248         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
11249         draw too narrow or too low arcs, they seem to fail, at least with
11250         some display drivers.
11251
11252         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
11253
11254         Large changes to the Win32 backend, partially made necessary by
11255         the changes to the backend-independent internal
11256         structures. Attempts to implement similar backing store stuff as
11257         on X11. The current (CVS) version of the Win32 backend is *not* as
11258         stable as it was before the no-flicker branch was merged. A
11259         zipfile with that version is available from
11260         http://www.gimp.org/win32/. That should be use by "production"
11261         code until this CVS version is usable. (But note, the Win32
11262         backend has never been claimed to be "production quality".)
11263
11264         * README.win32: Add the above comment about versions.
11265
11266         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
11267
11268         * gdk/gdk.def: Update.
11269
11270         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
11271         presumably be replaced by some more better mechanism as 1.4 gets
11272         closer to release shape.
11273
11274         * gdk/makefile.{cygwin,msc}: Update.
11275
11276         * gdk/win32/*.c: Correct inclusions of the backend-specific and
11277         internal headers. Change code according to changes in these. Use
11278         gdk_drawable_*, not gdk_window_* where necessary.
11279
11280         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
11281         our old DND.
11282
11283         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
11284         to interpret single characters as UTF-8. Thanks to Hans Breuer.
11285         Use correct function name in warning messages.
11286
11287         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
11288         GSourceFuncs gdk_event_prepare and gdk_event_check.
11289         (gdk_event_get_graphics_expose): Do implement, use
11290         PeekMessage. Thanks to Hans Breuer.
11291         (event_mask_string): Debugging function to print an GdkEventMask.
11292         (gdk_pointer_grab): Use it.
11293
11294         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
11295         (old) book I used claimed was Hangul actually is CJK Unified
11296         Ideographs Extension A. Also, Hangul Syllables were missing.
11297         Improve logging.
11298
11299         * gdk/win32/gdkgc-win32.c: Largish changes.
11300
11301         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
11302         g_win32_getlocale() from GLib, and not setlocale() to get current
11303         locale name.
11304
11305         * gdk/win32/gdkprivate-win32.h
11306         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
11307         gdkwin32.h, similarily as in the X11 backend.
11308
11309         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
11310         assignment was used instead of equals in if test. Thanks to Hans
11311         Breuer.
11312
11313         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
11314         the X11 version.
11315
11316         * gdk/win32/makefile.{cygwin,msc}
11317         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
11318         path to the Win32 headers that works also with the mingw compiler.
11319
11320         * gtk/gtkstyle.c: Include <string.h>.
11321
11322 2000-04-26  Havoc Pennington  <hp@redhat.com>
11323
11324         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
11325         replacing the broken gtk_label_get ()
11326
11327 2000-04-15  Havoc Pennington  <hp@pobox.com>
11328
11329         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
11330         this keeps scanner scripts from getting confused.
11331
11332         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
11333         data, rather than void
11334
11335 2000-04-15  Tor Lillqvist  <tml@iki.fi>
11336
11337         * gtk/gtkclist.c (gtk_clist_motion)
11338         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
11339         with is_hint FALSE, get x and y from the event. They used to be
11340         used uninitialised. The Win32 backend never sends motion events
11341         marked as hints. This for instance fixes the annoying file and
11342         font selector behaviour in the Win32 version.
11343
11344 2000-04-14  Tor Lillqvist  <tml@iki.fi>
11345
11346         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
11347         gtk_private_n_signals variables, they are used by some software,
11348         sigh.
11349
11350         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
11351         installation directory from the Registry, where the installer
11352         should have put it.
11353
11354 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
11355
11356         * gdk/x11/Makefile.am: Fix problem with installation directory for
11357         gdkx.h
11358
11359         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
11360         <mrcooger@cyberverse.com> so that when selecting menus with the
11361         mouse, the first item will not be selected, but when selecting
11362         with an accelerator, or navigating left-right on a menubar with
11363         the menus popped up, the first item will be selected.
11364
11365 2000-04-05  Dan Damian  <dand@dnttm.ro>
11366
11367         * configure.in: Added "ro" to ALL_LINGUAS.
11368
11369 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
11370
11371         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
11372         indentation.
11373
11374         * Makefile.am (EXTRA_DIST): Fix typo.
11375
11376         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
11377         to catch gdkconfig.h
11378
11379         * gtk/gtkitemfactory.c: Added FIXME.
11380
11381 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
11382
11383         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
11384         s/return_if_fail/return_val_if_fail/g and add a return value.
11385
11386 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
11387
11388         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
11389         merge slipup.
11390
11391         * gdk/gdkinput.h: Fix missing line from merge.
11392
11393 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
11394
11395         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
11396         instead of gdkprivate.h.
11397
11398 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
11399
11400         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
11401         parent class to correctly be GtkDialogClass.
11402
11403 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
11404
11405         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
11406         toplevel windows and their immediate children by their parents,
11407         since the size of toplevel windows is out of our immediate
11408         control and we don't get any real benefit from trying to track
11409         this size for clipping.
11410
11411         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
11412         for input_only windows.
11413
11414         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
11415         to fix some hacks and make sure that we don't try to set the
11416         background of input only windows.
11417
11418 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
11419
11420         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
11421         the _really_ internal stuff, and leave gdkprivate.h for the fake private
11422         stuff that we've traditionally exposed.
11423
11424         * gdk/**.c: Use gdkinternals.h where appropriate.
11425
11426         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
11427         not include gdkprivate-x11.h, move all stuff of conceivable public
11428         interest into gdkx.h; keep all really private stuff in
11429         uninstalled header gdkprivate-x11.h.
11430
11431         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
11432         image->image_put on windows through a new function _gdk_window_draw_image()
11433         to allow us to do backing store for images. (Sort of ugly)
11434
11435         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
11436         contexts locally so that we can offset them properly when drawing 
11437         onto backing pixmaps.
11438
11439         * gdk/gdkinput.h: Reindented
11440
11441         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
11442         pixmap or color for the window, so we can properly initialize
11443         our double-buffer pixmaps, and also so that we temporarily set
11444         a background of None while scrolling.
11445
11446         * gdk/gdkregion.h: Revise region boolean operators to have an
11447         interface that is actually convenient - switch from creating new
11448         regions on every op, to "methods" that modify existing regions
11449         (A = A OP B). 3 argument forms which allow dest == src, would also
11450         be possible, but the current interfaces seem to map nicely
11451         onto what needs to be done. (There is quite a lot of region
11452         code in GDK now.)
11453
11454         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11455         operator.
11456
11457         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11458         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11459         to 32 bit coordinates, modify it to be mostly GTK+ style
11460         and to have interfaces that match gdkregion.h.
11461
11462         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11463         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11464         create a backing pixmap and redirect all drawing to
11465         that backing pixmap until a matching gdk_window_end_paint().
11466
11467         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11468         Create a special drawable class for GtkWindow's that 
11469         redirects the drawing to the backing pixmap as necessary
11470         and then calls the real operations in _gdk_windowing_window_class.
11471
11472         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11473         Store invalid region for each window. Generate expose events for invalid
11474         region in an idle. This replaces both the expose compression
11475         and the redrawing queuing in GTK+. It is both more efficient and
11476         simpler than either one individually and far more so then the
11477         combination.
11478
11479         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11480         Emulate 32 bit coordinates for windows with 16 bit coordinates
11481         by offsetting drawing, guffaw scrolling techniques and
11482         mapping/unmapping child windows as necessary.
11483
11484         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11485         where, when invalid regions are processed, the region is stored,
11486         and if expose events come in that are detectably duplicate
11487         the processed exposes (by comparison of event serial numbers),
11488         the stored region is subtracted out of those exposes.
11489
11490         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11491         regions newly exposed when scrolling or resizing windows.
11492         This, combined with forcing processesing of queued invalidated
11493         regions, gives nice flicker-free scrolling.
11494
11495         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11496         invalidated regions after every scroll.
11497
11498         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11499         emulation in GDK. Its, for all practical purposes just a
11500         GtkViewport/GtkFixed hybrid now.
11501
11502         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11503         (16-bit) structures as necessary instead of just casting.
11504
11505         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11506         in terms of the structures from gdkregion-generic.c, using appropriate
11507         offsets from GDK to X11 coordinates. Cache clip mask and
11508         origin and ts origin locally and only flush to the server
11509         when drawing, to avoid constantly setting and resetting these
11510         values when offsetting GC's for scrolling and backing pixmaps.
11511
11512         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11513
11514         * gtk/gtkcontainer.c: Call process_all_updates at end
11515         of resizing to reduce flicker. (Avoids having redraw
11516         lag arbitrarily behind resize under some circumstances)
11517
11518         * gtk/gtkentry.c: Remove old backing store code, and simply take
11519         advantage of the new backing store capabilities of GDK.
11520
11521         * gtk/gtkmain.c: Simple implementation of widget backing
11522         store - simply push a paint while handling each expose.
11523         (Should really be configurable widget for widget.)
11524         
11525         * gtk/gtkwidget.c: Remove all the old complicated redraw
11526         code, and simply invalidate the GDK windows from
11527         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11528         debugged complexity ... gone to the winds.)
11529
11530         Remove all the code for suppressing expose events while
11531         resizes are pending; this isn't needed since the invalid
11532         areas won't be processed until after the resizes are
11533         processed, since they are in a lower priority idle.
11534
11535 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11536
11537         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11538         and height of dest rectangle for non-intersecting rectangles.
11539
11540 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11541
11542         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11543         for GdkRectangle.
11544
11545 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11546
11547         * gdk/gdk{events,image,private,types,window}.h
11548          gdk/x11/gdkinputprivate.h: Change all coordinates
11549          from int16 to int. Also, Change width and height from
11550          unsigned to signed to avoid all the stupid C 
11551          signedness bugs.
11552
11553 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11554
11555         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11556         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11557         Add some more detailed checking.
11558
11559         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11560         New function to retrieve the depth of a drawable.
11561
11562         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11563         field, reorder fields to save memory. 
11564
11565 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11566
11567         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11568         of the background image instead of scaling the background down to
11569         a line.
11570
11571         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11572         which temporarily set slider to wrong size.
11573
11574         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11575         queue_clear().
11576
11577 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11578
11579 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11580
11581         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11582
11583 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11584
11585         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11586         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11587
11588         * gdk/win32/gdkfont-win32.c
11589         * gdk/win32/gdkproperty-win32.c
11590         * gdk/win32/gdkselection-win32.c
11591         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11592         now declared such.
11593
11594 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11595
11596         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11597
11598 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11599
11600         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11601         is called without trapping X errors.
11602
11603 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11604
11605         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11606         way into the fontset lists.
11607
11608 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11609
11610         * gtk/gtkthemes.h: add extern "C" scope.
11611
11612 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11613
11614         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11615         to make appends to the list constant. (gtk-guy-990901-0.patch)
11616
11617 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11618
11619         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11620         for the typename hash table.
11621
11622 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11623
11624         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11625         to make sure we never divide by zero. 
11626         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11627
11628 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11629
11630         * gtk/gtkfontsel.c: Apply patch from
11631         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11632         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11633
11634         Also, some cleanups in atom handling.
11635
11636 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11637
11638         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11639         not GtkWidget.
11640
11641 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11642
11643         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11644         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11645         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11646         more guint wrap-around bugs before going to bed.
11647
11648 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11649
11650         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11651         guint wrap arounds in allocation.width.
11652
11653         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11654         process untill we fit the allocation given.
11655
11656 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11657
11658         * gtk/gtkwidget.c:
11659         (gtk_widget_unrealize): guard widget access with ref/unref
11660         around signal emission.
11661         (gtk_widget_hide): same here, but also check its destroyed
11662         state before queueing a resize.
11663
11664 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11665
11666         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11667         of gtk_default_insensitive_bg as insensitive base color.
11668
11669         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11670         to the widget's state.
11671         (gtk_text_realize): same here.
11672         (gtk_text_state_changed): same here.
11673         (draw_bg_rect): compare background color against base[] from
11674         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11675
11676 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11677
11678         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11679         grabs are active, unless a delete event is send to the toplevel
11680         of the currently grab holding widget.
11681
11682 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11683
11684         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11685         debugging g_print's.
11686
11687 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11688
11689         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11690         ever make the scrolled-window requisition ever depend on the 
11691         visibility state of the scrollbars for the AUTOMATIC policy. 
11692         This breaks the GTK+ requisition model, and causes loops.
11693
11694 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11695
11696         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11697         the default font to avoid problems with XFree86-4.0 where the
11698         default charset is iso10646-1, not iso8859-1.
11699
11700 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11701
11702         * acinclude.m4
11703         * config.guess
11704         * config.sub
11705         * ltconfig
11706         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11707
11708         * gtk/Makefile.am: minor cosmetic consistency tweak
11709
11710 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11711
11712         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11713         the activate_time to 0, so that we handle a quick
11714         press/release press/release properly and don't suppress
11715         the second release. (Red Hat bug #7545)
11716
11717 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11718
11719         * gtk/gtkctree.c (row_delete):
11720         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11721         bugs with destruction notifier, *always* update internal
11722         structures *before* calling user code.
11723
11724 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11725
11726         A few more fixes for bug #5487, #2051, #2677.
11727         * gtk/gtkclist.c : 
11728         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11729         not GDK_BUTTON_PRESS.
11730         (resync_selection): resync only if selection_mode is
11731         GTK_SELECTION_EXTENDED
11732         * gtk/gtkctree.c (resync_selection): same here
11733
11734 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11735
11736         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11737         gdk_drag_get_selection() and gtk_menu_detach().
11738
11739         [ From Jeroen Ruigrok/Asmodai ]
11740
11741 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11742
11743         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11744         page->tab_label can be NULL.
11745
11746 2000-01-25  Havoc Pennington  <hp@pobox.com>
11747         
11748         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11749         arg is boolean
11750
11751         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11752
11753         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11754
11755         * gdk/gdkproperty.c (gdk_property_get): return boolean
11756
11757         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11758
11759         * gdk/gdkim.c (gdk_im_ready): return boolean
11760
11761         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11762
11763         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11764         glib clash, should fix glib)
11765
11766         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11767         (gdk_get_show_events): return gboolean, and canonicalize 
11768         to TRUE/FALSE
11769
11770         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11771         colormap is private
11772         (gdk_colors_alloc): gboolean whether to be contiguous
11773         (gdk_color_equal): return gboolean since we are a predicate
11774         and not a qsort() (this looks semi-wrong due to glib breakage,
11775         IMO glib should be fixed)
11776         
11777         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11778         (gdk_get_use_xshm): return gboolean
11779         (gdk_pointer_is_grabbed): return gboolean
11780
11781         * gdk/gdk.h: Change prototypes to match all the above changes,
11782         and re-run egtk-format-protos as required.
11783
11784 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11785
11786         * gtk/gtkctree.c (resync_selection): 
11787         * gtk/gtkclist.c (resync_selection):
11788
11789         Return immediately if clist->drag_pos < 0. This is a workaround
11790         for the corrupt state that the clist gets into when a
11791         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11792
11793         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11794         
11795         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11796         variable from recent commit.
11797
11798 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11799
11800         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11801
11802 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11803
11804         * gtk/Makefile.am: prefix all autogenerated source that get build in
11805         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11806         in builddir. since we subsequently cd into srcdir for autogeneration,
11807         the paths have to be stripped from the target file names, thusly we
11808         use $(@F) as target names now.
11809         put a comment about configure.in's --disable-rebuilds option,
11810         which can be used for non-writable source directories, for development
11811         setups though, srcdir has to be *writable*.
11812
11813 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11814
11815         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11816           Finish the job of allowing event to be NULL.
11817           (Fixes bug #4283, reported by Chris Blizzard)
11818
11819         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11820           things so that the cursor appears on screen, properly
11821           take into account INNER_BORDER.
11822           (Fixes bug #4754, reported by Antonio Campos)
11823
11824 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11825
11826         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11827           show the tab_label unless it itself is visible.
11828
11829           gtk/gtknotebook.c (gtk_notebook_size_request):
11830           Do a better job of making sure that the visibility
11831           of the tab label corresponds to whether it should
11832           be mapped or not.
11833
11834 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11835
11836         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11837           Use the requisition, not the allocation, since the
11838           allocation has not necessarily been computed yet.
11839           (Pointed out by Eugene Osintsev)
11840
11841 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11842
11843         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11844           style/base[GTK_STATE_INSENSITIVE] both to
11845           gtk_default_insensitive_bg!
11846           (Bug #2187, reported by Jonathan Blandford)
11847
11848         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11849           Add Alt_L, Alt_R to list of invalid accelerators.
11850           (Bug #3736, reported by Vlad Harchev)
11851
11852 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11853
11854         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11855         bugs which occured after an attempt to open 
11856         invalid home directory left cmpl_state->reference_dir == NULL.
11857
11858          - completion on files in home directory didn't work
11859          - completion on an empty string caused  segfault
11860
11861          (Bug #3678, reported by Steve Ratcliffe)
11862
11863         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11864         cut and paste error that was causing scales to
11865         be incorrectly positioned.
11866         (Bug #2956,
11867          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11868
11869 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11870
11871         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11872         when checking for dcgettext, if we've found we needed
11873         it for dgettext.
11874 +
11875 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11876
11877         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11878         queue_clear on NO_WINDOW widgets during a reparent,
11879         since at that point the window and widget heirarchies
11880         are out of sync. This stops crashing in some cases
11881         (the scrolled window reparent test, for instance), and
11882         _probably_ won't cause drawing errors.
11883
11884         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11885         test do what it was supposed to do and be robust against
11886         window closings, etc. (Bug #2443)
11887
11888 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11889
11890         * gtk/gtkentry.c: Fix return values on mouse events.
11891         (Bug #2686, Sky <seb_sky@yahoo.com>)
11892
11893         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11894         (pointed out by George Lebl)
11895
11896         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11897         (From Ettore Perazzoli  <ettore@helixcode.com>)
11898  
11899 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11900
11901         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11902         clicks between rows or outside calender area correctly.
11903         (Patch from Damon Chaplin)
11904
11905         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11906         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11907           Call destroy function when overwriting existing data. 
11908           (Pointed out by Damon Chaplin)
11909
11910 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11911
11912         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11913           which was causing problems on various systems with Xmu.
11914           This hasn't been needed for a very long time.
11915           (Fixes #1185 3167)
11916
11917 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11918
11919         * gdk/gdki18n.h: Include <ctype.h> when defining
11920           gdk_isw* in terms of is* as a fallback.
11921           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11922
11923 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11924
11925         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11926           realize the widget when it is size allocated!
11927           (old, old bug)
11928
11929         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11930           Removed unused call to gdk_window_get_size() that
11931           showed up when the above was fixed.
11932
11933 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11934
11935         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11936           fix up widget->window when the widget is a
11937           NO_WINDOW container widget.
11938
11939 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11940
11941         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11942           to account for the fact that feof() does _not_ 
11943           return TRUE on errors, and thus avoid infinite loops
11944           when trying to use gdk_pixmap_create_from_xpm()
11945           on unreadable values.
11946
11947 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11948
11949         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11950
11951 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11952
11953         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11954           gdk_gc_set_dashes to take gint8 instead of gchar to
11955           make it clearer that it is _not_ a NULL terminated string.
11956
11957         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11958           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11959           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11960           arguments.
11961
11962 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11963
11964         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11965         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11966         background size relative to our allocation, guard against small
11967         allocations, we may have not yet been size allocated.
11968
11969 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11970
11971         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11972         not just version == 3. We implement all 3 + most of 4 - 
11973         (we don't support matching text/plain;charset=iso-8859-1
11974         to a dest that expects text/plain). We'll still advertise
11975         3 to be safe, but any client implementing version >= 3
11976         must interoperate with 3.
11977         
11978 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11979
11980         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11981         background and gc members, add a warning in gtk_tooltips_set_color()
11982         indicating that this function is deprecated.
11983
11984 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11985
11986         * docs/gtkfaq.sgml: FAQ Update:
11987           - Minor cleanups (Emmanuel, me)
11988           - New questions:
11989                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11990                 How can I retrieve the text from a GtkMenuItem? (timj)
11991                 How do I validate/limit/filter the input to a GtkEntry? (me)
11992                 Memory does not seem to be released when I free the list
11993                         nodes I've allocated (timj)
11994
11995 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11996
11997         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11998         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11999         for which it is no use to call GetLastError onWin9x.
12000         (gdk_other_api_failed) New function, for general error
12001         reporting without calling GetLastError.
12002         (gdk_win32_api_failed) OTOH, this function always calls
12003         GetLastError. (gdk_win32_last_error_string) Remove this function,
12004         GLib has the equivalent now.
12005
12006         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
12007         call them with function name, file name and line number in the
12008         arguments.
12009
12010         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
12011         functions.
12012         
12013         * gtk/gtk.def: Add some missing entry points.
12014
12015         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12016         gtk_paned_set_gutter_size, which don't exist any longer, as void.
12017         
12018         Fixes by Hans Breuer:
12019
12020         * gdk/makefile.msc: Update for debugging.
12021
12022         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
12023         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
12024         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
12025         in the dash_list.
12026
12027         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
12028         the x11 backend.
12029
12030         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
12031
12032         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
12033
12034 2000-03-04  Tor Lillqvist  <tml@iki.fi>
12035
12036         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
12037         just pixel value of background colour.
12038
12039         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
12040         containing code snippet previously duplicated in a couple of
12041         places.
12042         
12043         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
12044         gdk_colormap_color.
12045
12046         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
12047         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
12048         events for autorepeated Shift, Control and Alt keys. Use
12049         gdk_colormap_color.
12050
12051         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
12052         pointer is inside the window the cursor of which we are setting,
12053         call SetCursor immediately.
12054
12055         * gdk/win32/makefile.cygwin
12056         * gtk/makefile.cygwin: If we don't have the build number stamp
12057         file, use zero.
12058
12059         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
12060         gtk_paned_set_gutter_size as empty.
12061
12062         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
12063         
12064 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
12065
12066         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
12067           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
12068           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
12069           docs/gtk_tut.sgml docs/gtk.texi TODO:
12070
12071           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
12072
12073 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
12074
12075         * gtk/gtkcalendar.c: Implement num_marked_dates,
12076           and don't emit mutiple day_selected signals on
12077           month_prev.
12078
12079 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
12080
12081         * docs/make-todo (lineno): let title and logo be configurable so
12082         that GNOME can use this script too.
12083
12084         * TODO.xml: added logourl and a title
12085
12086 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
12087
12088         * TODO.xml: Added some UI items, and an explanatory
12089         comment at the top of the file.
12090
12091 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
12092
12093         * TODO.xml: some updates, added abunch of new entries.
12094         a note for those fiddeling with this file, when done
12095         with it, invoke:
12096         $ ./docs/make-todo TODO.xml >/dev/null
12097         and correct output errors before comitting changes.
12098
12099 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
12100
12101         * TODO.xml: Added XML-structured TODO file.
12102         * docs/make-todo: python script to turn TODO.xml into
12103           pretty XML output. 
12104
12105 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
12106
12107         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
12108         the function to let it draw the seven dots, instead of the old,
12109         much maligned, method.
12110         (draw_dot): New function to draw a dot.
12111
12112         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
12113         to draw the handle inside the border width as opposed to outside.
12114         Use paint function instead of gdk_draw_point.
12115
12116         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
12117         to draw the handle inside the border width as opposed to outside.
12118         Use paint function instead of gdk_draw_point.
12119
12120         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
12121         Change indenting to be more GTK like.
12122
12123 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
12124
12125         * docs/gtk_tut.sgml: New section on GtkCalendar
12126         * examples/calendar: Update example code
12127
12128 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
12129
12130         * docs/gtkfaq.sgml: FAQ Update
12131
12132 2000-02-19  Anders Carlsson  <andersca@gnu.org>
12133
12134         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
12135         to prevent the scroll event to be propagated upwards.
12136
12137 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
12138
12139         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
12140         OwnerGrabButtonMask from button entries for
12141         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
12142
12143         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
12144         to the event mask (which will result in button/press release
12145         being added to the event mask on Unix) so scrolling works
12146         for layouts in scroll windows.
12147
12148         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
12149
12150         Patch from Anders Carlsson  <andersca@gnu.org> to add
12151         a scroll event.
12152
12153         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
12154         scrolling to the "Test Scrolling" part of testgtk.
12155  
12156         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
12157  
12158         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
12159         it against GDK_SCROLL.
12160  
12161         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
12162         way of mouse wheel scrolling.
12163  
12164         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
12165  
12166         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
12167  
12168         * gtk/gtkmain.c: Removed previous mouse wheel hack.
12169  
12170         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
12171         gdk_event_mask_table.
12172  
12173         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
12174         GdkEventScroll handler.
12175  
12176         * gdk/gdkevents.h: Added GdkEventScroll structure.
12177  
12178 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
12179
12180         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
12181         and Anders Carlsson to change the Paned widgets so that they
12182         can be dragged from anywhere along the length. Also change
12183         the way that this is drawn to make this apparent.
12184
12185         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
12186         from George Lebl to check that option_menu->menu is present
12187         before getting history.
12188
12189 2000-02-14  Tor Lillqvist  <tml@iki.fi>
12190
12191         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
12192         before the assertion for non-NULL segment list.
12193
12194         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
12195         Seems that pattern brushes *must* be 8x8 pixels! At least on my
12196         machine, but it might be display driver dependent. Sigh, so make
12197         sure the stipple is that size. Does Windows suck or what?
12198
12199         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
12200         places.
12201
12202 2000-02-13  Havoc Pennington  <hp@pobox.com>
12203
12204         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
12205         refcount to 1
12206         (gdk_cursor_new): init refcount to 1
12207
12208         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
12209
12210 2000-02-13  Tor Lillqvist  <tml@iki.fi>
12211
12212         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
12213         so that we don't have to do unnecessary settings to the HDC.
12214
12215         * gdk/win32/gdkdrawable-win32.c
12216         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
12217         gdk_gc_predraw.
12218
12219         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
12220         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
12221         GDI paths, call WidenPath to get the outline of the stroken path,
12222         and then fill the outline (with the brush that was built from the
12223         stipple).
12224
12225         * gdk/win32/gdkgc-win32.c: Factor out common code from
12226         _gdk_win32_gc_new and gdk_win32_gc_set_values into
12227         gdk_win32_gc_values_to_win32values. Use correct colour for
12228         SetBkColor() (Until now the code actually used a random colour in
12229         the call to SetBkColor()... but that didn't show up as not many
12230         GDI APIs use the background colour. Pattern (opaque stippled)
12231         brushes do.)
12232
12233         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
12234         gdk_win32_api_failed): New functions for error logging.
12235
12236         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
12237         WIN32_API_FAILED to call them, passing function or file name and
12238         line number.
12239
12240         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
12241
12242         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
12243         GdkColor for foreground and background in GdkGCWin32Data.
12244
12245         * gdk/makefile.cygwin: Link in the resource object separately.
12246
12247         * gdk/win32/rc/gdk.rc
12248         * gtk/gtk.rc (New file)
12249         * gdk/win32/makefile.cygwin
12250         * gtk/makefile.cygwin: Update build number in DLLs automatically,
12251         as in GLib.
12252
12253 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
12254
12255         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
12256         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
12257         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
12258         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
12259         parameters given and cursor->ref_count. coding style fixups.
12260
12261         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
12262         not GtkWidget.
12263         
12264         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
12265         fix up widget macros and add _GET_CLASS() variant.
12266         
12267         * gtk/*.c: some GtkType fixups.
12268
12269 2000-02-09  Tor Lillqvist  <tml@iki.fi>
12270
12271         * gdk/win32/gdkproperty-win32.c
12272         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
12273         were reversed.
12274
12275 2000-02-04  Tor Lillqvist  <tml@iki.fi>
12276
12277         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
12278         g_filename_to_utf8 to convert the font names Windows gives us from
12279         whatever is the default codepage to UTF-8.
12280         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
12281         in the other direction.
12282
12283         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
12284         error in debugging output.
12285
12286 2000-02-02  Tor Lillqvist  <tml@iki.fi>
12287
12288         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
12289         and height parameters to gdk_window_clear_area(). Not minus one.
12290
12291 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
12292
12293         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
12294         checks if the widget passed to gtk_drag_get_data() was not the
12295         dest widget.
12296
12297 2000-02-01  Tor Lillqvist  <tml@iki.fi>
12298
12299         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
12300         g_filename_from_utf8 functions (which were added a moment ago to
12301         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
12302         size buffers.
12303
12304         gtk_file_selection_get_filename returns the filename in the C
12305         runtime encoding. It calls g_filename_from_utf8, but copies the
12306         returned string to a static buffer, which is returned. I think
12307         this is better than returning the result from g_filename_from_utf8
12308         directly, which would mean all apps that use it would have to free
12309         the return value. Or should this function care about this issue at
12310         all? Maybe a new function with clearly defined semantics.
12311
12312         * gtk/gtkfilesel.h: Add comment about
12313         gtk_file_selection_get_filename returning the filename in the C
12314         runtime's encoding.
12315
12316         * README.win32
12317         * gdk/gdk.def
12318         * gdk/makefile.{cygwin,msc}
12319         * gtk/gtk.def: Updates.
12320
12321         * gdk/gdkcursor-win32.c: Initialise refcount.
12322
12323 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
12324
12325         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
12326
12327 2000-01-30  Havoc Pennington  <hp@pobox.com>
12328
12329         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
12330         destroy
12331
12332         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
12333
12334         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
12335         implemented in platform-specific code
12336
12337         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
12338
12339         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
12340         underscore in front
12341
12342         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
12343         put an underscore in front
12344
12345         * gdk/gdkcursor.c: new file, implements
12346         gdk_cursor_ref/gdk_cursor_unref
12347
12348         * gdk/gdkcursor.h: Refcount GdkCursor
12349
12350         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
12351
12352 2000-01-29  Tor Lillqvist  <tml@iki.fi>
12353
12354         * gdk/gdkwindow.h
12355         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
12356
12357 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
12358
12359         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
12360         structures to properly inherit from GtkWidget not GtkBin.
12361
12362 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
12363
12364         * gtk+.spec.in: Added lib/gtk+/include/* to %files
12365         (bug #5178 - Peter Wainright)
12366         
12367         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
12368         so that it will be installed.
12369         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
12370
12371 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
12372
12373         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
12374         for the GtkStyleClass vtable const.
12375
12376         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
12377         take a const string argument like GtkTranslateFunc. This will
12378         require changes in use code.
12379
12380 2000-01-19  Tor Lillqvist  <tml@iki.fi>
12381
12382         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
12383         semantics (to mimic the X11 backend, which just calls XClearArea)
12384         is to check for zero width (and height), and in that case use the
12385         window's width minus x (height minus y). This fixes for instance
12386         some redraw problems with gtkclist, which were easily noticeable
12387         in the gtk file selection widget.
12388
12389         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
12390         windows.
12391
12392 2000-01-13  Tor Lillqvist  <tml@iki.fi>
12393
12394         * configure.in
12395         * gdk/Makefile.am
12396         * gdk/x11/Makefile.am
12397         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
12398         (bug #5177).
12399         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
12400         out later.
12401
12402 2000-01-09  Tor Lillqvist  <tml@iki.fi>
12403
12404         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
12405         WM_MOVE for iconified or invisible windows. This fixes various
12406         problems when minimising windows. Thanks to Bernd Herd.
12407
12408 2000-01-05  Tor Lillqvist  <tml@iki.fi>
12409
12410         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
12411         backend's draw_lines method, not draw_points.
12412
12413 2000-01-02  Tor Lillqvist  <tml@iki.fi>
12414
12415         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
12416         before Owen's reorganisation: Don't have queued_events and
12417         queued_tail statics in this file, but use gdk_queued_events and
12418         gdk_queued_tail. This makes exposure event compression work again.
12419
12420         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
12421         seem to be needed?
12422
12423 1999-12-30  Tor Lillqvist  <tml@iki.fi>
12424
12425         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
12426         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
12427         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
12428         doesn't do anything.
12429
12430         * gdk/gdk.def: Add gdk_xid_table_insert.
12431
12432         * gdk/win32/gdkprivate-win32.h
12433         * gdk/win32/gdkevents-win32.c
12434         * gdk/win32/gdkinput-win32.c
12435         
12436         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
12437         extension_events field in the GdkWindowWin32Data struct. Use only
12438         the extension_events field in GdkWindowPrivate. Previously one was
12439         set, and the other one tested, which broke tablet
12440         functionality. Thanks to Keishi Suenaga for pointing this out.
12441
12442 1999-12-18  Tor Lillqvist  <tml@iki.fi>
12443
12444         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
12445         When handling a single character (text length == 1), don't handle
12446         it as if it was UTF-8.
12447
12448 1999-12-11  Tor Lillqvist  <tml@iki.fi>
12449
12450         * Makefile.am: Distribute README.win32.
12451         
12452         * gdk/Makefile.am
12453         * gdk/win32/Makefile.am: Distribute Win32 files.
12454
12455         * gdk/makefile.msc: New file.
12456
12457         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12458         after label).
12459
12460         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12461         gdk_error_code as GDKVAR, as they are referred outside GDK.
12462
12463         * gdk/win32/makefile.msc: Update.
12464
12465         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12466         tweaks. Check only if at least one of those Unicode subrange bits
12467         we care for is set. If no code page bits are set, guess (wildly)
12468         based on the charset.
12469
12470         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12471
12472         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12473         non-NULL.
12474
12475         * gtk/gtkdnd.c
12476         * gtk/gtklayout.c
12477         * gtk/gtkplug.c
12478         * gtk/gtkselection.c
12479         * gtk/gtksocket.c
12480         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12481         appropriate. There must be a cleaner way to handle this?
12482
12483         * gtk/gtkrc.c: Must include windows.h on Win32.
12484
12485         * gtk/testgtk.c: No need to include gdkx.h.
12486
12487         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12488
12489 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12490
12491         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12492         the rbearing is set to the same as the width, but this should be
12493         fixed.
12494
12495 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12496
12497         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12498         function. If Windows doesn't tell us what Unicode subranges a font
12499         covers, guesstimate based on the codepages it covers. This will
12500         hopefully help those Windows versions or fonts that don't give us
12501         any useful Unicode subrange information with GetTextCharsetInfo.
12502         Call this function in gdk_font_load_internal.
12503
12504         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12505         minor changes.
12506
12507 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12508
12509         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12510         New function, long needed.
12511
12512 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12513
12514         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12515         only_if_exists argument of gdk_atom_intern to
12516         bool.
12517
12518 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12519
12520         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12521         Fix two copy&paste errors.
12522
12523         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12524         win32 has changed.
12525
12526         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12527         GdkWin32SingleFont struct.
12528
12529         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12530         subranges of loaded fonts. Clear font signature first, in case
12531         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12532         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12533
12534         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12535         Unoffset clip region.
12536
12537 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12538
12539         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12540         event->any.window before calling filter functions.
12541
12542 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12543
12544         * gtk/gtkgamma.h: Adapt cast macros to standard.
12545
12546 [ Merges from 1.2 ]
12547
12548 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12549
12550         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12551         If translation does not include a '/', use entire
12552         translation instead of crashing.
12553
12554 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12555
12556         * docs/gtk_tut.sgml:
12557         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12558
12559 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12560
12561         * gtk/gtkselection.c (gtk_target_list_remove): Use
12562         g_list_remove_link, not g_list_remove.
12563
12564         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12565         
12566 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12567
12568         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12569         statement upon unselection (how the heck did that slip in?).
12570
12571 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12572
12573         * gtk/gtktext.c (gtk_text_freeze): 
12574         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12575         in frozen state (and aparently crashes). patch provided by Anders
12576         Melchiorsen <and@kampsax.dtu.dk>.
12577
12578 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12579
12580         * fix insensitive default/focus widget activation,
12581         reported by Matt Goodall <mgg@isotek.co.uk>.
12582
12583         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12584         (gtk_window_activate_default):
12585         (gtk_window_activate_focus):
12586         return handled=FALSE for actiavtion of insensitive default
12587         widgets. return handled=TRUE for activation of insensitive
12588         focus widgets. don't activate in either case.
12589
12590 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12591
12592         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12593         and $glib_cflags to match library order and in the
12594         theory that an old version of GLib is more likely to
12595         be in the include directory for X then vice-versa.
12596         (Bug #2776)
12597
12598 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12599
12600         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12601         to determine the locale for fontsets, not LC_MESSAGES;
12602         the user may want English messages with a handling
12603         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12604         will still be broken) (Bug #2891)
12605
12606 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12607
12608         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12609
12610 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12611
12612         * gtk/gtkrc.ko: Changed the Korean default fontset.
12613
12614 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12615
12616         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12617         where when scrolling to the left or top double exposes
12618         were done, causing major slowdowns.
12619
12620 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12621
12622         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12623         names to lowercase and alphanumeric, before looking
12624         them up.
12625
12626         * gtk/Makefile.am: Install codeset variant gtkrc files
12627         with normalized names.
12628
12629 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12630
12631         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12632         popup menus when the menu is already visible, but its parent
12633         is still hidden, (happens after tornoff window got hidden).
12634
12635 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12636
12637         * gtk/Makefile.am (install-data-local): Fix
12638         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12639         deleted, causing error messages on install.
12640
12641 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12642
12643         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12644         the handle as well, since we now sometimes ignore
12645         exposes on the handle while resizing.
12646
12647 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12648
12649         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12650         extra g_free introduced in one of the last one or two 
12651         commits.
12652
12653 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12654
12655         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12656         consistent, put each style that a gtkrc.* file creates
12657         in a unique namespace, remove old files before installing.
12658
12659 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12660
12661         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12662         gtk_rc_init is called multiple times. (Yes, people who
12663         do that have bugs in their code.)
12664
12665 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12666
12667         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12668         Remove it since it's generated by the Makefile anyway
12669
12670 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12671
12672         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12673         device->info.axes for core pointer.
12674
12675 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12676
12677         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12678         idle_id, to deal with obsolete, broken C libraries.
12679
12680 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12681
12682         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12683         allocation->x/y twice!
12684
12685         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12686         consistent with gtk_vscale_pos_trough().
12687
12688 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12689
12690         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12691         be queueing a resize on a toplevel container between
12692         the time we show it and when we map it. So, we need
12693         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12694         use GTK_WIDGET_DRAWABLE() for child windows.
12695
12696 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12697
12698         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12699         (fixes bug #2144)
12700
12701 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12702
12703         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12704         container DRAWABLE (instead of VISIBLE), so we don't queue
12705         resizes on non-toplevel containers.
12706
12707 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12708
12709         * gtk/gtkselection.[ch]: Make the data argument
12710         const guchar *.
12711
12712 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12713
12714         * gtk/gtkwindow.c: Try to behave sensibly if 
12715         the focus widget is the window itself. (Should
12716         we allow this at all?)
12717
12718 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12719
12720         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12721         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12722         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12723         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12724         in prototypes and implementations consistent (Tomas Ogren).
12725
12726         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12727         before the widget is unparented (reported by damon).
12728
12729         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12730         since we provide unsigned data anyways.
12731
12732 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12733
12734         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12735         the call to gtk_tooltips_layout_text() until later.
12736
12737         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12738         Call gtk_widget_ensure_style() before using the style.
12739
12740 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12741
12742         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12743         for old widgets that don't propagate draws to all
12744         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12745
12746 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12747
12748         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12749         for a redraw but just the widget that requested the resize.
12750
12751 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12752
12753         * gtk/gtkcontainer.c: added new widget level method
12754         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12755         reallocate_redraws : 1 to reflect the setting, exported this through
12756         the argument system as a boolean ::reallocate_redraws.
12757
12758         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12759         on the widget because the allocation changes, do so as well for
12760         widget->parent if the parent has reallocate_redraws set to TRUE.
12761         with that containers requesting reallocation redraws get automatically
12762         redrawn if their children changed allocation (this unfortunately
12763         affects also other children that didn't change allocation, but we
12764         cannot work around that before 1.3).
12765
12766 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12767
12768         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12769         _and_ height are >0 (not _or_).
12770
12771         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12772         instead of gtk_container_queue_resize(), which is a core gtk internal
12773         function (must have been on crack when i queued that).
12774
12775         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12776         we can check more reliably if we want to discard expose events.
12777         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12778         flag.
12779         
12780         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12781         we simply trust these events. for deciding whether to discard exposes,
12782         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12783         
12784 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12785
12786         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12787         queues of areas that are completely off screen.
12788
12789         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12790         logic for handleboxes.
12791
12792         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12793         check on width/height.
12794
12795 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12796
12797         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12798         we are fine with using $@ the way we do (if we actually encounter
12799         brokeness with $@ in VPATH builds because of additional path prefixes,
12800         we need to use $(@F) actually).
12801
12802 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12803
12804         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12805         short lived bugs, that would allow language bindings to do surgeries
12806         to our guts.
12807
12808 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12809
12810         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12811         where comparison was being done against an uninitialized
12812         value causing intermittant results depending on
12813         compiler flags. Also make it clearer that we aren't
12814         ever initializing the child as 0x0 (though this will
12815         be caught in gtk_widget_size_allocate())
12816
12817 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12818
12819         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12820         gtk_window_unset_transient_for() call after we do checks
12821         involving the old transient parent.
12822         [ From Lance Capser <lmc@cyberhighway.net> ]
12823
12824 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12825
12826         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12827         an empty file.
12828
12829 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12830
12831         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12832         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12833
12834 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12835
12836         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12837         `$@' is valid only in the build dir, not after we've done 
12838         `cd $srcdir'.  Also use `test -f' instead of less portable
12839         `test -e'.
12840
12841 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12842
12843         * gtk/gtktext.c (correct_cache_insert): Rewrite
12844          for simplicity, and hopefully correctness.
12845          (Fixes bug #1322, which was a segfault when
12846           on some insertions with the properties around
12847           the insertion set up just wrong.)
12848
12849         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12850          a "changed" signal, clamp the new value to the adjustment
12851          bounds to avoid segfaulting if someone tries to change
12852          the adjustment to a bogus value. (Bug #1795)
12853
12854 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12855
12856         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12857         for children, for toplevel windows handle them
12858         like delete_event.
12859
12860         * gtk/gtkplug.c: Add an unrealize handler so that
12861         we unref plug->socket_window when we are done
12862         with it.
12863
12864 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12865
12866         * gtk/gtktext.c (clear_area): Fix stupid signedness
12867          problem that was causing background to sometimes
12868          be misaligned.
12869
12870 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12871
12872         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12873         
12874         * gtk/gtkmenu.c (gtk_menu_position): Make
12875          sure we never position menus with negative x, y,
12876          since gtk_widget_set_uposition() can't handle that.
12877
12878         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12879          Modify the positioning code a bit so that we always
12880          put the top-left corner onscreen. (This is for
12881          UI reasons, gtk_menu_position() now takes care of
12882          gtk_widet_set_uposition() brokeness.)
12883
12884 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12885
12886         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12887
12888 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12889
12890         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12891           RC style that is passed in. The lack of the ref
12892           before was a bug. If people worked around this
12893           bug, this will introduce a slight memory leak
12894           in their code. The code should typically look like:
12895
12896             rc_style = gtk_rc_style_new ();
12897             [...]
12898             gtk_widget_modify_style (widget, rc_style);
12899             gtk_rc_style_unref (rc_style);
12900
12901         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12902           the style if it was already set.
12903
12904         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12905           style if it was set before.
12906
12907 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12908
12909         * gtk/testgtk.c (main): Add a check to see if we
12910           are being run from the correct directory and
12911           to quit nicely if we are not.
12912
12913         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12914           static.
12915
12916 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12917
12918         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12919
12920         * gtk/gtkwindow.c:
12921         queue resizes unconditionally (gtk_widget_queue_resize will figure
12922         what to do if the window is not realized).
12923         (gtk_window_move_resize): only recenter the window
12924         for GTK_WIN_POS_CENTER_ALWAYS.
12925         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12926         the same way as GTK_WIN_POS_CENTER.
12927
12928 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12929
12930         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12931         with (!(info->last_flags & GDK_HINT_POS)) instead of
12932         (!info->last_flags & GDK_HINT_POS).
12933
12934         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12935         new_height unconditionally, because we use these values even if
12936         !default_size_changed && !hints_changed.
12937         comented the (default_size_changed || hints_changed) case with
12938         respect to resize rejects from the window manager.
12939
12940         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12941         in the zvt condition hack, since this includes the window hints, set
12942         the hints after the handling_resize case.
12943
12944         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12945         window is initially shown with to the geometry.
12946
12947 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12948
12949         * gtk/gtkwindow.c (gtk_window_move_resize):
12950         s/size_changed/default_size_changed/g so i know what's
12951         really going on (frying brain on smaller flame now).
12952
12953 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12954
12955         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12956         we have size_changed upon handling_resize. this is a gross
12957         workaround for the broken zvt widget and should be removed in
12958         1.3 again (search for FIXME).
12959         Owen provided an accurate comment for this:
12960
12961         /* We could be here for two reasons
12962          *  1) We coincidentally got a resize while handling
12963          *     another resize.
12964          *  2) Our computation of size_changed was completely
12965          *     screwed up, probably because one of our children
12966          *     is broken. It's probably a zvt widget.
12967          *
12968          * For 1), we could just go ahead and ask for the
12969          * new size right now, but doing that for 2)
12970          * might well be fighting the user (and can even
12971          * trigger a loop). Since we really don't want to
12972          * do that, we requeue a resize in hopes that
12973          * by the time it gets handled, the child has seen
12974          * the light and is willing to go along with the
12975          * new size. (this happens for the zvt widget, since
12976          * the size_allocate() above will have stored the
12977          * requisition corresponding to the new size in the
12978          * zvt widget)
12979          *
12980          * This doesn't buy us anything for 1), but it shouldn't
12981          * hurt us too badly, since it is what would have
12982          * happened if we had gotten the configure event before
12983          * the new size had been set.
12984          */
12985
12986 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12987
12988         * gtk/gtkrc.c: deal properly with the fact that RC
12989           style lists may include rc styles more than once.
12990
12991         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12992           unused static function.
12993
12994         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12995           stack of directories of RC files currently being
12996           parsed and implicitely add them to pixmap path.
12997           
12998           This fixes a bug where the directory would get
12999           appended then overwritten by pixmap_path declarations.
13000
13001           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
13002
13003         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
13004           theme's exit function. (Patch from Peter Wainwright,
13005           bug #1454)
13006
13007         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
13008           Add a destroy() handler to take care of removing
13009           group for menu item. (Fixes bug #1197)
13010
13011         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
13012           in warning message.
13013
13014 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
13015
13016         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
13017         roundtrip to figure window's width and height, since we know that
13018         anyways from widget->allocation.
13019
13020 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
13021
13022         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
13023           the hints after we request the new size.
13024
13025 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
13026
13027         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
13028           GTK_WIDGET_REALIZED() assertion - we can compute the
13029           hints before we are realized.
13030
13031         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
13032           hint changing so that we have a value of hints_changed
13033           when we decide whether to constrain the window size.
13034
13035         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
13036
13037         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
13038         change back to G_MAXINT.
13039
13040 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
13041
13042         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
13043         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
13044         contain uncluttered values.
13045         (gtk_window_compute_hints): simply assert that window is realized
13046         and that geometry_info is valid, since we rely on this anyways.
13047         (gtk_window_constrain_size): major cleanups to the code.
13048         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
13049         for the base size, instead of the minimums. use 32767 as max width
13050         and height (like in gtkwindow.c) instead of G_MAXINT.
13051
13052 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
13053
13054         * cleaned up the GtkContainer.need_resize flag handling mess, we
13055         only need to force resize requests when we were prematurely
13056         realized, or our widget tree was modified when we were temporarily
13057         hidden. handling these cases directly upon showing the window (i.e.
13058         while the GdkWindow is still unmapped) avoids the need to wait for
13059         a configure event response and therefore makes the GUI more snappier
13060         and avoids blank windows during the roundtrip.
13061
13062         * gtk/gtkwidget.c:
13063         (gtk_widget_hide): 
13064         (gtk_widget_show): don't queue resizes on toplevels, they know how
13065         to deal with matters.
13066
13067         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
13068         flag directly for not visible resize containers and spare us unecessary
13069         signal emissions.
13070
13071         * gtk/gtkwindow.c:
13072         (gtk_window_realize): if we need to enforce premature size allocation,
13073         queue a container resize so we are correctly resized later on.
13074         (gtk_window_init):
13075         (gtk_window_size_request):
13076         don't freak around with the ->need_resize flag,
13077         gtk_container_queue_resize() will care about that.
13078         (gtk_window_show):
13079         handle initial resizing issues here, we can handle matters better in
13080         this place, especially since we know that our GdkWindow is still
13081         unmapped.
13082         (gtk_window_move_resize):
13083         don't care about ->need_resize at all.
13084         handle size changes properly that occoured while we waited for a
13085         configure event.
13086
13087 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
13088
13089         * gtk/gtkwidget.c (gtk_widget_set_uposition):
13090         * gtk/gtkwindow.[hc] (gtk_window_reposition):
13091         Move the hint setting code from gtk_widget_set_uposition
13092         to here; set the hints so that we respect any previously
13093         set geometry hints.
13094
13095         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
13096         change the window hints here or move the window here,
13097         let that happen in gtk_window_move_resize().
13098
13099 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
13100
13101         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
13102         to already queued resizes (and therefore redraws) on a widget, check
13103         its anchestry as well.
13104
13105         * gtk/gtkcontainer.c:
13106         (gtk_container_queue_resize): clear resize widgets for resize
13107         containers before aborting prematurely. this is especially important
13108         for toplevels which may need imemdiate processing or their resize
13109         handler to be queued.
13110         (gtk_container_dequeue_resize_handler): added new internal function for
13111         gtkwindow.c.
13112
13113         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
13114         configure event, take possible changes in window position into account
13115         as well.
13116         if we request a new window size, queue up a resize handler that will
13117         last until the configure event response arrives.
13118         combined the ->need_resize case (initial show) with the general size
13119         (hints) changed case and added even more comments.
13120         if !auto_shrink, only revert to the old allocation if the new size
13121         is smaller than the current allocation.
13122
13123 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
13124
13125         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
13126                            gtk_window_set_geometry_hints
13127                            gtk_window_set_default_size):
13128         When hints are set, queue a resize so that the hints will
13129         be eventually reset on the toplevel.
13130
13131         * gtk/gtkwindow.c (gtk_window_show): Use
13132         gtk_window_compute_default_size(). Clear the need_resize flag
13133         on the initail map so that we don't unnecessarily trigger the
13134         resize code.
13135
13136         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
13137         into separate functions. Compare the hints we are setting
13138         with what we set last time so that we can accurately
13139         tell when we need to reset the hints.
13140
13141         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
13142         function to figure out the size from requisition
13143         and default_size.
13144
13145         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
13146         from fvwm to constrain a size to the geometry hints.
13147
13148         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
13149         to compare two sets of geometry hints.
13150
13151         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
13152         from gtk_window_set_hints(), just compute the hints,
13153         don't set them.
13154
13155         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
13156         code from gtk_window_move_resize() to separate function,
13157         rationalize a bit.
13158
13159 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
13160
13161         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
13162         structure into a new private structure.
13163
13164         * gtkrc.c: Split GtkRcStyle into public/private.
13165         In the private part, add a list of pointers to the
13166         RcStyle lists this RcStyle participates in.
13167
13168         * gtkrc.c: When a RcStyle is free, remove all
13169         lists referencing it from the 
13170         realized_style_ht hash, and free those lists.
13171         
13172         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
13173         gtk_rc_init(), since that adds the default styles
13174         to the list of parsed RC files again.
13175
13176         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
13177         
13178 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
13179
13180         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
13181         checks that ensure that a widget's allocation is at least 1 in width
13182         and height. (GNOME note: this doesn't affect old panel code anymore,
13183         because GtkSocket will request width and height of at least 1 since
13184         Fri Jul 23).
13185
13186         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
13187         allocated yet (happens if the user realizes the window prematurely),
13188         size request and allocate it.
13189         (gtk_window_size_allocate): guard against guint underflows.
13190
13191 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
13192
13193         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
13194         in gtk_built_sources, so gtk.defs gets built prior to all other
13195         sources.
13196
13197 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13198
13199         * gtk/Makefile.am:
13200         invoke indent on gtkmarshal.*. 
13201         rewrote source generation rules, use COPYING as oldest source tag for
13202         a piggyback rule to generate all sources from (don't touch it ;).
13203         major cleanups, strip spaces on build rules for GNU Make.
13204
13205         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
13206         source and target files from commandline arguments. don't invoke indent.
13207
13208 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13209
13210         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13211         notebook after switch to avoid drawing problems.
13212         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13213         
13214         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13215         show them instead. 
13216         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13217
13218 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
13219
13220         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
13221         notebook after switch to avoid drawing problems.
13222         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
13223         
13224         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
13225         show them instead. 
13226         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
13227
13228 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
13229
13230         * gtk/gtkwindow.c:
13231         we use window->need_resize from configure_event now, to indicate that
13232         the gtkwindow should keep its allocation (e.g. because the user resized
13233         the window through window manager handles). resize_count is now reliably
13234         used to figure whether we got the allocation we requested from the
13235         window manager.
13236         configure events get queued as resizes now, the real stuff (size
13237         computation and allocation) now only goes on in gtk_window_move_resize().
13238         GtkWindow's requisition now contains its *real* requisition (like all
13239         other widgets), *not* taking usize into account.
13240         geometry_info->last_{width|height} is now updated from set_hints() only
13241         so it always contains the last hints we set for the window manager.
13242         made some event handlers return TRUE instead of FALSE.
13243         the overall code should be much more straight forward now, and the
13244         significant code portions are accompanied by comments now.
13245         (gtk_window_set_hints):
13246         removed requisition argument and made it
13247         fetch the requisition through gtk_widget_get_child_requisition.
13248         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
13249         does that now.
13250         (gtk_window_show):
13251         ensure that the widget is realized before calling 
13252         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
13253         ensure that we got properly size requested and allocated before
13254         realization.
13255         (gtk_window_configure_event):
13256         ignore plain window moves, or reallocate the widget tree through the
13257         resize queue otherwise.
13258         (gtk_window_move_resize):
13259         mostly rewrote this function to figure window manager hints more
13260         reliably, coalesce window moves and resizes to reduce configure events
13261         and do actuall size allocations.
13262
13263 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
13264
13265         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
13266         that have a resize pending, because a redraw is already queued for them.
13267
13268         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
13269         hack to clear resize_widgets.
13270
13271         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
13272         for resize containers prior to size allocation. (this is also a bit
13273         ugly, but avoids side effects for stopped emissions and is thus more
13274         reliable).
13275         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
13276
13277         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
13278         function from gtk_tooltips_expose, as we connect to ::expose_event
13279         *and* ::draw now.
13280
13281 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
13282
13283         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
13284         checks.
13285         (gtk_target_list_unref): Likewise.
13286
13287         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
13288
13289 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
13290
13291         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
13292         guard against division by zero. (Fixes bug #1339)
13293
13294 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
13295
13296         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
13297         Prevent the trivial leak of information of allowing
13298         word motion when the entry is not visible.
13299
13300 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
13301
13302         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
13303         modality to error dialog as well as confirmation dialogs.
13304         (Bug #1803, reported by Rosanna Wing Sze Yuen)
13305
13306 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
13307
13308         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
13309         tree->view_lines.
13310         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
13311
13312         * gtk/Makefile.am (install-data-local): Solaris apparently
13313         has various troubles with ln -f; use rm first instead.
13314         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
13315
13316 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
13317
13318         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
13319         use `cp' followed by `rm' (the `rm' was already there).
13320
13321 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13322         
13323         * configure.in: Fix autoconf warnings about cross compilation by
13324         trying to provide sane defaults for AC_TRY_RUN.
13325         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
13326         put them into $(srcdir) when generated. Also add a dependency of
13327         gtksignal.h on gtkmarshal.h for -j builds. 
13328         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
13329
13330 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
13331
13332         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
13333         GDK_THREADS_{LEAVE,ENTER} pair.
13334         (From Paul Fisher <pnfisher@redhat.com>)
13335
13336 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
13337
13338         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
13339         width and height are always >0 (owen).
13340
13341 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
13342
13343         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
13344         change that assured that a widget's allocated with and height are
13345         always >1, since this breaks *buggy* panel code. unfortunately this
13346         back-breaks the gimp's color selector.
13347
13348         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
13349         allocation is always >0 in width and height, before sending the
13350         configure event; this is a *gross* hack to get the gimp back to work.
13351         
13352         * marked both cases with TODO-1.3
13353
13354 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
13355
13356         * gtk/gtktext.c: Don't display wrap indicators when
13357         text is not editable and word wrap is on.
13358
13359 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
13360
13361         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
13362         option menus here as they are not derived from menu shell, assure that
13363         the option menu has a menu we can add items to.
13364
13365 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
13366
13367         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
13368         width/height to (gint) before calculations and check against < 0 to
13369         avoid guint wraparounds.
13370
13371 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
13372
13373         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
13374         width and height is never zero. sanity check both dimensions against
13375         32767 and issue a warning if the allocation is greater than that.
13376
13377 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
13378
13379         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
13380         to g_main_pending() as well.
13381
13382 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
13383
13384         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
13385         call to g_main_iteration() - since that will regrab
13386         GTK+ lock to process events.
13387
13388 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
13389
13390         * gtk/gtkwindow.c
13391         - Regularize with the rest of GTK+ by making widget->requisition
13392           not reflect the set_usize()
13393         - Always recompute geometry hints, then check if they
13394           changed before sending them to the X server. The
13395           previous checks for changes would fail in a number
13396           of circumstances. 
13397
13398 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
13399
13400         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
13401
13402 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
13403
13404         * gtk/gtkdnd.c:
13405         - Code cleanups
13406         - Instantaneously update on modifier key presses
13407         - Allow cancellation of the drag with Escape.
13408
13409 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
13410
13411         * gtk/testgtk.c (create_handle_box): Set the policy
13412         to auto_shrink - otherwise the appearance is rather
13413         strange when flipping between horizontal and vertical.
13414
13415 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
13416
13417         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
13418         (gtk_window_set_default_size): don't change a value if it's < 0.
13419         queue a resize.
13420
13421 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
13422
13423         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
13424
13425 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
13426
13427         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
13428         add an extra "/" when concating "/" + filename.
13429         (From Matt Grossman <mattg@oz.net>)
13430
13431 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
13432
13433         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
13434         for fg_gc if we set it for drawing pixmap.
13435
13436 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
13437
13438         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
13439         
13440         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
13441         already set, call old engine's destroy function and
13442         unref the old engine.
13443
13444 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
13445
13446         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
13447
13448 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
13449
13450         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13451
13452 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13453
13454         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13455         expand behaviour changed.
13456
13457         * gtk/gtklabel.c (gtk_label_set_pattern):
13458         (gtk_label_set_justify):
13459         (gtk_label_set_line_wrap):
13460         don't bother invoking queue_clear, the reallocation does
13461         that for us, always free_words so the upcoming resize will
13462         relayout the label's contents.
13463
13464 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13465
13466         * applied argument implementation patches from Elena Devdariani
13467         <elena@cogent.ca>.
13468
13469         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13470         ::space_style, ::relief
13471         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13472         * gtk/gtkpreview.c: ::expand
13473         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13474         * gtk/gtknotebook.c: ::homogeneous
13475         * gtk/gtklabel.c: ::wrap
13476         * gtk/gtklist.c: ::selection_mode
13477         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13478         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13479         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13480         * gtk/gtkclist.c: ::sort_type
13481         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13482         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13483
13484 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13485
13486         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13487         comment.
13488
13489 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13490
13491         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13492         counting right when we have to attach a new style
13493         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13494
13495         * gtk/gtkstyle.c: Documented the refcounting
13496         peculularities of gtk_style_attach.
13497
13498 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13499
13500         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13501         window types.
13502
13503         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13504         of GTK_TOPLEVEL for creating the window.
13505
13506 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13507
13508         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13509         the last argument (reported by Per Winkvist).
13510         
13511 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13512
13513         Fixes for invisible XOR lines (Frank Loemker
13514         <floemker@TechFak.Uni-Bielefeld.DE>)
13515         
13516         * gtk/gtkclist.c (gtk_clist_realize): Always use
13517         a non-zero pixel for GDK_XOR.
13518
13519         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13520         Use GDK_INVERT instead of GDK_XOR.
13521
13522 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13523
13524         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13525         signals if h/voffsets differ from adjustment values.
13526         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13527
13528 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13529
13530         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13531         ::selection-done emissions up to the topmost menu shell.
13532
13533 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13534
13535         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13536         the user data on the window before destroying it.
13537
13538         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13539         unrealize handler to take care of destroying 
13540         notebook->panel properly. 
13541         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13542
13543         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13544         of g_new and g_realloc to stop memory leak. (Actually,
13545         we could just use g_realloc(), but I'm not 100% sure
13546         that is portable).
13547         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13548
13549 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13550
13551         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13552
13553         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13554         for fontsets.
13555
13556         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13557         with bin/button confusion.
13558
13559 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13560
13561         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13562         and show how preselection of radio items is done.
13563
13564 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13565
13566         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13567         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13568         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13569         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13570         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13571         * gtk/gtktable.c (gtk_table_attach): 
13572         * gtk/gtklist.c (gtk_list_insert_items): 
13573         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13574         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13575         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13576         * gtk/gtkbin.c (gtk_bin_add): 
13577         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13578         * gtk/gtkfixed.c (gtk_fixed_put): 
13579         * gtk/gtklayout.c (gtk_layout_put):
13580         general fixups to container_add logic. always realize child if
13581         child->parent is realized, only map the child and queue a resize
13582         if child and child->parent are both visible.
13583
13584 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13585
13586         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13587         instead of gtk_container_foreach to walk and unrealize children, so
13588         composite children get also unrealized.
13589         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13590         (gtk_widget_map): assert that the widget is visible (basic constrain).
13591         (gtk_widget_real_map): assert that the widget is realized (basic
13592         constrain).
13593
13594 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13595
13596         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13597
13598 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13599
13600         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13601         file for iso-8859-2 locales.
13602
13603         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13604
13605 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13606
13607         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13608          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13609          Remove some suspicious and useless lines. 
13610
13611 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13612
13613         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13614         width,height = 0, 0 to mean - here to edge of window,
13615         instead of -1, -1, since the former is all we support.
13616
13617 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13618
13619         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13620         when removing from quit_functions list.
13621
13622 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13623
13624         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13625
13626 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13627
13628         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13629          When redrawing characters on non-visible entry, use appropriate
13630          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13631
13632 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13633
13634         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13635         from drag coordinates.
13636         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13637         use drag_dest_cell.
13638
13639         * gtk/gtktree (drag_dest_cell)
13640         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13641         (Bug #1129)
13642
13643 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13644
13645         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13646         translate_* fields.
13647         (gtk_item_factory_finalize): invoke translate_notify independant from
13648         translate_data.
13649         (gtk_item_factory_set_translate_func): likewise.
13650         (gtk_item_factory_destroy): only remove ifactory pointer from those
13651         widgets that belong to us (stupid me).
13652
13653 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13654
13655         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13656         rc_style list when lookup succeeeds.
13657
13658 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13659
13660         * gtk/gtkctree.c (resync_selection): 
13661         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13662         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13663         bug.
13664
13665 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13666
13667         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13668         Add some missing GDK_THREADS_ENTER()/LEAVE around
13669         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13670
13671 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13672
13673         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13674         rather than emit_by_name.
13675
13676         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13677         on the widget across multiple signal emissions.
13678         (gtk_editable_delete_text): same here.
13679         (gtk_editable_class_init): set widget_class->activate_signal after
13680         editable_signals[ACTIVATE] has been created.
13681
13682 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13683
13684         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13685         position here prematurely -- we might not have the
13686         right ->min_position and ->max_position yet.
13687
13688 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13689
13690         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13691         Add error traps so if the other end of the connection
13692         dies, we survive.
13693
13694         * gtk/gtkselection.c (gtk_selection_notify): Clean
13695         up properly when selection property retrieval fails.
13696         
13697         * gtk/gtkselection.c (gtk_selection_request): Correctly
13698         reject SelectionRequest notifies where the handler
13699         returns no data.
13700
13701 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13702
13703         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13704         when we've previously highlighted.
13705
13706         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13707         emit two "drag_leave" signals for Motif drops.
13708
13709         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13710         back the correct status messages when dropping from
13711         Motif onto a proxy window that is rejecting the
13712         drop.
13713
13714 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13715
13716         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13717         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13718         to compare two argument values. added gtk_arg_to_valueloc() to set a
13719         variable from an arg through its location (pointer).
13720
13721         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13722         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13723         as gfloat*, uchars are collected as guchar*, ints are collected as
13724         gint*, etc...
13725
13726 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13727
13728         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13729         Include <string.h> instead of <strings.h>.
13730
13731         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13732         (actually, a lot more duplicate includes occur if
13733          you trace through the sequence of #include's)
13734         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13735         
13736 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13737
13738         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13739         gtk-a-higuti-990322-[0-3]
13740
13741         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13742         that was causing -DX_LOCALE not to work.
13743
13744         * gtk/gtkrc.c (gtk_rc_init):
13745         X_LOCALE will never have LC_MESSAGES defined
13746
13747 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13748
13749         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13750         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13751
13752         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13753         left/right as well (gtk-michael-980726-0.patch.gz).
13754
13755         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13756         for pointer values, use gchar instead of char. fixed uline allocation
13757         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13758         chunks instead of G_ALLOC_ONLY.
13759         (gtk_label_size_request): always alter requisition as passed and leave
13760         widget->requisition alone.
13761         (gtk_label_set_text): allow NULL strings.
13762         (gtk_label_new): likewise.
13763
13764 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13765
13766         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13767
13768 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13769
13770         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13771         *and* mapped (i.e. drawable).
13772         (gtk_bin_expose): only send exposes to drawable children.
13773
13774         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13775         (gtk_box_expose): only send exposes to drawable children.
13776
13777         * gtk/gtkhscale.c (gtk_hscale_draw): 
13778         * gtk/gtkvscale.c (gtk_vscale_draw):
13779         hm, this is an ugly one. we first compute the size of our trough area
13780         here (window relative) and then check intersection with the draw_area
13781         which is parent relative because we're a NO_WINDOW widget, so we need
13782         to offset the trough area by allocation.x and allocation.y before the
13783         check. (this must not be done for the background area though, since
13784         that's already computed parent relative).
13785
13786 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13787
13788         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13789         unrealize title buttons.
13790
13791 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13792
13793         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13794         (gtk_clist_column_title_active): 
13795         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13796
13797         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13798         zero initialize event, removed superfluous gdk_window_get_pointer call
13799
13800         * gtk/gtklist.c (gtk_list_vertical_timeout)
13801         (gtk_list_horizontal_timeout): removed superfluous
13802         gdk_window_get_pointer call
13803
13804 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13805
13806         * plugging problems reported by "Bruce Mitchener, Jr."
13807         <bruce@puremagic.com> due to a purify session.
13808
13809         * gtk/gtkstyle.c:
13810         (gtk_style_ref): 
13811         (gtk_style_unref): assert ref_count to be > 0.
13812
13813         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13814         the requisition.
13815         (gtk_clist_set_shift): likewise.
13816
13817         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13818         adjustments.
13819
13820         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13821         event before sending it and set send_event to TRUE (which needs to
13822         be done for *all* synthesized events).
13823         (gtk_list_vertical_timeout): likewise.
13824
13825         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13826         leaks.
13827
13828         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13829         to TRUE when synthesizing events.
13830
13831 [ *** end of merges from 1.2 *** ]      
13832         
13833 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13834
13835         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13836         (or copied from gdkconfig.h.win32 on Win32, sigh).
13837
13838         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13839
13840         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13841
13842         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13843
13844         * gdk/gdkconfig.h.win32: New file.
13845
13846         * gdk/win32/makefile.cygwin: Build just a static archive here.
13847
13848         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13849         for the DLL from the static archive built above.
13850
13851         * gdk/gdk.def: Moved here from the win32 subdirectory.
13852
13853         * gdk/win32/*: Adapt for the changed private struct organisation.
13854
13855         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13856
13857 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13858
13859         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13860         for wheel mice (buttons 4 and 5).
13861
13862 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13863
13864         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13865         drawables use just the pixel field in the foreground and
13866         background GdkColor of the GdkGC.
13867
13868         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13869         GdkColors containing uninitialized (red,green,blue) fields, and
13870         just the pixel field filled in, and furthermore in the
13871         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13872         It thus turns out that we really don't need to have the full
13873         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13874         it later to have just the pixel values.
13875
13876 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13877
13878         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13879
13880 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13881
13882         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13883         New question on GtkLabel background colors.
13884
13885         * docs/gtk_tut.sgml:
13886           - Correct the example code callback
13887             function definitions.
13888           - Update the gtkdial example code, from Frans van Schaik.
13889           - Update setselection.c to current API.
13890
13891         * examples/Makefile examples/*/*.c: Update to code
13892         listed in tutorial.
13893
13894 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13895
13896         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13897         subrange table (from the "Developing International Software for
13898         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13899         block... Get the loaded font's charset correctly.
13900
13901         (Note that this, and the other *-win32.c files, still really are
13902         the old ones, the win32 subdirectory is not ready for compilation
13903         yet after the reorg.)
13904
13905 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13906
13907         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13908         check.
13909
13910 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13911
13912         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13913         on results of XQueryDeviceState().
13914
13915 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13916
13917         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13918         we need to accesss only ->children. We need an accessor
13919         for the children.
13920
13921         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13922         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13923         to get rid of gdkx.h include.
13924         
13925         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13926         and random references to 'None'.
13927
13928         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13929         Get rid of unused #include <gdk/gdkx.h>
13930
13931         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13932         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13933         gdkconfig.h.
13934
13935 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13936
13937         * gdk/win32/gdkdraw.c
13938         * gdk/win32/gdkfont.c
13939         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13940         following yesterday's changes. (Unrelated to Owen's reorg.)
13941
13942 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13943
13944         * gdk/x11/gdkinput-gxi.c: Add missing include,
13945           fix GdkWindowPrivate => GdkDrawablePrivate.
13946
13947         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13948
13949         * gdk/x11/Makefile.am (xinput_sources): Add missing
13950         backslash to fix building with --with-xinput=none
13951
13952 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13953
13954         Move all X specific code into the x11/ directory.
13955         Aside from shuffling things around, did the following:
13956
13957        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13958          gdk_arg_context_* - a simple argument parsing system
13959          in the style of popt.
13960
13961        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13962          gdk/x11/gdkprivate-x11.h:
13963          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13964          add ->klass and ->klass_data fields. The klass_data
13965          field points to an auxilliary structure that is
13966          windowing system dependent.
13967
13968        * gdk/gdkfont.c: Make most of the measurement functions
13969          simply wrappers around gdk_text_extents().
13970
13971        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13972          _gdk_font_strlen() function that hides the weird
13973          behavior in gtk+-1.[02] where a string is interpreted
13974          differently for 8-bit and 16-bit fonts.
13975
13976        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13977          to store common code for synthesizing double/triple
13978          press events.
13979         
13980        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13981          Make all the function that modify an existing GC
13982          simply wrappers around gdk_gc_set_values().
13983          
13984        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13985          for throwing out later.
13986
13987        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13988          GdkImagePrivate and GdkColormapPrivate to have a
13989          windowing system dependent part (GdkFontPrivateX etc.)
13990          that "derives" from the system-independent part.
13991
13992        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13993          Got rid of the included-source-files for XInput in
13994          favor of automake conditionals. (Which didn't exist
13995          when XInput support was originally added.)
13996
13997        * gdk/gdkrgb.c: Remove the visual id from the debugging
13998          statements since that is X11 specific; print out
13999          type/depth info instead.
14000          
14001
14002 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
14003
14004         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
14005         loading duplicates of hashed fonts.
14006
14007         * gdk/gdk.c (gdk_keysym_convert_case): rename
14008         gdk_XConvertCase to gdk_keysym_convert_case, allow
14009         results to be NULL in the GTK+ style.
14010
14011         * gdk/gdkcompat.h: Started compatibility header
14012         for renames.
14013
14014 1999-11-07  Tor Lillqvist  <tml@iki.fi>
14015
14016         * gdk/win32/gdkprivate.h: New font private structures, related to
14017         fontsets.
14018
14019         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
14020         gdk_font_list_free(). On X11, will just be wrappers to
14021         XListFonts() and XFreeFontNames(). On Win32, the code previously
14022         in gtkfontsel.c is now here.
14023
14024         New function gdk_font_xlfd_create(). On X11 will get the FONT
14025         property of the font (for GDK_FONT_FONTs), or call
14026         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
14027         builds a XLFD style name from the font information in the LOGFONT
14028         struct(s).
14029
14030         New function gdk_font_xlfd_free(), which correspondingly frees the
14031         string returned by gdk_font_xlfd_create().
14032
14033         Implement fontsets on Win32. Add a function that iterates over a
14034         wide char string and calls a callback function for each substring
14035         of wide chars from the same Unicode subrange (and thus probably
14036         available in the same real font).
14037
14038         Improve the XLFD emulation a bit.
14039
14040         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
14041
14042         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
14043         Beta3, WM_IME_CHAR messages don't seem to contain the composed
14044         multi-byte char as with the Active IMM on Win9x. Oh well, handle
14045         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
14046         ImmGetCompositionStringW() to get the composed Unicode chars.
14047
14048         * gdk/win32/gdkgc.c
14049         * gdk/win32/gdkdraw.c: Changes needed because of the font private
14050         struct changes.
14051
14052         * gdk/win32/gdk.def: Add the new functions.
14053
14054 1999-11-04  Tor Lillqvist  <tml@iki.fi>
14055
14056         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
14057         get the Platform SDK to get <dimm.h>.
14058
14059         * gdk/win32/gdkevents.c: More event handling fixes and
14060         simplification. Never generate motion events with is_hint true. We
14061         used to do that on bogus grounds earlier. Windows sends
14062         WM_MOUSEMOVE messages on button events even if the mouse hasn't
14063         moved, ignore these.
14064
14065         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
14066
14067         * gdk/win32/gdkglobals.c
14068         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
14069         the TrackMouseEvent function, and use it.
14070
14071         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
14072         char before calling WideCharToMultiByte in order to get a string
14073         for the window title.
14074
14075         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
14076
14077         * gdk/win32/gdk.def: Remove obsolete functions.
14078
14079         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
14080         /nodefaultlib and /defaultlib switches.
14081
14082         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
14083
14084 1999-10-31  Tor Lillqvist  <tml@iki.fi>
14085
14086         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
14087         EuroSign).
14088
14089         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
14090         same type as GdkWChar, especially on Win32.
14091
14092         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
14093
14094         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
14095         before passing to Windows GDI for drawing etc. Convert to the
14096         system default codepage before passing to Windows as window
14097         titles.
14098
14099         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
14100         support changing input locale on the fly.
14101
14102         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
14103         on-the-fly changes. Convert incoming characters from the current
14104         codepage to Unicode (and then to a UTF-8 multi-byte string) based
14105         on the current input language. Use keysym<->Unicode mapping tables
14106         and functions borrowed from xterm sources.
14107
14108         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
14109         editions of Win9x, use the ActiveX-based Active IMM (Input Method
14110         Manager) if available. IMEs and the Active IMM are available under
14111         the disguise of Chinese, Korean and Japanese support for IE and
14112         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
14113         support is present in all editions (as long as you install it).
14114
14115         Call DispatchMessage from gdk_events_queue() (and thus
14116         gdk_WindowProc()), instead of duplicating the code in
14117         gdk_WindowProc().
14118
14119         Reworked the grab handling and propagation code, factored out
14120         duplicated code snippets into separate functions. Other cleanups,
14121         too.
14122
14123         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
14124         the <dimm.h> header describing the Active IMM.
14125
14126         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
14127         just do the same as for "single" fonts.
14128
14129         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
14130         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
14131         the new keysyms from gdkkeysyms.h.
14132
14133         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
14134         fontset, so that gtkentry uses wide characters.
14135
14136         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
14137         GTk+'s system directory "gtk+", not "gtk".
14138
14139 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
14140
14141         * docs/gtkfaq.sgml: FAQ update
14142
14143 1999-10-21  Tor Lillqvist  <tml@iki.fi>
14144
14145         * gdk/win32/gdkprivate.h: Add more font private data.
14146
14147         * gdk/win32/gdkfont.c
14148         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
14149         fonts and strings. Now works much better. You still have to
14150         have a correct font selected, though. No fontset emulation yet.
14151
14152 1999-10-19  Tor Lillqvist  <tml@iki.fi>
14153
14154         * gtk/maketypes.awk: Use G_OS_WIN32.
14155
14156         * gtk/gtk.def: Add some missing entry points. Also some non-public
14157         ones, but PyGTK porter claims to need them.
14158
14159         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
14160         built-in type generation.
14161
14162 1999-10-14  Tor Lillqvist  <tml@iki.fi>
14163
14164         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
14165         GDK_FONT_FONT fonts (which is all we have for now, we don't
14166         emulate fontsets). The X11 version uses plain XDrawString in that
14167         case, too. The string passed to gdk_draw_text_wc seems to be in
14168         fact (at least, when used by gtkentry and gtktext) either in a
14169         single-byte charset, or a DBCS. Not Unicode.
14170
14171         This fixes the problem in gtkfontsel, where even if you had
14172         selected a font with a non-Latin1 charset (windows-greek, for
14173         instance), the preview still used Latin-1 glyphs.
14174
14175         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
14176         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
14177         (gdk_font_load): Recognize the demibold etc weights, even if we
14178         don't have the corresponding constants in the headers.
14179         (gdk_font_hash_insert): Use same hash mechanism as in the X11
14180         version. Should save font resources a bit, when we don't have
14181         multiple HFONTs for the same font.
14182
14183         * gdk/win32/gdkprivate.h: Add the names field as in the X11
14184         version.
14185
14186 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
14187
14188         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
14189         X values
14190
14191 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
14192
14193         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
14194         layout support (as mentioned on
14195         http://www.jcinteractive.com/gnome-ui/software/widgets/)
14196
14197 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
14198
14199         * gtk/fnmatch.c
14200         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
14201
14202 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
14203
14204         * configure.in (ALL_LINGUAS): Added Galician (gl)
14205
14206 1999-10-05  Tor Lillqvist  <tml@iki.fi>
14207
14208         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
14209
14210         * gdk/win32/gdkcompat.c: New file, actually provide an
14211         implementation for the deprecated functions. (Just temporarily.)
14212
14213         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
14214
14215         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
14216
14217         * gdk/win32/gdk.def gtk/gtk.def: Updates.
14218
14219 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
14220
14221         * configure.in: Added "uk" to ALL_LINGUAS.
14222         
14223 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
14224
14225         * configure.in: correct checking for BeOS check
14226
14227         * gdk/gdktypes.h
14228         * gtk/fnmatch.c
14229         * gtk/gtkfilesel.c
14230         * gtk/gtkitemfactory.c
14231         * gtk/gtkmain.[ch]
14232         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
14233
14234 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14235
14236         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
14237         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
14238         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
14239         by Bulgarian). 
14240
14241 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
14242
14243         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
14244         Fix a reference to window_private->destroyed.   
14245
14246         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
14247         (ugly) setting of an internal GdkWindow member to use
14248         a _slightly_ cleaner macro.
14249
14250         * gdk/gdkprivate.h: Split GdkWindowPrivate into
14251         GdkDrawablePrivate and GdkWindowPrivate.
14252         Add extra macros for accessing GDK_DRAWABLE_ components.
14253
14254         * *.[ch]: Massive adjustments for the above, use the
14255         new macros in a lot of places.
14256
14257 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
14258
14259         * gdk/gdktypes.h: Make GdkDrawable the base type,
14260         not GdkWindow.
14261
14262 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
14263
14264         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
14265
14266 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
14267
14268         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
14269
14270 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
14271
14272         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
14273         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
14274
14275         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
14276
14277         * docs/gtk-config.1: Now autogenerated.
14278         * docs/Changes-1.4.txt: started
14279         
14280 1999-10-03  Tor Lillqvist  <tml@iki.fi>
14281
14282         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
14283         to #ifdef also here.
14284
14285         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
14286         Owen did to the X11 backend.
14287
14288         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
14289         ScrollWindowEx when blitting inside a window, it can't be correct
14290         in the general case.
14291
14292         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
14293         WM_GETMINMAXINFO is easier.
14294
14295         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
14296         depth equal to the bitspixel value, not the visual's depth.
14297
14298         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
14299         to 24 even if the bitspixel value is 32.
14300
14301         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
14302         need to check for depth==32 when bpp==32, depth will always be 24.
14303
14304 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
14305
14306         * docs/Changes-1.4.txt: Started
14307         
14308         * gtk/Makefile.am (gdk_headers): Include all the new headers.
14309
14310         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
14311         
14312         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
14313         into C file.
14314         
14315         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
14316         header to gdkinputprivate.h.
14317
14318         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
14319         unused since before 1.2.
14320
14321 1999-09-30  Tor Lillqvist  <tml@iki.fi>
14322
14323         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
14324         expand possible hex escapes in the font family (put there by
14325         logfont_to_xlfd if the font name isn't a legal XLFD font family,
14326         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
14327         On Win32, add hex escapes here, too.
14328
14329 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
14330
14331         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
14332         to #ifdef GDK_WINDOWING_X11.
14333
14334 [ Merges from gtk-1-2 ]
14335
14336 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
14337
14338         * configure.in: fixed "GNU Make" check to pass with new make version
14339         3.77.95.
14340
14341 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
14342
14343         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
14344         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
14345         AM_PATH_GTK() macros don't get confused by the -pre1.
14346
14347 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14348
14349         * configure.in (REBUILD): Change check for perl5
14350           to check explicitely for v >= 5.002. (5.001
14351           does not work with our scripts.)
14352
14353 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
14354
14355         * configure.in: evaluate $PERL for the perl version check. added
14356         --disable-rebuilds to give the user an option to completely disable
14357         any source autogeneration rules.
14358
14359 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
14360
14361         * configure.in: evaluate $ac_make when checking for GNU Make.
14362
14363 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14364
14365         * docs/Makefile.am: added generation.txt.
14366
14367         * Makefile.am: require automake 1.4, build README from README.in and
14368         INSTALL from INSTALL.in in dist-hook.
14369         
14370         * README.in:
14371         * INSTALL.in: new files to autogenerate README and INSTALL from.
14372
14373         * configure.in: figure whether we have GNU Make
14374
14375         * docs/generation.txt: minor additions/corrections.
14376
14377 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14378
14379         * docs/gtkfaq.sgml: FAQ Update
14380
14381 July 30, 1999 Elliot Lee <sopwith@redhat.com>
14382         
14383         * configure.in: Fix autoconf warnings about cross compilation by
14384         trying to provide sane defaults for AC_TRY_RUN.
14385
14386 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
14387
14388         * ltconfig
14389         * ltmain.sh: upgrade to libtool 1.3.3
14390
14391 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
14392
14393         * INSTALL: Indicate that the --with-glib= configure
14394         time flag is unsupported.
14395
14396 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
14397
14398         * docs/generation.txt: Added a file that gives
14399         documenation about the autogeneration process for
14400         various autogenerated files.
14401         
14402 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14403
14404         * configure.in (LIBS): Look for libgmodule in the
14405         right location.
14406
14407 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
14408
14409         * docs/gtk_tut.sgml: Removed references to
14410         code examples in my directory on gtk.org as
14411         they should all be in the tutorial now.
14412
14413         * docs/gtk_tut.sgml: Added sources for dial-test
14414         and scribble-xinput programs that were previously
14415         missing.
14416
14417 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
14418
14419         * TODO: Added entry about menu keyboard navigation, removed
14420         some finished items.
14421
14422 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
14423
14424         * acinclude.m4: Standardize on func_dgettext
14425         not func_gettext, so that the checks for dgettext
14426         actually are paid attention to.
14427
14428 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
14429
14430         * configure.in (LIBS): Add $INTLLIBS into $LIBS
14431         directly, rather than repeating the checks for
14432         gettext.
14433
14434         * INSTALL: Added information about gettext and
14435         NLS support.
14436
14437         * acinclude.m4 (LIBM): Check for dgettext, not
14438         just gettext. This should hopefully fix things wrt
14439         systems with old versions of GNU gettext installed.
14440
14441 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
14442
14443         * configure.in (LIBS): Look for libgmodule in the
14444         right location.
14445
14446 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14447
14448         * autogen.sh: add --enable-maintainer-mode
14449
14450         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14451
14452 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14453
14454         * docs/gtk-config.1.in:
14455           docs/Makefile.am:
14456           configure.in: gtk-config is now generated.
14457
14458         * docs/gtk-config.1: Removed, now generated.
14459
14460 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14461
14462         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14463         handle CreateNotify itself, still put out a debuging message for
14464         --gdk-debug=events. made the ReparentNotify debugging message more
14465         verbose.
14466         wrap xcoords translation for ConfigureEvents into an error trap,
14467         a destroy event may already be pending, and in that case, the
14468         actuall coordinate values are not at all critical.
14469
14470 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14471
14472         * gdk/gdkcc.c: Stop leaking the color_hash all over
14473         the place. Simplify and improve the logic.
14474
14475 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14476
14477         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14478         for prototypes and function implementations consistent (reported
14479         by Tomas Ogren).
14480
14481 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14482
14483         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14484         send_event set in debugging output.
14485         (gdk_compress_exposures): default initialize the event so we don't
14486         operate on bogus values (namely send_event).
14487
14488 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14489
14490         * gdk/gdkwindow.c: When we receive an unexpected
14491         destroy notify on one of our windows, don't just
14492         warn about it, also mark our windows as destroyed.
14493
14494 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14495
14496         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14497           name => font and name => fontset hashes. The 
14498           name => fontset hash is a _big_ win since we
14499           weren't previously caching fontsets at all and loading
14500           fontsets is expensive. The name => font hash
14501           is less of a win, but it does save us from doing
14502           repeated XQueryFont calls on the same font.
14503
14504         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14505           list so we can remove font/fontset from hash.
14506
14507 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14508
14509         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14510           and slightly confusing test. [ XInternAtom (,,TRUE)
14511           will never return None ].
14512
14513 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14514
14515         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14516           gdk/gdkwindow.c (gdk_window_set_hints):
14517
14518         Don't omit setting the properties if flags == 0 -
14519         there may be an existing set of properties there
14520         already. (Very old bug. Would it be better to
14521         delete the property instead?)
14522
14523         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14524           spelling error in comment.
14525
14526 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14527
14528         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14529           to avoid stomping over gdk_error_warnings.
14530
14531         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14532           as (bits_per_pixel + 7) / 8. This gives the same
14533           result as before for multiples of 8, but actually
14534           a "reasonable" value for 1bit or 4bit displays.
14535
14536 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14537
14538         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14539         GNU Make.
14540
14541 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14542
14543         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14544         discarding configure events.
14545
14546 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14547
14548         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14549         refcount is greater than zero.
14550
14551         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14552
14553         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14554
14555         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14556
14557         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14558
14559 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14560
14561         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14562         that format 32 => sizeof(item) == 4. It really is
14563         sizeof(long).
14564
14565 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14566
14567         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14568         core dump at all on X IO errors, only core dump
14569         if --enable-debug for X errors.
14570
14571 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14572
14573         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14574         unknown window:" message. disabled ConfigureNotify discarding code,
14575         because it led to events being processed out of order.
14576
14577 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14578
14579         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14580
14581         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14582         we export this function, supress error warnings and don't reset the
14583         error code in the first half of this function.
14584
14585         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14586         code (instead of just -1) so gdk_error_trap_pop() reveals something
14587         actually informative about the error that happened.
14588
14589         * gdk/*.c:
14590         don't rely on gdk_error_code being -1 if an error occoured, but just
14591         gdk_error_code != 0.
14592
14593 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14594
14595         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14596         pointer *before* invoking the filter function, so we at least don't
14597         crash if a filter is removed that is currently executed. window filters
14598         *really* need to be made truely reentrant at some point.
14599
14600 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14601
14602         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14603         PropertyNotify debug messages.
14604
14605 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14606         
14607         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14608         
14609         * gdk/gdkim.c: Fix cut-and-paste errors for 
14610         x/y and PreeditAttributes/StatusAttributes.
14611
14612 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14613
14614         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14615         G_MAXINT to 2^16 to alleviate overflow problems in
14616         various window managers.
14617
14618 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14619
14620         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14621         for fontsets.
14622
14623 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14624
14625         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14626         Initialize size_hints.x and size_hints.y because kwm
14627         brokenly pays attention to them.
14628         (Bug #1181 -  Lars Heete <hel@admin.de>)
14629
14630 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14631
14632         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14633         return value of gdk_list_visuals(). 
14634         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14635
14636 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14637
14638         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14639         XSetIMValues to (void *) when comparing to NULL, to workaround
14640         the problem of some compilers barfing since older X headers don't
14641         have the prototype for it.
14642
14643 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14644
14645         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14646         for pseudocolor where colormap->colors was double
14647         allocated.
14648
14649         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14650         color value in the hash table with the pixel filled
14651         in so when we do later hash table lookups, the color
14652         value is correct.
14653         
14654 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14655
14656         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14657         making the call
14658
14659 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14660
14661         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14662         pointed out by Morten Welinder <terra@diku.dk>.
14663
14664 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14665
14666         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14667           default filter from the list
14668
14669 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14670
14671         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14672           default filter from the list
14673
14674 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14675
14676         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14677
14678         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14679         g_strdup_printf instead of calcing the length separately
14680
14681 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14682
14683         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14684         that we don't do in many other places. (Fixing duplicate 
14685         #include of config.h)
14686
14687         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14688         Otherwise, #ifndef XINPUT_NONE check in the latter
14689         doesn't work. (Bug #546)
14690
14691 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14692
14693         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14694         "None" case insensitive.
14695
14696 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14697
14698         * gdk/gdkselection.c: 
14699         Add error traps so if the other end of the connection
14700         dies, we survive.
14701
14702 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14703
14704         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14705         dest_xid field into two fields - one for the window
14706         to send in messages, one to indicate the last looked
14707         up window for caching purposes. This is needed, so
14708         that Leave messages get the correct window.
14709
14710 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14711
14712         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14713         Fix warning created by people mucking around
14714         with the gsource API.
14715
14716         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14717         Change mapping between GIOCondition and GdkInputCondition
14718         to match the way the Linux kernel does it. This should
14719         fix problems where closed pipes were no longer signalling
14720         GDK_INPUT_READ on systems with a native poll().
14721
14722 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14723
14724         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14725         explicitly for the string "None" - it is in the XPM
14726         spec and some servers treat unknown colors in odd ways
14727         (like asking the user!)
14728
14729 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14730
14731         * gdk/gdkevents.c: made "->" into a "." of previous change so
14732         it compiles
14733
14734 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14735
14736         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14737         window field of the event structure before calling
14738         user filters.
14739
14740 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14741
14742         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14743         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14744
14745 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14746
14747         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14748         intermediate text property - prevents major memory
14749         leak when gdk_use_mb.
14750         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14751
14752 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14753
14754         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14755         gtk-a-higuti-990322-[0-3]
14756
14757         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14758         sizeof(wchar_t) != sizeof (GdkWChar)
14759
14760         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14761         that was causing -DX_LOCALE not to work.
14762
14763         * gtk/gtkrc.c (gtk_rc_init):
14764         X_LOCALE will never have LC_MESSAGES defined
14765
14766         * gdk/gdk.c (gdk_init_check):
14767         Remove --xim-preedit and --xim-status from argv properly.
14768
14769         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14770         that the client window is present on the X server
14771         before we pass it to the input method.
14772
14773 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14774
14775         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14776         if --display is specified on the command line, than
14777         the drag window will not be created on that display.
14778         
14779 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14780
14781         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14782         lookups with only_if_exists == TRUE were inserting
14783         bogus values into the atom cache.
14784
14785 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14786
14787         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14788         then reset it to NULL.
14789
14790         * gdk/gdkcolor.c:
14791         (gdk_colors_free): 
14792         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14793         key for g_hash_table_remove() in both functions, this prevents us
14794         from accessing possibly uninitialized portions of a GdkColor structure
14795         where we are only interested in its pixel value.
14796
14797 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14798
14799         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14800         font hash table, if we have a GdkFontPrivate entry for this font
14801         already, simply increment its reference count, provided by Olaf Dietsche
14802         <olaf.dietsche+list.gtk@netcologne.de>.
14803
14804 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14805
14806         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14807         just to be sure.
14808
14809         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14810         unused variables, leftovers from the X11 version.
14811
14812         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14813
14814         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14815         downcase fields on X11.
14816
14817 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14818         
14819         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14820         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14821
14822 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14823
14824         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14825
14826         * gtk/makefile.msc: Correct path to libintl.
14827
14828         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14829         use of gint vs. int, and gint vs. gboolean in headers and
14830         definitions. Use GtkType for the *_get_type functions. Note that
14831         these changes preserve binary compatibility.
14832
14833         * gdk/gdk.c
14834         * gdk/win32/gdk.c
14835         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14836
14837         * gtk/gtkmain.c
14838         * gtk/gtkclist.c
14839         * gtk/gtkmenufactory.c
14840         * gtk/gtknotebook.c
14841         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14842         vs. gboolean.
14843
14844         * gtk/gtkcolorsel.[ch]
14845         * gtk/gtkcombo.[ch]
14846         * gtk/gtkdrawingarea.[ch]
14847         * gtk/gtkgamma.[ch]
14848         * gtk/gtkhandlebox.[ch]
14849         * gtk/gtkhpaned.[ch]
14850         * gtk/gtkhruler.[ch]
14851         * gtk/gtkplug.[ch]
14852         * gtk/gtkpreview.[ch]
14853         * gtk/gtkruler.[ch]
14854         * gtk/gtksocket.[ch]
14855         * gtk/gtkstatusbar.[ch]
14856         * gtk/gtktoolbar.[ch]
14857         * gtk/gtkvbbox.[ch]
14858         * gtk/gtkvpaned.[ch]
14859         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14860         functions.
14861
14862         * gtk/gtkgamma.h: Fix bug, missing () in call of
14863         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14864
14865 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14866
14867         * gdk/gdkcolor.c (gdk_colormap_new)
14868         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14869         colormap->colors was allocated twice.
14870
14871         * gdk/win32/gdk.c: Remove some unused stuff.
14872
14873         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14874         colormap.
14875
14876         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14877         * gtk/gtklabel.h (gtk_label_get_type)
14878         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14879         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14880         in a couple of places, not guint.
14881
14882 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14883
14884         * configure.in,po/et.po: added Estonian language file
14885
14886 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14887
14888         * configure.in,po/da.po: added Danish file
14889
14890 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14891
14892         * docs/gtkfaq.sgml: Minor FAQ Update
14893
14894 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14895
14896         * docs/gtkfaq.sgml: FAQ update
14897
14898 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14899
14900         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14901         way to get window contents continually refreshed while resizing. I
14902         didn't like the effects myself, so it's not on by default.
14903
14904         * gdk/win32/gdkprivate.h: New flag variable
14905         gdk_event_func_from_window_proc, FALSE by default.
14906
14907         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14908         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14909         are passed --gdk-event-func-from-window-proc.
14910
14911         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14912         and we have am event_func, call it instead of enqueing the event.
14913
14914 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14915
14916         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14917         Kelley: Set expose_count in GdkEventExposes correctly.
14918
14919         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14920         MULTIPLE_WINDOW_CLASSES).
14921
14922         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14923         for bug in NT, apparently NT *does* draw the end pixel, too, in
14924         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14925
14926 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14927
14928         Improvements by Hans Breuer: 
14929
14930         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14931
14932         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14933         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14934         window contents while dragging" is turned on. Allocate at least
14935         one unique class for every GdkWindowType. If support for single
14936         window-specific icons is ever needed (eg. Dialog specific), every
14937         such window should get its own class.
14938
14939 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14940
14941         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14942         error that caused crashes.
14943
14944 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14945
14946         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14947         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14948         bugs when for instance part of the window was outside the
14949         display. Thanks to Philippe Colantoni for finding and fixing this.
14950
14951 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14952
14953         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14954         endpoint calculations which were totally wrong. (A little RTFMing
14955         helps a lot ;-)
14956
14957         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14958         from a separate directory, not from gettext, because of licensing
14959         issues (we want to use the LGPL version).
14960
14961         * README.win32: Mention the intl from glibc vs from gettext issue.
14962
14963 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14964
14965         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14966         in the key event handling: Now AltGr chars work again. Also,
14967         now Alt-digits are passed up as well as Control-digits.
14968         Pass keypad plus and minus as normal plus and minus.
14969
14970 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14971
14972         * docs/gtkfaq.sgml: FAQ Update
14973
14974 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14975
14976         * README.win32
14977         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14978         the Wintab SDK.
14979
14980         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14981         OK, but getting closer. Guard against bogus tilt data from Wacom
14982         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14983         enable easier building without Wintab.
14984
14985         * gdk/win32/gdkinput.h
14986         * gdk/win32/gdkevents.c 
14987         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14988         
14989         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14990         code. As we have just one visual on Win32, no sense to have it in a
14991         table, and no need for the hash table.
14992
14993         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14994         better on white background.
14995
14996 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14997
14998         * README.win32: Update gcc build instructions. Mention gettext is
14999         GPL.
15000
15001         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
15002         supported cursor size with GetSystemMetrics.
15003
15004         * gdk/win32/gdkfont.c
15005         * gtk/gtkfontsel.c: Guard against some font weight and charset
15006         symbols being undefined (in mingw32 headers).
15007
15008         * gdk/win32/makefile.cygwin
15009         * gtk/makefile.cygwin
15010         * gtk/gtkthemes.c: No longer need to have differently named
15011         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
15012
15013 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
15014
15015         * docs/gtkfaq.sgml: Long awaited FAQ update.
15016
15017 1999-07-15  Tor Lillqvist  <tml@iki.fi>
15018
15019         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
15020         it. Obscure bit manipulation needed.
15021
15022         * gdk/win32/gdkevents.c: Logging.
15023         
15024         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
15025         style (file name include compiler name) for theme engines.
15026
15027 1999-07-13  Tor Lillqvist  <tml@iki.fi>
15028
15029         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
15030
15031         * gdk/win32/gdkevents.c: Fix long-standing bug in key
15032         events. The key.string wasn't zero-terminated, still we strdup'ed
15033         it in gdk_event_copy(). Synthesize crossing events for button
15034         events before possible propagation.
15035
15036         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
15037
15038         * gdk/win32/makefile.cygwin
15039         * gtk/makefile.cygwin: Use new DLL naming style for the
15040         GCC-compiled ones.
15041
15042         * gdk/win32/makefile.msc
15043         * gtk/makefile.msc: Cosmetics mostly.
15044
15045         * gtk/gtk.def: Add missing entry points.
15046
15047         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
15048
15049 1999-07-09  Tor Lillqvist  <tml@iki.fi>
15050
15051         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
15052         or height is zero. Don't print a warning if Pie or Arc fails, they
15053         always fail (?) for very narrow ellipses.
15054
15055         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
15056         the part or the destination window corresponding to source area
15057         outside of the source drawable's boundary.
15058
15059         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
15060         anything if less than two points.
15061
15062         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
15063         return NULL. Gtk cut-and-paste inside a single program works
15064         better this way. (It always gets the clipboard contents from
15065         Windows, not from its own copy, which is cleared anyway. I can't
15066         say I fully understand what happens... Emulating the X selection
15067         and property stuff is a bit of a mess.)
15068
15069         * gdk/win32/gdkevents.c
15070         * gdk/win32/gdkproperty.c: A bit more verbose logging.
15071
15072         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
15073         that never got deleted). Revamp gdk_region_shrink.
15074
15075         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
15076         after use.
15077
15078         * gtk/gtk.def: Add some missing entry points.
15079
15080         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
15081         component.
15082
15083 1999-07-04  Tor Lillqvist  <tml@iki.fi>
15084
15085         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
15086         Control-digits specially.
15087
15088 1999-07-03  Tor Lillqvist  <tml@iki.fi>
15089
15090         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
15091
15092 1999-06-28  Tor Lillqvist  <tml@iki.fi>
15093
15094         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
15095         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
15096         finding this.)
15097
15098 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
15099
15100         * gtk+.spec.in: Corrected some typos in files section.
15101         
15102 1999-06-15  Tor Lillqvist  <tml@iki.fi>
15103
15104         * README.win32: Mention using GNU gettext.
15105         * config.h.win32: Enable NLS stuff.
15106         * gtk/makefile.msc: Use GNU gettext.
15107         * gdk/win32/gdkdnd.c: Minor header reorg.
15108         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
15109         cosmetics.
15110         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
15111         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
15112
15113 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
15114
15115         * acinclude.m4
15116         * config.guess
15117         * config.status
15118         * ltconfig
15119         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
15120
15121 1999-05-30  Tor Lillqvist  <tml@iki.fi>
15122
15123         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
15124         SafeAdjustWindowRectEx. Don't override all calls to
15125         AdjustWindowRectEx by it, but use it only in two places: When
15126         creating a new top-level window and when moving a top-level
15127         window.
15128
15129         Use screen coordinate rectangle, not client rectangle, in
15130         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
15131         when we try to place a window so that the decoration (mainly,
15132         title bar) isn't visible.
15133
15134         These changes fix the bug that showed up for instance as the
15135         GIMP's saved top-level windows moving right and down (by an amount
15136         equal to the window decoration) for each session. This bug showed
15137         up also in testgtk's "Saved Position".
15138
15139         gdk_window_resize also redone a bit.
15140
15141 1999-05-25  Tor Lillqvist  <tml@iki.fi>
15142
15143         * gtk/testgtkrc: Add (commented out) Windows-style theme
15144         include line.
15145
15146         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
15147
15148 1999-05-18  Tor Lillqvist  <tml@iki.fi>
15149
15150         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
15151         gdkx.h to a gdk subdirectory, so that applications can include
15152         these with <gdk/*.h> without trouble.
15153
15154         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
15155         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
15156         have their bitmap destroyed.
15157
15158         * gdk/win32/gdk.def: Add gdk_root_parent.
15159
15160 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
15161
15162         * configure.in
15163           gtk-config.in
15164           ltconfig
15165           ltmain.sh     
15166           gtk/Makefile.am: changes to compile nicely (with xlib) 
15167           on BeOS
15168
15169 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
15170
15171         * acinclude.m4
15172         * config.guess
15173         * config.sub
15174         * ltconfig
15175         * ltmain.sh: upgrade to libtool 1.3
15176
15177 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
15178
15179         * gtk/gtkclist.c:
15180         * gtk/gtkctree.c: merges from gtk-1-2
15181
15182 1999-04-25  Tor Lillqvist  <tml@iki.fi>
15183
15184         Support added for building using a GNU toolchain on Win32,
15185         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
15186
15187         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
15188         * config.h.win32: Changes for gcc.
15189         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
15190         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
15191         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
15192         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
15193         Protect shl stuff unavaiilable with mingw32 headers.
15194         * gdk/win32/gdkevents.c: Fix typo.
15195         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
15196         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
15197         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
15198         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
15199         the mingw32 headers.
15200         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
15201         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
15202         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
15203         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
15204         Test for NATIVE_WIN32, not _MSC_VER.
15205         * gtk/gtkmain.c: No use warning about developer version on Win32,
15206         there aren't any non-developer versions anyhow.
15207         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
15208         * gtk/makefile.msc: Use pthread from another directory. Minor other
15209         changes. 
15210
15211 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
15212
15213         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
15214           default filter from the list
15215
15216 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
15217
15218         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
15219          when gtk_widget_grab_default() is called for a widget that
15220          is not within a GtkWindow.
15221
15222 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
15223
15224         * docs/gtk_tut.sgml, examples/clist.c: use a
15225           scrolled window in the clist example. Minor
15226           tutorial fixes.
15227
15228 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
15229
15230         * docs/gtk_tut.sgml: Style check from David King
15231           <dking@youvegotmail.net>
15232
15233 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
15234
15235         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
15236         compile with unknown value of GDK_WINDOWING
15237
15238 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
15239
15240         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
15241         after the rule is fired.
15242         (install-exec-local): Install gdkconfig.h only if the contents are
15243         different from the currently installed gdkconfig.h.
15244
15245 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
15246
15247         * gdk/Makefile.am (configexecincludedir): Rename from 
15248         configincludedir so that gdkconfig.h will be installed 
15249         as part of `make install-exec'. 
15250
15251 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
15252
15253         * acinclude.m4
15254         * config.guess
15255         * config.sub
15256         * ltconfig
15257         * ltmain.sh: upgrade to libtool 1.2f
15258
15259         * autogen.sh: libtool is not required to autogen gtk+
15260
15261         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
15262         needed)
15263
15264 1999-03-18  Tor Lillqvist  <tml@iki.fi>
15265
15266         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
15267         declaring gdk variables exported/imported from the DLL. New image
15268         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
15269         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
15270         GDK_DRAG_PROTO_OLE2.
15271
15272         * gdk/gdk.h: Merge in Win32 version: Two new functions,
15273         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
15274         declared only for the Win32 version, but could be in the X11
15275         version as well. (Needed for a Xlib-less gdk_imlib.)
15276         gdk_color_hash should have only one parameter. Declare
15277         gdk_threads_mutex with GDKVAR.
15278         
15279         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
15280         just one parameter.
15281
15282         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
15283         per pixel, not bits.
15284
15285         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
15286         Fetch bpp (which means bits-per-pixel here) from another place on
15287         Win32. Accept also depth==32 (which we might get on Win32) with
15288         bpp==32.
15289
15290         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
15291         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
15292         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
15293         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
15294         in the backend-dependent directory, not in the common gdk
15295         directory.
15296
15297         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
15298         headers.
15299
15300 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
15301
15302         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
15303         want to use the Gtk+ devel version (which is true, and yes - even i am
15304         currently working with the 1.2.x branch). so everyone reading this, you
15305         probably want to issue
15306         cvs checkout -r glib-1-2 glib
15307         and
15308         cvs checkout -r gtk-1-2 gtk+
15309         as your next two comands.
15310
15311 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
15312
15313         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
15314         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
15315
15316         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
15317         file. strongly deprecated the GTK_HAVE_* macros, we provide
15318         GTK_CHECK_VERSION() for people that need to check for certain
15319         Gtk+ versions.
15320
15321         * gtk/gtkcompat.h: removed this from CVS.
15322         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
15323         idea right from the start, it just didn't seem like that back then.
15324
15325 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
15326
15327         * merges from gtk-1-2:
15328
15329 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
15330
15331         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
15332         item factory class has been created.
15333         (gtk_item_factory_parse_rc): likewise.
15334
15335         * gtk/gtkmenu.c:
15336         keep proper references for old_active_menu_item.
15337         (gtk_menu_reparent): unset the usize of the new parent,
15338         so the menu can sanely be size requested and we don't get nasty screen
15339         artefacts upon next reparentation.
15340         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
15341         enter notify. only synthesize enter notifies if the pointer really is
15342         inside the event window.
15343         (gtk_menu_popdown): use gtk_menu_shell_deselect().
15344         (gtk_menu_popup): move the background setting stuff into
15345         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
15346
15347         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
15348         gtk_menu_shell_select_item() to select the new item.
15349         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
15350         do the right thing for deselection as well.
15351
15352 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
15353
15354         * gtk/gtkwidget.[hc]:
15355         (gtk_widget_accelerators_locked): return whether a widget's accelerators
15356         are locked.
15357
15358         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
15359         existing accelerators if the widget's accelerators are locked.
15360
15361 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
15362
15363         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
15364
15365         * gtk/gtkmenu.c: truely forward key press and key release events to
15366         the menu widget from the toplevel or tearoff window. we can't simply
15367         connect to that, we need to stop further processing of the events as
15368         well.
15369
15370 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
15371
15372         * gtk/gtkmenu.c:
15373         (gtk_menu_key_press): pass event->keyval, event->state to
15374         gtk_accelerator_valid, instead of event->keyval twice.
15375         refuse to install single letter accelerators for menus that use
15376         single letter shortcuts.
15377
15378         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
15379         gtk_menu_ensure_uline_accel_group().
15380
15381         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
15382         which will always return an uline accel group, made
15383         gtk_menu_get_uline_accel_group() return NULL if the group isn't
15384         yet created.
15385
15386 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
15387
15388         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
15389
15390         * gtk/gtkclist.c (gtk_clist_column_title_passive):
15391         Leave button sensitive, trap  button_press, button_release,
15392         motion_notify, enter_notify and leave_notify events instead.
15393         (gtk_clist_column_title_active): disconnect event handler.
15394         (gtk_clist_drag_data_get): fixed memory leak. Reported by
15395         Guillaume Laurent <glaurent@worldnet.fr>
15396
15397 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
15398
15399         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
15400         width/height mixups.
15401
15402         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
15403         if needed.
15404
15405 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
15406
15407         * gtk/testgtk.c (create_item_factory): unref the item factory after
15408         window's destruction.
15409
15410         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
15411         count on the menu shell around the menu item's activation, since the
15412         signal emission may cause menu shell destruction.
15413
15414         * gtk/gtkitemfactory.c:
15415         the previous code leaked one accel group per menu. we use
15416         gtk_menu_get_uline_accel_group() now to fix that, and with that
15417         also create the underline accelerator group of the menus only if
15418         required (i.e. an underline accelerator has been specified).
15419         (gtk_item_factory_construct):
15420         (gtk_item_factory_create_item): removed code that would create an
15421         extra accel group for the menu (and leak references).
15422         (gtk_item_factory_create_item): adapted the underline accelerator
15423         installation code to properly feature gtk_menu_get_uline_accel_group().
15424
15425         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
15426         menu->accel_group, this may return NULL if the accelerator group
15427         hasn't been set yet.
15428         added gtk_menu_get_uline_accel_group() to retrive the underline
15429         accelerator group of the menu, this will be created on demand
15430         and proper care is taken about its reference count.
15431
15432         * gtk/gtkitemfactory.h:
15433         * gtk/gtkitemfactory.c:
15434         dumped the approach of keeping a widgets by action list on the
15435         factory since the factory<->widget destroy negotiation didn't work
15436         and would be hard to get going at all. instead we keep a list of
15437         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
15438         persistant throughout a program's life time).
15439         also, i removed the static const gchar *key_* variables, and made
15440         them inline strings (they weren't actually used anyways).
15441         (gtk_item_factory_add_item): update ifactory->items.
15442         (gtk_item_factory_destroy): destroy ifactory->items (and remove
15443         the item factory pointer from the remaining ifactory widgets).
15444         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
15445         list to find the widget.
15446         (gtk_item_factory_get_item): new function that works around
15447         gtk_item_factory_get_widget() limitations, this function will only
15448         return menu items, even for <Branch> entries.
15449
15450 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15451
15452         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15453         font hash table, if we have a GdkFontPrivate entry for this font
15454         already, simply increment its reference count, provided by Olaf Dietsche
15455         <olaf.dietsche+list.gtk@netcologne.de>.
15456
15457         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15458         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15459
15460 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15461
15462         * gtk/gtkcontainer.c:
15463         (gtk_container_add_with_args):
15464         (gtk_container_addv):
15465         (gtk_container_add): before adding a child to a conatiner, make sure
15466         it is (default) constructed, this is neccessary because under certain
15467         circumstances the child will get relized and mapped immediatedly, in
15468         which case it has to be constructed already.
15469
15470 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15471
15472         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15473         values > 1 as TRUE also.
15474
15475 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15476
15477         * README.win32: New file.
15478                 
15479         * configure.in: Check for lstat.
15480
15481         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15482         completeness.
15483
15484         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15485
15486         * gtk/gtk.def: Removed CRs.
15487
15488         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15489         ..\gdk\win32).
15490
15491         * gdk/win32/makefile.msc: Correct upwards relative paths.
15492         
15493 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15494
15495         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15496           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15497           it was connecting a void function to expose_event and the int
15498           returning function to the draw signal
15499
15500 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15501
15502         * configure.in:
15503         Use correct path to libgmodule.la when ref'ing uninstalled copy
15504         of glib.  (Already in stable branch, Bug #417)
15505
15506 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15507
15508         Win32 merge and general portability stuff:
15509                 
15510         * acconfig.h,configure.in: Check for <sys/time.h>.
15511
15512         * gdk/win32: New directory (actually, been there for a while).
15513         
15514         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15515         NATIVE_WIN32, and use these. Always case fold on Win32. No
15516         backslashed escapes on native Win32.
15517
15518         * gtk/{gtk.def,makefile.msc}: New files.
15519
15520         * gtk/Makefile.am: Add above new files.
15521         
15522         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15523         instead of <strings.h>.
15524
15525         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15526         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15527         <unistd.h> appropriately.
15528
15529         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15530         Use ABS() (from <glib.h>) instead of abs().
15531         
15532         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15533         of gtk (and thus glib) headers, so that WIN32 will be
15534         defined. With MS C, include <direct.h> for mkdir prototype.
15535
15536         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15537         some casts, needed by MS C.
15538
15539         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15540         implemented).
15541
15542         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15543         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15544         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15545
15546         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15547                 
15548         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15549         the event is not a hint, or its window is not the slider. Needed
15550         on Win32, at least.
15551
15552         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15553         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15554         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15555         a subdirectory of the Windows directory as gtk system
15556         configuration directory.
15557
15558         * gtk/gtkselection.c: No chunks on Win32.
15559
15560         * gtk/gtksocket.c: Not implemented on Win32.
15561
15562         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15563
15564         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15565
15566         * gtk/maketypes.awk: Declare variables with a macro that expands to
15567         necessary export/import magic in the case of Win32.
15568                 
15569         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15570
15571 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15572
15573         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15574         since those were meant only for gdki18n.h.  
15575         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15576         for widechar tests.
15577         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15578
15579 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15580
15581         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15582         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15583
15584         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15585         installed) to CFLAGS.
15586
15587         * gdk/Makefile.am: Add rules for gdkconfig.h.
15588
15589         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15590         APIs.
15591
15592         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15593         gdkx.h anyway when compiling for X11.
15594         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15595         general): Merge in Win32 version.
15596         
15597         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15598         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15599         expansion (if we don't have HAVE_PWD_H), allow for drive
15600         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15601         included code from Craig Setera's port to Win32 (the one that uses
15602         X11, and the cygwin dll), even if it probably will be abandoned.
15603
15604         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15605         the user entered one herself.  This way one can complete *.h and
15606         don't get matches on any .help files, for instance.
15607         
15608 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15609
15610         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15611         font hash table, if we have a GdkFontPrivate entry for this font
15612         already, simply increment its reference count, provided by Olaf Dietsche
15613         <olaf.dietsche+list.gtk@netcologne.de>.
15614
15615         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15616         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15617
15618 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15619
15620         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15621         the number of calls to gdk_draw_point() (and thus to X) by
15622         clipping the points by hand.
15623
15624         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15625         the clip parameter.
15626         (gtk_handle_box_paint): Only paint the handle if the expose area
15627         intersects it.
15628
15629 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15630
15631         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15632
15633 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15634
15635         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15636         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15637
15638 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15639
15640         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15641          textmode (O_TEXT) for OS/2 version.
15642
15643 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15644
15645         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15646         GtkSpinButton, "input" and "output", to make the output more flexible.
15647         The user has to provide a mapping between adjustment->value and the
15648         output string (and vice versa, if the spin button is editable). 
15649         See testgtk for examples.
15650
15651 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15652
15653         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15654         new one.
15655         
15656         * configure.in: set gtk+ version to 1.3.0.